Подтвердить что ты не робот

Как мне получить акцентированные письма для работы на bash?

Моя установка bash на cygwin неправильно обрабатывает буквы с акцентом. Я попробовал добавить

set input-meta on    # to accept 8-bit characters
set output-meta on   # to show 8-bit characters
set convert-meta on  # to show it as character, not the octal representation

к моему входу rc, но это пока не совсем работает. Действительно, если я набираю

$ echo ù

то перед тем, как я нажму кнопку ввода, он автоматически изменится на

$ echo \303

хотя выход прав, потому что я получаю

$ echo \303
ù

Я получаю тот же результат для любого другого акцентированного письма. Обычно, хотя я использую неязычную клавиатуру, я использую autohotkey для замены букв с апострофом после них с акцентированной буквой. В этом случае буквы с акцентом заменяются символом \302, и они печатают мусор в зависимости от буквы: печатает a 3y для ù, a ¢ для ò, и ничего для вечного иначе.

Как мне все это иметь смысл?

EDIT: мои настройки языка, версия cygwin и терминал следующие

$ uname -a
CYGWIN_NT-6.1-WOW64 ferdi-Asus 1.7.17(0.262/5/3) 2012-10-19 14:39 i686 Cygwin
$ locale
LANG=it_IT.UTF-8
LC_CTYPE="it_IT.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="it_IT.UTF-8"
LC_COLLATE="it_IT.UTF-8"
LC_MONETARY="it_IT.UTF-8"
LC_MESSAGES="it_IT.UTF-8"
LC_ALL=
$ tty
/dev/pty1

Я вызываю его, просто нажимая ссылку Cygwin terminal. Он перенаправляет на

C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -

Соответствующая часть autohotkey script следующая

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
...
::avra'::avrà
::avro'::avrò
...
4b9b3361

Ответ 1

Чтобы получить буквы с акцентом на bash через Cygwin с помощью Mintty 1.1.2, выполните следующие действия:

  • Перейдите в меню (если вы не видите какое-либо меню, щелкните правой кнопкой мыши на своем терминале).
  • Нажмите Параметры....
  • Нажмите Текст.
  • Измените Локальный на C.
  • Измените набор символов на ISO-8859-1 (Western European).

Changing Locale and Character set in Mintty 1.1.2

Затем проверьте его:

Echoing accented letters in Mintty 1.1.2