cat
当我在 gnome-terminal 上运行时,它C-d会同时C-S-d终止它。这是因为 gnome-terminal 无法区分这些键,并且在两种情况下都会发送和 EOF。有什么方法可以配置它并告诉 gnome-terminal 区分这些键吗?
我之所以问这个问题是因为我使用tmux在 gnome-terminal 中,我想将 tmux 操作绑定到C-S-z等C-S-d,但这样做会将这些键的非 shift 变体呈现到相同的 tmux 绑定。换句话说,我想C-S-d执行我绑定的 tmux 操作,但C-d发送 EOF。目前,这两个组合键都执行相同的操作,无论它是什么。
IRC freenode.net#tmux 上的某人表示,gnome-terminal 可能会为这两个组合键发送相同的键代码,因此 tmux 无法区分它们。我还了解到终端和接收可以配置为执行此操作,但我想知道 gnome-terminal 是否可以做到这一点。
任何想法我都感激不尽 :)
答案1
如果你根本不需要C-d(毕竟你可以用 关闭终端exit
),你可以尝试删除它与 EOF 的关联,并将 EOF 与另一个无用的序列关联,C-j例如:
stty eof ^J
我不能说它是否也将释放使用C-S-d。
如果有效,则应在 中设置该命令~/.bashrc
。