📄 mlang.cnx
字号:
*mlang.txt* For Vim version 6.2. 原文最近更新:2003年5月18日 Vim 参考手册 作者:Bram Moolenaar 翻译:jwdu <junweidu@ustc.edu>, iCrazy <icrazy@ustc.edu> http://vimcdoc.sf.net 多语言特征 *multilang* *multi-lang*这里讲的是使用各种不同语言的信息和菜单。如果希望编辑多字节文本请参看|multibyte|。基本的使用请参看用户手册 |usr_45.txt|。1. 信息 |multilang-messages|2. 菜单 |multilang-menus|3. 脚本 |multilang-scripts|{Vi 没有以上的功能} {当没有以参数 |+multi_lang| 编译时以上功能都是不可用的}==============================================================================1. 信息 *multilang-messages*Vim 从环境变量中获取当前所在地的信息。这意味着在大部分的情形下,Vim 将使用您喜欢的语言,除非这种语言不存在。为了知道您的系统所支持的语言列表,您可以查看以下的路径(针对 Unix): /usr/lib/locale ~ /usr/share/locale ~不幸的是,大小写的问题也会影响到这里。同时还要注意 "-" 和 "_" 不要用错了。 *:lan* *:lang* *:language* *E197*:lan[guage]:lan[guage] mes[sages]:lan[guage] cty[pe]:lan[guage] tim[e] 显示当前的语言(aka locale)。使用 "messages" 参数, 会显示出用作消息(messages)的语言。技巧:LC_MESSAGES 。使用 "ctype" 参数,会显示出用作字符编码的语言。技巧 : LC_CTYPE。使用 "time" 参数会显示出用作 strftime() 的语言。技巧:LC_TIME。不加参数时显示当地语言的全称( 这个功能依赖于系统)。当前的语言同样也可以通过变量 |v:lang|, |v:ctype| 和 |v:lc_time| 来获得。 :lan[guage] {name}:lan[guage] mes[sages] {name}:lan[guage] cty[pe] {name}:lan[guage] tim[e] {name} 把当前的语言(aka locale)设置成 {name}。此处的 {name} 必须是您系统上的一个有效的语言。一些系统接受像 "en" 或 "en_US" 这样的别名,但是,一些系统只接受像 "en_US.ISO_8859-1" 这样完整的名称。 借助于参数 "messages" ,您就可以设置用作消息( messages)的语言。这个有时会出现异常,例如:当您编辑 日文文本时使用英文消息(messages)。它设置 $LC_MESSAGES。 借助于参数 "ctype",您就可以设置用作字符编码的语言。 这将会影响到 Vim 所连接的库。一般不能将它和 'encoding' 设成不同的值。它设置 $LC_CTYPE。 借助于参数 "time" 参数,您就可以设置用作时间和日期消 息(messages)的语言。它影响到 strftime()。它设置 $LC_TIME。没有参数时,以上两者都会被设置,另外还会设 置 $LANG。这将会使那些依赖语言的项目(一些信息,时间 和日期的格式)看起来有一些不同。 这不是所有系统都完全支持的 如果设置失败,将会返回一个出错信息。 如果设置成功,将不会有任何信息。例如: > :language 目前的语言:C :language de_DE.ISO_8859-1 :language mes 目前的 messages 语言:de_DE.ISO_8859-1 :lang mes en<MS-WINDOWS 信 息(message)的 翻 译 *win32-gettext*如果您用了自安装的 .exe 文件,信息翻译应该已经开始工作。如果您仍然没有libintl.dll 文件,可以从下面的网站得到它: http://sourceforge.net/projects/gettext这里还包含了 xgettext, msgformat 以及其它工具。libintl.dll 应该和 (g)vim.exe 放在同一个目录内,或者放在环境变量 PATH 指定的那些目录里。信息文件(vim.mo) 应放在 "$VIMRUNTIME/lang/xx/LC_MESSAGES",在这里 "xx" 是语言的缩写(大部分是两个字母)。如果您制作了自己的翻译,那么,您需要生成 .po 文件并把它转化为 .mo 文件。同时,您需要得到源代码并阅读 "src/po/README.txt" 文件。如果您不想使用自动选择的语言,那么就把 $LANG 变量设为您希望的语言。如果您不希望使用语言翻译,请设置成 "en"。 > :let $LANG = 'ja'(Windows的文本 由 Muraoka Taro 完成)==============================================================================2. 菜单 *multilang-menus*基本的使用请参看 |45.2|。Note 如果在翻译后对菜单作了更改,菜单的一些选项可能会显示成英文。请联系翻译的维持者并请求他更新菜单的翻译。您可以在 "$VIMRUNTIME/lang/menu_<lang>.vim" 中找到翻译者的名字和 e-mail 地址。为菜单设定字体,请用 |:highlight| 命令。例如: > :highlight Menu font=k12,r12当 地 语 言 的 别 名不幸的是,即使使用相同的语言和编码,不同系统上的当地语言名称也可能是不同的。如果您没有得到您需要的菜单翻译,请检查下面命令的输出: > echo v:lang现在,检查 "$VIMRUNTIME/lang" 目录中有没有使用相似语言的翻译文件。注意符号"-" 和 "_" 的区别,它可能是找不到文件的罪魁祸首!另外一个通常要注意的差别是"iso8859-1" 和 "iso_8859-1"。幸运的是,Vim 把所有的名字都转换成小写了,因此,您没有必要担心大小写的差别。为了避免忘掉空格,它们被转化成下划线。如果您发现为您的语言所准备的翻译菜单起了不同的名字,请在您自己的 runtime 目录下建立一个文件来装载它。这个文件的名字可以是: > ~/.vim/lang/menu_<v:lang>.vim检查 'runtimepath' 选项以确定会搜索哪些目录。在此文件中写一个命令来装载那个使用不同名字的菜单文件: > runtime lang/menu_<other_lang>.vim翻 译 菜 单如果您想自己翻译菜单,您可以使用 |:menutrans| 命令,下面有一些说明。推荐把每种语言的翻译放到单独的 Vim 脚本文件中。如果一种语言还没有被翻译,您可以成为它的维持者,并把您的翻译贡献出来,以便能让其它 Vim 用户使用。如果您想这样做的话,请发e-mail 给 Vim 的维护者:<maintainer@vim.org>。 *:menut* *:menutrans* *:menutranslate*:menut[ranslate] clear 清除所有的菜单翻译。:menut[ranslate] {english} {mylang} 将菜单名称 {english} 翻译成 {mylang}。像 "&" 和 "<Tab>" 这样的特殊字符也必须包括进去。如同其它 |:menu| 命令中的那样,空格和句点需要用反斜杠来转义。您可以在 $VIMRUNTIME/lang 目录中找到例子。为了检验您的翻译,首先您需要移走所有的菜单。用下面的方法您可以不重新启动 Vim 就达到这样的效果: > :source $VIMRUNTIME/delmenu.vim :source <your-new-menu-file> :source $VIMRUNTIME/menu.vim菜单的每一个部分是被独立的翻译的。这就意味着:如果 "Help" 被翻译成 "Hilfe","Overview" 被翻译成 "躡erblick",那么"Help.Overview" 就会被翻译成 "Hilfe.躡erblick"。==============================================================================3. 脚本 *multilang-scripts*在 Vim 脚本中,您可以用 |v:lang| 变量获得当前的语言(locale)。缺省值是 "C" 或者来自于环境变量 $LANG。以下这个例子展示了这个变量的一个简单的应用,它可以显示出针对用户喜好语言的信息: > :if v:lang =~ "de_DE" : echo "Guten Morgen" :else : echo "Good morning" :endif< vim:tw=78:sw=4:ts=8:ft=help:norl:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -