![用于打开在 Vim 中编辑的最后一个文件的别名](https://linux22.com/image/1168846/%E7%94%A8%E4%BA%8E%E6%89%93%E5%BC%80%E5%9C%A8%20Vim%20%E4%B8%AD%E7%BC%96%E8%BE%91%E7%9A%84%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%E7%9A%84%E5%88%AB%E5%90%8D.png)
我正在运行 Ubuntu 19.10,并尝试将命令“vv”设置为别名以在 Vim 中打开最后编辑的文件。以下是我运行命令“alias”的结果。
~/Documents/code$ alias
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
alias cls='clear'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'
alias sl='ls --color=auto'
alias vv='!vi'
我收到错误:
~/Documents/code$ vv
Command '!vi' not found, but there are 15 similar ones.
!v 和 !vi 已经是 Vim 中打开最后编辑的文件的有效命令,但我希望 vv 也能成为执行相同功能的命令,因为有时我很懒。
我尝试过的事情:
- 使用新别名更新 ~/.bashrc
- 重启电脑
- 打开新终端
任何帮助都将不胜感激,谢谢。
答案1
答案2
用这个:
alias vv="vim -c 'norm! ^O'"
norm
执行正常模式命令^O
,就像您输入它一样。:help :normal
有关更多信息,请参阅。
^O
是一个字符,您可以在插入模式下输入<C-V><C-O>
。它会带您到最后一个光标位置,也就是您编辑的最后一个文件中。
所以上面的别名与打开 vim 并按 ctrl-o 相同。