回答
Mac用户那里:映射ALT + hjkl,改用产生真正的字符(找出使用组合,而在插入模式字符),例如用我的键盘,我得到:
<ALT+j> ==> ª
<ALT+k> ==> º
等。 在StackOverflow上找到解决方案here。
我用这个用ALT + K \Ĵ向上和向下移动线,采用这对我的.vimrc:
nnoremap ª :m .+1<CR>==
nnoremap º :m .-2<CR>==
inoremap ª <Esc>:m .+1<CR>==gi
inoremap º <Esc>:m .-2<CR>==gi
vnoremap ª :m '>+1<CR>gv=gv
vnoremap º :m '<-2<CR>gv=gv
的解释here。
希望这是有用的,享受在Mac OSX的Vim的Vim的:)
这就是我到这里来的(Alt + HJKL移动分割)!谢谢! –
找出它是哪个字符的简单方法是使用'cat'。只需输入'cat'并在猫窗口内输入所需的组合键即可。发现在我的Mac上alt +括号是'和'。 – dvcrn
这个效果很好,按Alt + HJKL在分割之间移动,我的手指爱它!'NMAP˙
您的终端可能无法正确传输Alt-D。您可以使用C-V将实际的转义序列发送给Vim,并使用它创建映射。即,编辑您的.vimrc ,并通过输入以下序列“C-V Alt-D”来替换实际内容,以便在vimrc中拥有正确的转义序列。如果你的终端不向vim发送任何东西,这将不起作用。
地图Alt键:
开始通过查看你的终端发送到VIM关键代码:
$ sed -n l
^[[1;9D
在上面的例子中,我运行了命令并按下了Alt + Left。
^[[1;9D
是发送给vim的转义序列,所以我们可以将其用于我们的映射。
map <Esc>[1;9D
如果您使用的是iTerm2应用程序,最好检查一下密钥在配置文件>密钥中的映射方式。 – fikovnik
我不确定是否“可能”了。请阅读下面的更新。
是的,你甚至可以在终端vim,但没有真正的捕获所有答案。基本上,你必须遵循两个步骤:
确保
<M-d>
符号存在,并且准确地映射你的终端输入(^[
是转义字符):$ cat ^[d $ " in your .vimrc execute "set <M-d>=\ed" " you have to use double quotes!
一些映射到新“创建” 组合:
noremap <M-d> :echo "m-d works!"<cr>
Unders如果它是如何工作的,你可以将这个“技巧”扩展到其他“奇怪”的组合,例如,我使用白蚁,vim不识别<S-F1>
,使用猫我得到^[[1;2P
。然后,在我的vimrc中:execute "set <S-F1>=\e[1;2P"
,然后我可以将它映射到任何东西。
注:我不知道为什么,但是对于一些人使用\<Esc>
的作品,而不是\e
。
更新(2016年2月)
根据你的终端运行的terminfo,也许你可以...在最终端, “ALT + H”,例如,被映射到^[h
,这是:“逃生+ h”。所以它可以覆盖键。我刚刚尝试(再次),它似乎工作,但我相信这是一个非常错误和容易出错的实现。
尽管如此,足够勇敢,这里是一个实验性的插件:
是否适用于插入模式映射? –
而不是'执行'设置...'的东西,你可以直接使用'set
是否存在类似的方法可以和tmux一起工作,这样Md就可以绑定了吗? – George
我的终端会产生^[x
命令(例如对于ALT-X)。是什么让这对Vim内部工作是这个小脚本vim.wikia.com:
for i in range(97,122)
let c = nr2char(i)
exec "map \e".c." <M-".c.">"
exec "map! \e".c." <M-".c.">"
endfor
添加到.vimrc里解决所有alt键映射。
- 1. 在Vim中映射Alt + Tab
- 2. Windows键可以映射到Vim吗?
- 3. 我可以(重新)在vim中映射Ex命令吗?
- 4. 我可以在vim键盘映射中使用环境变量吗?
- 5. 将Alt + n映射到vim中的pagedown
- 6. 在omap映射中使用alt键
- 7. 映射VIM关键
- 8. 我可以在IntelliJ中更改调试器的键映射吗?
- 9. 我可以为单个文件制作Vim映射吗?
- 10. 在Java中我可以有一个键 - 键映射(而不是键值)吗?
- 11. 可以将映射映射为0吗?
- 12. Hadoop映射器可以在输出中生成多个键吗?
- 13. 我可以将按键映射到鼠标事件吗?
- 14. AHK键重新映射ALT标签
- 15. 带有“:”键的vim键盘映射
- 16. 在Eclipse Emacs模式下,有什么方法可以重新映射或将Alt键添加到Esc键吗?
- 17. 暂时禁用键盘映射在vim
- 18. jupyter笔记本中的Vim键映射
- 19. 我可以在hibernate映射文件中使用2个主键ID吗?
- 20. 有什么方法可以在Vim中查看当前映射的键?
- 21. 在vim中映射冲突
- 22. 可以将vim命令映射到具有> 1修饰符的组合键(例如ctrl-alt-v)
- 23. 我们可以在Entity Framework中映射数据库视图吗?
- 24. 我可以在hipchat中重新映射表情符号吗?
- 25. 我可以在Servlet映射中组合这些url模式吗?
- 26. 我可以使用任何API在StreamSet中映射表列吗?
- 27. 我可以在persistence.xml中声明映射吗?
- 28. Vim - 在键盘映射中发送制表键击
- 29. 在vim中映射数字小键盘键
- 30. vim映射
你是否在终端或gui版本(gvim,macvim)中使用vim? –
另请注意,如果您的'encoding'在映射运行后发生变化,您从Alt键获得的内容可能与您最初设置的内容不匹配。 –