一千萬個為什麽

搜索

Bash別名在最後一個光標位置標記處打開Vim

Vim中的標記將您帶到最後一個光標位置。我想創建一個別名來打開我的Vim實例並跳轉到那個標記;這顯然非常有用。

This works from the command line:


$ vim -c "'\"" File.cpp

Now I want to make an alias for this:


$ alias v='vim -c "'\""'

Well that's not going to work! You need to escape the first single quote you say...


$ alias v='vim -c "\'\""'

嗯。這也不起作用......所以我嘗試了很多單引號和雙引號瘋狂的變化,我的頭撞在桌子上並在我的瀏覽器中加載stackoverflow,我們在這裏。

我如何正確地逃避這個別名?

修改

事實上,有一種更好的方法可以做到這一點:h last-position-jump

This autocommand jumps to the last known position in a file just after opening it, if the '" mark is set:


:au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif

最佳答案

您的問題是一個函數優於別名的情況示例:

v() { vim -c "'\"" "[email protected]"; }

轉載註明原文: Bash別名在最後一個光標位置標記處打開Vim