工具控 终于搞定了万年老大难问题!Sublime 的 Haml 语法高亮!

Xenofex · 发布于 2016年11月01日 · 最后由 flemon1986 回复于 2016年11月03日 · 1016 次阅读
28484
使用前 使用后

先放解决方案

  1. 禁用自带Rails插件:
    1. 使用Package Control的Disable Package命令:按Command(Ctrl) + Shift + P打开命令窗,输入Disable Package,回车,输入Rails,回车
  2. 如果你安装过单独的Haml插件,卸载掉
  3. 把下面链接中的两个文件,解压缩放到Sublime的User Package目录
    1. 方法是在Mac上点左上角Sublime Text菜单、Preferences、Browse Packages...
    2. 把两个压缩包放在这个目录,然后解压

百度网盘下载Sublime Haml Fix

背景

  1. Sublime天生就支持Haml,但是它不是那么完善
  2. 一些人不满意这个自带Haml,自己去下载一个叫Haml的插件。发现有一些改进,但是还是不完善,而且Set Syntax命令后面还会出现两个Ruby Haml
    1. 如果你使用了这个Haml插件,会发现:coffeescript是可以高亮的,但是:coffee不行
    2. 有的时候会发现,如果:coffeescript不顶格写,就没法高亮

经研究,真相如下:

  1. Sublime自带一个Rails插件,里面有一份Ruby Haml语法定义。因此如果安装了单独的Haml插件,Set Syntax命令会有两个Ruby Haml(Command(Ctrl) + Shift + P 输入Set Syntax: Ruby Haml有两项)
  2. 独立Haml插件的Haml,要比自带Rails内的Haml完善,但是仍然不是100%准确。它实际上直接使用了非官方版的TextMate插件。

解决思路:

  1. 删掉自带Rails插件里面的Haml语法定义,以外部的Haml插件为准
  2. 修正外部Haml插件中的错误
    1. 好在Sublime继承了TextMate的传统,支持他的语法定义插件,更好的是Atom也支持他两个的插件,而且Atom中的Haml看上去没什么问题
    2. 只是Atom里的Haml语法定义是用CSON写的,但是它跟Haml插件中的Plist版的完全一样。照着Atom中的定义,可以去修正Haml插件。
共收到 8 条回复
4257

干脆大家都推荐一下 Rails 相关的 Sublime Text 插件吧。

Rails Latest Migration - https://github.com/alexpls/Rails-Latest-Migration
编辑 Migration 非常好用

Toggle RSpec Focus - https://packagecontrol.io/packages/Toggle%20RSpec%20Focus
指定运行某一个用例

28484

#1楼 @greatghoul 这两个很有帮助。Vim里是Rails.vim已经包含着两个功能了

4257

#2楼 @Xenofex 最早也喜欢折腾 vim,各种插件,用着也的确顺手,在 terminal 下编辑,随时 ctrl+z 就能切换到终端,但买了 Sublime 后觉得不用太浪费,意外的觉得比 vim 顺手多了,再后来买了 RubyMine,写 Rails 就比较少用 Sublime 了。

如果平时做一些小改动,我一般会开 Sublime,如果要做重构什么的比较多,果断 RubyMine,功能太强大了,跑测试也方便至极。

18898

vimer 飘过 。。。

28484

#4楼 @flemon1986 Vim党万年问题:Coffeescript的优质高亮。我看了一下coffeescript.vim,暂时没太明白

18898

我不玩coffeescript。。。继续飘。。。

28484

#6楼 @flemon1986 目前来说在rails里面,仍然是coffeescript比较顺畅,配置容易,同时兼容内嵌和外联,跟sprockets集成的好。Coffeescript解决了低版本JavaScript的一些棱角,虽然不如ES6先进,但是在Rails工具链上胜出。

18898

哦。。。现在在玩opal。。。对javascript不是很感冒的说。。。不过谢谢知识分享,学习了

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册