Cyr*_*lle 3 bash unicode utf-8
我在我的一个冗长的 shell 脚本中使用 GNU 对话框。我遇到的问题之一是当我要求一个输入框时,用户可以在其中输入一本书的标题(主要是法语)。
\n\n在此输入框中,输入重音字符(\xc3\xa9\xc3\xa0\xc3\xa8 在法语中很常见)或特殊的 UTF-8 字符(例如破折号“\xe2\x80\x94”)会移动光标右边有 4 个字符,而不是 1 个。在 3 或 4 个“特殊”字符之后,输入框由于此工件而完全无法使用。
\n\n同样,当我显示带有对话框的菜单时,重音字符会移动对话框的右边框。这比输入框中的障碍要小,但视觉上却很不舒服。
\n\n我已经尝试了各种方法来使其正常工作,但无济于事。
\n\n作为记录,这是我的 LC_* 环境变量:
\n\nLC_PAPER=fr_FR.UTF-8\nLC_ADDRESS=fr_FR.UTF-8\nLC_MONETARY=fr_FR.UTF-8\nLC_NUMERIC=fr_FR.UTF-8\nLC_ALL=fr_FR.UTF-8\nLC_TELEPHONE=fr_FR.UTF-8\nLC_MESSAGES=fr_FR.UTF-8\nLC_IDENTIFICATION=fr_FR.UTF-8\nLC_COLLATE=fr_FR.UTF-8\nLC_MEASUREMENT=fr_FR.UTF-8\nLC_CTYPE=fr_FR.UTF-8\nLC_TIME=fr_FR.UTF-8\nLC_NAME=fr_FR.UTF-8\nLANG=fr_FR.UTF-8\nRun Code Online (Sandbox Code Playgroud)\n\n我能做什么?
\n\n(编辑:如下所述,我使用的是 Mac,无论我使用 iTerm2 还是内置终端模拟器,都会出现同样的问题。)
\n小智 5
我知道这是一个老问题,但答案可能有用......
我解决了设置以下环境变量的问题:
export NCURSES_NO_UTF8_ACS=1
Run Code Online (Sandbox Code Playgroud)
我有 putty 和 putty-256color 终端字符串和一台 RHEL6 机器。使用 tmux 或 screen 时它也适用。有关此变量的更多信息,只需调用“man 3 ncurses”。
| 归档时间: |
|
| 查看次数: |
3889 次 |
| 最近记录: |