我tmux
在 macOS Sierra中使用Terminal.app
。当我想暂时禁用允许鼠标报告以复制/粘贴并单击时,我需要按下fn
长苹果键盘中远处的键。有没有办法将此 fn 键更改为更接近的键ctrl, alt, option
?在谷歌搜索了一段时间后,我似乎无法找到如何。
谢谢!
我tmux
在 macOS Sierra中使用Terminal.app
。当我想暂时禁用允许鼠标报告以复制/粘贴并单击时,我需要按下fn
长苹果键盘中远处的键。有没有办法将此 fn 键更改为更接近的键ctrl, alt, option
?在谷歌搜索了一段时间后,我似乎无法找到如何。
谢谢!
要切换鼠标报告,请按⌘</kbd>-R in Terminal.app.
我想分享我的 Terminal.app + tmux + vim 工作流程,因为它与复制粘贴有关,以提出替代方案。
借助自制软件或支持的 vim +clipboard
,我使用了"*
yanks 和 puts 的寄存器。这与系统的其余部分很好地连接。
您总是可以:r !pbpaste
或:w !pbcopy
也可以(如下所述)。
macOS 提供pbcopy(1)
和pbpaste(1)
. 默认情况下,他们使用系统剪贴板。pbcopy
是从标准输入读取的接收器,pbpaste
而是写入标准输出的源。
我经常将这些用于命令行剪贴板交互。
copy-mode
使用 tmux命令(默认为Prefix- )进入复制模式。[
使用一系列键绑定进行导航。
取决于EDITOR
或VISUAL
包含vi
,tmuxcopy-mode
与 emacs 样式的绑定或copy-mode-vi
类似 vi 的绑定一起使用——您可以.tmux.conf
使用status-keys
andmode-keys
选项更改默认值。有关man tmux
更多详细信息,请参阅。
在我看来,默认的类似 vi 的绑定有点缺乏,所以我选择将以下内容放在我的.tmux.conf
:
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
做出选择后,我可以将其放在 tmux 中的任何位置Prefix- ]。也有缓冲区可供选择。
:set paste
我可以通过,o
和我的 tmux 粘贴键粘贴到 vim 中。我使用 unimpaired,所以粘贴切换变为]op
. 使用来自 github 的 Tim Pope 的 tbone,我也可以在 vim 中使用:Tput
和。:Tyank
更新:我最近了解到以下内容可以解决问题!
tmux show-buffer | pbcopy
这是最难的部分:我通常在 shell 中执行以下操作:
# pbcopy <<<'{TMUX PASTE}'
这并不完美:如果我用单引号粘贴任何内容,我通常必须通过并做一些编辑工作。在 vi 模式下带有 readline 的 bash 中,这很简单<Esc>kv
,然后我可以在 vim 中进行编辑,直到我满意为止。
更简单且不易出错的替代方案通常是
# pbcopy
{TMUX PASTE}
<C-d> # send End-of-file