Emacs

スペルチェッカーはやっぱり必要だと思った

Githubのコミットログにスペルミスがあると(というかしばしばあったのだが)恥ずかしいので、Emacsにスペルチェッカーを導入した。 もっと早く導入すればよかった。

右AltキーをCtrlに変更する

ノートパソコンのキーボードだとCtrlキーが左手側だけのことが多いので、Emacsを使っていると左手の小指に負荷がかかる。 右手側にCtrlキーがあれば両手で負荷が分散できる。 大抵のノートパソコンには右Altキーがあるので、Emacsで右Altキーを右Ctrlキーと…

ivy/counselの設定

いろいろ試行錯誤して次の設定に落ち着いた。 ivy 基本設定 (require 'ivy) (ivy-mode 1) (setq ivy-height 30) (setq ivy-use-virtual-buffers t) helmのように正規表現を順不同にする (setq ivy-re-builders-alist '((t . ivy--regex-ignore-order))) デフ…

Emacsの補完機能をHelmからIvyへ移行

バズってたQiitaの記事を参考に、HelmからIvyに移行してみた。 qiita.com 自分が加えた変更は次のとおり。 counsel-M-xの絞り込み開始後のソーティング方法を辞書順に 長さでソートした後、さらに辞書順でソートするようにした。 (defun ivy--sort-by-len (n…

Emacs-Lispのリスト用関数

よく知られたmapcar以外にもリスト操作のための関数がないか探したら、seq-系の関数が該当するようだ。 www.gnu.org (seq-elt sequence index) (seq-length sequence) (seqp sequence) (seq-drop sequence n) (seq-take sequence n) (seq-take-while predica…

Emacsのimenuで選択される関数名の横幅をもっと広くする

Emacsでプログラミングするときにhelm-imenuでよく関数定義へジャンプするのだが、デフォルトだとimenuの候補に出てくる関数名が60文字でぶった切られて、長い関数名が隠れてしまう。名前空間がネストしたり分かりやすいクラス名やメソッド名をつけると60文…

EmacsからRubyのTest::Unitのテストを実行する

経緯 rubyunitからの流れでRubyのテストフレームワークはずっとTest::Unitおよびその互換I/Fを使っている。実は流行りのRspecは使い方を知らなかったりする。 探し方がよくないのかEmacsとTest::Unitを連携させる既存のパッケージが見つからなかったので、Em…