[Terminal] deepin终端中使用emacs困难
Tofloor
poster avatar
135******75
deepin
2021-11-21 21:30
Author

相比vim,我通常习惯使用emacs,但通过 deepin 终端使用 emacs 感觉非常不舒服。首先遇到的当然是高频的复制功能中标记块起始 Ctrl+Shift+2 (即Ctrl+@) 和deepin预设的快捷键冲突,我只能去把它改掉。即使如此,保存时按 Ctrl+x Ctrl+s,后面的 Ctrl+s 不知道该如何处理(能保存,但提示输出被关闭),去禁用 Ctrl+S 控制又不行(这样ctrl+s没有发送过去了)。我不清楚有没有在保留使用 deepin 的前提下比较舒适地使用 emacs。

另外一个吐槽点,要去修改那些快捷键,deepin 不使用浅色主题的话,那些键名称根本看不清楚。

个人认为,是否可以设置一个全局开关,允许用户在禁用本地快捷方式时,把按键都传递到远端(一般用终端版的emacs就是为了远程编辑)。

Reply Favorite View the author
All Replies
liwl
deepin
2021-11-21 22:47
#1

在用户特殊使用习惯上,我个人觉得官方不会有太多妥协哈

不过那个默认ctrl +shit+ 数字,

选择标签页,而非alt+数字,这个操作方式,是有别的参考还是?我都是改成alt了

Reply View the author
trutheeker
deepin
2021-11-21 23:57
#2

支持,我说过了,没人呼应。

Reply View the author
trutheeker
deepin
2021-11-22 05:24
#3

其实就是提供多一套emacs相应的快捷键模式。。。。。。。。

Reply View the author
learner
deepin
2021-11-22 10:06
#4

好像应该用 stty 命令来修改在终端中输入特定字符的功能,例如

stty -a

显示当前各种按键设置,在输出中可以看到 stop ^S表示将 Ctrl + S 绑定到了“停止屏幕输出”的功能上

可以使用如下命令将该功能绑定到另一个按键上(例如绑定到 Ctrl + P 上应该采用如下命令)

stty stop ^P

此时按 Ctrl + S 应该就不会造成停止屏幕输出的问题了

(y1s1 这个问题可能确实不是 deepin-terminal 的问题,我用别的终端仿真器似乎遇到的现象是相同的 —— 不过我是用vim尝试的,就是运行 vim 之后依次输入 Ctrl+S, a, b, c, d, Ctrl+Q 这几个按键,在按下bcd时屏幕没有输出,直到按下 Ctrl+Q 时刚刚输入的 bcd 才会在屏幕上显示出来;而如果用 stty 将 Ctrl+S 键改成别的,在 vim 里面按下 Ctrl+S 之后再按 abcd,会在屏幕上立刻显示出 bcd)

Reply View the author
135******75
deepin
2021-11-22 17:01
#5
learner

好像应该用 stty 命令来修改在终端中输入特定字符的功能,例如

stty -a

显示当前各种按键设置,在输出中可以看到 stop ^S表示将 Ctrl + S 绑定到了“停止屏幕输出”的功能上

可以使用如下命令将该功能绑定到另一个按键上(例如绑定到 Ctrl + P 上应该采用如下命令)

stty stop ^P

此时按 Ctrl + S 应该就不会造成停止屏幕输出的问题了

(y1s1 这个问题可能确实不是 deepin-terminal 的问题,我用别的终端仿真器似乎遇到的现象是相同的 —— 不过我是用vim尝试的,就是运行 vim 之后依次输入 Ctrl+S, a, b, c, d, Ctrl+Q 这几个按键,在按下bcd时屏幕没有输出,直到按下 Ctrl+Q 时刚刚输入的 bcd 才会在屏幕上显示出来;而如果用 stty 将 Ctrl+S 键改成别的,在 vim 里面按下 Ctrl+S 之后再按 abcd,会在屏幕上立刻显示出 bcd)

不起作用啊,而且即使起作用,这个修改只对当前会话窗口有效吧

同样的使用,刚刚找了个优麒麟20(相当于Ubuntu20)的系统,用它的 Mate终端,ssh连了,emacs使用没有按键问题。

如果没有好的解决办法,我只有换个终端使用了。

Reply View the author