Function: text-mode--get-fullwidth-table
text-mode--get-fullwidth-table is a byte-compiled function defined in
text-mode.el.gz.
Signature
(text-mode--get-fullwidth-table)
Documentation
Return translation table for converting half-width characters to fullwidth.
Source Code
;; Defined in /usr/src/emacs/lisp/textmodes/text-mode.el.gz
(defun text-mode--get-fullwidth-table ()
"Return translation table for converting half-width characters to fullwidth."
(or (and (char-table-p text-mode--fullwidth-table)
text-mode--fullwidth-table)
;; Create the translation table.
(let ((tbl (make-char-table 'translation-table))
(rev-tbl (make-char-table 'translation-table))
(ch ?!))
(while (<= ch ?~)
;; ! -> !, 0 -> 0, A -> A, etc.
(aset tbl ch (+ ch #xFEE0))
(aset rev-tbl (+ ch #xFEE0) ch)
(setq ch (1+ ch)))
;; SPC -> U+3000 IDEOGRAPHIC SPACE
(aset tbl ?\ #x3000)
(aset rev-tbl #x3000 ?\ )
(set-char-table-extra-slot tbl 0 rev-tbl)
(set-char-table-extra-slot tbl 1 1)
(set-char-table-extra-slot rev-tbl 1 1)
(put 'text-mode--fullwidth-table 'translation-table tbl)
(setq text-mode--fullwidth-table tbl)
tbl)))