有时 CTRL+A、CTRL+C 是一种非常流畅的方式来做到这一点。将所有内容复制到系统剪贴板。不幸的是,这些天它没有按预期工作。CMD+A(我在 Mac 上)只是没有选择所有行。所以这是我的两个问题:
如何再次映射 CMD+A 以选择实际文件中的所有行?
正如我所问的,我怎样才能将 gg 映射到文件的顶部?
最好的,Plattenschieber
Mac OS X 上的 GVim 等价物是 MacVim。你是在使用 MacVim 还是真的在 XQuartz 中使用 GVim?
在 MacVim 中,Cmd+a 选择整个缓冲区,而 Cmd+c 将选择的内容复制到剪贴板。如果不是这样,要么你搞砸了,要么 MacVim 没有正确安装(我想知道一个简单的拖放怎么会失败)。
如果你在终端模拟器中使用 Vim,为什么要写“gvim”?Cmd 键只能被 MacVim 拦截,CLI Vim 无法识别它,所以 Cmd+a 不起作用。你应该习惯 Vim 的方式:
:%y +
你可以用你的 vim 试试这两个映射:
nnoremap <c-a> ggVG
nnoremap <c-c> "*y
但我不会推荐那些映射..
这是在$VIMRUNTIME/mswin.vim
. 如果您不需要所有典型的(Windows)键盘快捷键,只需有选择地抓住相应的部分(也许调整左侧的映射):
" CTRL-A is Select all
noremap <C-A> gggH<C-O>G
inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
cnoremap <C-A> <C-C>gggH<C-O>G
onoremap <C-A> <C-C>gggH<C-O>G
snoremap <C-A> <C-C>gggH<C-O>G
xnoremap <C-A> <C-C>ggVG
如何映射 gg 以再次转到文件顶部
不要问多个问题(如果你问了,请提供更多上下文!)你有映射gg
吗?!找出谁定义了它:
:verbose nmap gg
应该告诉你。如果您无法删除不需要的映射,:nunmap gg
则可以。