sekka 0.9.2 → 0.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/emacs/sekka.el +76 -4
- data/lib/sekka/jisyo-db.nnd +2 -2
- data/lib/sekka/sekkaversion.rb +1 -1
- metadata +5 -5
    
        data/emacs/sekka.el
    CHANGED
    
    | @@ -41,6 +41,16 @@ | |
| 41 41 | 
             
              :type  'string
         | 
| 42 42 | 
             
              :group 'sekka)
         | 
| 43 43 |  | 
| 44 | 
            +
            (defcustom sekka-server-url-2 ""
         | 
| 45 | 
            +
              "SekkaサーバーのURLを指定する。"
         | 
| 46 | 
            +
              :type  'string
         | 
| 47 | 
            +
              :group 'sekka)
         | 
| 48 | 
            +
             | 
| 49 | 
            +
            (defcustom sekka-server-url-3 ""
         | 
| 50 | 
            +
              "SekkaサーバーのURLを指定する。"
         | 
| 51 | 
            +
              :type  'string
         | 
| 52 | 
            +
              :group 'sekka)
         | 
| 53 | 
            +
             | 
| 44 54 | 
             
            (defcustom sekka-server-timeout 10
         | 
| 45 55 | 
             
              "Sekkaサーバーと通信する時のタイムアウトを指定する。(秒数)"
         | 
| 46 56 | 
             
              :type  'integer
         | 
| @@ -124,11 +134,16 @@ non-nil で明示的に呼びだすまでGoogleIMEは起動しない。" | |
| 124 134 |  | 
| 125 135 | 
             
            (defvar sekka-sticky-shift nil     "*Non-nil であれば、Sticky-Shiftを有効にする")
         | 
| 126 136 | 
             
            (defvar sekka-mode nil             "漢字変換トグル変数")
         | 
| 127 | 
            -
            ( | 
| 137 | 
            +
            (defun sekka-modeline-string ()
         | 
| 138 | 
            +
              ;; 接続先sekka-serverのホスト名を表示する。
         | 
| 139 | 
            +
              (format " Sekka[%s]" (if current-sekka-server-url
         | 
| 140 | 
            +
            			   (url-host
         | 
| 141 | 
            +
            			    (url-generic-parse-url current-sekka-server-url))
         | 
| 142 | 
            +
            			 "")))
         | 
| 128 143 | 
             
            (defvar sekka-select-mode nil      "候補選択モード変数")
         | 
| 129 144 | 
             
            (or (assq 'sekka-mode minor-mode-alist)
         | 
| 130 145 | 
             
                (setq minor-mode-alist (cons
         | 
| 131 | 
            -
            			    '(sekka-mode | 
| 146 | 
            +
            			    '(sekka-mode (:eval (sekka-modeline-string)))
         | 
| 132 147 | 
             
            			    minor-mode-alist)))
         | 
| 133 148 |  | 
| 134 149 |  | 
| @@ -144,6 +159,8 @@ non-nil で明示的に呼びだすまでGoogleIMEは起動しない。" | |
| 144 159 | 
             
            			(cons 'sekka-select-mode  sekka-select-mode-map))
         | 
| 145 160 | 
             
            		  minor-mode-map-alist)))
         | 
| 146 161 |  | 
| 162 | 
            +
             | 
| 163 | 
            +
             | 
| 147 164 | 
             
            ;;;
         | 
| 148 165 | 
             
            ;;; hooks
         | 
| 149 166 | 
             
            ;;;
         | 
| @@ -172,6 +189,9 @@ non-nil で明示的に呼びだすまでGoogleIMEは起動しない。" | |
| 172 189 | 
             
            	  (insert string)))))
         | 
| 173 190 |  | 
| 174 191 |  | 
| 192 | 
            +
            ;;; 現在のsekka-serverの接続先
         | 
| 193 | 
            +
            (defvar current-sekka-server-url     nil)
         | 
| 194 | 
            +
             | 
| 175 195 | 
             
            ;;; 候補選択モード用
         | 
| 176 196 | 
             
            (defvar sekka-history-stack '())        ; 過去に変換した、場所と変換候補の状態を保存しておくスタック
         | 
| 177 197 | 
             
            ;; データ構造は以下の通り。
         | 
| @@ -253,6 +273,9 @@ non-nil で明示的に呼びだすまでGoogleIMEは起動しない。" | |
| 253 273 | 
             
            ;;
         | 
| 254 274 | 
             
            (defun sekka-init ()
         | 
| 255 275 | 
             
              (when (not sekka-init)
         | 
| 276 | 
            +
                ;; 現在のsekka-serverの接続先
         | 
| 277 | 
            +
                (defvar current-sekka-server-url  sekka-server-url) ;; 第一候補で初期化しておく。
         | 
| 278 | 
            +
             | 
| 256 279 | 
             
                ;; ユーザー語彙のロード + サーバーへの登録
         | 
| 257 280 | 
             
                (sekka-register-userdict-internal)
         | 
| 258 281 |  | 
| @@ -279,6 +302,31 @@ non-nil で明示的に呼びだすまでGoogleIMEは起動しない。" | |
| 279 302 | 
             
                 ("method" .  "normal")
         | 
| 280 303 | 
             
                 )))
         | 
| 281 304 |  | 
| 305 | 
            +
             | 
| 306 | 
            +
            ;;
         | 
| 307 | 
            +
            ;; 接続先を次候補のsekka-serverに切りかえる
         | 
| 308 | 
            +
            ;;
         | 
| 309 | 
            +
            (defun sekka-next-sekka-server ()
         | 
| 310 | 
            +
              (defun sekka-next-sekka-server-message(str varname)
         | 
| 311 | 
            +
                (message (format "If you have %s sekka-server, please set the `%s' variable." str varname))
         | 
| 312 | 
            +
                (sit-for 5))
         | 
| 313 | 
            +
             | 
| 314 | 
            +
              (cond
         | 
| 315 | 
            +
               ((string-equal current-sekka-server-url
         | 
| 316 | 
            +
            		  sekka-server-url)
         | 
| 317 | 
            +
                (if (< 0 (length sekka-server-url-2))
         | 
| 318 | 
            +
            	(setq current-sekka-server-url sekka-server-url-2)
         | 
| 319 | 
            +
                  (sekka-next-sekka-server-message "second" "sekka-server-url-2")))
         | 
| 320 | 
            +
               ((string-equal current-sekka-server-url
         | 
| 321 | 
            +
            		  sekka-server-url-2)
         | 
| 322 | 
            +
                (if (< 0 (length sekka-server-url-3))
         | 
| 323 | 
            +
            	(setq current-sekka-server-url sekka-server-url-3)
         | 
| 324 | 
            +
                  (sekka-next-sekka-server-message "third"  "sekka-server-url-3")))
         | 
| 325 | 
            +
               (t
         | 
| 326 | 
            +
                (when (< 0 (length sekka-server-url))
         | 
| 327 | 
            +
                  (setq current-sekka-server-url sekka-server-url)))))
         | 
| 328 | 
            +
             | 
| 329 | 
            +
             | 
| 282 330 | 
             
            ;;
         | 
| 283 331 | 
             
            ;; ローマ字で書かれた文章をSekkaサーバーを使って変換する
         | 
| 284 332 | 
             
            ;;
         | 
| @@ -290,6 +338,30 @@ non-nil で明示的に呼びだすまでGoogleIMEは起動しない。" | |
| 290 338 | 
             
            ;;     ("method" .  "normal")
         | 
| 291 339 | 
             
            ;;    )
         | 
| 292 340 | 
             
            (defun sekka-rest-request (func-name arg-alist)
         | 
| 341 | 
            +
              (defun one-request (func-name arg-alist)
         | 
| 342 | 
            +
                (let ((result (sekka-rest-request-sub func-name arg-alist)))
         | 
| 343 | 
            +
                  (if (or
         | 
| 344 | 
            +
            	   (string-match-p "^curl: [(]6[)] " result) ;; Couldn't resolve host 'aaa.example.com' 
         | 
| 345 | 
            +
            	   (string-match-p "^curl: [(]7[)] " result) ;; Couldn't connect to host 'localhost'
         | 
| 346 | 
            +
            	   )
         | 
| 347 | 
            +
            	  (progn
         | 
| 348 | 
            +
            	    (sekka-next-sekka-server)
         | 
| 349 | 
            +
            	    nil)
         | 
| 350 | 
            +
            	result)))
         | 
| 351 | 
            +
             | 
| 352 | 
            +
              (or
         | 
| 353 | 
            +
               (one-request func-name arg-alist)
         | 
| 354 | 
            +
               (one-request func-name arg-alist)
         | 
| 355 | 
            +
               (one-request func-name arg-alist)
         | 
| 356 | 
            +
               (concat
         | 
| 357 | 
            +
                "Error: All sekka-server are down. "
         | 
| 358 | 
            +
                " " sekka-server-url
         | 
| 359 | 
            +
                " " sekka-server-url-2
         | 
| 360 | 
            +
                " " sekka-server-url-3)))
         | 
| 361 | 
            +
             | 
| 362 | 
            +
            	
         | 
| 363 | 
            +
             | 
| 364 | 
            +
            (defun sekka-rest-request-sub (func-name arg-alist)
         | 
| 293 365 | 
             
              (if sekka-psudo-server
         | 
| 294 366 | 
             
                  (cond
         | 
| 295 367 | 
             
                   ((string-equal func-name "henkan")
         | 
| @@ -314,7 +386,7 @@ non-nil で明示的に呼びだすまでGoogleIMEは起動しない。" | |
| 314 386 | 
             
            	    (format " --max-time %d " sekka-server-timeout)
         | 
| 315 387 | 
             
            	    " --insecure "
         | 
| 316 388 | 
             
            	    " --header 'Content-Type: application/x-www-form-urlencoded' "
         | 
| 317 | 
            -
            	    (format "%s%s " sekka-server-url func-name)
         | 
| 389 | 
            +
            	    (format "%s%s " current-sekka-server-url func-name)
         | 
| 318 390 | 
             
            	    (sekka-construct-curl-argstr (cons
         | 
| 319 391 | 
             
            					  '("format" . "sexp")
         | 
| 320 392 | 
             
            					  arg-alist))
         | 
| @@ -1552,7 +1624,7 @@ point から行頭方向に同種の文字列が続く間を漢字変換しま | |
| 1552 1624 | 
             
            (setq default-input-method "japanese-sekka")
         | 
| 1553 1625 |  | 
| 1554 1626 | 
             
            (defconst sekka-version
         | 
| 1555 | 
            -
              "0.9. | 
| 1627 | 
            +
              "0.9.3" ;;SEKKA-VERSION
         | 
| 1556 1628 | 
             
              )
         | 
| 1557 1629 | 
             
            (defun sekka-version (&optional arg)
         | 
| 1558 1630 | 
             
              "入力モード変更"
         | 
    
        data/lib/sekka/jisyo-db.nnd
    CHANGED
    
    | @@ -242,10 +242,10 @@ | |
| 242 242 | 
             
                  (let ([d (. (Date.new 0) to_s)])
         | 
| 243 243 | 
             
                    (if (and (kvs.pure_put! "key_for_ping" d)
         | 
| 244 244 | 
             
                             (string=? (kvs.get  "key_for_ping") d))
         | 
| 245 | 
            -
                        (STDERR.puts "Info: database file  | 
| 245 | 
            +
                        (STDERR.puts "Info: database file is clean")
         | 
| 246 246 | 
             
                        ;; 正常に読み書きできないようであれば、データベースを修復する
         | 
| 247 247 | 
             
                        (begin
         | 
| 248 | 
            -
                          (STDERR.puts "Info: database file  | 
| 248 | 
            +
                          (STDERR.puts "Info: database file is NOT clean. try to fix...")
         | 
| 249 249 | 
             
                          (kvs.fixdb)
         | 
| 250 250 | 
             
                          (STDERR.puts "Info: done."))))
         | 
| 251 251 | 
             
                  (to-arr (list kvs cachesv)))))
         | 
    
        data/lib/sekka/sekkaversion.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,13 +1,13 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: sekka
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
              hash:  | 
| 4 | 
            +
              hash: 61
         | 
| 5 5 | 
             
              prerelease: 
         | 
| 6 6 | 
             
              segments: 
         | 
| 7 7 | 
             
              - 0
         | 
| 8 8 | 
             
              - 9
         | 
| 9 | 
            -
              -  | 
| 10 | 
            -
              version: 0.9. | 
| 9 | 
            +
              - 3
         | 
| 10 | 
            +
              version: 0.9.3
         | 
| 11 11 | 
             
            platform: ruby
         | 
| 12 12 | 
             
            authors: 
         | 
| 13 13 | 
             
            - Kiyoka Nishiyama
         | 
| @@ -15,7 +15,7 @@ autorequire: | |
| 15 15 | 
             
            bindir: bin
         | 
| 16 16 | 
             
            cert_chain: []
         | 
| 17 17 |  | 
| 18 | 
            -
            date: 2011- | 
| 18 | 
            +
            date: 2011-10-03 00:00:00 Z
         | 
| 19 19 | 
             
            dependencies: 
         | 
| 20 20 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 21 21 | 
             
              name: rspec
         | 
| @@ -339,7 +339,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 339 339 | 
             
            requirements: []
         | 
| 340 340 |  | 
| 341 341 | 
             
            rubyforge_project: 
         | 
| 342 | 
            -
            rubygems_version: 1. | 
| 342 | 
            +
            rubygems_version: 1.8.10
         | 
| 343 343 | 
             
            signing_key: 
         | 
| 344 344 | 
             
            specification_version: 3
         | 
| 345 345 | 
             
            summary: Sekka is a SKK like input method.
         |