- cursor-chg 20170221.1610(in MELPA)
- Change cursor dynamically, depending on the context.
概要
cursor-chg.el
は、場面に応じて
カーソルの色や形状を変更します。
- 通常時
- バッファが読み込み専用(
read-only-mode
)
または上書き(overwrite-mode
)のとき - インプットメソッドを使っているとき
- アイドル時(任意)
それにより、
カーソルを見るだけでEmacsの状態が
ひと目でわかるようになります。
Emacs20から動作します。
インストール
パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。
(package-initialize) (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") ("melpa" . "http://melpa.org/packages/") ("org" . "http://orgmode.org/elpa/")))
初めてcursor-chgを使う方は
以下のコマンドを実行します。
M-x package-install cursor-chg
アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。
M-x package-install package-utils (初めてアップグレードする場合のみ) M-x package-utils-upgrade-by-name cursor-chg
カーソルの形状について
それでは、
Emacsが使えるカーソルについて見てみましょう。
Fig1: box
Fig2: hollow
Fig3: bar
Fig4: hbar
Fig5: nil (透明!)
カスタマイズ
以下のカスタマイズ変数があります。
()内はデフォルトです。
curchg-default-cursor-color
- デフォルトのカーソルの色(デフォルトの設定か
"Red"
) curchg-default-cursor-type
- デフォルトのカーソルの形状(
bar
) curchg-change-cursor-on-input-method-flag
- インプットメソッド使用時にカーソルを変更させるか(
t
) curchg-input-method-cursor-color
- インプットメソッド使用時のカーソルの色(
"Orange"
) curchg-change-cursor-on-overwrite/read-only-mode
- read-onlyかoverwriteのときにカーソルを変更させるか(
t
) curchg-overwrite/read-only-cursor-type
- read-onlyかoverwriteのときのカーソルの形状(
box
) curchg-idle-cursor-type
- アイドル時のカーソルの形状(
box
)
また、 curchg-set-cursor-type
関数で
デフォルトのカーソルの形状を変更できます。
curchg-change-cursor-when-idle-interval
関数で
アイドル時にカーソルの形状を
変更するまでの秒数を設定します。
デフォルトは2秒です。
設定 170112082314.cursor-type.el(以下のコードと同一)
(require 'cursor-chg)
;;; デフォルトのカーソルの色はピンク
(setq curchg-default-cursor-color "Pink")
;;; デフォルトのカーソルの形状はbox
(setq curchg-default-cursor-type 'box)
;;; overwrite/read-onlyのカーソルの形状はbar
(setq curchg-overwrite/read-only-cursor-type 'bar)
;;; カーソル形状の変更を有効!
(change-cursor-mode 1)
;;; 5秒のアイドル時にもカーソルをhbarに変更させる
;;; 以下の3行はお好みで
(toggle-cursor-type-when-idle 1)
(setq curchg-idle-cursor-type 'hbar)
(curchg-change-cursor-when-idle-interval 5)
実行方法
$ wget http://rubikitch.com/f/170112082314.cursor-type.el $ emacs -Q -f package-initialize -l 170112082314.cursor-type.el
本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。