Bizarre problem. Нажатие клавиши ']' в терминале приводит к '7', а нажатие '7' приводит к стрелке вниз

Вот что произошло, когда я писал код на C в vim в терминале Ubuntu 16.04.

Каждый раз, когда я пытаюсь ввести правую скобку, окно терминала показывает мне '7'. Кроме того, при нажатии клавиши '7' вводится символ стрелки вниз (я думаю, это символ юникода).

Пример:

fprintf(stdout, "%s\n", argv[17);

Странно, но нажатие Shift-] приводит к '}', как и ожидалось, а другие цифровые клавиши показывают соответствующее число правильно.

Подумав, что это проблема в vim, я попробовал открыть файл в emacs и увидел то же самое.

А когда я попробовал скомпилировать файл с помощью gcc, вывод компилятора имел ту же странную проблему с кодировкой.

Я попытался подключиться по ssh к удаленному серверу, и произошло то же самое, так что я уверен, что проблема в том, как мой терминал отображает символы.

Что происходит и как мне это исправить?

Edit: Проблема решена благодаря совету использовать команду reset. После перезапуска терминала все работает нормально. Я работал с двоичными данными, что, похоже, и стало причиной этой проблемы.

1
задан 10 March 2017 в 11:17

1 ответ

Благодаря ссылке, отправленной пользователем brndn2k, я смог решить вопрос.

я работал с двоичными данными, и это, должно быть, было преступником, как упомянуто в ссылке.

Используя эти reset команда и перезапуск моих терминалов возвратили терминал кодированию обычного символа.

https://stackoverflow.com/a/121299

1
ответ дан 7 December 2019 в 15:39

Другие вопросы по тегам:

Похожие вопросы: