Sublime Text使用Fira Code时R原生管道|>无法显示连字如何解决
问题原因
Sublime Text 默认的R语法解析规则会将原生管道符|>中的|和>两个字符识别为相互独立的语法单元,而Fira Code的连字功能要求参与连字的所有字符属于同一个连续的语法令牌,因此会出现在其他场景连字正常、仅R语法场景失效的问题。
修复步骤
方法一:修改配置文件(优先尝试,无需修改语法规则)
- 按下
Ctrl+Shift+P(Windows/Linux系统)或Cmd+Shift+P(Mac系统)调出命令面板,输入Preferences: Settings打开用户全局配置文件 - 在配置的JSON结构中添加如下R语法专属配置:
{ // 保留你原有的其他配置,新增以下内容 "syntax_specific": { "R": { "font_options": ["liga", "calt"] } } }
- 保存配置后重启Sublime Text即可生效。
方法二:修改R语法解析规则(方法一不生效时使用)
- 首先安装
PackageResourceViewer插件(可通过Package Control直接搜索安装) - 调出命令面板,输入
PackageResourceViewer: Open Resource,在弹出的列表中依次选择R→R.sublime-syntax打开R语法定义文件 - 查找文件中
operators相关的规则段落,在运算符匹配列表中新增如下规则:
- match: \|> scope: keyword.operator.pipe.r
- 保存修改后重启Sublime Text,
|>会被识别为独立的运算符令牌,连字即可正常显示。
内容的提问来源于stack exchange,提问作者chris
相关产品推荐
相关产品推荐

