如何在GNOME终端中启用阿拉伯语支持?


32

我正在尝试在终端应用程序中编写阿拉伯语,但是它无法识别从右到左的文字,并且也没有将阿拉伯字母绑定在一起。

我尝试了此解决方案https://bugs.launchpad.net/ubuntu/+source/vte/+bug/263822,但是它没有用。

是否有计划在gnome终端中实现阿拉伯语支持?KDE Konsole终端可以正常工作。


1
当您尝试bugs.launchpad.net/ubuntu/+source/vte/+bug/263822时会发生什么?
NN

2
为什么需要在终端机中写阿拉伯语,为什么要从右到左?
黑色街区

1
仅供参考:阿拉伯语通常从右到左书写。就像其他几种语言一样,旧的希伯来语甚至在从右到左从左到右之间切换。传统的日语书写从页面的右上角开始,然后向下一列,右下一行是字形。这也使他们可以从右封面阅读书籍,将页面向左翻,直到到达书的末尾(西方的封面)。
david6 2011年

在任何给定的会话中,您是否需要从左到右从右到左?您是在使用终端仿真(转义序列,全屏,字段布局),还是仅用于命令行?
david6 2011年

@Naruto对我来说,我需要阿拉伯语支持,因为我使用的是IRC客户端,加入阿拉伯语频道会在客户端中显示失真的单词。不确定他。
Suhaib 2012年

Answers:


10

对于Ubuntu 64位,您需要下载此软件包

代替。我猜你有一个依赖问题。您还需要使用此命令安装上述应用程序。

sudo apt-get install libfribidi0 libfribidi-dev

希望这可以帮助


9

尝试以下操作:sudo apt-get install libfribidi0 libfribidi-dev,安装软件包,然后vim /usr/share/applications/gnome-terminal.desktop将此代码添加到文档中:

Terminal=true
Exec=/usr/bin/bicon.bin

在Ubuntu 13.04中,我安装了这些软件包,但可以在任何地方找到bicon.bin ...
Ba7a7chy 2013年

我想让fribidi在Linux Suse上工作。我已经按照其官方网站上的安装人员安装了Fribidi,但是在终端上看不到任何变化。并尝试zypper install libfribidi0我得到的错误:Loading repository data... Reading installed packages... 'libfribidi0' not found in package names. Trying capabilities. No provider of 'libfribidi' found. Resolving package dependencies.一直在搜索,没有得到一个单一的结果。我应该拥有什么包裹?
Neeku 2014年

7

使用Mlterm,它对阿拉伯语和其他非拉丁字符有很好的支持。您可以从Ubuntu存储库下载它

Mlterm的图片,显示阿拉伯语


您可以从Ubuntu存储库中下载它
Damascene,2016年

您可以编辑问题以附加评论的内容并使之更有用。
雅库耶

我安装了它,但似乎不起作用,阿拉伯字符只是盒子。也许使用了错误的字体?
Flimm

@Flimm确保编码设置为iso-8859-6或windows或ibm等效文件
错误

@错误我最近尝试了mlterm,它似乎可以工作。我很高兴我不必尝试iso-8859-6,说实话,当所有内容都使用UTF-8时,生活要简单得多。
Flimm

4

更新资料

正如egmont在下面的评论中提到的那样,BiDi实现即将出现在vte终端仿真器中。检查他的答案,这是有关此主题的最新更新。

如果需要详细信息,参考:https : //terminal-wg.pages.freedesktop.org/bidi/


原始答案

不,没有计划在其中实施RTL支持,gnome-terminal或者任何终端都取决于安装终端vte的情况synaptic

  • 您可以通过fribidi命令代理命令来制作比迪烟语和阿拉伯语的基本形状。
  • 您也可以使用konsole(KDE)或mlterm已实现部分支持Unicode bidi和整形的工具。

当前,没有正确的方法为控制台实现这些Unicode算法。(这些在konsole和mlterm中的实现是一种解决方法)

这是Behdad Esfahbod帖子的一部分,他是HarfBuzz的主要开发人员 (简称hb,是一种OpenType文本成形引擎)

支持复杂文本的终端仿真器是非常奇怪的混合体。一方面,终端仿真器必须以预定义的方式将文本放置在预定义的网格中,这与复杂文本的许多方面和要求相冲突,另一方面,用户要求在其终端中支持复杂文本。当您在控制台文本编辑器中考虑双向文本时,它变得更难看。尽管如此,可以说这种混合动力对整形引擎没有任何新的要求。gnome-terminal除了组合标记外,目前不支持复杂文本。Konsole具有双向文本支持。Apple的终端应用程序至少支持bidi和阿拉伯语成形功能,不确定其他复杂文本。更新(2010年1月18日): 最新版本的Emacs中的终端模式(术语和ansi-term)可以呈现复杂的文本,包括印度语。

资料来源: 文字渲染状态

这是Launchpad 错误#263822中相应的错误报告:终端(BiDi)中的RTL(从右到左)支持


1
“不,没有计划在其中实现RTL支持,gnome-terminal或者任何终端都取决于vte” –当您发布此答案时,这是正确的,幸运的是,情况不再如此。看到我的答案更新。
egmont

3

GNOME Terminal 3.34支持从右到左的脚本,例如阿拉伯语。

该工作实际上已经进入VTE版本0.58,因此使用VTE的任何其他终端仿真器(例如Tilix,Terminator,Xfce Terminal,Guake ...)都将自动接收它。

它将在Ubuntu 19.10 Eoan Ermine中首次亮相。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.