移転します

Markdown 厨の僕には、はてな記法はむずかしすぎました。記事を書くたびに、はてな記法がネックになっていたので、いい加減移転します。http://cx4a.blogspot.com/

popwin.el v0.3をリリースしました

popwin.el v0.3をリリースしました。表示まわりの修正が主です。個人的には過去最高の安定度だと思います。v0.3本体は次のURLから取得してください。https://github.com/m2ym/popwin-el/tree/v0.3install-elispあるいはauto-installを持っている人は次の式を…

主張しないスクロールバーモード、yascroll.elをリリースしました

恥をしのんで告白しますが、実は僕は数カ月前まで標準のスクロールバーモードを有効にしていました。明確な目的があったわけではなく、単純に自分の編集箇所を視覚的に知りたかっただけです。しかしながら、この標準のスクロールバーモードは、個別のウィン…

popwin.el v0.2をリリースしました

popwin.el v0.2をリリースしました。いくつかの対話コマンドの追加と雑多なバグ修正がメインです。v0.2は次のURLから取得できます。https://github.com/m2ym/popwin-el/tree/v0.2install-elispやauto-installでインストールする場合は次の式を評価してくださ…

ヘルプバッファや補完バッファをポップアップで表示してくれるpopwin.elをリリースしました

ヘルプバッファや補完バッファをポップアップで表示してくれるpopwin.elをリリースしました。popwin.elはEmacsにポップアップウィンドウという概念を導入することにより、バッファを表示する(display-buffer)際のEmacsのトチ狂った仕様を矯正します。この…

久しぶりの日記

久しぶりの日記です。実に半年ぶりですね。ネタがなかったわけではありません。単に文章を書くのが面倒だっただけです(作文は苦手なのです)。逆に、書きたいと思わせるほどのネタがなかっただけなのかもしれません。人間の学習曲線は指数的であると言われ…

auto-complete v1.3をリリースしました

auto-complete v1.3をリリースしました。http://cx4a.org/software/auto-complete/主張するほどの新機能はありません。現状に不満がなければアップグレードしなくてもいいかもしれません。なお詳しい変更点は以下のURLにあります。http://cx4a.org/software/…

定義元ジャンプなどに対応したRSense v0.3をリリースしました

定義元ジャンプなどに対応したRSense v0.3をリリースしました。http://cx4a.org/software/rsense/index.ja.htmlv0.2からの詳しい変更点は次のURLを参照していただくとして、http://cx4a.org/software/rsense/changes-v0.3.ja.htmlここでは次のv0.3の新機能に…

C/C++のための開発援助ツール、GCCSenseをリリースしました

C C++

未踏プロジェクトの支援を受けて開発していた、C/C++のための開発援助ツールGCCSenseをリリースしました。配布物やドキュメントは次のURLから入手できます。http://cx4a.org/software/gccsense/index.ja.html開発援助ツールと銘打っていますが、現状利用でき…

Rubyのための開発補助ツール、RSenseをリリースしました

未踏プロジェクトの援助を受けて、ここ数ヶ月集中して開発していた、Rubyのための開発補助ツールRSenseをようやくリリースしました!配布物やドキュメントは次のURLから入手できます。http://cx4a.org/software/rsense/index.ja.htmlRSenseの最大の特徴は、…

auto-complete.elがpos-tip.elに対応しました

@iRi_Eさん作のpos-tip.elにauto-completeが対応しました。補完のポップアップヘルプで利用できます。pos-tip.el: http://www.emacswiki.org/emacs-en/PosTipauto-completeのコードはいつものようにGitリポジトリから取得してください。pos-tip.elを使うには…

「スクリプト言語としてのEmacs Lisp」資料公開

3/18の「ありえるえりあ勉強会」で使った資料を公開します。応用編はまだ作りかけですが、少しでもEmacs Lispを知っている人なら、スクリプト言語としての利用が十分可能になるよう網羅されています。http://cx4a.org/pub/emacs-lisp-for-scripting.ja.html

auto-completeのヘルプ機能改善(persist-help, last-help)

auto-completeのヘルプ機能を少し改善してみました。コードはGitリポジトリから取得できます。http://cx4a.org/software/auto-complete/#Source_Code変更点:1. ヘルプ表示後に操作を行っても自動的に消えないバッファヘルプ機能(persist-help) 2. 前回補完…

auto-complete v1.2をリリースしました

次のURLから最新版を手に入れることができます。http://cx4a.org/software/auto-complete/index.ja.htmlv1.2の変更点は次のURLから確認できます。http://cx4a.org/software/auto-complete/changes-v1.2.ja.htmlデモムービーです。

3/18にEmacs勉強会やります

http://atnd.org/events/3264僕は「Emacs Lispによるスクリプト処理」というお題で30分ほど喋らさせていただきます。Emacs勉強会と銘打ってますが、僕の話す内容はむしろ非Emacsユーザー向けです。人間というのは多種多様なのです。肌に合わないならわざわざ…

2009年下期未踏ユースで採択されました

本家HPで詳細情報が掲載されるまでとっておくつもりでしたが、結構待たされるようなので今さらですが公表してしまいます。知っている人は知っていると思いますが、2009年下期未踏ユースで採択されました。http://www.ipa.go.jp/jinzai/mitou/2009/2009_2/you…

auto-complete.elに補完候補を賢くソートしてくれる機能、comphistを実装

最近、auto-complete.elの拡張ばかりでパフォーマンスや安定性を度外視してる感がありますが、今回も凝りずにauto-complete.elの拡張の話をします。お許しを。auto-complete.elの開発を始めて以来、補完候補の選択の手間を減らせないか、という意見を定期的…

auto-complete.elが曖昧マッチに対応

auto-complete.elを曖昧マッチに対応させるため、今回からfuzzy.elという拡張が同封されるようになりました。この拡張は必須ではありませんが、曖昧マッチを使う場合は必要になります。曖昧マッチで補完を行うにはac-fuzzy-completeコマンドを実行します。こ…

auto-complete.el, popup.elがインクリメンタル検索に対応

先ほどauto-complete.el, popup.elをインクリメンタル検索に対応させるコードをリポジトリにコミットしました。補完中にC-sすることによりインクリメンタル検索が始まります。そのまま文字を入力することでパターンを更新し、RETで終了できます。popup.elで…

popup.elの関数名の変更に関して

先日、github上のIssue Tracking Systemにおいて、popup.elで使用しているpopup-menuという関数がEmacsに標準登載されているmouse.elの関数をシャドウしているというバグが報告されました。Emacs Lispの流儀に従えばファイル名と名前空間が一致するため、pop…

Lisp的直積集合

可変なループ構造を必要とする問題*1に関しては、再帰やスタックを使って可変なループ構造に対応するのがプログラミングの常套手段ですが、そのような手段がそもそも必要になるのは、for文を動的に増やせないという問題に絡んでいます。それじゃfor文を動的…

迷路の最短ルートを探索するEmacs Lisp

元ネタ: http://okajima.air-nifty.com/b/2010/01/post-abc6.html幅優先検索を使えば一瞬で解けるのでいちいち晒すほどのネタではありませんが、解決手順をEmacs Lispでアニメーションできたら面白いかなと思ったのでやってみました。C-x bで適当なバッファ…

auto-completeに関数と変数の情報源を追加

ac-source-symbolsは大雑把すぎるので、もう少し細かく制御できる情報源を追加しました。一つは関数をオムニ補完するac-source-functionsという情報源で、もう一つは変数を補完するac-source-variablesという情報源です。ac-source-functionsは(の直後のシン…

popup.elによるポップアップメニュー、カスケードポップアップメニュー、ツールチップの実現

さまざまな現代的なインターフェースを実現できるようpulldown.elを大幅に拡張しました。それに伴って抽象度も上がったため、pulldown.elという名前は少し内容にそぐわなくなりました。そこでpulldown.elあらためpopup.elという名前で開発を続けていくことに…

指定したポイントにうまくツールチップを表示できない

x-show-tip関数を使えばマウスカーソルからの任意の相対位置にツールチップを表示できますが、あくまでマウスカーソルと併用することを前提とされているため、きわめてありえるケース、つまりバッファ上の論理的なポイント付近にツールチップを表示すること…

scratchバッファで不用意に評価されないようにする

scratchバッファの存在意義であるC-j(カーソルの直前にあるS式を評価して出力)ですが、関数定義中などでは一時的に通常の動作(改行+インデント)に戻ってほしいことがあります。次のコードを評価すると、まさにその挙動を手に入れることができます。 (de…

auto-completeに大文字小文字を区別しないオプションを追加しました

ac-ignore-case変数をtあるいはsmartにすることにより、大文字小文字を区別せずに補完できるようになりました。デフォルトはnilです。ac-ignore-case変数をtにすると、無条件に大文字小文字を区別しなくなります。smartにすると、プリフィックス(補完中文字…

loopマクロのcollect節でintoを使うと非常に遅い

loopマクロでcollect節と一緒にintoを使うと演算コストが非常に大きくなるという話。原因を探るためにintoなしとintoありのloopマクロをmacroexpandで展開してpretty-printしてみます。どちらの演算式も返す値は同じになります。 ;; intoなし (pp (macroexpa…

auto-complete 1.0をリリースしました

微妙に政治的な理由によりauto-complete 1.0を今日リリースしました。次のURLから入手できます。http://cx4a.org/pub/auto-complete-1.0.tar.bz2開発リポジトリからv1.0タグをチェックアウトするのもありです。 $ git clone git://github.com/m2ym/auto-comp…

同じメジャーモードのバッファ内の単語を補完する

あるユーザーからの要望で、同じメジャーモードのバッファ内の単語を補完するauto-complete用のソースを追加しました。今までは現在のバッファ内の単語を補完するac-source-words-in-bufferと、全てのバッファ内の単語を単語を補完するac-source-words-in-al…