有时CTRL + A,CTRL + C是一种非常流畅的方式来实现它所说的。将所有内容复制到系统剪贴板。不幸的是,这些天它没有按预期工作。 CMD + A(我在Mac上)只是不选择所有行。所以这是我的两个问题:
如何再次映射CMD + A以选择实际文件中的所有行?
正如我所问,我如何映射gg再次转到文件顶部?
最佳, Plattenschieber
答案 0 :(得分:3)
Mac OS X上的GVim相当于MacVim。您使用的是MacVim,或者您是否真的在XQuartz中使用GVim?
在MacVim中,Cmd + a选择整个缓冲区,Cmd + c将选择的内容复制到剪贴板。如果情况并非如此,那么你已经搞砸了某些东西,或者MacVim没有正确安装(我想知道简单的拖放是如何失败的)。
如果您在终端模拟器中使用Vim,为什么要写“gvim”? Cmd密钥只能被MacVim截获,CLI Vim无法识别它,因此Cmd + a不起作用。你应该习惯Vim方式:
:%y +
答案 1 :(得分:1)
你可以尝试使用你的vim进行这两个映射:
nnoremap <c-a> ggVG
nnoremap <c-c> "*y
但我不会推荐这些映射..
答案 2 :(得分:0)
这是在$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
将会执行此操作。