種別[gsm] 2025-06-23T19:11:52Z
セクショングローバル共有メモ
日時2025-06-23T19:11:52Z
元URL(URLなし)

quail-naggy について Tips を↓のコメント欄に書いておいた。…

jrf> quail-naggy について Tips を↓のコメント欄に書いておいた。

《quail-naggy.el: 単漢字変換 Input Method for Emacs. [ JRF のソフトウェア Tips ]》  
http://jrf.cocolog-nifty.com/software/2015/10/post.html
>ここに書いて読む人がいるだろうか?

GitHub のほうの quail-naggy (↓)には fix_skk_jisyo_l.pl というスクリプトを足しておいた。

https://github.com/JRF-2018/quail-naggy

これは、「nihon:」を変換したときに「ニホン」が最初の候補に来るなどするのが、とてもムカついたので作った、SKK-JISYO.L からカタカナへの変換などを除去するツールになる。これでできたものを make_skk_dic_db.pl にかけたあと、site-init.nginit を例えば次のようにして使えばいい。

<pre>
load-init-file default-init.nginit
set-tankanji-dic Wind2.txt -s
#set-tankanji-dic tankanji.txt -e
#add-skk-dic SKK-JISYO.L -e
add-skk-dic SKK-JISYO.fixed.L -e
add-skk-dic bushu-skk-dic.txt -e
add-skk-dic emoji-skk-dic.txt -u
</pre>

ただし、あまりチェックしていないので、完璧に「いい感じ」ではないかもしれない。

あと、ちょっとした Tips。最初にシフトキーを押して「Nihon」と入力して変換するのも「nohon:」と入力して変換するのも同じ感じになるのであるが、「風」系の哲学として、入力したあとのキーで選びたいということがある。だから、「nihon」の後 S-SPC で nihon: SPC と入力したのと同じように変換したい。…という場合は次のようにすればいい。

<pre>
(require 'quail-naggy)

(defun quail-naggy-alt-convert ()
  (interactive)
  (setq quail-current-key
	(concat quail-current-key ":"))
  (or (catch 'quail-tag
	(quail-update-translation (quail-translate-key))
	t)
      (setq quail-translating nil))
  (quail-naggy-convert))

(add-hook 'input-method-activate-hook
	  (lambda ()
	    (if (string= (quail-name) "japanese-naggy")
		(progn
		  (define-key (quail-conversion-keymap)
			      [?\S- ] 'quail-naggy-alt-convert)
		  (define-key (quail-conversion-keymap)
			      [?\C- ] 'quail-naggy-insert-space)))))
</pre>

quail-naggy-insert-space を C-SPC に移動する必要があり、それはラテン語圏などでもし S-SPC をこれまで頻繁に使っている人がいると、それは迷惑だろうから、標準では取り込まなかった。でも漢字圏の人はこのキーバインドのほうが圧倒的に楽になると思う。
<