如何在“Sublime Text”编辑器中使用从右到左的语言

Posted

技术标签:

【中文标题】如何在“Sublime Text”编辑器中使用从右到左的语言【英文标题】:How can I use a right to left language in "Sublime Text" editor 【发布时间】:2015-11-07 10:29:22 【问题描述】:

我想在“Sublime Text”中使用一些我的语言(波斯语)的字符串,但编辑器没有正确显示它们,例如:

应该是:

<title>عنوان صفحه</title>

但这就是崇高的表现方式:

编码设置为 utf-8。 我应该怎么做才能解决它?

【问题讨论】:

Sublime 不支持 rtl 语言。正如我们所料,插件无法提供帮助。对于需要波斯文编辑的特殊情况,您可以使用“括号”或“记事本++”。 你接受了一个不起作用的答案,你知道这个插件packagecontrol.io/packages/Bidirectional%20text%20support 存在非常严重的缺陷,(到目前为止)没有解决方案 还是没有解决办法吗? 【参考方案1】:

有这个插件,但不能正常工作

https://packagecontrol.io/packages/Bidirectional%20text%20support

由 barlop 添加

重要提示-正如 cmets 所指出的,此插件实际上并不能正常工作。人们在从 sublime 复制/粘贴到记事本时遇到问题。可以查看,但这不是一个很好的答案。

注意,这个插件的 sublime 可能会以正确的顺序显示字母,但在记事本中复制/粘贴,它可能不会在输入整个负载之前先尝试在记事本中复制/粘贴。此外,此插件可能不会以从右到左的方式移动光标。 (即输入一个字母时,在从右到左的语言中,光标应该向左移动)

要安装,

我已经在 ST3 便携版上对此进行了测试。

如果您进入工具菜单,您会看到没有双向选项

如果你去这里

https://packagecontrol.io/packages/Bidirectional%20text%20support

看到它提到

他们的 github 页面在这里

https://github.com/praveenvijayan/Sublime-Text-2-BIDI

点击克隆/下载然后下载压缩包

解压并将文件夹复制到packages文件夹中。即打开sublime,执行preferences..browse packages,它会提供一个类似C:\Users\harvey\Downloads\ST3\Data\Packages的文件夹@将文件夹粘贴到那里。 (可能还是放在user子目录下比较好,我不知道)。

然后转到工具菜单,您会看到双向选项,例如以前没有的双向文本

当您使用它时,如果尚未安装“包控制”,您可能需要安装它。转到工具..命令面板.. 输入“包”查看是否出现包控件。或者转到首选项,看看是否列出了包控制。如果没有,那么您没有安装“包控制”。您可以通过转到https://packagecontrol.io/ 并单击安装来安装包控制,它会在 2 个选项卡中为您提供一些 python 代码,一个用于 ST2,一个用于 ST3,您可以将其粘贴到您的控制台中(查看..console)。但是,您不必这样做就可以安装双向包,这并不是绝对必要的。

【讨论】:

它工作了 :) 但我必须更改字体。有没有办法让英文文本和代码保持相同的字体? 我发现了一个问题。该插件修复了编辑器中的文本,但是当我保存文件并使用浏览器打开它时,字符串被弄乱了! 我没有想到这一点,因为我用它来查看文档而不是编辑它们。很抱歉造成问题。正如我所看到的,双向文本在文本编辑器中并没有得到很好的支持。 Sublime 和 Atom 默认不支持,但我认为 Notepad++ 支持。 不,Notepad++ 也很糟糕 - 突出显示都是错误的。 @HashimAziz 我在遇到问题后退出使用 sublime,我在网络驱动器上打开了文件,当它无法访问网络驱动器来保存文件时,它擦除了文件。类似于github.com/sublimehq/sublime_text/issues/3340这个家伙发生的事情,我丢失了所有文件。现在我不再使用 sublime 了。我曾经将它用于它的标签。我经常使用notepad2 ..虽然它没有很多功能。但除此之外.. 许多人使用 Atom 并说它比 Sublime 更好。许多程序员使用微软的一个名为 Visual Studio Code 的免费文本编辑器,并且更喜欢它而不是 Atom【参考方案2】:

sublime 3 的 RTL-Mirror 插件将通过在 Windows 和 OSX 上按 Ctrl+F1Shift+ 来显示正确的文本F1 在 Linux 上。这不是完美的解决方案,但很有帮助。

【讨论】:

查看短文本可能很好,但无助于纠正错别字或查看大块 RTL 文本【参考方案3】:

在过去的几年里,我的工作流程必须使用 VS Code 作为 IDE 进行编码,并使用 Sublime Text 3(对不起,4)来编辑纯文本,因为它的启动速度和因为VS Code 将是矫枉过正。

但是,由于此时很明显 ST 开发人员不打算实现 RTL 支持,并且因为我宁愿不必安装 第三个​​ 文本编辑器来处理 RTL文本(反正很少),我只剩下两个方便的选项可以在 Windows 上打开 RTL 文件。


使用 Windows 10 的记事本(是的,真的)

这是更好的解决方案,因为新的记事本运行良好,启动速度比 Sublime 快,并且不仅渲染 RTL 文本,而且渲染得非常好。唯一的缺点是缺少深色模式。


使用 VS Code(或任何你喜欢的 IDE)

VS Code 等免费 IDE 和 phpStorm 和 IntelliJ 等付费 IDE 似乎都支持 RTL其中一些启动起来比 Sublime 慢得多,并且在 VS Code 的情况下,渲染 RTL 文本比记事本更糟糕(我不能在这方面代表 JetStorm IDE)。

谁知道呢,如果我找到一个更好的替代文本编辑器,我可以将我的自定义主题转移到我最终可能会完全从 Sublime 转移到另一个编辑器,但在那之前,我会坚持使用两个编辑器。

【讨论】:

以上是关于如何在“Sublime Text”编辑器中使用从右到左的语言的主要内容,如果未能解决你的问题,请参考以下文章

如何使用Sublime Text 3作为Markdown编辑器

如何让sublime text 2/3支持中文编码

如何在 Sublime Text 编辑器 3 中格式化代码 [重复]

如何使用Sublime Text 3作为Markdown编辑器

Sublime Text编辑器如何使用

如何优雅地使用Sublime Text