vim

31 howm-mode.vim (2-9) howmSchedule がまぶしい

vim

gVim で [2008-01-29]@ のハイライトに使われている howmSchedule がまぶしくて仕方ないので修正。syntax/howm_importantdate.vim を開き、以下のように howmSchedule を修正。 hi howmSchedule ctermfg=Green ctermbg=Grey guifg=DarkGreen guibg=#d0d0d0 g…

30 gj, gk ( 表示行で下(上)に移動 )

vim

いつのまにか、:se nowrap の画面外での表示がおかしくなっていたので、:se wrap で使うことにした。元々、はてなダイアリを書くときは :se wrap して書いていたし、別に不便ではない。ただ、前々から気になっていたことなんだけど、j, k が分かりにくい動作…

29 gv ( 再選択 )

vim

最近まで知らなかった Tips 。gv で再選択。ビジュアルモードで範囲選択したあと、コマンド入力に失敗したりして、選択解除されちゃった場合、ノーマルモードで gv とすることによって、再選択できるみたいですね。これは知らないと損するね。yy を ddu でや…

28 howm-mode.vim (2-9) 固定文字検索の際にハイライトがおかしいのを修正

vim

検索自体は正しくできているんだけど、ハイライトがおかしいので修正してみた。 function! s:FullTextSearch(searchWord, searchWordType) if a:searchWord == '' | return 0 | endif call s:OpenSearchWindow(a:searchWord, a:searchWordType) " ... endfun…

27 howm-mode.vim (2-8) map に を使う

vim

直接 map するのではなく一旦 を使って、.vimrc でユーザが自由に設定できるようにしてやる。自分で特に設定しない場合、動作は変わらない。 if !hasmapto('<Plug>HOWM_ShowDirectory') nmap <silent> <Leader>,a <Plug>HOWM_ShowDirectory endif if !hasmapto('<Plug>HOWM_OpenMemo') nmap <silent> <Leader>,c <Plug></plug></leader></silent></plug></plug></leader></silent></plug>…

26 howm-mode.vim (2-7) プレビュー時のちらつき防止

vim

今回からタイトルの書き方を変えてみた。タイトルで内容が分かった方がいいなと思った。あと、名無しのVIM使いさんとこのリンク集に追加されていた。ここのところ文法解説してなくて、すいません。また Dictionary とか見ます。さて、howm-mode.vim プレビュ…

第25回 Vimスクリプト入門みたいの(スクリプトを読みながら勉強してみる、2-6)

vim

読みにくいと大ブーイングだった migemo() + :vimgrep を利用する形への改造は終了。今回は細かい部分を変更してみる。固定文字検索は、関数的にはあるんだけど map が書かれていなかったので keymaps に以下のように追加。正規表現でなく、文字列を検索した…

第24回 Vimスクリプト入門みたいの(スクリプトを読みながら勉強してみる、2-5)

vim

まずは OpenSearchWindow() に可変長の引数を追加する。b:searchWordType という変数を作り、既定値を 0 ( オリジナルの動作 ) としておく。 " 検索結果表示用ウィンドウを開く " searchWord が空でなければ searchWord をハイライト. " searchWord を b:se…

第23回 Vimスクリプト入門みたいの(スクリプトを読みながら勉強してみる、2-4)

vim

さて、GrepSearch(), ParseSearchResult() を見ていきたい。それぞれをちらちらと確認してみた。ParseSearchResult() の説明文を信じるなら、GrepSearch() の結果を真似できる関数なら、問題なく動作しそうだ。GrepSearch() からは grep.vim の GrepSearch()…

第22回 Vimスクリプト入門みたいの(スクリプトを読みながら勉強してみる、2-3)

vim

ぺたり。さて、もう一度 FullTextSearch() に戻る。ざっと流れを確認してみる。GrepSearch() の結果を ParseSearchResult() が受けとる。それが 0 より大きいか、引数がファイルパスなら mtime でソートして、結果を整形して、カーソル位置を調節して終了。…

第21回 Vimスクリプト入門みたいの(スクリプトを読みながら勉強してみる、2-2)

vim

今回はちょっと補足をしてみます。順序が逆になってしまいましたが、「なぜ howm-mode.vim なのか」だとか、「そもそも howm-mode.vim って何なのか」から書きたいと思います。 そもそも howm-mode.vim って何? 前回書いたように、今回の「読み」は howm-mo…

第20回 Vimスクリプト入門みたいの(スクリプトを読みながら勉強してみる、2-1)

vim

ええと、今回はすごくメモです。何がメモって作業メモです。今回のターゲットは howm-mode.vim です。テーマとしては「 +migemo でコンパイルされている場合に使いやすいように修正しよう」ということで、まあ、そのままですね。:version とやって、+migemo …

第19回 Vimスクリプト入門みたいの (幅ゼロの肯定先読み)

vim

短かくしてみた。 exe 'syntax match howmMemoTitle display "\(^'.g:howm_title_pattern.' \)\@<=.*"' " これがよくわからないと id:kuhukuhun に聞かれた。自分もわからなかったので、 " Google先生に相談してみたところ、幅ゼロの肯定先読みとか言うらし…

第18回 Vimスクリプト入門みたいの (スクリプトを読みながら勉強してみる、その6)

vim

また順番まちがえた。くふん。ぐだぺたり。 " 第18回 Vimスクリプト入門みたいの " (スクリプトを読みながら勉強してみる、その6) " " QuickBuf を読む、第6回。 " 第1回では :map を見て、 " そこから呼ばれる s:init(), SBRun() を見ることにした。 " 第2…

第17回 Vimスクリプト入門みたいの (スクリプトを読みながら勉強してみる、その7)

vim

これで QuickBuf は最後。だらだらやりすぎ、次も作っていないの、ダメさ爆発。次回からは短かくする。決めた!というわけで、ぺたり。 " 第17回 Vimスクリプト入門みたいの " (スクリプトを読みながら勉強してみる、その7) " " 前回までで QuickBuf をひと…

第16回 Vimスクリプト入門みたいの (スクリプトを読みながら勉強してみる、その3)

vim

へたこいた。超順番間違えた。番号をふりまちがえたせいで、その3が抜けてるのに気づいてなかった。とりあえず、ぺたり。 " 第16回 Vimスクリプト入門みたいの " (スクリプトを読みながら勉強してみる、その3) " " 順番まちがえたので、16回に入れてみる。 "…

第15回 Vimスクリプト入門みたいの (スクリプトを読みながら勉強してみる、その5)

vim

そろそろ次をやらないとまずいな。changelog.vim か howm-mode.vim を見ようと思ってる。genutils.vim だっけか、あれもちらちらと見てる。あれはバッファやらウィンドウまわりの関数が特に強いのかな。いつものように、ぺたり。 " 第15回 Vimスクリプト入門…

第14回 Vimスクリプト入門みたいの (スクリプトを読みながら勉強してみる、その4)

vim

機械的にぺたり。 " 第14回 Vimスクリプト入門みたいの " (スクリプトを読みながら勉強してみる、その4) " " QuickBuf を読む、第4回。 " 第1回では :map を見て、 " そこから呼ばれる s:init(), SBRun() を見ることにした。 " 第2回では s:init() を見て、 …

第13回 Vimスクリプト入門みたいの (スクリプトを読みながら勉強してみる、その2)

vim

第二回。今日の基本日記でも書いたとおり、本を読んでいたので、これは随分前に書いたもののコピペ。あまり確認せずにはっつけてるのでミスがあるかもしれません。あと内容の割に説明もすくないです。マッピングやシンタックスは、まだあまり分かっていない…

第12回 Vimスクリプト入門みたいの (スクリプトを読みながら勉強してみる、その1)

vim

書いてある書いてあると言いつつなかなかうpしていなかったVimのアレです。今回からスクリプトを読んでます。だらだらと読んでいきますよ。「ここが間違ってる」とか、「これもいいけど、他にもこういうことを勉強したほうがいいよ」みたいな意見とか感想と…

第11回Vimスクリプト入門みたいの(リストソート用関数・変換用関数・関数呼出用関数)

vim

ええと、うまく分割できなかったので、メモをほとんどそのままうp。昨日書いたロックマンは片付いたんで、次は課題図書です。Vimはその3つくらい後かな。優先順位が低いです。 あと、ええと、ブクマのコメ確認しました。genutilsやらtlibやらですね、見てみ…

第10回Vimスクリプト入門みたいの(リスト削除関数)

vim

今日は手抜き。ちょいと読書やらロックマンやらで忙しい。 " リストの削除用関数 " remove(), filter(), map() " " リストの削除用関数といいつつもmap()は明らかに違う。 " filter()と似ているので、一緒に書くことにした。 " 今日は忙しいのでひかえめな分…

第9回Vimスクリプト入門みたいの(リスト追加・複製関数)

vim

第7回から続いているリストの3回目。前回でリストから情報を取得できるようになったので、今度は要素を追加してみるよ。あとは、次回以降に備えて複製関数について。 " リストの追加用関数と複製用関数 " add(), insert(), extend(), +演算子, copy(), deepc…

第8回Vimスクリプト入門みたいの(リスト情報取得関数)

vim

結局一日一回更新でいっぱいいっぱい。もっとクオリティ下げて毎日やるべきか、それともこのクオリティ・間隔を維持すべきか。ある程度まとまった単位でないと書きにくい気はするんだけど、逆に読むときは短い方が読みやすそうなんだよね。あと目標がほしい…

第7回Vimスクリプト入門みたいの(リスト)

vim

長くなったので分割して、書きだめするよ。汚いとか言うな。これは18日分。 " usr_41 vimスクリプトの作り方から " 「41.8 リストと辞書」より " " 変数の型について、あいまいな知識のままやってきたが、 " そろそろ文字列と数値以外の型が使いたい。そう思…

第6回Vimスクリプト入門みたいの(キーマッピング)

vim

随分、間隔が空いちゃった。これが17日分。 " usr_40.txt 新しいコマンドを作るから " 「40.1 キーマッピング」より " " 前回までに関数の呼び出しや定義ができるようになった。 " だが、毎回 :call f1() などとするのは面倒だし、 " タイプミスなども発生し…

第5回Vimスクリプト入門みたいの(関数の定義)

vim

" usr_41.txt vimスクリプトの書き方から " 「41.7 関数の定義」より " " 前回は関数の呼び出しを試した。次は関数の定義をしよう。 " " 関数の定義は :function を用いる。 " 早速 " :h :function " 関数の定義は以下の書式みたい。 " :fu[nction][!] {name…

第4回Vimスクリプト入門みたいの(関数の呼び出し)

vim

" usr_41.txt vimスクリプトの書き方から " 「41.6 関数の利用」より " " 式とか条件とか式の実行とかは飛ばす。関数を呼ぶところから。 " " 関数は:callを使うか、式の中で {name}() の形式を使うことで呼び出せる。 " :h :call " :[range]cal[l] {name}([a…

第3回Vimスクリプト入門みたいの(変数その2)

vim

" usr_41.txt vimスクリプトの書き方から " 「41.2 変数」より " " 今日は前回予告したとおり、:unlet を使って変数を削除してみる。 " まず、前回の初めに使ったサンプルをいじってみる。 " 最後の行に :unl[et] を追加した。きっと常に1が出力されるはずだ…

第2回Vimスクリプト入門みたいの(変数)

vim

" usr_41.txt vimスクリプトの書き方から " 「41.2 変数」より " " 変数名のルールはCとだいたい同じ(Perlぽい正規表現だと[A-Za-z_][A-Za-z0-9_]*かな) " どうやら変数はデフォルトでグローバルみたいです。 " スクリプトローカルな変数にするには s: をつ…