问题标签 [xterm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2446 浏览

terminal - 我可以获得终端标题吗?(或以其他方式恢复旧的)

使用 .设置终端标题很容易echo -e "\e]0;some title\007"。适用于几乎所有终端程序。

我想要的是在某些程序启动时设置终端标题 - 并在它完成时恢复旧的。这可能吗?

0 投票
1 回答
1952 浏览

c - 使用 gtk 剪贴板在 GNOME 中将文本粘贴到 xterm

我正在开发一个必须支持剪贴板的基于 GTK 的应用程序。为此,我使用gtk_clipboard_set_with_data目标格式导出选择数据:UTF8_STRING, STRING, TEXT, COMPOUND_TEXT, text/plain, text/plain;charset=utf-8,text/rtf和. 使用它,我可以将文本从我的应用程序复制粘贴到其他文本编辑器,如 gedit。但是,我无法将文本粘贴到 XTerm。我应该出口到任何其他目标吗?我在哪里可以获得 XTerm 接受的格式列表? text/htmltext/url

0 投票
1 回答
1419 浏览

macos - 将 OS X 原生字体添加到 X11

我开始使用 xterm 作为我的默认终端。我唯一的问题是我不喜欢任何字体。是否可以安装更多字体以在 X11 中使用。我真的很想去摩纳哥。谢谢。

0 投票
4 回答
3223 浏览

emacs - Emacs、unicode、xterm 鼠标转义序列和宽终端

简短版:当使用 emacs 的 xterm-mouse-mode 时,Somebody (emacs?bash?xterm?) 会截取 xterm 的控制序列并将它们替换为 \0。这在宽显示器上很痛苦,因为只有前 223 列有鼠标。

罪魁祸首是什么,我该如何解决?

据我所知,这与 Unicode/UTF-8 支持有关,因为 5 到 6 年前我最后一次拥有一台大显示器时,这还不是问题。

血腥细节如下...

谢谢!

Emacs xterm-mouse-mode 有一个众所周知的弱点,即处理从 x=95 开始的鼠标点击。最新版本的 emacs 采用的解决方法将问题推到 x=223。

几年前,我发现 xterm 将位置编码为 7 位八位字节。给定位置“x”进行编码,X=x-96,发送:

我们必须在 emacs 中给定的 x 位置加一,因为 xterm 中的位置从 1 开始,而不是 0。因此神奇的 x=95 数字弹出,因为它被编码为“\300\200”——第一个转义数字。有人(emacs?bash?xterm?)将那些视为来自ISO 2022的“C0”控制序列。从 x=159 开始,我们更改为“C1”序列 (\301\200),这也是 ISO 2022 的一部分。

\302 序列出现问题,这对应于当前的 x=223 限制。几年前,我能够扩展 hack 以手动拦截 \302 和 \303 序列,从而解决了问题。快进几年,今天我发现我被困在 x=223 上,因为有人用 \0 替换了这些序列。

所以,我希望点击第 1 行,第 250 列产生

取而代之的是 emacs 报告(对于任何 col > 223)

我怀疑 Unicode/UTF-8 支持是罪魁祸首。一些挖掘表明,Unicode 标准允许 C0 和 C1 序列作为 UTF-8 的一部分,直到 Nov 2000,我猜有人没有得到备忘录(幸运的是)。但是,\302\200 - \302\237 是Unicode控制序列,因此有人将它们吞下(用它们做谁知道什么!)并返回 \0。

一些更详细的问题:
- 谁是在代码到达 emacs 丢失缓冲区之前拦截代码的人?
- 如果它真的只是关于控制序列,那么 \302\237 之后的字符(可打印的 Unicode 的 UTF-8 编码)怎么会返回为 \0 ?
- 是什么让 emacs 决定是否将丢失显示为 unicode 字符或八进制转义序列,为什么两者不匹配?例如,我自建的 cygwin emacs 23.2.1 (xterm 229) 报告第 161 列的 \301\202,但我的 rhel5.5 提供的 emacs 22.3.1 (xterm 215) 报告“”(带有抑扬符的拉丁 A) ,实际上是 UTF-8 中的 \303\202 !

更新:

这是针对 xterm-261 的补丁,它可以以 utf-8 格式发出鼠标位置:

希望这个(或类似的东西)会出现在 xterm 的未来版本中......该补丁使 xterm 使用 emacs-23(假定 utf-8 输入)开箱即用,并修复了 xt-mouse 的现有问题。埃尔也。要将它与 emacs-22 一起使用,需要重新定义用于解码鼠标位置的函数(新定义也适用于 emacs-23):

将 defun 作为 .emacs 的一部分分发到您登录的所有机器上,并在您工作的任何机器上修补 xterm。瞧!

警告:使用 xterm 的鼠标模式但不将其输入视为 utf-8 的应用程序将被此补丁混淆,因为鼠标转义序列变得更长。但是,这些应用程序与当前的 xterm 严重中断,因为 x > 95 的鼠标位置看起来像 utf-8 代码,但不是。我会为 xterm 创建一个新的鼠标模式,但是某些应用程序(gnu 屏幕!)会过滤掉未知的转义序列。Emacs 是我使用的唯一终端鼠标应用程序,因此我认为该补丁是净胜,但 YMMV。

0 投票
2 回答
735 浏览

cygwin - alt-b、alt-f 在 xterm 中不起作用

我在 cygwin/Xming 下使用 xterm。

Alt+ B(向后跳一个单词)和Alt- F(向前跳一个单词)不起作用,而是显示一些变音字符或其他东西。

我在我的主目录中创建了一个文件 .Xresources 和一个文件 .Xdefaults ,每个文件都只包含这一行:

然而问题依然存在。

0 投票
1 回答
700 浏览

emacs - 退出emacs后如何恢复xterm颜色

当我从终端使用 emacs(xterm-color;在这种情况下是 putty ssh 会话)时,emacs 使用的字体颜色与我在 shell 中使用的字体颜色不同。这很好。但是,在我退出 emacs(或为此暂停它)后,颜色不会恢复。

在我的 emacs 会话后返回 shell 时,我可以做些什么来恢复我的术语颜色?

我为我的ls命令添加了别名以添加--color选项,如果我运行它,如果列表显示任何具有“非默认”颜色的文件,它会恢复我的颜色,但这是让我的颜色恢复的一种相当丑陋的方式。

0 投票
1 回答
104 浏览

linux - 更改目录回显“目录:"

在我的 SLED10 机器上使用 Screen 时遇到一个烦人的问题。更改目录(cd、chdir、pushd/popd)时,结果路径会在终端中回显。

这个问题似乎只存在于 Screen 中。我检查了我的提示,它不包含与此行为相关的任何内容。我正在使用 tcsh/xterm。

如何摆脱目录的回声?!

最好的问候,斯特凡

0 投票
1 回答
260 浏览

ruby - “ruby script.rb”与“xterm -e ruby​​ script.rb”

我遇到了一个我无法解释的 Ruby 奇怪问题。我有以下脚本,它抓取剪贴板中当前的任何代码,通过语法荧光笔运行它,然后将新版本放回剪贴板:

奇怪的是,如果我直接在终端中运行它,它就可以正常工作。但是,如果我通过“xterm -e”运行它,它就不起作用。我在另一个提出相同问题的网站上找到了这个帖子,但这个人从未得到答案:http ://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/138423

那个人发现,如果他们像这样在脚本的末尾添加一个暂停......

...有用。为什么是这样?有没有办法来解决这个问题?我尝试重写脚本,以便 popen 返回一个 IO 对象,我可以手动调用 close,但这并没有什么不同。

0 投票
2 回答
815 浏览

x11 - 如何在 Mac os x X11 xterm 中使用德语变音符号

我有一台带有德语键盘布局的 macbook pro。在 X11 xterm 应用程序中,当我键入 ä,ö,ü,ß 之类的变音符号时,它们不会出现。ß 像向上箭头一样显示历史。另一方面,如果我在 x11(而不是 xterm)中启动 emacs,那么一切正常。

如何配置 X11 xterm 以键入所有字符?

是的,我检查了首选项面板中的“遵循系统键盘布局”复选框。

谢谢,亚历克斯。

0 投票
1 回答
3411 浏览

bash - Bash 换行和历史滚动

我的 bash 提示和换行行为有问题。如果我使用静态提示

我可以在提示符下输入长行,它们可以很好地换行。在历史记录中向上/向下滚动也可以正常工作。在使用动态提示时,例如:

长队被打乱了。找到了使长行正确换行的修复程序。(http://hintsforums.macworld.com/showthread.php?t=17068)。

但是,当向上/向下提示历史记录时,行不会换行。我不知道如何用语言来解释这种行为,但我会尝试 - 当我向上(向上箭头键)时,最后一个命令的一半被吃掉,光标最终落在行将换行的位置之间的某个地方。

解决方案是什么?

我记得在许多 Linux 发行版上,动态提示开箱即用(这是在我的工作场所)。

问候,

J.P