Mercurial > hg > xemacs-beta
diff lisp/egg/egg.el @ 181:bfd6434d15b3 r20-3b17
Import from CVS: tag r20-3b17
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:53:19 +0200 |
parents | 25f70ba0133c |
children | e121b013d1f0 |
line wrap: on
line diff
--- a/lisp/egg/egg.el Mon Aug 13 09:52:21 2007 +0200 +++ b/lisp/egg/egg.el Mon Aug 13 09:53:19 2007 +0200 @@ -862,8 +862,11 @@ (interactive "r") (goto-char start) (while (re-search-forward kanji-katakana end end) - (let ((ch (preceding-char))) - (cond( (<= ch ?$B%s(B) + (let ((ch (char-before (point)))) + (cond( (not (or (> ch ?$B%s(B) + (eq ch ?$B!<(B) + (eq ch ?$B!+(B) + (eq ch ?$B!,(B))) (delete-char -1) (insert (make-char (find-charset 'japanese-jisx0208) 36 (char-octet ch 1)))))))) @@ -893,9 +896,10 @@ (interactive "r") (goto-char start) (while (re-search-forward kanji-hiragana end end) - (let ((ch (char-octet (preceding-char) 1))) - (delete-char -1) - (insert (make-char (find-charset 'japanese-jisx0208) 37 ch))))) + (let ((ch (char-before (point)))) + (cond ((not (memq ch '(?$B!<(B ?$B!+(B ?$B!,(B))) + (delete-char -1) + (insert (make-char (find-charset 'japanese-jisx0208) 37 (char-octet ch 1)))))))) (defun katakana-paragraph () "katakana paragraph at or after point." @@ -924,18 +928,21 @@ (save-restriction (narrow-to-region start end) (goto-char (point-min)) - (while (re-search-forward "\\cS\\|\\cA" (point-max) (point-max)) + (while (re-search-forward "\\cS\\|\\cA\\|\\cK" (point-max) (point-max)) (let* ((ch (preceding-char)) (ch1 (char-octet ch 0)) (ch2 (char-octet ch 1))) - (cond ((= ?\241 ch1) + (cond ((= ch1 33) ;Symbols (let ((val (cdr (assq ch2 *hankaku-alist*)))) (if val (progn (delete-char -1) (insert val))))) - ((= ?\243 ch1) +; ((= ch1 37) ;Katakana +; (delete-char -1) +; (insert (- ch2 ?\200 ))) + ((= ch1 35) ;Alphas (delete-char -1) - (insert (- ch2 ?\200 )))))))) + (insert ch2))))))) (defun hankaku-paragraph () "hankaku paragraph at or after point."