Emacs

起動時間を短くする・最小init-loader実装

設定を見直し中 - すぎゃーんメモ シリーズ。 起動時に読み込むファイルを分割して整理するためにinit-loader.elを使用していたけど、 benchmark 環境による読み込みファイル名の振り分け ロギング など、諸々便利なことをしてくれている。これらを使わずに…

エディタの設定を見直し、環境を整える理由

なんかここ最近ずっとEmacsの環境整備で時間を費やしてしまっている。エディタの設定にここまで費やす必要があるのだろうか、と自問自答することも少なくない。けど、やっぱりプログラマの道具としてちゃんと使いこなせるようになっておきたいと思うのでやっ…

起動時間を計測する

http://www-tsujii.is.s.u-tokyo.ac.jp/~yoshinag/tips/elisp_tips.htmlで、起動時間の測定方法が紹介されているけれど、before-init-timeとafter-init-timeという変数が定義されているのでコレを使って計算できる。最近のEmacsに新しくついたものなのかな?…

defcustomで定義された変数はcustom-set-variablesで変更すべき?

このへんがよく分かっていない。 anything-command-map-prefix-keyを設定しようとして、起動時の設定ファイルで (require 'anything-config) (setq anything-command-map-prefix-key "C-z") のように設定しても、この変数は確かに設定されるのだけど、実際に…

autoloadとセットでeval-after-loadを使うのが良い?

設定を見直し中 - すぎゃーんメモ シリーズ。 起動時に必ず読み込む必要ない関数ならautoloadを使う - すぎゃーんメモを書いてから気付いたけど、これで起動時のファイル読み込みを後回しにできるのは「関数に対してのみ」で(macroやkeymapも指定出来るよう…

起動時に必ず読み込む必要ない関数ならautoloadを使う

設定を見直し中 - すぎゃーんメモ シリーズ。例えばjs2-modeを設定する場合、起動時に読み込むelispファイルに (autoload 'js2-mode "js2-mode" nil t) (add-to-list 'auto-mode-alist '("\\.js$" . js2-mode)) のように書く、と説明が書いてある。このautol…

perl-completion.elが提供するauto-complete.el用の情報源

設定を見直し中 - すぎゃーんメモから引き続き。 perl-completion.elとauto-complete.elを併用してPerlファイルを編集する際、 (add-hook 'cperl-mode-hook (lambda () (require 'perl-completion) (add-to-list 'ac-sources 'ac-source-perl-completion))) …

設定を見直し中

新年明けましたしちょっと気分を入れ替えてみましょう、ということで Emacsテクニックバイブル ?作業効率をカイゼンする200の技? Emacs Lispテクニックバイブル を読みながら色々見直してみてる。 https://github.com/sugyan/dotfiles/blob/master/.emacs.el…

最小限の設定でEmacsを立ち上げる

Emacs Lispテクニックバイブルを少しずつ読み進めてる。 色々試すのに、普段使ってる環境とは別に何も設定を読み込んでない状態のEmacsを立ち上げられると便利だなーと思ってたところに「テスト・デバッグ」の章で起動コマンドにオプション引数つけて使う方…

nodelintでflymake

node-jslintでflymake - すぎゃーんメモ で設定した、node-jslintによるflymakeを使っていたのだけど、 var util = require('util'); とかに対して警告を出してきてちょっとイラっとする。どうもnode-jslintで使われているjslintがちょっと古いらしく、"util…

エディタフォント色々

Emacsのフォント設定を変えてみた - すぎゃーんメモの続き。 Inconsolataにしてみたものの、あまり馴染めなかった(あくあフォントも一週間使わないと良さ分からないと言われたが30分で挫折)。 他に何か良いのないかなーとTwitterでご意見を集めてみたとこ…

node-jslintでflymake

javascript-modeでのflymakeに、今までSpiderMonkeyを使っていたけど、試しにnode-jslintを使ってみることにした。 GitHub - reid/node-jslint: The JavaScript Code Quality Tool — for Node.js. node-jslintはnpmでinstallすると"jslint"コマンドを提供し…

Emacsのフォント設定を変えてみた

Emacs23 (Cocoa Emacs) 入門から中毒まで : 紹介マニア http://macemacsjp.sourceforge.jp/index.php?MacFontSetting#h3b01bb4 などを参考に。 今まではMenloを使って (create-fontset-from-ascii-font "Menlo-14:weight=normal:slant=normal" nil "menlokak…

SKK(ddskk)を入れてみた

Emacsテクニックバイブル ?作業効率をカイゼンする200の技?作者: るびきち出版社/メーカー: 技術評論社発売日: 2010/08/03メディア: 単行本(ソフトカバー)購入: 27人 クリック: 1,039回この商品を含むブログ (68件) を見るを少しずつ読み進めている。 日本…

flymakeのsyntax-checkが異常終了しても無視するようにする

App::Optionsでrequired引数チェックをしているスクリプトでflymakeが Configuration error has occurred while running (perl -wc hoge_flymake.pl). Flymake will be switched OFF とエラーを吐いてしまい、一度そのバッファを閉じてまた開くと今度はemacs…

CocoaEmacsに環境変数は引き継がれない

exec-pathにshellのPATHを追加する - すぎゃーんメモ で、「普通に(getenv "PATH")からシェルの環境変数PATHが取れます」というコメントをいただいたのですが、どうもCocoaEmacsの場合はshell上で動くものではないため環境変数は引き継がれないようになって…

exec-pathにshellのPATHを追加する

perlbrewを使っているのだけど、どうもflymakeでsyntax checkしようとすると"/usr/bin/perl -wc"を使われてしまっているらしく、モジュール読み込みでエラーがでてしまう。perlbrew用にshellの$PATHで追加しておくもの(デフォルトだと$HOME/perl5/perlbrew/b…

defadviceで定義済みの関数に処理を付け足す

flymakeの勉強をしようと 僕のflymake-perl周りの設定晒し最終版(今現在) - taiyoh独言 を参考にしようと思ってみてみたら、"defadvice"というのが書いてあって、何なのか知らなかったので調べてみた。 GNU Emacs Lisp Reference Manual: Advising Functio…

poファイル編集用のpo-mode.el

Catalyst::Plugin::I18Nで初めて見て、何のことか分からず使ってたpoファイル。 実は様々な場面で使われる多言語のための標準的な形式だったんですね。 これを編集する用のmodeもあるよ、とtypester先生に教えていただいたので入れてみた。 大抵の環境ではパ…

Emacsで"*.t"ファイルに対してproveを実行する関数を書いてみた

unwind-protect: Emacs の中から prove *.tのときはmode-compileでperlじゃなくてproveを実行したい - (ひ)メモ のように設定すれば良いのだけど、せっかくなので少しくらいelisp分かるようになりたいし、ということでanything-projectのソースを参考にしつ…

emacsでmulti-term.elを使ってシェルを利用する

emacsとterminalを使い分けてたけど、ちゃんと頑張って設定すればemacs上のshellで不便なく操作できるかなー2010-06-04 10:10:14 via webってことで Emacs 上で快適に Bash や Zsh を利用する設定 : 紹介マニア を参考に、multi-termを入れてみた。 dotfiles…

emacsのgrep-commandを変更する

anything-grepのデフォルトコマンドを変更する方法が分かりません ><2010-04-22 12:39:09 via Perl Twiterm ってので長いこと悩んでいたんですが、ようやく解決。 (grep-apply-setting 'grep-command "ack ") これでいいみたい。"M-x describe-variable gr…

dotfilesをgithubで管理し始めた

つい勢いで新しいMacBookProを買ってしまいまして。せっかくなので新しい環境で一から色々と入れ直している。 この際だから、ということでずっとゴチャゴチャのまま放置していた設定ファイル集をgithubにあげて管理することにした。 GitHub - sugyan/dotfile…

buffer-nameをuniqueで識別しやすくなるよう設定する

Twitterで質問を投げかけると心優しい方々が教えてくれて、本当に助かります。皆様いつもありがとうございます。 sugyan #emacs index.ttを開いていて他のディレクトリの別のindex.ttを開いたときにbuffer-nameが"index.tt"となってしまってアレなので"dir/i…

標準入力を受け取ってemacsで開く

vimだと、 echo hoge | vim -というように、"-"とオプション指定すると標準入力のものを開いて編集できるらしい。 emacsではどうすればいいのかな?と調べてみたけどよく分からない。とりあえず見つけたのがコレ。 unix - How to make Emacs read buffer fro…

複数のbufferの消し方を知らなかった件

本当に知らなかったので、恥ずかしがらずに聞いてみた。 すぎゃーん on Twitter: "いまだに複数のbufferを一気に閉じる方法を知らないんですが、どうすればいいんでしょうか #emacs" 教えていただきました!皆様ありがとうございます。 twsigma @sugyan C-x …

Cocoa Emacsに移行してみた

Emacs 23.1に入れ替えてみた。以下から http://github.com/typester/emacs $ ./configure --with-ns $ make bootstrap $ make installで、動かしてみると、今まで使ってたCarbon Emacsと微妙に違うところがちらほら。 少し.emacs.elを書き換えた。 まずは日…

emacsでのPATHとperl-completion.elのplcmp-installed-modulesでワケ分からなくなったメモ

自分は(たぶん)Mac Portsで入れた/opt/local/bin/perlを主に使っている。 で、/usr/bin/perlでなく/opt/local/bin/perlを優先的に使うように、.zshrcで export PATH=/opt/local/bin:/opt/local/sbin:/usr/local/bin:$PATH と設定してあり、CPANでモジュール…

tokyo-emacs #02 に参加してきた

id:hayamizさんに感謝、です。 (tokyo-emacs #x02) : 観覧希望者用ページ : ATND 初心者から抜け出していない下っ端Emacs使いの自分が知らない世界を色々と垣間見ることができました。 あんなことやこんなことができるのかー、と。 とても勉強になりました。…

pythonのファイルがjython-modeで開かれるときがある

明らかにpythonのコードで、拡張子もpyで、普通にpython-modeで開かれるであろうファイルが、何故かjython-modeで開かれていた。 なんでかなーと思って調べてみたら、'com'で始まる自作パッケージをimportする文が入っていたからだったらしい。 Emacsのpytho…