Poiché non hai deselezionato "Imposta le variabili dell'ambiente locale all'avvio", Terminal imposta LANG
in base alla regione selezionata in Preferenze di Sistema.
$ defaults read -g AppleLocale
ja_JP
$ locale
LANG="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_CTYPE="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_ALL=
$ asd
bash: asd: コマンドが見つかりません
Puoi modificare LANG
aggiungendo una riga come questa a ~/.bash_profile
:
export LANG=en_US.UTF-8
Dopo di ciò i comandi di cui sopra dovrebbero stampare qualcosa del tipo:
$ locale
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=
$ asd
bash: asd: command not found
LC_ALL
non deve essere impostato. LANG
e LC_ALL
sono modi diversi per cambiare le effettive variabili LC_
mostrate tra LANG
e LC_ALL
sopra. LANG
viene utilizzato come valore predefinito per le variabili locali non impostate. LC_ALL
sostituisce le variabili locali anche se sono state impostate e, se è impostata, la modifica di altre variabili locali non ha alcun effetto.
Se si deseleziona "Imposta variabili ambiente locale all'avvio" e non si configurano le variabili locali in nessun luogo, le shell useranno le impostazioni locali C per impostazione predefinita. Tuttavia, rende difficile lavorare con testo non ASCII. In bash i caratteri non ASCII vengono visualizzati e inseriti come sequenze di escape e ad esempio ä
viene interpretato come M-l
. Puoi correggere tutti quelli di cambiando output-meta, input-meta e convert-meta in ~ / .inputrc , ma anche allora pbpaste
e pbcopy
mescolano caratteri UTF-8, ls
mostra caratteri non ASCII come punti interrogativi e non è possibile digitare caratteri non ASCII in Emacs. A mio parere, è più semplice utilizzare le impostazioni internazionali UTF-8.