Meine Bash-Installation auf Cygwin behandelt Akzentbuchstaben nicht richtig. Ich habe versucht,Wie bekomme ich akzentuierte Buchstaben, um tatsächlich auf bash zu arbeiten?
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
meine Eingabe rc Zugabe, aber das ganz funktioniert noch nicht. Ja, wenn ich
$ echo ù
geben, bevor ich es Eingabetaste drücken wird automatisch geändert
$ echo \303
obwohl der Ausgang richtig ist, denn ich bekommen
$ echo \303
ù
ich das gleiche Ergebnis für jeden anderen akzentuierten Buchstaben. Normalerweise benutze ich eine nicht-italienische Tastatur, und ich benutze autohotkey
, um Buchstaben mit einem Apostroph nach ihnen mit einem Buchstaben mit Akzent zu ersetzen. Wenn dies der Fall ist, werden akzentuierte Buchstaben durch eine ersetzt, und sie drucken Müll abhängig vom Buchstaben: druckt eine 3y
für eine ù
, eine für eine ò
, und nichts für alles andere.
Wie bekomme ich das alles sinnvoll?
EDIT: meine lokalen Einstellungen, Cygwin-Version und Terminal sind die folgenden
$ 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
Ich Aufrufen es einfach die Cygwin-Terminal Link klicken. Es leitet zu
C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -
Der relevante Teil des autohotkey Skript wird die folgende
#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ò
...
Welche Cygwin Version verwenden Sie, und mit welchem Terminal? Was ist Ihre Gebietsschemaeinstellung, d. H. Was sind die Werte von LC_ALL, LC_CTYPE und LANG? In jedem Fall muss 'convert-meta' deaktiviert sein, damit Nicht-ASCII-Zeichen korrekt funktionieren. – ak2
Ich habe meinen Beitrag bearbeitet, um zu zeigen, was Sie gefragt haben.Das Ausschalten von Convert-Meta scheint tatsächlich nichts zu ändern. –
Nicht-ASCII-Buchstaben funktionieren gut für mich ohne Convert-Meta, und sie funktionieren nicht mehr, wenn ich sie einschalte, was nicht verwunderlich ist: "Wenn 'on' gesetzt ist, konvertiert Readline Zeichen mit dem achten Bit zu einer ASCII-Schlüsselsequenz, indem das achte Bit entfernt wird und ein ESC-Zeichen vorangestellt wird, um sie in eine Meta-Präfix-Schlüsselsequenz umzuwandeln. Der Standardwert ist 'on'. " – ak2