【问题标题】:Vimrc mappings in a mac keybordMac 键盘中的 Vimrc 映射
【发布时间】:2014-11-13 17:57:57
【问题描述】:

我正在尝试使用命令set filetype=… 映射一个键,该命令可能是 perl 或 html 等。
问题:我使用的是 Mac 键盘,所有 Fx 键似乎都没有响应,除了我已经映射并需要它们的 2 个。
例如。做map <F14>:set filetype=perl<CR> 或 F13 等不仅没有任何作用,而且似乎对控制台做了一些奇怪的事情。
如何在不影响其他现有映射的情况下映射这些?

注意:
需要明确的是:我正在使用 vim 远程执行 ssh。我的本地键盘来自 Mac

【问题讨论】:

  • :set filetype=perl 是一种解决方法,请询问问题,而不是您尝试解决该问题的失败尝试。
  • @romainl:你说得有道理。在某些情况下,语法会“中断”,尤其是在大文件中。当我“向下滚动”一个文件时,例如html + perl 然后只有 html 被正确突出显示。我正在寻找一种快速的方法来查看 perl 或我想要的任何内容并返回到原始版本
  • 我不记得 perl 和 html 原生混合。这个脚本是否使用__DATA__ 来分隔 perl 和 html?或者这是某种 perl 模板语言?你应该使用模板吗?您能否向我们展示一个代码示例(当然是经过编辑的),以便我们自己查看并测试它?

标签: linux vim keyboard mapping


【解决方案1】:

nmap l 纳米地图 这回答了你的问题,但我不建议你这样做。

您将遇到的第一个问题是您的所有 cmdsomething 映射都将在终端中失败。

第二个是 MacVim 不支持多个修饰符:例如,您将无法使用 CtrlShiftb。好吧,它会起作用,但 Shift 部分将被忽略,因此您将很快受到限制。

第三个问题是你无法将 Vim 的命令提交到内存中。当你 ssh 进入服务器并在那里使用 Vim 时,你会迷失方向。

是的,你可以这样做,但(我认为)你不应该这样做。

【讨论】:

  • 那么我还有什么其他选择可以避免输入:set filetype=…
【解决方案2】:

确保和 :set filetype=perl... 之间应该有空格

如果这只是一个错字,请以交互方式尝试, :map "按 control-v 然后按 F14 键" :set filetype=perl

顺便说一句,我使用的苹果键盘(在 Windows 上)没有 F14 键,而且我不记得在任何 Macbook 上看到 F12 以外的任何功能键,也许这是新的东西......

另外,在你的 vim 中输入 ":help function-key" 如果它显示类似这样的内容,那么你不能这样做。

*功能键 1 到 12 function_key function-key*

【讨论】:

  • 我的板上有<f1><f15>。这是我发现的picture
猜你喜欢
  • 2014-06-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-12
  • 2013-03-28
  • 2017-05-23
  • 2010-10-18
相关资源
最近更新 更多