Entries from 2012-01-01 to 1 month

起動時間を計測する 改訂版

起動時間を計測する - すぎゃーんメモ の続き。 id:tomoyaさんからコメントで教えていただきまして、emacs-init-timeという関数が存在していることを知りました。定義は (defun emacs-init-time () "Return a string giving the duration of the Emacs initi…

ddskk 14.4

設定を見直し中 - すぎゃーんメモ シリーズ。 SKK(ddskk)を入れてみた - すぎゃーんメモ のときに導入していたけど、改めて入れてみようと思ってみてみたら、DDSKK 14.2以降からはAPELなどを入れる必要がなくなったそうで。 http://openlab.ring.gr.jp/skk/s…

anything-c-yasnippetを使わずにyasnippetをanythingインタフェースで選択する

設定を見直し中 - すぎゃーんメモ シリーズ。 yasnippetを使ったスニペット補完を初めて使い始めている。で、補完の呼び出し方には通常のyas/expandコマンドを呼ぶ以外に、auto-complete-configに含まれるac-source-yasnippetを使う方法や、anythingインタフ…

expressでapp全体の設定値をroutesで使う(module間で変数を受け渡す)方法いろいろ

Expressでテンプレートからプロジェクトを作ると、現在の最新版2.5.4では . ├── app.js ├── package.json ├── public │ ├── images │ ├── javascripts │ └── stylesheets │ └── style.css ├── routes │ └── index.js └── views ├── index.jade └── layout.ja…

起動時にはanythingを読み込まないようにして起動速度を上げる

設定を見直し中 - すぎゃーんメモ シリーズ。 まぁ普通は一度立ち上げたらそうそう落とさないので起動速度を上げること自体がほとんど意味ないのだろうけど… 設定見直すために何度も立ち上げ直して確認したりするには速い方が嬉しいので。 autoloadとセット…

js2-modeでエラー箇所を行き来する

設定を見直し中 - すぎゃーんメモ シリーズ。 今まで使っていなかったのだけど、今回初めてjs2-modeを使ってみている。巨大ではあるものの、elispで実装されたJavaScriptパーサを持っていてリアルタイムにsyntax checkをしてくれるのが魅力。なので、flymake…

フォントの情報を取得

ELISP> (font-info (frame-parameter nil 'font)) ["-apple-Bitstream_Vera_Sans_Mono-medium-normal-normal-*-14-*-*-*-m-0-iso10646-1" "BitstreamVeraSansMono-Roman" 14 17 0 0 0] ELISP> (font-face-attributes (frame-parameter nil 'font)) (:family …

css-modeでのauto-completeとオムニ補完

CSSファイルを編集するとき用のauto-completeの設定はauto-complete-configに含まれていて、 (add-hook 'css-mode-hook 'ac-css-mode-setup) と書いておくと、ac-source-css-propertyというものがcss-modeでのac-sourcesに含まれるようになる。 …で、コイツ…

anything-grepでackを使うとマッチした部分のカラーリングが反映出来ない

anything-grep.elを使うと、シェルコマンドとしてgrepなどの検索をかけて、その結果をanythingで絞り込むことができる。ディレクトリ以下のファイルすべてを一発で検索、などできるのが魅力。 EmacsWiki: anything-grep.el 現在の最新版は1.27。 例えば、any…

find-file-visit-truenameを設定する

設定を見直し中 - すぎゃーんメモ シリーズ。 dotfilesをgithubで管理し始めた - すぎゃーんメモ で書いた通り、自分の".emacs.d"は直接ディレクトリを作っているのではなく、他の場所にあるディレクトリ(今の自分の環境では$HOME/dev/sugyan/dotfiles/.emac…

defadviceを使ってrequireにかかる時間を計測する

起動時間を計測する - すぎゃーんメモにてid:hirose31さんからコメントで http://www.bookshelf.jp/pukiwiki/pukiwiki.php?Meadow%2F%B5%AF%C6%B0%C2%AE%C5%D9 の下の方の defadvice require で個別に時間測るのとか捗りそうですね!! と教えていただきまし…

anythingでのpatternにカーソル位置の単語を使う

よく読んでなくて危なく車輪の再発明をしようとしてしまうところだったのでメモ。 anythingで何か行う際に、現在のカーソル位置にある単語を使いたいときがあったりする。例えばanything-occurでバッファ内にある同じ変数名を探すときなど。普通にM-x anythi…

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

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

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

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

すぎゃーんメモの設定

自分で設定しておいて忘れてるのでメモ。 基本的に本文をヒラギノ丸ゴシックにして、コード部分を"Bitstream Vera Sans Mono"(環境にインストールされてないと見られない?)もしくは"Courier"にしてる。 あとはpreタグ内の折り返しの制御だっけ。もっと良い…

起動時間を計測する

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…