cltc というタスク切り替えソフトが便利な件

http://cogma.sakura.ne.jp/cltc/

タスクの切り替えといえば、Alt+TABが定番なわけだけど、
僕はAlt+TABはあまり好きじゃない。
目的のタスクが選択できるまで、
Altをずっと押しっぱなしにしてなきゃいけないし、
Altを押しながらTABを何度も押すのは面倒だからだ。
TABを押しすぎたときにバックしようと思ったら、
Shift+Alt+TABの同時押しをしなきゃいけないなんて考えたくもない。


僕の理想は、ホットキー一発で立ち上げることができて、
キーボードからインクリメンタルに候補を絞れるタスク切り替えソフトだ。
cltcはそんな僕にとって正にうってつけのソフト。


この手のソフトは常駐させておいて、
すぐに起動できたと方がいいと思うんだけど、
なぜかこのソフトには常駐機能が備わっていない。
まだ開発中みたいなので、今のところは後回しにしいてるのかも?
まあ、自分でスタートアップに登録してしまえば済むことなのだけど。


ホットキーの設定はcltc.iniを書き換えて行う。
でもこれ、僕にはかなり分かりづらかった。
ただホットキーを設定したいだけなのに、随分悩んだよ。
結局僕は以下のように設定した。
これでいつでもCtrl+ENDでcltcを呼べるようになる。

UseNewHotKey=1
Mod=Ctrl
Vk=END


以前日記に書いたbluewindはCtrl+Backspaceで呼べるようにしている。
bluewindもかなり便利だけど、これにさらにcltcが組み合わさるとなると、
かなり快適になる気がするなぁ。
ホットキー+インクリメンタルサーチ(゚д゚)ウマーって感じです。
コマンドラインランチャ bluewind を使ってみる - gan2 の Ruby 勉強日記

続き

もっと楽に呼び出せるように変更した。
bluewind と cltc の呼び出しキーを変更 - gan2 の Ruby 勉強日記

よく使うスーパープレ記法をIME辞書に登録

> を変換すると、>|| や >|ruby| が候補として出てくるようにした。
同様に、< では ||< が出てくるようにした。
けっこう便利かも。
なんでもっと早くやらなかったんだろう・・・。


ついでに 「 で [:title] や、[:image:large] が出てくるようにもしてみた。
ほんとは [ から変換で出せるようにしたかったんだけど、
なぜかそれができないようなので 「 でいくことに。
まあ実際問題 [ でも「 でも何ら変わりないのでよしとする。

キー操作の繰り返しを簡単に行う dmacro.el

例えば、hogeh まで打ってから C-t を押すと、hogehoge になる。
さらにその後、C-t を押していくと、
hogehogehoge、hogehogehogehoge、・・・となる。
もうちょっと複雑な例で、

% hoge
h

から、

% hoge
% hoge
% hoge
% hoge

を作るなんてのもすぐにできる。
これでまた単純作業をこなすのが早くなりそう。


設定はdmacro.elをsite-lisp以下に置いて.emacsに以下を追加すればOK。

;;; dmacro.el の設定  キー操作の繰り返しを C-t で
;; 詳細は dmacro.el 中のコメントを参照
(defconst *dmacro-key* "\C-t" "繰返し指定キー")
(global-set-key *dmacro-key* 'dmacro-exec)
(autoload 'dmacro-exec "dmacro" nil t)

追記

解説ページを見つけた→Dynamic Macro

ミニバッファ内で C-w とすると単語を削除できる設定

.emacsに以下を追加する。

;;; ミニバッファ内で C-w で単語削除。上位パスのファイルを選択する際に便利
(define-key minibuffer-local-completion-map "\C-w" 'backward-kill-word)

ミニバッファを使いやすくする2つの設定

以下の設定を.emacsに追加した。
選択候補がミニバッファに表示されるようになり、
C-s C-r で候補を選択して、エンターで決定できるようになる。
デフォルトは前文一致で候補を表示する。
C-n C-p で部分一致と切り替えが可能。

;;; C-x b でバッファを選択するのが楽になる
(iswitchb-mode t)

;;; mcomplete.el の設定
;; M-x の補完を iswitchb のようにする
;; M-x 以外でもミニバッファで入力する際はいつでも使える
(require 'mcomplete) (turn-on-mcomplete-mode)

mcompleteの配色がけっこうキツめだったので、色を変更することにした。
mcomplete.elを開いて、C-s foregroundし、以下の四箇所を書き換えた。
上2つが前文一致のときの配色。
下2つが部分一致のときの配色。

  '((t (:bold t :foreground "CadetBlue"))) ; before Aquamarine
  '((t (:foreground "CadetBlue"))) ; before Aquamarine
  '((t (:bold t :foreground "MediumSeaGreen"))) ; before SpringGreen
  '((t (:foreground "MediumSeaGreen"))) ; before SpringGreen

本当は.emacsから色を指定するようにして、
mcomplete.el自体は書き換えたくなかったのだけど、
やり方が分からないし、すぐに元に戻せるような変更なので、まあよしとする。

追記

コメントで教えてもらった方法で、
.emacsの書き換えだけで色の変更が行うことができた。
その結果、変更後のmcomplete.elの設定は以下のようになった。
また、mcomplete.el中で書き換えた箇所を元に戻した。
ついでに色は前と少し違うのにしてみた。

;;; mcomplete.el の設定
;; M-x の補完を iswitchb のようにする
;; M-x 以外でもミニバッファで入力する際はいつでも使える
(require 'mcomplete)
;; 文字の配色のカスタマイズ
(turn-on-mcomplete-mode)
(custom-set-faces
 '(mcomplete-prefix-method-fixed-part-face
   ((t (:foreground "CadetBlue" :weight bold))))
 '(mcomplete-prefix-method-alternative-part-face
   ((t (:foreground "CadetBlue"))))
 '(mcomplete-substr-method-fixed-part-face
   ((t (:foreground "MediumVioletRed" :weight bold))))
 '(mcomplete-substr-method-alternative-part-face
   ((t (:foreground "MediumVioletRed")))))

Meadow NetInstall の使い方

NetInstallはMeadow自体のインストールの他に、
パッケージを管理することにも使うことができる。
というか、たぶんこっちが本来の役目?
今まで全然活用できてなかったので簡単にメモしておく。


NetInstallを使うと、Meadowの再インストールもしなくちゃいけなくなって、
今あるMeadowの環境が壊れる可能性があるんじゃないか、
と少し心配していたけどそんなことはなかった。
パッケージの選択のところで、
baseの中にある3つをKeepに設定しておけば、
少なくともMeadow自体は再インストールされないので安心。


あと間違って要らないパッケージを入れちゃったときは、
そこだけ後からUninstallすればOK。
僕は試しにfontのmule-fontsっていうのを入れてみたけど、
なんか変なフォントになったので即効Uninstallした。
今まで特にフォントなんか気にしてなくて、
何も設定してなかったんだけど、
どうやらいつのまにかそのデフォルトのフォントが好きになっていたみたい。
.。oO(ただの慣れですか。そうですか。)


けっこう色々なパッケージを入れられるし、
設定は.emacsの方が優先されるみたいなので、
適当に入れてみてから考えるのもいいかもね。

洞窟物語のクォートとカーリーの名前の由来

Vector: ソフトライブラリ&PCショップ - 国内最大級の フリーソフト ダウンロードサイト
http://www.vector.co.jp/games/review/1059/images/01_s.gif
クォートはQuote、つまり ' のことで、
カーリー・ブレースはCurly Brace、つまり { のことなんだな。
ってことに、ruby-electric.elを見ていて気付く。
クォートは引用って意味しか考えてなかったから、
記号のこととは思わなんだ。


全然関係ないけど、ゲーム関係で昨日知ったこともついでにメモっておく。
マリオの本名はマリオ・マリオで、
ルイージの本名はルイージ・マリオ。
( ´・ω・`)ルイージテラカワイソス
あとドラクエぼうけんのしょは、
あのいや〜な音が流れたときにはまだ消えてなくて、
実際に消えるのは電源切ったりリセットしたときなんだそうな。
すっぱり消えられるよりも後味悪いよこの仕様・・・。