从 OS X 终端 SSH 连接的 Linux 服务器上的全屏应用程序中缺少一行的第一个字符

Mik*_*maa 5 linux ssh terminal nano macos

在此处输入图片说明我在 Mac OS X Snow Leopard 上遇到终端应用程序问题。

我使用 ssh 连接到远程 Linux 服务器并执行配置文件编辑。

出于某种原因,它在连接到 Linux 服务器时有时会丢失字符。我在查明这一点并以可重复的方式使其发生时遇到了问题 - 不幸的是,这是我想出的最佳方法:

  1. 连接到 Ubuntu 8.04 服务器

  2. 使用nano(全屏应用程序)编辑一些文本文件

  3. 文本文件的第一行缺少该行的第一个字符(最左边的字符)。例如,如果文本文件包含“asdf”行,您将看到“sdf”。

  4. 如果你将光标移动到这个位置,字符就会回到那里(线被纳米重画)

  5. 调整终端应用程序窗口的大小不会带回任何字符

  6. 如果您在 nano 中点击刷新 (CTRL+L),字符将再次丢失

less和其他一些终端应用程序可以观察到同样的问题。

该问题在 Gnome 终端或其他终端应用程序中不会重复,因此与服务器配置无关。但是,我在两个不同的 OS X 安装上遇到了同样的问题,所以它可能与我的默认设置有关。

我怀疑这可能与 UTF-8 编码或终端设置有关,但我还没有弄清楚是哪个设置触发了它。

使用的 ssh 客户端是:

 OpenSSH_5.2p1, OpenSSL 0.9.8r 8 Feb 2011
Run Code Online (Sandbox Code Playgroud)

编辑

这实际上也可以在本地 OSX 上重复,并且与 Ubuntu 无关。

安装 Macports(不确定是否需要)并使用以下 GNU nano 编辑文本文件:

GNU nano version 2.0.6 (compiled 11:42:28, May 18 2009)
Email: nano@nano-editor.org Web: http://www.nano-editor.org/
Compiled options: --disable-nls --enable-color --enable-extra --enable-multibuffer --enable-nanorc
Run Code Online (Sandbox Code Playgroud)

设置了以下终端相关的环境变量:

    TERM=ansi
    TERM_PROGRAM=Apple_Terminal
    TERM_PROGRAM_VERSION=273.1
Run Code Online (Sandbox Code Playgroud)

在 Terminal.app 中,它说仿真是 ansi 并编码 UTF-8。

不确定哪个是触发组合(哪个终端模式等)

Vul*_*tan 5

我解决了在 OS X 终端设置中遇到的类似问题:配置文件、高级,并将“声明终端为”下拉框更改为 xterm-256color。


Mik*_*maa 0

看起来终端只是有问题。

我建议改用iTerm 2

iTerm2 是 Terminal 的替代品,也是 iTerm 的后继者。它适用于配备 Leopard、Snow Leopard 或 Lion 的 Mac。它的重点是性能、国际化以及支持让您的生活更美好的创新功能。