我希望在命令行上进行grepping后自动获取Vim中结果的位置.有这样的功能吗?
要在grep中给出的行上打开的文件:
% grep --colour -n checkWordInFile *
SearchToUser.java:170: public boolean checkWordInFile(String word, File file) {
SearchToUser.java~:17: public boolean checkWordInFile(String word, File file) {
SearchToUser.java~:41: if(checkWordInFile(word, f))
Run Code Online (Sandbox Code Playgroud) 这是生成Markdown大纲的vim脚本:
fun! TOC()
call setloclist(0, [])
let save_cursor = getpos(".")
call cursor(1, 1)
while search("^#", 'W') > 0
let msg = printf('%s:%d:%s', expand('%'), line('.'), substitute(getline('.'), '#', '»', 'g'))
laddexpr msg
endwhile
call setpos('.', save_cursor)
endfun
com! -bar TOC call TOC()
Run Code Online (Sandbox Code Playgroud)
示例降价文件:https://github.com/progit/progit/raw/master/zh/01-introduction/01-chapter1.markdown
运行:TOC命令后,这是快速列表:
01-chapter1.markdown|5| »» ?????? »»
01-chapter1.markdown|11| »»» ???????? »»»
01-chapter1.markdown|22| »»» ?????????? »»»
01-chapter1.markdown|33| »»» ????????? »»»
01-chapter1.markdown|42| »» Git ?? »»
01-chapter1.markdown|56| »» Git ?? »»
01-chapter1.markdown|60| »»» ????????????? »»»
01-chapter1.markdown|74| »»» ???????????? …Run Code Online (Sandbox Code Playgroud)