首页 > 解决方案 > 在 bash 中,如果选择了文本,则配置快捷键 ctrl+c 用于复制,如果没有选择文本,则配置为 SIGINT

问题描述

因为/bin/bash我想在按 ctrl+c 时配置此行为:

  1. 如果在终端中未选择任何文本,则发送 SIGINT(这是标准行为,会中断正在运行的进程,并为您提供编写下一个命令的新提示)
  2. 如果在终端中选择了文本,则将所选文本复制到剪贴板并且不发送 SIGINT(这不是标准行为;可以配置(Preferences -> Shortcuts -> Copy)但不能不丢失行为 #1)

通过选择并选择选项,可以/bin/bash在PHPStorm 中轻松配置这种确切的行为,所以我认为它应该以某种方式成为可能。Tools -> TerminalCopy to clipboard on selection

笔记

我已经在这里阅读了非常丰富的公认答案。

标签: bashunix

解决方案


Ctrl/C 行为由终端模拟器提供,而不是 bash。在窗口内运行的进程(bash 或任何启动的命令)不会“看到”剪贴板。当用户剪辑某个键时,由终端仿真器决定发送哪些字符。

如果终端仿真器没有这个功能,那你就不走运了。考虑为您最喜欢的终端仿真器(gnome-terminal,...)打开增强请求。


推荐阅读