2011年12月28日

Laltfile.vim - ファイルの高速トグル

さて、たまにはブログを更新するか。グッド(上向き矢印)
あふwは水面下でネタを準備中ですが、公開はまだまだ未定。
とりあえずつなぎってことで・・・またvimねたです。ひらめき
cppファイルとhファイルをトグルするスクリプトの代表は
"a.vim (Alternate Files quickly )"。
でも、高機能?なせいかなんかもたつく気がするので、
自作してみたYO。

デフォルトで以下は定義済み。

--------------------------------------------------------------------
call add(g:Laltfile_mapping, {'\.cpp$' : '.h' } )
call add(g:Laltfile_mapping, {'\.h$' : '.cpp' } )
call add(g:Laltfile_mapping, {'\.c$' : '.h' } )
call add(g:Laltfile_mapping, {'\.h$' : '.c' } )
call add(g:Laltfile_mapping, {'\.cxx$' : '.h' } )
call add(g:Laltfile_mapping, {'\.h$' : '.cxx' } )
call add(g:Laltfile_mapping, {'\.cc$' : '.h' } )
call add(g:Laltfile_mapping, {'\.h$' : '.cc' } )
call add(g:Laltfile_mapping, {'\.as$' : '.mxml' } )
call add(g:Laltfile_mapping, {'\.mxml$' : '.as' } )
call add(g:Laltfile_mapping, {'Logic\.as$' : '.mxml' } )
call add(g:Laltfile_mapping, {'\.mxml$' : 'Logic.as' } )
call add(g:Laltfile_mapping, {'Action.java$' : 'Form.as' } )
call add(g:Laltfile_mapping, {'Form.java$' : 'Action.as' } )
call add(g:Laltfile_mapping, {'Action.java$' : 'ActionForm.as'} )
call add(g:Laltfile_mapping, {'ActionForm.java$' : 'Action.as' } )
call add(g:Laltfile_mapping, {'\.aspx$' : '.aspx.cs' } )
call add(g:Laltfile_mapping, {'\.aspx.cs$' : '.aspx' } )
call add(g:Laltfile_mapping, {'\.aspx$' : '.aspx.vb '} )
call add(g:Laltfile_mapping, {'\.aspx.vb$' : '.aspx' } )
call add(g:Laltfile_mapping, {'\.xaml$' : '.xaml.cs '} )
call add(g:Laltfile_mapping, {'\.xaml.cs$' : '.xaml' } )
--------------------------------------------------------------------


定義を追加したい場合は、以下のような感じでvimrcにかけばたぶんOK。

--------------------------------------------------------------------
let g:Laltfile_mapping = []

"例1 _vimrcと_gvimrcのトグル
call add(g:Laltfile_mapping, {'_vimrc' : '_gvimrc'} )
call add(g:Laltfile_mapping, {'_gvimrc' : '_vimrc'} )

"例2 *.iniと*.defをトグル
call add(g:Laltfile_mapping, {'\.ini' : '.def'} )
call add(g:Laltfile_mapping, {'\.def' : '.ini'} )
--------------------------------------------------------------------

[ていぎのせつめい]
今開いているファイルが辞書のキー(例2でいうところの'\.ini')にマッチする箇所があれば、
そこを辞書の値(例2でいうところの'.def)に置き換えたファイル名の有無を確認し、
存在すれば開くという仕様です。

でファイルがトグルするようにキーマップしています。
都合がわるければg:Lcore_global_keymap_disableを定義すれば、
無効にできると思うので、それで。

たとえば、AとB、BとC、CとA見たいにトグルすることもOK。
高機能じゃなくてもいいから、とにかくすばやく切り替えたい人は使ってみると
よいかも???

ダウンロードは左からLaltfile_v0.0.1.zipをどうぞ〜。

いじょーーーーう
exclamation×2
ラベル:Laltfile
posted by yura.tomo at 21:56| Comment(4) | TrackBack(0) | vim | このブログの読者になる | 更新情報をチェックする
>■あふw関連ツール相関図
              +---------ffftp.exe(AE)
              | +-------sakura.exe(ORG)
              | | +-----*.exe(ORG)
 +------------afxswitch.exe 
 | +----------afxpdf.vbs
 | | +--------afxvim.exe --- gvim.exe(ORG)
 | | | +------afxyzzy.exe -- xyzzy.exe(AE)
 | | | | +----afxckw.exe --- ckw.exe(AE)
 | | | | | +--afxfazzy.exe - afxfazzy?.mnu
 | | | | | | +afxtail.exe
+------------+afxexec.exe   - afxandroid
|   afxw.exe |-amksc.exe(ORG)
+------------+afxmatrix.vbs
|| | | | | | +afxdmask.exe
|| | | | | +--afx2ch.exe --- 2ch
|| | | | +----afxbkmk.exe
|| | | +------afxclock.exe
|| | +--------afxfind.exe
|| |+---------afxpushd.exe
|| +----------afxbrws.exe
|+------------afxmake.exe
|             | | +-----VisualStudio9
|             | +-------WDK7.1
|             +---------...
+-------------afxftp32.dll

 ※AE: Afxwer's Editionの略
 ※ORG: Original版
 ※yuratomo使用中のもの。