一. 状况说明
使用的环境是 Rails + Vue.js
.
Slim + CoffeeScript + Sass
(确实比较小众啊, 公司用的环境没办法). IDE 用的 IntelliJ
的 RubyMine
偶尔会发生.slim文件写着写着就崩溃, 现象是**文件无法录入任何字符, 有时文件内部不对键盘做出任何反应, 上下移动光标都不可以. 在重启RubyMine后, 出问题的文件无论如何也打不开.** 二. 找原因
第一次发生这种现象的时候不知道怎么折腾着就又好了, 所以就没深究, 但第三次就有点恼人了.
在重启/清内存/清缓存 不好使之后开始针对各种plugin 进行排查, 总算找到闹事的家伙:Ruby Slim Support Integration
问题的来源是找到了, 但是原因呢?
Ruby Slim Support Integration
这个插件是用来分析Slim的语法的.
#'[]' 用来包裹多个属性, 用于在元素属性过多的时候折行, 提高代码可读性img.feed_img.feed_thumb [:id="feed.id" : :large="feed.nodes[0][2]" v-lazy="feed.thumbs[4]" v-if="feed.error == 0"]
代码里[]
用来包裹多个属性.
[
开始后的第一个新行里由冒号:
开始时, 插件会无法分析语义.这里我是准备输入Vue的 bind语法途中程序崩溃的. 三.解决方法 / 总结
解决方法就是小心不要在[
下一行用:
起头儿.
[]
当然也不排除插件还有其他语义分析问题, 如果担心这种情况再次发生, 也可以索性吧插件关掉.在Preference
=> Plugin
里关掉 Ruby Slim Support Integration
后面的对号: 以上!