uimその他設定

かな変換モードで[8][shift+m][shift+b]と打った場合
scim+anthy 8MB
uim+anthy 8ん
これは困る

uim - CustomizeUim
http://anthy.sourceforge.jp/cgi-bin/hikija/hiki.cgi?CustomizeUim#l12
Shift+アルファベットキーで大文字アルファベットを直接入力
を参考に改造する。
例によってDSL日本語版に入ってるuim0.4.6final1-3sの話

*** anthy.scm.back1	2008-09-22 09:34:25.000000000 +0900
--- anthy.scm	2008-09-22 09:57:57.000000000 +0900
***************
*** 453,462 ****
  	(anthy-commit-raw ac))
  
         (else
! 	(let* ((key-str (charcode->string
! 			 (if (= rule anthy-input-rule-kana)
! 			     key
! 			     (to-lower-char key))))
  	       (res (rk-push-key! rkc key-str)))
  	  (if res
                (begin
--- 453,463 ----
  	(anthy-commit-raw ac))
  
         (else
! ;;	(let* ((key-str (charcode->string
! ;;			 (if (= rule anthy-input-rule-kana)
! ;;			     key
! ;;			     (to-lower-char key))))
!         (let* ((key-str (charcode->string key))
  	       (res (rk-push-key! rkc key-str)))
  	  (if res
                (begin
***************
*** 610,619 ****
  	(anthy-commit-raw ac))
  
         (else	
! 	(let* ((key-str (charcode->string 
! 			 (if (= rule anthy-input-rule-kana)
! 			     key
! 			     (to-lower-char key))))
  	       (pend (rk-pending rkc))
  	       (res (rk-push-key! rkc key-str)))
  
--- 611,621 ----
  	(anthy-commit-raw ac))
  
         (else	
! ;;	(let* ((key-str (charcode->string 
! ;;			 (if (= rule anthy-input-rule-kana)
! ;;			     key
! ;;			     (to-lower-char key))))
!         (let* ((key-str (charcode->string key))
  	       (pend (rk-pending rkc))
  	       (res (rk-push-key! rkc key-str)))

.uim

(require "japanese.scm")
(define anthy-use-with-vi? #t)

;;fuseina roumaji wo nokosu
(define ja-rk-rule-user
  (mapcar
   (lambda (c)
     (list (cons (list c) ()) (list c c c)))
   '("b" "c" "d" "f" "g" "h" "j" "k" "l" "m"
     "p" "q" "r" "s" "t" "v" "w" "x" "y" "z"
     "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M"
     "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z")))
;;ww
(define ja-rk-rule-user
  (append '(
    ((("w" "w"). ())("ww" "ww" "ww"))
    )
  ja-rk-rule-user))

;;@@ is full-space
(define ja-rk-rule-user
  (append '(
    ((("@" "@"). ())(" " " " " "))
    )
  ja-rk-rule-user))


(if (symbol-bound? 'ja-rk-rule-user)
    (set! ja-rk-rule (append ja-rk-rule-user ja-rk-rule)))


;;allways half-space
;;(define ja-space-user '(" " " " " "))
;;(if (symbol-bound? 'ja-space-user)
;;    (set! ja-space (append ja-space-user ja-space)))

(define ja-direct-rule
  '((" " " ")
    ))

.uimeuc-jpで保存。
上から順にVI協調、不正なローマ字を消さずにそのまま残す、wキー連打で草が生やせるようにする、「@@」で全角スペース、かな入力時も半角スペース。