[Date Prev] [Date Index] [Date Next]
[Thread Prev] [Thread Index] [Thread Next]

[xyzzy:08327] Re: ( Lisp 勉強法(文字コードを使用して文字テーブル(?))



chiyu@ふくおか、といいます。こんばんわ。

encoding.lとcmds.lを参考にして、
安易に次のようにしたら、
Latin-1の表と、キリル文字の表が挿入できました。
これをJIS X 0208(日本語JIS 2byteコード)でするには、
my-insert-char-tableの部分をもうちょっと
考えてループを回さないといけないです。
(明日 考えてみます。)

ちなみに、16進数の0xAC00は、#xac00 と書きます。
doという関数は、どうも、JavaやC言語のfor構文に
相当するもののようですね、多分。
(知らないまま、適当に実験している->自分)

(defun my-insert-char-table-1 (fn)
  (save-excursion
    (do ((x #x80 (+ x #x10)))
	((>= x #x100) t)
      (insert (format nil "~2,'0x: " x))
      (dotimes (y #x10)
	(insert (funcall fn (+ x y))))
      (insert #\LFD))))

(defun my-insert-latin1-char-table ()
  (interactive)
  (my-insert-char-table-1 #'my-code-latin1-char))

(defun my-code-latin1-char (code)
  (iso-code-char code :iso8859-1))

(defun my-insert-cyril-char-table ()
  (interactive)
  (my-insert-char-table-1 #'my-code-cyril-char))

(defun my-code-cyril-char (code)
  (iso-code-char code :iso8859-5))

Index Home