5

У меня проблемы с приложением «Терминал» в Mac OS X Snow Leopard.

Я использую ssh для подключения к удаленному серверу Linux и выполняю редактирование файла конфигурации.

Почему-то иногда пропускаются символы при подключении к серверу Linux. У меня были проблемы с определением и повторением этого, к сожалению, это лучший метод, который я придумала:

  1. Подключиться к серверу Ubuntu 8.04

  2. Отредактируйте текстовый файл с помощью nano (полноэкранное приложение)

  3. В первой строке текстового файла отсутствует первый символ строки (крайний левый символ). Например, если текстовый файл содержит строку "asdf", вы увидите "sdf".

  4. Если вы переместите курсор в эту позицию, символ вернется назад (строка перерисовывается с помощью nano)

  5. Изменение размера окна приложения "Терминал" не возвращает никаких символов

  6. Если вы нажмете обновить (CTRL+L) в нано, персонажи будут снова потеряны

Та же проблема наблюдается с less и некоторых других терминальных приложений.

Проблема не повторяется с терминалом Gnome или другим терминальным приложением, поэтому она не может быть связана с конфигурацией сервера. Однако у меня одна и та же проблема в двух разных установках OS X, поэтому она может быть связана с моими настройками по умолчанию.

Я подозреваю, что это может быть как-то связано с кодировкой UTF-8 или настройками терминала, но мне пока не удалось выяснить, какие настройки вызывают его.

Используемый ssh-клиент:

 OpenSSH_5.2p1, OpenSSL 0.9.8r 8 Feb 2011

Редактировать:

Это на самом деле повторяется и на локальной 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

Устанавливаются следующие переменные среды, связанные с терминалом:

    TERM=ansi
    TERM_PROGRAM=Apple_Terminal
    TERM_PROGRAM_VERSION=273.1

В Terminal.app говорится, что эмуляция ANSI и кодировка UTF-8.

Не уверен, какая комбинация запуска (какой режим терминала и т.д.)

3 ответа3

5

Я решил аналогичную проблему, которая была у меня в настройках терминала OS X: Profiles, Advanced, и изменил выпадающий список "Объявить терминал как" на xterm-256color.

4

Описанная вами проблема типична для неверного значения переменной среды TERM. В частности, значение переменной TERM в Ubuntu выбирает набор функций и возможностей терминала, которые не соответствуют таковым в приложении «Терминал OS X».

Если для TERM установлено что-то вроде xterm-color или xterm-256color попробуйте установить для него другие значения (например, другое из двух упомянутых мной, или обычный xterm , ansi или vt220).


ОБНОВИТЬ:

В OS X Terminal.app попробуйте следующие команды

TERM=ansi nano googlef916dafa821844e0.html
TERM=vt220 nano googlef916dafa821844e0.html
TERM=xterm nano googlef916dafa821844e0.html
TERM=xterm-color nano googlef916dafa821844e0.html    
TERM=xterm-256color nano googlef916dafa821844e0.html
0

Похоже, Терминал просто глючит.

Я рекомендую использовать iTerm 2 вместо этого.

iTerm2 является заменой Терминала и преемником iTerm. Работает на Mac с Leopard, Snow Leopard или Lion. Он сосредоточен на производительности, интернационализации и поддержке инновационных функций, которые делают вашу жизнь лучше.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .