问题标签 [rtl-language]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
31433 浏览

sublimetext3 - 带有 Sublime Text 编辑器的阿拉伯语

我对不支持RTL语言的 sublime 文本编辑器有疑问!我已经尝试使用 Windows 操作系统在双向文本支持中使用此插件 我已将所有文件从 zip 复制Sublime-Text-2-BIDI-masterST3文件夹中并更改了字体类型和大小...然后我复制unicodedata.pydC:\Users\USERNAME\AppData\Roaming\Sublime Text 2\Packages\Bidirectional text support\bidi然后Tools > Bidirectional text部分不再看起来是灰色的但它仍然禁用。我也复制了这两行: sys.platform.startswith('win'): sys.path.append('../../..') 但它没有用。

0 投票
1 回答
4579 浏览

android - 如何在通知中处理混合 RTL 和 LTR 语言?

背景

Android 4.3 增加了很多对 RTL(从右到左)语言的支持,例如希伯来语和阿拉伯语。

问题

即使有“textDirection”、“layoutDirection”和“gravity”,我也找不到通知生成器的等价物,甚至在兼容性库中也找不到。

这意味着如果同时存在希伯来语和英语单词,则顺序是错误的。例如(为了简单起见,我用英文写):

你得到的不是 "X called Y" ,而是 "Y called X" (假设 " called" 是希伯来语中的一个词),因为字符串应该采用以下格式:

注意:X 和 Y 可以是 RTL 或 LTR 字(甚至是偶数)。

要求是,在希伯来语中,右边的词应该是 X ,然后是“被召唤”这个词(当然是希伯来语),然后是左边的 Y 。正如我试图在英语类比示例中展示的那样,情况恰恰相反。

我试过的

一个。我试图搜索文档,我发现我可能需要覆盖布局,但这不是一个好的解决方案。原因:

  1. 我可能没有使用正确的 Android 样式。
  2. 对于可能使用不同样式的下一个 Android 版本,这不是未来的证明。
  3. 它不支持股票代码文本。

湾。我还尝试调查哪些特殊字符会强制文本方向不同,它通过在要显示的文本的开头和结尾添加 '\u200f' 来工作,但它有一些缺陷:

  1. 它不像其他属性那样灵活。
  2. 我不确定我使用官方的方式来处理这个问题。
  3. 每次使用通知时我都需要添加它
  4. 它对tickerText 根本不起作用。仅适用于通知,即使如此,也不适用于所有情况。

这是一个示例代码:

C。我也可以在字符串中的 '1' 和 '2' 之间切换,但这并不能处理所有情况,而且翻译人员更加困惑。

问题

有什么方法可以让通知生成器正确处理文本(对于通知和 TickerText)?

有什么方法可以在不为通知(或更改字符串)实际制作全新布局的情况下对其进行调整,这可能与 Android 的原生样式不同?

处理这种事情的官方方式是什么?

0 投票
2 回答
834 浏览

javascript - 如果段落阿拉伯语言,则通过 Javascript 或 jQuery 添加类

当我在段落或 div 上使用不同的语言(如阿拉伯语)来制作花药字体和方向时,我会添加类,我会使其自动生成。

0 投票
3 回答
9273 浏览

android - 使用 android:supportsRTL="true" 时禁用自动更改布局方向

我的应用程序将来必须同时支持 RTL 和 LTR 语言,但现在只支持 RTLs。当我在每个布局中使用android:supportsRTL="true"withandroid:layoutDirection="end"时,NavigationView 和 Toolbar 以及其他一切都很好。

但唯一的问题是当用户将系统语言更改为 LTR 语言时,由于布局方向的改变,一切都会出错。

我需要什么:我必须设置supportsRTL:“true”。当用户在启动时选择“应用程序”语言而不是根据操作系统语言时,我需要以编程方式更改布局方向。

问题:有没有办法通过更改操作系统语言(而不是设置supportsRTL false)来防止布局方向的自动更改?

见下图:

支持RTL=

如果我android:supportRTL="false"为 RTL 设置和设计布局,工具栏和导航的菜单方向将是我的新麻烦。

见下图:

支持RTL=

0 投票
4 回答
190 浏览

javascript - 如何将波斯语(波斯语)段落转换为 Javascript 中的单词列表

我正在尝试从显示单词及其频率的段落中制作一个对象。

该代码最初是为一个英文段落制定的。但是我需要将它用于波斯语。我知道它应该是别的东西,而不是 "/\w+/g" 在:

但我不知道是什么。

0 投票
2 回答
660 浏览

android - 在导航视图中显示文本右侧的图标

对不起,我的英语不好。我在某些活动中有一个导航抽屉,我希望将每个导航视图项的图标放置在该项目文本的右侧,并且整个项目获得正确的重力。因为我只在我的应用程序中使用了波斯语,所以我不能在我的代码中使用“supportsRtl”,如果我使用,当我将设备语言设置为任何 rtl 语言时会看起来很奇怪。

我想也许我可以通过为导航视图设置自定义布局来解决这个问题,但我正在寻找一种更简单的方法。这是我的 NavigationView XML 代码:

在此处输入图像描述

在此处输入图像描述

编辑:
layoutDirection 是一个很好的答案,但我用于
drawerLayout.openDrawer(GravityCompat.START);
打开导航抽屉。现在,如果设备语言是 rtl 语言,这会使应用程序崩溃。

0 投票
1 回答
1075 浏览

ios - 如何在 iOS 应用程序中更改布局方向(LTR 和 RTL)?

我的应用程序同时支持英语和阿拉伯语。如果我将系统语言从英语更改为阿拉伯语,布局会自动变为从右到左。

但是,我想添加一个功能,用户可以从我的应用程序内部更改语言。显然,如果我只是重新加载包,布局将保持不变。我用谷歌搜索了这个,人们建议在将语言更改为阿拉伯语后,我应该打电话

但这并不完美。在我的例子中,当我推送一个包含表格视图的视图控制器时,前几行仍然是从左到右的。我必须向下滚动一点才能将这些单元格移出屏幕,然后再滚动回来。此时它们将变为从右到左。

有谁知道如何解决这一问题?

0 投票
1 回答
78 浏览

swift - 滚动视图的前导和尾随约束在 rtl 语言中搞砸了

当我将语言切换为 rtl(arabic) 时,滚动视图显示正确的布局与 ltr(English) 滚动视图的前导和尾随约束被扭曲,它们更向左移动

0 投票
1 回答
394 浏览

javascript - React Native 的 RTL 幻灯片

我需要 RTL 反应原生幻灯片。测试反应原生 snap carousel,但这个库在 RTL 中有错误。

我测试波纹管库:react-native-swiper react-native snap carousel

0 投票
1 回答
2128 浏览

ios - 在应用程序 RTL 中实现不同语言的 Apple 登录按钮

我的应用程序有 2 种语言英语和阿拉伯语,用户第一次进入应用程序时会选择它们。我不使用设备语言环境。

在 RTL 语言的情况下,我还必须手动将文本“Continue with Apple”更改为阿拉伯语,并将苹果徽标移动到文本的右侧。

参考图片

显示使用苹果按钮登录的登录屏幕