2009-03-01から1ヶ月間の記事一覧

レジスタの変更タイミングまとめ

vim

あまりにも複雑怪奇すぎて混乱したのでまとめ。 わかりにくかった部分だけまとめた。全レジスタを網羅しているわけではないので注意。 前置き レジスタの指定 以下で出てくるレジスタを指定するとは、 ノーマルモードで "x (xはレジスタ名)を前置する。 :del…

guicolorscheme.vim を大幅に改良した

vim

guicolorscheme.vimと言うプラグインがある。 これを入れると、88色か256色のターミナルでGUI用に作られたカラースキームを使用できる。 :GuiColorScheme {color_name} と言うコマンドでカラースキームを読み込むと、その場でカラースキームを解析して適用し…

Project Eulerを始めてみた

About - Project Euler 数学の問題をプログラムを使って解くのが目的。 ユーザ登録すると解答できて、自分の解答状況がわかる。解答するのは答えの数字だけでソースを提出する必要はない。お好きな言語でOK。 こういうの前からやってみたかったんだけど、な…

Vim で JavaScript の e4x をハイライトする

vim

~/.vim/syntax/javascript.vim syn include @javaScriptXML syntax/xml.vim syn region javaScriptE4X matchgroup=xmlTag start="<\z(\k\{-}\)>" end="</\z1>" contains=@javaScriptXML unlet! b:current_syntax start= の部分をわざわざ \k にしてるのは、マルチ…

fnameescape()は使うな

vim

Vim 7.1.299 で fnameescape() なる関数が追加された。これは :edit などファイル名が必要な箇所でファイル名をエスケープしてくれる関数。 例えば VimM#1.txt と言うファイルを開きたいとする。この場合、 :edit VimM#1.txt などとしてもうまく開けない。こ…

Re: function's scope ? - KBDAHOLIC - やぬすさんとこ

vim

KBDAHOLIC - やぬすさんとこ function Func() と function s:Func() は同義。後者の形式で定義しても によるアクセスは可能です。見やすいので後者を推奨。 :command や :autocmd では s:Func() でアクセスできます*1。 を使う必要はないです。 は :map と :…

SKKやめました

skk

SKKを使って見ていたわけだけれども、色々あってSKKを使うのやめました。 ちなみに私が使っていたのは主にSKK-IME。と、skk.vimを少々。 理由はいくつかある。列挙してみる。 タイプ数が多くなる これは宿命ですね。どうしようもないと思う。 単漢字に弱い …

'encoding' オプション

vim

'encoding' and iconv - KBDAHOLIC - やぬすさんとこ ここ見てて思ったこと。:help 'encoding' によると、 It should normally be kept at its default value, or set when Vim starts up. だそうなので、 'encoding' オプションは基本的に変更するのは良く…

BrainF*ck in Vim

vim

http://d.hatena.ne.jp/kei-os2007/20080719/1216440837 BrainF*ck の Vim 実装がこちらで公開されているのだが、問題点がいくつかある。 ループの入れ子ができない 出力が1文字ごとに改行される で、勉強がてら書き直してみた。 フルスクラッチです。まあこ…

勝手にプラグインを比較してみるテスト

vim

今使ってるVimプラグインで、似たような機能を提供するもの同士を比較してみるテスト。あくまで個人的な比較なので参考程度に。と言いたいけど細かい説明相当端折ってるので参考にもならないかも。 ここで挙げている特徴はもう一方に対する特徴であり、もう…

グローバル変数の汚染に注意

vim

Vim プラグインを書く際、使用する変数は可能な限りスクリプトローカルを使い、グローバル変数はプラグインの設定のみに使用するのが望ましい。スコープをなるべく小さくするした方が良いと言うのはVimスクリプトに限った話ではないだろう。 が、Vimスクリプ…

Y Combinator in Vim

vim

つい最近 Y Combinator なるものの存在を知った。理解を深めるために、試しに自分で書いてみることにした。…Vimで。 無名関数 そもそもVimでは無名関数は使えないので正確には Y Combinator とは呼べないのかもしれないけれど、まあそれっぽい動きをするもの…