良きに計らってリージョン選択してくれるコマンド(書き途中)

id:k1LoWさんと居酒屋で、 連打すると良きに計らってリージョン選択してくれるコマンドがあると便利ですよね。 という話をしたので考えてみました。書きかけ版です。 関数名とか適当です。 (defun auto-region-paren (&optional forward-char) (ignore-error…

バッファ内を走査してregexpにマッチしたストリングのリストを返す関数

よく使うので汎用的な関数を作って、それを使うことにしました。 codereposのブランチで作業しているperl-completion.elのversion1.0で使う予定です。 (eval-when-compile (require 'cl)) (defun* plcmp-collect-matches (re &optional (count 0) (match-str…

anything-sourceを選択してanythingを起動するanything-source

(defvar anything-c-source-call-source `((name . "call source") (init . (lambda () (with-current-buffer (anything-candidate-buffer 'global) (let ((sources (loop for sym being symbols for s = (symbol-name sym) when (string-match "^anything-c…

anything-c-moccur.el更新 version 0.32

id:rubikitchさんからコメント欄で教えていただきました。 regexp-quoteを入れておかないと場所によっては無限ループになるようです。 (defun anything-c-moccur-occur-by-moccur (&optional prefix) (interactive "P") (if prefix (anything-c-moccur-resum…

anything-c-moccur.el更新 isearch的なコマンドとresumeコマンドを追加しました。

追加したのは以下の三つのコマンドです。 anything-c-moccur-resume anything-c-moccur-isearch-forward anything-c-moccur-isearch-backward anything-c-moccur-resume anything-c-moccur-resume コマンドは anything-resume のラッパーです。 anything-c-m…

末尾に改行がないバッファで(while (re-search-forward (rx symbol-end) nil t))するとemacsがハングする気がする

末尾に改行がないバッファで以下のコードを実行するとemacsが落ちる気がします 自分のcarbon emacs環境だとC-gでもexitできないからanything-c-occur-by-moccurで落ちるときがあった。 (require 'rx) (while (re-search-forward (rx symbol-end) nil t)) 他…

anything-c-moccurにパターンを元にquery-replace-regexpを起動するコマンドを追加

いつもコピーしてC-M-%打っていたのでコマンドにしてみました。 デフォルトだとanything-c-moccur-occur-by-moccur起動中にC-M-%にバインドされます。あと、パターン入力中に使われるsyntax-tableをanything-current-bufferのsyntax-tableに変更しました。an…

anythingが最新版か確認するコマンド

(require 'url) を使ったネタです。 (defun anything-c-update-check () (interactive) (require 'url) (condition-case e (let* ((re "\\$Id: anything\\.el,v \\([0-9.]+\\)") (cur-version (string-to-int (when (string-match re anything-version) (mat…

list-load-path-shadowsのanything-source

(defvar anything-c-list-load-path-shadows-cache-buffer nil) (defvar anything-c-source-list-load-path-shadows `((name . "List load pash shadows") (init . (lambda () (unless (anything-candidate-buffer) (save-selected-window (call-interactive…

anything-match-pluginをつかっていて、candidates-in-bufferをつかったソースを起動する際にanything関数の第二引数で空白のみを指定するとエラーになるっぽい

2008/09/07 追記: 最新版では直っていました。 id:rubikitchさんからコメントいただきました。 手元のやつだとなりませんね… とりあえず最新版をどうぞ。 最初に指定したパターンが候補の先頭に出るようになっています。 さらに「!pattern」でpatternに一致…

anything-c-dabbrev.elを最新版のanythingに対応させました

anything-c-dabbrev.elをcodereposにコミットしました - IMAKADO::BLOG が最新版のanythingで動かなくなっていたので修正。codereposにコミット済みです。

anything-c-moccur.elを最新版のanythingに対応させました

過去のanything.elとは互換性がないので注意してください。 anything-c-moccur.elの設定や使い方等のまとめエントリー - IMAKADO::BLOG に追記しました。 リポジトリの構成が少し変わりました。 最新版のanythingのソース、結構読みました。 抽象化、テスト…

忙しい

今、公私共に非常に忙しいです。 自分が書いたanything関連のsourceのメンテナンスできてなくて凄くつらいです。 id:rubikitchさんがanything.elのメンテナンスを引き継ぎ、怒濤の勢いで新機能が追加されていってますね。 メンテナンスお疲れさまです。そし…

シンボルがmacroかどうかを判定するmacrop関数の実装

edebugパッケージで提供されるedebug-macrop関数を参考にしました。 prefixとしてmy-をつけてあります。 確実に判定できるかどうかは未検証です。 (defalias 'my-func1 'my-func2) (defalias 'my-func2 'my-func1) ↑のような関数の場合に無限ループにならな…

コマンド名と割り当てているキーの文字列のリストを返す関数

anythingでmenuを作れないかと思って調べたのでメモ。 (defun get-describe-command-cands (s) (loop for sym being the symbols for sym-name = (symbol-name sym) when (and (string-match s sym-name) (commandp sym)) collect (substitute-command-keys …

elisp 再帰的にファイルを探す関数って標準ではない?

探してみたけど見付からなかったので、それっぽい動きをする関数を書いてみた。 (defun IK::directory-files-recursively (regexp &optional directory type) (let* ((directory (or directory default-directory)) (predfunc (case type (dir 'file-directo…

anything-c-moccur.elの設定や使い方等のまとめエントリー

このエントリーはcolor-moccurとanythingの連携をするanything-c-moccur.elのまとめです。 anything-c-moccur関連の情報がブログ内で散らばらないように、関連した情報はこのエントリーからリンクするようにしていきます。 このエントリーは随時編集されます…

color-moccurとanythingの連携をするanything-c-moccur.elをcodereposにコミットしました

codereposにコミットしたのでアナウンスだけ先にしておきます。 color-moccurの便利さとanythingの気軽さが組み合わさって、もう M-x occur には戻れなくなる感じです。 インストールには、color-moccur.elとanything.elが必要です。 ダウンロード http://sv…

perl-completion.el アイデア 正規表現コンテキストで名前付き文字の補完

ベストプラクティス読んでて思いついた。 m/\N{DELETE}/ みたいな名前付き文字の補完もサポートする。todo

perl-completion.elに perldoc -m で開く動作を実装

perl-completion.elに perldoc -m で開く動作を実装しました。 モジュールとかメソッドとか選択中に M(shift+m)でチラ見してenterで開くみたいな使い方をします。 EmacsでPerl開発する上で必須な設定 #3 - perldoc-m - Kentaro Kuribayashi's blog でやって…

anything-c-dabbrev.el 候補の並び順を修正

hoge-2 hoge-1 hoge-`!!' hoge-3 hoge-4こんなバッファでカーソルが`!!'の位置にあるときに候補が順番に並ぶように修正しました。

anything-c-dabbrev.elをcodereposにコミットしました

http://svn.coderepos.org/share/lang/elisp/anything-c-dabbrev/anything-c-dabbrev.el これはなに? id:rubikitchさん作のanything-dabbrev-expand.el anything-dabbrev-expand.elでdabbrevの部分マッチをサポート! - http://rubikitch.com/に移転しまし…

近況

最近、emacs-lispを書くのを支援するマイナーモードを書いています。 またanything使っています。 tokyo-emacsのときに使っていたやつを高速化したり機能を追加してる感じです。 obarrayにインターンされているシンボル全てを対象に絞り込みする場合にmatch…

候補が一つしかなかったときの動作 アイデア

補完候補が一つしかなかったときはanythingを起動しないで挿入したほうが便利かもしれない。と今思った。

perl-completion.el バージョン0.3をcodereposにコミットしました。

ダウンロード 以下からダウンロードできます。 browser: http://coderepos.org/share/browser/lang/elisp/perl-completion/trunk/perl-completion.el svn: svn co http://svn.coderepos.org/share/lang/elisp/perl-completion/trunk/ perl-completion 変更点…

perl-completion.el (require 'dabbrev)抜けてました

(require 'dabbrev)が足りない気がするけど http://del.icio.us/Ashizawa すいません抜けてました。次のコミットで追加します。あざーっす。

macroの勉強をかねてelisp上にmy言語?っぽいものを作ってみるテスト。

全部マクロで書いちゃえば (eval-when-compile (require 'twenty)) みたいにしてバイトコンパイルしてランタイムにはロードしないように使えば名前空間汚さないと思うので自分の作品で気兼ねなくつかえるかなと思って。(間違ってるかもしれない)例が適当です…

perl-completion.el更新 いくつかのコマンドを追加しました

http://svn.coderepos.org/share/lang/elisp/perl-completion/trunk/perl-completion.el ドキュメント引くためのコマンドとモジュールやバッファ内でuseしているモジュールのメソッドなどのキャッシュをクリアするコマンドを追加しました。補完系のコマンド…

cperl-modeにanythingを使った補完機能を追加するperl-completion.elをcodereposにコミットしました

これはなに? cperl-mode向けのマイナーモードです。 useしているメソッド、インストールされているモジュール、組み込み変数,関数、他のperlバッファの関数,変数、バッファのdabbrev候補などを補完したりperldocを引いたりする動作をanythingのUIで実行する…

テスト テスト