在我的 ubuntu bash 中,我重新映射了Ctrl-y
组合键以将文本复制到剪贴板,如下所示:
bind -x '"\C-y": copy_line_from_x_clipboard'
有用。现在,我正在迁移到 Macbook,我喜欢使用Command
key 而不是Ctrl
上面的 key。我在网上没有看到任何包含 Mac OS 命令键的键绑定示例。我尝试获取Command-y
使用该命令的组合键sed -n l
,如下所示这里Command-y
,但在输入按键后显示空行。
对于那些感兴趣的人,从剪贴板粘贴文本的被调用函数是,
copy_line_from_x_clipboard() {
local n=$READLINE_POINT
local l=$READLINE_LINE
local s=$(xsel -ob)
READLINE_LINE=${l:0:$n}$s${l:$n:$((${#l}-n))}
#READLINE_LINE=${l:0:$n}$s
READLINE_POINT=$((n+${#s}))
}
答案1
根据评论之一在控制台 Vim 中使用 CMD 映射,您不能使用CommandTerminal.app 中的密钥,尽管您可以在 iTerm2 中。
您可能正在寻找修饰语,例如shift,control类似于alt或meta键的东西。
在 Terminal.app 的键盘首选项中,您有一组使用这些修饰符的初始键定义 - 以及Option.您可以更改这些定义,或添加新的定义。
以下是显示该对话框的几个屏幕截图:
第二个屏幕截图显示Option(单独或与其他修饰符结合使用),但Command不可供在终端中运行的程序使用:
答案2
如果您使用 iTerm2,这里有一个有用的技巧...
- 转到首选项->按键->按键绑定
- 将您想要自定义的任何组合键设置为“忽略”,以将其与默认功能分离
- 转到首选项->个人资料->密钥
- 设置组合键以发送 ctrl 等效项的 Unicode 十六进制代码,例如 ^R 是 0x12