Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在bash vi模式下清除Tmux历史记录_Bash_Vim_Command Line_Terminal_Tmux - Fatal编程技术网

在bash vi模式下清除Tmux历史记录

在bash vi模式下清除Tmux历史记录,bash,vim,command-line,terminal,tmux,Bash,Vim,Command Line,Terminal,Tmux,最近,我在.bash_profile中通过set-ovi设置切换到使用bash vi模式。但这导致了一个问题 我有一个tmux映射,当我按下+k时,它将运行清除历史记录命令。这是相关的映射 bind -n C-k clear-history 这在bash vi模式下不起作用,可能是因为vi模式优先。如何解决或解决此问题?您可以更改密钥,这是我使用的: # reset & clear history bind r send-keys -R \; send-keys C-l \; clea

最近,我在
.bash_profile
中通过
set-ovi
设置切换到使用bash vi模式。但这导致了一个问题

我有一个tmux映射,当我按下
+k
时,它将运行
清除历史记录
命令。这是相关的映射

bind -n C-k clear-history

这在bash vi模式下不起作用,可能是因为vi模式优先。如何解决或解决此问题?

您可以更改密钥,这是我使用的:

# reset & clear history
bind r send-keys -R \; send-keys C-l \; clear-history 
你必须按ctrl+b+r

k
确实可以使用,但如果您也在面板之间移动(ctrl+hkjl),则可能会造成混淆

在任何情况下,只需使用ctrl+k即可完成此操作

不使用睡眠:

bind -n C-k send-keys -R \; send-keys C-l \; clear-history
从中,我有以下tmux映射:

bind-key -n C-k send-keys -R \; send-keys Escape C-l a \; clear-history

这有许多变体(每个都有优点和缺点,并且针对不同的用例);参见链接问题。

这对我来说不起作用,使用
r
而不是
k
?不太明白,你是什么意思?我复制了你答案中的内容,并将其粘贴在我的
.tmux.conf
及其清除屏幕上,但没有历史记录,因为我可以在按下后滚动查看它。我认为它只是执行
C-l
,而不是
清除历史记录
,然后我更新了答案,试一试(顺便说一下,这是一个有趣的问题)
bind-key -n C-k send-keys -R \; send-keys Escape C-l a \; clear-history