;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;  -*- coding: utf-8-unix -*-
;;  FSF Emacs 23 用 Vine Linux ibus-el 設定
;;    IWAI, Masaharu <iwai@alib.jp>
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ibus-el の設定
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(if (or (equal emacs-ime "ibus-el")
        (equal emacs-ime "IBus-el"))
     (progn
       (require 'ibus)

       ;; Turn on ibus-mode automatically loading after-vine-default-setup-hook
       (if (boundp 'after-vine-default-setup-hook) ;;; for Vine5
	   (add-hook 'after-vine-default-setup-hook 'ibus-mode-on) 
	 (add-hook 'after-init-hook 'ibus-mode-on))

       ;; define ibus-el-agent path
       (setq ibus-agent-file-name "/usr/share/ibus-el/ibus-el-agent")

       ;; Use C-SPC for Set Mark command
       (ibus-define-common-key ?\C-\s nil)
       
       ;; Toggle input status by Ctrl + \
       (global-set-key "\C-\\" 'ibus-toggle)

       ;; Use henkan key to enable IBus
       (global-set-key [henkan] 'ibus-enable)
       ;; Use muhenkan key to disable IBus
       (global-set-key [muhenkan] 'ibus-disable)
       ;; Enable muhenkan key only for preediting
       (ibus-define-common-key 'muhenkan nil)
       (ibus-define-preedit-key 'muhenkan t)

       ;; Use C-/ for Undo command
       (ibus-define-common-key ?\C-/ nil)

       ;; Change cursor color depending on IBus status
       (setq ibus-cursor-color '("red" "blue" "limegreen"))

       ;; Using ibus-anthy
       ;; To toggle half-width eisu mode by C-j, add the following to .emacs:
       (ibus-define-common-key ?\C-j t)

       ;; To use kana input method with jp106 keyboard, you can enable kana
       ;; onbiki key as follows:
       (setq ibus-use-kana-onbiki-key t)

       ;; If you use thumb shift input method, you have to specify the
       ;; simultaneous pressing time as:
       (setq ibus-ibus-simultaneous-pressing-time 0.1)

       ;; Using ibus-chewing
       ;; Please set input style to "in application window" in ibus-chewing's
       ;; configuration dialog.
       )
  )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(provide 'vine-default-ibus-el)

;; Local Variables:
;; mode: emacs-lisp
;; End:
