%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/international/ |
Current File : //usr/local/share/emacs/27.2/lisp/international/utf7.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\207" [require base64 mm-util] 2) #@55 Character ranges which do not need escaping in UTF-7. (defconst utf7-direct-encoding-chars " -%'-*,-[]-}" (#$ . 476)) #@75 Character ranges which do not need escaping in the IMAP variant of UTF-7. (defconst utf7-imap-direct-encoding-chars (concat utf7-direct-encoding-chars "+\\~") (#$ . 600)) #@72 Coding system which encodes big endian UTF-16 without a BOM signature. (defconst utf7-utf-16-coding-system (byte-code "\300\301!\203 \301\207\300\302!\203 \303\304\302\"G\305U\203 \302\207\300\306!\205! \306\207" [mm-coding-system-p utf-16-be-no-signature utf-16-be encode-coding-string "a" 2 utf-16-be-nosig] 3) (#$ . 777)) #@88 Return required length of padding for IMAP modified base64 fragment. (fn LEN MODULUS) (defalias 'utf7-imap-get-pad-length #[514 "\300[\"\207" [mod] 5 (#$ . 1111)]) (put 'utf7-imap-get-pad-length 'byte-optimizer 'byte-compile-inline-expand) #@116 Encode text in (temporary) buffer as UTF-7. Use IMAP modification if FOR-IMAP is non-nil. (fn &optional FOR-IMAP) (defalias 'utf7-encode-internal #[256 "ed}\210b\210\203 \302\202 \303\203 \202 \304Pm?\205U \305w\210m\204 c\210`g\305wU\203G \211\306U\203G \307\310!\210\202N \311`#\210\312c\266\202 \266\203\207" [utf7-imap-direct-encoding-chars utf7-direct-encoding-chars 38 43 "^" nil 1 delete-char -1 utf7-fragment-encode "-"] 13 (#$ . 1361)]) #@148 Encode text from START to END in buffer as UTF-7 escape fragment. Use IMAP modification if FOR-IMAP is non-nil. (fn START END &optional FOR-IMAP) (defalias 'utf7-fragment-encode #[770 "\214p\300\301!r\211q\210\302\303\304\305\306!\307\"\310$\216\311\312!\210\313#\210\314\315! \210\316ed\"\210\317 *\262}\210ed|\210\211c\266eb\210d\203S \320\321\312\322#\203S \323\324!\210\202D \325w\210`|\262)\207" [generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205 \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 set-buffer-multibyte nil insert-buffer-substring utf7-get-u16char-converter to-utf-16 base64-encode-region buffer-string search-forward "/" t replace-match "," "^= \n"] 11 (#$ . 1839)]) #@113 Decode UTF-7 text in (temporary) buffer. Use IMAP modification if FOR-IMAP is non-nil. (fn &optional FOR-IMAP) (defalias 'utf7-decode-internal #[256 "e\211b\210\300\301\203 \302\202 \303!P\304\301\203 \305\202 \306!Pm?\205[ \307w\210m\204 \307u\210`\307wm\204@ g\310U\203@ \311\312!\210\211\313U\204V \212\314`#\210b\210\311\315!\210)\266\202 \266\202\207" ["^" char-to-string 38 43 "A-Za-z0-9+" 44 47 nil 45 delete-char 1 0 utf7-fragment-decode -1] 10 (#$ . 2571)]) #@156 Decode base64 encoded fragment from START to END of UTF-7 text in buffer. Use IMAP modification if FOR-IMAP is non-nil. (fn START END &optional FOR-IMAP) (defalias 'utf7-fragment-decode #[770 "\214}\210\211\203 b\210\300\301\302\303#\203 \304\305!\210\202\f Z\306\307[\"\266\202\310\311\"c\210\312\\\"\266\313\314! )\207" [search-forward "," nil move-to-end replace-match "/" 4 mod make-string 61 base64-decode-region utf7-get-u16char-converter from-utf-16] 8 (#$ . 3061)]) #@88 Return a function to convert between UTF-16 and current character set. (fn WHICH-WAY) (defalias 'utf7-get-u16char-converter #[257 "\203 \211\301=\203\f \302\207\303\207\211\301=\203 \304\207\305\207" [utf7-utf-16-coding-system to-utf-16 #[0 "\301ed#\207" [utf7-utf-16-coding-system encode-coding-region] 4] #[0 "\301ed#\207" [utf7-utf-16-coding-system decode-coding-region] 4] utf7-latin1-u16-char-converter utf7-u16-latin1-char-converter] 3 (#$ . 3556)]) #@123 Convert latin 1 (ISO-8859.1) characters to 16 bit Unicode. Characters are converted to raw byte pairs in narrowed buffer. (defalias 'utf7-latin1-u16-char-converter #[0 "\300ed\301#\210eb\210m?\205 \302c\210\303u\210\202 \207" [encode-coding-region iso-8859-1 0 nil] 4 (#$ . 4025)]) #@113 Convert 16 bit Unicode characters to latin 1 (ISO-8859.1). Characters are in raw byte pairs in narrowed buffer. (defalias 'utf7-u16-latin1-char-converter #[0 "eb\210m\204 g\300U\203 \301\302!\210\202 \303\304!\210\305u\210\202 \306ed\307#\210\310 \207" [0 delete-char 1 error "Unable to convert from Unicode" nil decode-coding-region iso-8859-1 mm-enable-multibyte] 4 (#$ . 4316)]) #@101 Encode UTF-7 STRING. Use IMAP modification if FOR-IMAP is non-nil. (fn STRING &optional FOR-IMAP) (defalias 'utf7-encode #[513 "\300\301!\203 \300\302!\203 \303\203 \302\202 \301\"\207\304\305!r\211q\210\306\307\310\311\312!\313\"\314$\216\315 \210c\210\316!\210\317 *\207" [coding-system-p utf-7 utf-7-imap encode-coding-string generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205 \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 mm-enable-multibyte utf7-encode-internal buffer-string] 9 (#$ . 4709)]) #@101 Decode UTF-7 STRING. Use IMAP modification if FOR-IMAP is non-nil. (fn STRING &optional FOR-IMAP) (defalias 'utf7-decode #[513 "\300\301!\203 \300\302!\203 \303\203 \302\202 \301\"\207\304\305!r\211q\210\306\307\310\311\312!\313\"\314$\216\315 \210c\210\316!\210\317 \210\320 *\207" [coding-system-p utf-7 utf-7-imap decode-coding-string generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205 \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 mm-disable-multibyte utf7-decode-internal mm-enable-multibyte buffer-string] 9 (#$ . 5249)]) (provide 'utf7)