2013年1月14日 星期一

顯示 java class list

開啟 java source 時,在左邊列出這個 java file 所有的 class, field, method.
plugin 的名子叫 JavaBrowser.

http://www.vim.org/scripts/script.php?script_id=588

Instal:

Download最新版,unzip 解開,找到 vimfile/plugin 下的 JavaBrowser.vim。
copy 到 ~/.vim/plugin

要注意系統要有 ctags。

測試:

開啟一個 java file,在command 輸入: :JavaBrowser

就可以看到左邊被開了一排,顯示 java file 裡所有的 field, method, class..

用 ctrl-w, w 移動到左邊,在對應的宣告名稱按下 enter,
右邊的 source 就會移動到 source line。

同樣的,在 source code 中移動,稍微停頓 1,2 sec,
左邊的 list 會update,停在 source code 的 function name 中。

要關掉的話,一樣下 JavaBrowser 命令,那是一個 toggle 命令

2013年1月4日 星期五

show dos line ending mark ^M

vi 在開啟檔案時,會自動判斷他是 dos 還是 unix 格式。
避免把 dos ending 的 ^M 顯示出來,

所以在檢查一個 檔案 是不是 有 ending mark 時,會看不出來。

可以在 自己 home 的 .vimrc 加上: :set ffs=unix
強制以 unix format 開啟檔案,這樣就可以顯示出 ^M 了。



實際測試,開啟檔案後再下 command 沒效,要加在 .vimrc 裡才行。

2012年5月7日 星期一

gvim : remember the color scheme

color scheme 要寫在 .vimrc 中。
先挑選你要的 color scheme,然後在 .vimrc 加入一行 (以 pablo 為例): colorscheme pablo

ref:

gvim. single instance & open in tab

gvim 是圖形介面的 vim。
但是從 command line 開啟 (就是 follow 以前 vim 的 invoke 方法),每次都會開一個新的 gvim。
要作到像 gedit 一樣,每次都開在同一個 gvim,但是是不同 tab。

要先確認 這個 gvim compile 時,有沒有 +clientserver。

--- 這在, Help --- Version 裡可以看到。一般的 distribution 應該是都有 enable。

然後在 .bashrc 加入: gvim () { command gvim --remote-tab-silent $@ || command gvim $@; } 這樣以後每次在 command line 用 gvim 開啟檔案時,都會自動加上 --remote-tab-silent 選項。

  • 記得修改完 .bashrc 要重新 login 才會生效


ref:
  1. http://stackoverflow.com/questions/936501/let-gvim-always-run-a-single-instance
  2. http://superuser.com/questions/334794/having-files-opening-in-tabs-in-gvim

2012年1月10日 星期二

ctags

跟 cscope 有點類似。
  1. 先產生 database : ctags -R
  2. 開檔,編輯
  3. 使用 ctag command
好像可以跟 cscope 一起用 (command 不衝突)
command:

到 定義: Ctrl-]
回去,跟cscope 一樣: Ctrl-T
在函数中移动光标的快捷键: [{ 转到上一个位于第一列的"{" }] 转到下一个位于第一列的"{" { 转到上一个空行 } 转到下一个空行 gd 转到当前光标所指的局部变量的定义 * 转到当前光标所指的单词下一次出现的地方 # 转到当前光标所指的单词上一次出现的地方



ref : http://blog.csdn.net/wangyunqian6/article/details/6608238

Show current file name in status line

用 cscope 時需要知道現在是在哪一個 file。
用這個 command 可以把現在編輯的 file show 在 status line: :set ls=2 可以把這個寫在 vimrc 裡。


ref : http://www.unix.com/shell-programming-scripting/132512-continuously-display-file-name-vim.html

2011年10月6日 星期四

Session : remember the state

想要退出,但是待會回來時,要回 vi 時,要回到原來的狀態。
用 :mksession 命令 :mksession 會把目前得的狀態存在目前目錄下的 Session.vim
等一下開啟 vi 時,加上: vi -S session.vim 就會回到剛剛的狀態。

要是目前目錄已經有Session.vim,會提醒你用 ! 確認 overwrite
:mksession!
或是自己指定 session 檔名: :mksession ~/mysession1.vim