Emacsのテキスト表示に関する属性、すなわちフォント、前景色、背景色、下線などをまとめたものを「フェイス」と呼ぶ。フェイスの概念は、テキストをちょっとカスタマイズしたいときなどに役に立つ。 例:SLIMEの slime-repl-inputed-output-face 下の画像は、Emacs で SLIME の REPL を使っているところ。式の評価結果「1.4142135」が赤で表示されていて見えにくいため、「フェイスを変更して見やすくしよう」という気分になる。 見えにくい部分のフェイスを調べる 問題のテキストに指定されているフェイスを調べることから始める(環境は GNU Emacs 22.3.1)。 具体的には、カーソルを「1.4142135」の所に移動して M-x eval-expression を実行。次いでミニバッファに以下の式を入力する。 (get-char-property
やや昔のsrcを読む為に今更、 summarye.el を入れてみました http://www.bookshelf.jp/soft/meadow_42.html#SEC641 http://www.bookshelf.jp/elc/summarye.el step1 summarye.el の入手 http://www.bookshelf.jp/elc/summarye.el step2 .emacsの編集 次の行を追加 (autoload 'se/make-summary-buffer "summarye" nil t) step3 「M-x se/make-summary-buffer」を実行すると、次の通り この関数一覧からジャンプもできるし、右端には関数の行数も表示されます。
同名のファイル(例えばMakefile)を複数開くと、バッファ名がMakefileとMakefile<2>のようになってしまいます。今まではC-x C-v(find-alternate-file)でどこのMakefileかを判別していました。 uniquify.elを使って (require 'uniquify) (setq uniquify-buffer-name-style 'post-forward-angle-brackets)のように書けばMakefileとMakefileのようになってくれるのでバッファ名だけで識別できます。 uniquify-buffer-name-styleには以下のものが用意されているようです。 nil Makefile Makefile<2> forward WebService-YouTube/Makefile Plagger-Plugin-Custo
かつてJR横浜線 十日市場駅近くのMebius (CPU:Pentium 150MHz)より発信していたウェブログです。 前のエントリーからの続きである。 Font Lock modeの追加ルールを設定するには、font-lock-add-keywordsという関数を使う。ルールは、正規表現のパターンとそれにマッチする部分に適用するface、の組み合わせとして定義する。モード毎の設定が基本だが、現在のバッファのみの設定もできる。 font-lock-add-keywords関数の書式は、 (font-lock-add-keywords モード名 ルールのリスト)である。モード名をnilにすると、現在のバッファに対する設定になる。 ルールの書式はいくつかの種類がある。 a. MATCHER b. (MATCHER . SUBEXP) c. (MATCHER . FACENAME) d. (M
昨晩の Emacs ミニミニ勉強会のネタ。 @tomoyaton 「auto-mode-alist って、("\.el\’" . emacs-lisp-mode) とかが設定されてるけど、なんで “$” じゃなくて “\’” なの〜?」 @masutaka 「言われてみれば確かにそうですね。でも Mule 時代は ("\.el$" . emacs-lisp-mode) って設定されてた気がしますよ。」 結論から言うと、改行にマッチさせないよう、より厳格にしているからだっ た。Mule 時代は “\’” がなかったのかな。 “$” は文字列の終端と改行にマッチする。 ;; hoge.el には当然マッチ (string-match "\\.el$" "hoge.el") => 4 ;; hoge.ell には当然マッチしない。 (string-match "\\.el$" "hoge.ell
2012年3月にEmacsの入門書が技術評論社から出版されました。 https://amazon.co.jp/dp/9784774150024 インストール方法やファイルの開き方などから始まっていて初心者向けの始まり方になっています。それでは初心者向けなのかというとそうでもなく、中盤から後半はrequireしないと使えないElispを使った拡張方法の紹介になっています。 おそらく、初心者の人は1/3か1/2くらい進んだところで一度脱落するのではないでしょうか。逆に、ある程度知っている人は中盤から後半にかけて興味のある話題が増えていくことでしょう。脱落してしまった人は、しばらく前半の機能でEmacsを使って、慣れてきてから再挑戦するとよいでしょう。 後半の拡張方法の紹介部分では多くの方法を紹介するためか、1つ1つの方法については簡単に紹介する程度にとどまっています。よりつっこんだ使い方までは
eldocはEmacs Lisp(他言語も一部対応)でカーソル位置の関数の仮引数をエコーエリアに表示してくれるやつ。標準添付だし、Emacs Lisp書く人ならふつー入れてるよね。 Emacs23のeldocはそれに加えて対応する仮引数がハイライトされるようになっている。 Emacs22な人は http://zchan.homeunix.net/pub/Nevada.APP/Build/emacs-23.0.60/lisp/emacs-lisp/eldoc.el とかから取ってくる。 さらに、eldoc-extensions.elもインストールすると、関数のドキュメントまで出してくれるよ。Emacs23のeldoc.elでないと動かない。 M-x install-elisp http://www.emacswiki.org/cgi-bin/wiki/download/eldoc-exten
もっと使われてもいいのにと思うEmacsの設定周りのメモ。 [関数] (eval-after-load FILE FORM) この関数は、指定されたライブラリFILEがロードされているときにのみ2番目の引数FORMを評価するというもの。 例えばmigemoをロードする時の自分の設定はこんな感じ。 ;; migemoを読み込む。存在しない場合はnilを返す (load "migemo" 'noerror) (eval-after-load "migemo" (quote (progn ;; この辺がmigemoをロードした後に評価される (defadvice isearch-mode (before migemo-off activate) "初期状態は常にnil" (setq migemo-isearch-enable-p nil)) (fset 'toggle-migemo #'mige
設定を見直し中 - すぎゃーんメモ シリーズ。 起動時に必ず読み込む必要ない関数ならautoloadを使う - すぎゃーんメモを書いてから気付いたけど、これで起動時のファイル読み込みを後回しにできるのは「関数に対してのみ」で(macroやkeymapも指定出来るようだけど引数の指定の仕方がよく分からない…)、変数を弄る場合などには使えない。 例えば (autoload 'cperl-mode "cperl-mode" nil t) (setq cperl-indent-level 4) とやろうとしても、cperl-indent-levelはloadされていないと定義されていないので変更することができない。 (※2012-01-05追記: 「変更することができない」は間違い。id:masutaka26さんからご指摘いただきました。ただバイトコンパイルする際に警告が出てしまいます。) eva
設定を見直し中 - すぎゃーんメモ シリーズ。 例えばjs2-modeを設定する場合、起動時に読み込むelispファイルに (autoload 'js2-mode "js2-mode" nil t) (add-to-list 'auto-mode-alist '("\\.js$" . js2-mode)) のように書く、と説明が書いてある。このautoloadって何だろう、と思ってググってみたところ、 The autoload facility allows you to make a function or macro known in Lisp, but put off loading the file that defines it. The first call to the function automatically reads the proper file to insta
color-themeでEmacsの見た目をきれいにする - Qiita Emacs 24以上を使っているという前提があるのですが、独自のテーマを作る場合は color-themeより、Emacs 24から導入された themeフレームワークを使う ことをおすすめです。 機能的には変わらないと思うのですが、color-themeをインストール する必要がないというのがお手軽です。~/.emacs.d以下においておけば、 load-theme関数を使って利用することができます。 サンプル 試しに @kubosho_さんの molokaiを themeフレームワーク版に 書き換えてみました。コードはほとんど同じです。カーソル等のごく一部の パラメータの指定が違うのと、各項目を quoteするぐらいです。 (deftheme molokai "Molokai color theme") (cus
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く