[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
Re: [Q] 日本語のabbreviation
- X-ml-count: 2579
- Subject: Re: [Q] 日本語のabbreviation
- From: Shun-ichi GOTO <gotoh@xxxxxxxxxxx>
- Date: Mon, 07 Aug 2000 10:25:24 +0900 (JST)
- X-mailer: Mew version 1.95b51 on Emacs 20.6 / Mule 4.1 (AOI)
>>>>> at Sun, 06 Aug 2000 19:48:43 +0900 (JST)
>>>>> 後藤 == Shun-ichi GOTO <gotoh@xxxxxxxxxxx> said,
後藤> 自分でも全く同じ希望を持っていましたので、
後藤> 現実逃避ついでにちょっとだけやってみました。
後藤> それなりに目的は達成できているようです。
なんていっときながらダメダメだったので
根本的には変わってませんが、一応改訂しておきます
;; japanese word specific dabbrev
(defadvice dabbrev-expand (around jword (arg) activate)
(interactive "*P")
(let* ((regexp dabbrev-abbrev-char-regexp)
(dabbrev-abbrev-char-regexp regexp)
char ch)
(if (bobp)
()
(setq char (char-before)
ch (char-to-string char))
(cond
((string-match "[ア-ンー]" ch)
(setq dabbrev-abbrev-char-regexp "[ア-ンー]"))
((string-match "[あ-んー]" ch)
(setq dabbrev-abbrev-char-regexp "[あ-んー]"))
((string-match "[A-Z-a-z0-9]" ch)
(setq dabbrev-abbrev-char-regexp "[A-Za-z0-9]"))
((eq (char-charset char) 'japanese-jisx0208)
(setq dabbrev-abbrev-char-regexp
(concat "["
(char-to-string (make-char 'japanese-jisx0208 48 33))
"-"
(char-to-string (make-char 'japanese-jisx0208 126 126))
"]")))))
ad-do-it))
基本的には単純にdabbrev-abbrev-char-regexp をすり替えるという
だけのものですので、後は起動した時のカーソル周辺の様から
regexp を作るマトモなcode は誰かお願いします
全然考慮してません
## いま地獄に滞在中のため時間がとれません(;_;)
--- Regards,
Shun-ichi Goto <gotoh@xxxxxxxxxxx>
R&D Group, TAIYO Corp., Tokyo, JAPAN