ホーム / xyzzy関連 / skk.l


skk.l

日本語入力プログラムSKK のxyzzy移植版です。

須田さんのもの を参考にしつつskk.elの移植を試みました。まだおかしいところがありますが公開します。 ベースにしたバージョンは8.6です。

現状ではかなり普通に入力できるようになってきていると思いますが、 何か大きな不具合を仕込んじゃってるかもしれません。

注意事項

句読点の変更

句読点を「、」「。」から「,」「.」に変更したいときは 次のコードを~/.skkファイルに書き加えてみてください。 *skk-kutouten-type*でデフォルトの設定が、 skk-change-kutoutenコマンドで途中変更ができます。

(in-package "skk")

(export '(*skk-kutouten-alist*
          *skk-kutouten-type*
          skk-change-kutouten))

(defvar *skk-kutouten-alist*
  '((jp . ("。" . "、" ))
    (en . ("." . ","))))

(defvar *skk-kutouten-type* 'jp)

(defun skk-set-kutouten (kutouten)
  (setf (aref *skk-input-vector* (char-code #\.)) (car kutouten))
  (setf (aref *skk-input-vector* (char-code #\,)) (cdr kutouten)))

(defun skk-find-kutouten-type (s)
  (cdr (assoc s (mapcar (lambda (x)
                          (let ((y (car x)))
                            (cons (symbol-name y) y)))
                        *skk-kutouten-alist*) :test #'string=)))

(defun skk-change-kutouten (type)
  (interactive
      (list
       (skk-find-kutouten-type
        (completing-read "Please enter new kutouten type: "
                         (mapcar #'car *skk-kutouten-alist*) :must-match t))))
  (skk-set-kutouten (cdr (assoc type *skk-kutouten-alist*))))

(skk-set-kutouten (cdr (assoc *skk-kutouten-type* *skk-kutouten-alist*)))

;; Last modified: 2006-09-17

履歴


ホーム / xyzzy関連 / skk.l