vim

作業メモ

vim

expand()のflagで':p'を指定するのと、fnamemodify()のmodsで':p'を指定するのでは動作が異なる expand('%', ':p') と expand('%:p') では動作が異なる Vimの操作体系はそこそこ好きなんだが、それ以外の部分はかなり嫌いといっていい nr2char()はどうして現…

「選択されたテキストの取得」への疑問

vim

http://d.hatena.ne.jp/ns9tks/20080601/1212335835id:ns9tks 経由で「選択されたテキストの取得」をする関数を見た。選択されたテキストの取得 - vimグループ質問したいのだけど、どこの誰に聞いていいのか分からないのでエントリ書く。これって 'selection…

「選択されたテキストの取得」への疑問、の続き(ヤンクのメッセージが気になる)

vim

id:ka-nachtのコメントどおり、色々試したところ「期待通り」動作することがわかった。論外なんだろうけど「'selection'に影響される動作が期待通り」ってのが自分の中になかった。影響されていいのね。影響されたくないなら、もう一つ関数でも書いて'select…

tabshift.vim (8-2) どうして数字確認に正規表現を使わないのか(恥)

vim

http://d.hatena.ne.jp/eclipse-a/20080612/1213240781恥ずかしいこと言っちゃったー。http://d.hatena.ne.jp/janus_wel/20080521/1213598427 ここのid:ka-nachtのコメント。 どうして数字確認に正規表現を使わないのか > a:delta !~ ’^[+-]\?\d\+$’ type(a:…

Unicodeコードポイントを取得する関数

vim

Unicodeコードポイント(JavaScriptで\uXXXXみたいな形で使うアレ)を簡単に取得したいなと思って、関数を作ってみた。iconv()を使って、'ucs-2'にでもすればいけるかと思ったけど、なぜかUTF-8のバイト列が帰ってくるので、こんな関数を作ることになった。な…

85 omemo.vim (9-1) 書籍JANコード解釈スクリプト(ファイルタイププラグイン作成中)

vim

ファイルタイププラグインを書くことでVimスクリプトを勉強している。詳細はまたそのうち書くつもり。今書いているファイルタイププラグインはメモ用のもの。俺用のメモファイルタイプなので omemo としている。仮だけど。中身はといえば、howmそのまま。URL…

84 tabshift.vim (8-1) tabshift.vimを好き勝手改造してみた

vim

あと vim script 勉強するのに id:eclipse-a ( http://d.hatena.ne.jp/eclipse-a/archive?word=%2a%5bvim%5d ) にお世話になった。 TabShift.vim - KBDAHOLIC - やぬすさんとこ あんまり「狙え」に良いことを書いた覚えはないけど、「お世話になった」なんて…

83 myvba.vim (7-1) Vimballを開発者にとって使いやすいものにする

vim

Vimballはユーザにとっては割と使いやすいんだけど、開発者にはどうかなあと思う。なぜって、パッケージの作成がしにくいから。ユーザなら*.vbaを開いて :so % でインストール、:RmVimball *.vba でアンインストール。これだけなので、割と使いやすいと思う…

82 presentation.vim (6-1) とにかく明日使いたい

vim

「はっきりいって自己満足」で有名(?)な presentation.vim 。今回のスクリプトはこれ。http://d.hatena.ne.jp/maedana/20080529/1212059765presentation.vim の更新は楽しみにしてる。だけど、明日の発表で使いたい。次を待てない!というわけで、とりあえず…

81 howm-mode.vim (2-44) キーワードまわりの修正

vim

ダウンロードURL: http://khkh.o0o0.jp/vim/howm_vim.patch.20080416 キーワードファイルの再構築が正常動作しないバグを修正 前回追加したグローバル変数 howm_wildignore によるバグがキーワードまわりにあった。キーワードファイルを再構築する際に、howm…

80 howm-mode.vim (2-43) データ量増大による検索速度の低下を回避する( globpath() )

vim

ダウンロード はじめにダウンロードのためのURL http://khkh.o0o0.jp/vim/howm_vim.patch.20080414 欠陥「検索速度の低下」 howm-mode.vim にはいくつのかの欠陥がある。その一つが検索速度の低下である。今回は、その検索速度の低下に対処したいと思う。how…

79 dicwin2.vim (5-4) 関連項目に飛べるようにした

vim

辞書引きプラグイン dicwin2.vim の話題。「メモ」なんかで検索すると分かるんだけど、これじゃないよって結果になることがままあった。関連項目とそのURLへ飛べるようにすることでカバーすることにした。 function! s:YahooKokugo(html) let s = iconv(a:ht…

78 howm-mode.vim (2-42) howm-actionlock-isbn.vim の公開

vim

howm-mode.vim 狙えパッチ適用版で、はてなダイアリーの isbn/asin 記法に対応するための設定スクリプト「howm-actionlock-isbn.vim」を公開しました。ダウンロード: http://khkh.o0o0.jp/vim/howm-actionlock-isbn.vim 概要 howm-mode.vim 狙えパッチ適用版…

77 dicwin2.vim (5-3) pedit コマンドで表示するようにした

vim

昨日、一昨日あたりから書いている「辞書引きプラグイン」。pedit で表示するようにしたのが、今日の主な変更点。 substitute() の \= は便利 alice.vim の AL_urlencode() を参考に修正してみた。AL_urlencode() から学んだ一番大きいことが \= だ。 substi…

76 dicwin2.vim (5-2) echo で表示できるようにした

vim

辞書引きプラグイン作成のお話。手ごろな名前が思い浮かばないのでひとまず dicwin2.vim としておく。 昨日はごめん ( AL_urlencode() ) 昨日、あたかも当然のように encodeURI, encodeURIComponent を書いたんだけど、よくよく見てみると alice.vim の AL_u…

75 encodeURI, encodeURIComponent

vim

辞書引きスクリプト dicwin.vim が良かったので、自分でも似たようなのを作りたくなった。まずは辞書の元データが必要なのだが、手ごろなのが見つからない。仕方がないのでウェブにアクセスして取得することにした。せっかくなので、alice.vim を活用する。 …

74 howm-mode.vim(2-41) グローバル変数 howm_append_editing の追加とバグ修正

vim

ダウンロードURL: http://khkh.o0o0.jp/vim/howm_vim.patch.20080329修正点は以下 howm_auto_show_preview がOFFの場合に自動プレビューの切り替えが高速に動作(updatetime=1)しないのを修正 プレビューの先頭行が空行になるのを修正 日付上での action-lock…

73 howm-mode.vim (2-40) Windows 環境で grep を使う

vim

Windows 環境で grep を使いたい場合、cygwin の grep を使うものと勝手に思いこんでいた。だから、今回のコメントはちょっとした驚きだった。 コメント: http://d.hatena.ne.jp/eclipse-a/20080323/1206244800#c1206258022 GnuWin32 Packagesのgrepを試して…

72 howm-mode.vim (2-39) リロード機能の実装

vim

ダウンロード: http://khkh.o0o0.jp/vim/howm_vim.patch.20080325今日の修正点 リロード機能の実装( メニュー画面、検索結果画面で r ) メニューをうまく閉じれなかったのを修正 特に面白みなし。grep について書こうかと思ってる。あと ns9tks さんの fold …

71 howm-mode.vim (2-38) プレビューまわりの仕様変更

vim

ダウンロード: http://khkh.o0o0.jp/vim/howm_vim.patch.20080324今回の変更は、オプションの削除や動作の変更など、元々の howm-mode.vim からの仕様変更を含んでおります。今回からは配布するファイル名をその都度変更したいと考えております。変更点の一…

70 howm-mode.vim (2-37) ウィンドウの位置固定とバグ修正

vim

ダウンロード: http://khkh.o0o0.jp/vim/howm_vim.patchまあ例によって howm-mode.vim の修正とか。今日の修正点は以下。 ウィンドウの表示位置を固定されるようにした メニューから自動プレビューを可能にした メモ一覧が動作していなかったのを修正した プ…

69 howm-mode.vim (2-36) メニューの実装 ほか

vim

例によって howm-mode.vim の更新。メニューの実装についてと、昨日公開したパッチの中に含まれていた未通知の修正点の報告。まずは、修正点一覧から。じゃなかった、先にダウンロードURL。ダウンロード: http://khkh.o0o0.jp/vim/howm_vim.patch 修正点一覧…

68 いままで公開したものまとめ

vim

ソフトウェア板の Vim Part2 に狙えのことを書き込んだ人を見つけたので、返信。 519 From:名無しさん@お腹いっぱい。 Date:2008/03/03(月) 22:02:33 ID:5VvjlgmN0 Mail:sage くふんを狙え でされてるcalendar.vimとhowm-mode.vimとの連携がうまく動かない…

67 howm-mode.vim (2-35) HowmDateTime2Int() の作成

vim

「では、こちらに30分煮込んだものが〜」ということで、いきなりだけど HowmDateTime2Int() を作った。以前からぼそぼそ言ってた文字列から日付をあらわす数値への変換。タイムゾーンまわりとかかなり適当。howm_timezone_hour, howm_timezone_min でタイム…

66 基本コマンド ( :substitute とか :global とか )

vim

人のエントリに乱入してみる。http://d.hatena.ne.jp/akio0911/20080319/1205916091 人のエントリに勝手に追記 % はファイル全体。これは 1,$ と同じ。詳しくはヘルプ参照。 :h cmdline-ranges :h :range というわけで、下の二つは同じ。コマンド実行時の範…

65 strftime() に関するメモ

vim

はじめに :h strftime() 簡単な使い方とサンプル 第一引数は format, 省略可能な第二引数は time 。time が省略された場合は、現在時刻が使用される。time には localtime() で取得した数値(1970年1月1日からの秒数)を渡すことが多い。 :let time = localtim…

64 calendar.vim (3-3) calendar_action.vim の更新

vim

問題とその修正 一日ずれたところをハイライトしてほしいだけなのに、いちいち検索される。ひどく時間がかかる。これは嫌だ。いちいち検索しなおすのではなく、既に howm の検索窓が出ている場合には、カーソル移動とハイライトのみを行うようにした。 新し…

63 howm-mode.vim (2-34) 改造なし。自分メモ。

vim

howm で一日一ファイルを試してる。これはこれでいいかもしれない。メモ区切り(見出し)が重要だとわかった。今までは、予定を完了にする時とか、追記する時はあまり見出しをつけないことがあったけど、一ファイルになるとそういういいかげんな使い方ができな…

62 howm-mode.vim (2-33) グローバル変数 howm_ignore_done の追加

vim

予定やTODOで表示される完了済みのものの表示非表示を切り替えるグローバル変数 howm_ignore_done を追加した。 silent! nmap <silent> <unique> <Leader>,y \ :let g:howm_ignore_done=1<CR><Plug>HOWM_ShowSchedule silent! nmap <silent> <unique> <Leader>,Y \ :let g:howm_ignore_done=0<CR><Plug>HOWM_ShowSchedule こんな風</plug></cr></leader></unique></silent></plug></cr></leader></unique></silent>…

61 howm-mode.vim (2-32) migemo() に日本語を渡さないように

vim

migemo() はどうも日本語を入力するとおかしな出力をすることがあるみたい。下記のような文字で出力が狂う。 migemo('鬼神') 鬼がいけないみたい。文字コードの関係かな。どこに原因があるのか、詳しくはわからないが、少なくとも migemo() に日本語を入力す…