update.
[elisp/apel.git] / poem.el
diff --git a/poem.el b/poem.el
index 70d08cc..1af8f4d 100644 (file)
--- a/poem.el
+++ b/poem.el
 
 (require 'poe)
 
+(eval-and-compile
+  (unless (fboundp 'open-network-stream)
+    (require 'tcp)))
+
 (cond ((featurep 'mule)
        (cond ((featurep 'xemacs)
              (require 'poem-xm)
        ;; for Nemacs and Nepoch
        (require 'poem-nemacs)
        )
+      ((featurep 'file-coding)
+       ;; file coding xemacs
+       (require 'poem-xfc)
+       )
       (t
        (require 'poem-ltn1)
        ))
@@ -62,6 +70,13 @@ If STRING is multibyte, the result is STRING itself.
 \[Emacs 20.3 emulating macro]"
   string)
 
+(defun-maybe charset-after (&optional pos)
+  "Return charset of a character in current buffer at position POS.
+If POS is nil, it defauls to the current point.
+If POS is out of range, the value is nil.
+\[Emacs 20.3 emulating function]"
+  (char-charset (char-after pos))
+  )
 
 ;;; @ XEmacs-mule emulation
 ;;;
@@ -70,8 +85,19 @@ If STRING is multibyte, the result is STRING itself.
 
 (defalias-maybe 'int-char 'identity)
 
+(defalias-maybe 'characterp 'integerp)
+
 (defalias-maybe 'char-or-char-int-p 'integerp)
 
+(defun-maybe char-octet (ch &optional n)
+  "Return the octet numbered N (should be 0 or 1) of char CH.
+N defaults to 0 if omitted. [XEmacs-mule emulating function]"
+  (or (nth (if n
+              (1+ n)
+            1)
+          (split-char ch))
+      0))
+
 
 ;;; @ end
 ;;;