uim-skk-1.8.8-utf-8.patch
The snippet can be accessed without any authentication.
Authored by
κeen
Edited
snippetfile1.txt 3.42 KiB
--- japanese-custom-utf8.scm.orig
+++ japanese-custom-utf8.scm
@@ -387,6 +387,17 @@
((("z" "/"). ())("・" "・" "・"))
))
+(define string-to-list
+ (lambda (s)
+ (with-char-codec "UTF-8"
+ (lambda ()
+ (map! (lambda (c)
+ (let ((str (list->string (list c))))
+ (with-char-codec "ISO-8859-1"
+ (lambda ()
+ (%%string-reconstruct! str)))))
+ (reverse! (string->list s)))))))
+
(define ja-rk-rule-basic-uim ja-rk-rule-basic)
(define ja-rk-rule-rule->table (lambda (rule)
--- japanese-utf8.scm.orig
+++ japanese-utf8.scm
@@ -31,7 +31,7 @@
;; Japanese EUC
(require-extension (srfi 1 2))
-(require-custom "japanese-custom.scm")
+(require-custom "japanese-custom-utf8.scm")
(require "util.scm")
(define ja-rk-rule-additional
@@ -613,8 +613,9 @@
(if (= ej0 #x8f) ; SS3?
(<= #xa1 ej2 #xfe) ; IN_GR94()
(<= #xa0 ej2 #xff)) ; IN_GR96()
- (ja-euc-jp-code->euc-jp-string
- (+ (* ej0 #x10000) (* ej1 #x100) ej2)))))
+ (iconv-code-conv (iconv-open "UTF-8" "EUC-JP")
+ (ja-euc-jp-code->euc-jp-string
+ (+ (* ej0 #x10000) (* ej1 #x100) ej2))))))
;;; Convert reverse string list of JIS code to one EUC-JP kanji string
;;; ("d" "2" "0" "5") -> "亅"
@@ -655,9 +656,8 @@
(valid? ; sigscheme/src/sigschemeinternal.h:ICHAR_VALID_UNICODEP()
(or
(<= 0 ucs #xd7ff)
- (<= #xe000 ucs #x10ffff)))
- (utf8-str (ucs->utf8-string ucs)))
- (iconv-convert "EUC-JP" "UTF-8" utf8-str)))
+ (<= #xe000 ucs #x10ffff))))
+ (ucs->utf8-string ucs)))
;;; Convert reverse string list to one EUC-JP kanji string
(define (ja-kanji-code-input str-list)
--- skk-utf8.scm.orig
+++ skk-utf8.scm
@@ -30,7 +30,7 @@
;; SKK is a Japanese input method
;;
-;; EUC-JP
+;; UTF-8
;;
;; SKKの入力は下記の状態で構成される
;; Following is list of SKK input state
@@ -44,7 +44,7 @@
;; 漢字コード入力 kcode
;;
;;
-(require "japanese.scm")
+(require "japanese-utf8.scm")
(require-custom "generic-key-custom.scm")
(require-custom "skk-custom.scm")
(require-custom "skk-key-custom.scm")
@@ -376,19 +376,19 @@
(set! skk-set-henkan-point-key '())
skk-ja-rk-rule)
((= input-rule skk-input-rule-azik)
- (require "japanese-azik.scm")
+ (require "japanese-azik-utf8.scm")
(set! skk-okuri-char-alist ja-azik-skk-okuri-char-alist)
(set! skk-downcase-alist ja-azik-skk-downcase-alist)
(set! skk-set-henkan-point-key ja-azik-skk-set-henkan-point-key)
ja-azik-rule)
((= input-rule skk-input-rule-act)
- (require "japanese-act.scm")
+ (require "japanese-act-utf8.scm")
(set! skk-okuri-char-alist ja-act-skk-okuri-char-alist)
(set! skk-downcase-alist ja-act-skk-downcase-alist)
(set! skk-set-henkan-point-key ja-act-skk-set-henkan-point-key)
ja-act-rule)
((= input-rule skk-input-rule-kzik)
- (require "japanese-kzik.scm")
+ (require "japanese-kzik-utf8.scm")
(set! skk-okuri-char-alist '())
(set! skk-downcase-alist '())
(set! skk-set-henkan-point-key '())
@@ -2327,7 +2327,7 @@
(register-im
'skk
"ja"
- "EUC-JP"
+ "UTF-8"
skk-im-name-label
skk-im-short-desc
#f
--- loader.scm.orig
+++ loader.scm
@@ -13,7 +13,7 @@
'(
(skk
"ja"
- "EUC-JP"
+ "UTF-8"
"SKK"
"uim version of SKK input method"
"skk")
Please register or sign in to comment