是否在任何代码编辑器中实现了Crockford风格的上下文着色?


71

我观看了YUIConf 2012的视频,其中Douglas Crockford讲了有关在JavaScript中实现monad的话题。在本次演讲中,他给出了一个代码示例,该示例利用了他所谓的“上下文着色”,它抛出了通过语言语法进行着色的想法,并为不同级别的范围引入了不同的颜色。这是视频特定部分的链接。

http://www.youtube.com/watch?feature=player_embedded&v=dkZFtimgAcM#t=15m58s

此上下文着色方案是由任何JavaScript或任何语言的代码编辑器实现的吗?

我使用Sublime Text,并且像其他所有遇到的代码编辑器一样,此编辑器允许将颜色应用于语法。我不确定插件是否可以解决此问题,或者不确定是否必须从头开始设计编辑器以允许使用此上下文着色方案。


我也很喜欢这个主意,但是除了VIM和Emacs支持的“彩虹着色”之外,我没有找到其他答案。看起来intellij有兴趣添加它:youtrack.jetbrains.com/issue/WEB-2390
dsummersl 2013年


从所有角度来看,这听起来像一个可怕的主意。
graphicdivine 2013年

因为从所有角度来看,语法着色都是一个好主意,但实际上,如果实现不完美,我会看到这会引起问题。对于普通的上下文着色,文字会着色,但是系统不会尝试猜测变量的内容并对其进行适当的着色。上下文着色必须推断出变量的范围,并且它一次猜错可能会很痛苦。不过,祝您好运,我希望有一个经过验证的完美上下文着色插件!
Ziggy

Answers:






3

BlueJ拥有(1)-但后来也没有。JavaScript范围内的上下文着色肯定会比其他语言(例如Java)更复杂,该语言可用于此编辑器。

自从信奉克罗克福德(2,3)以来,写《方括号》的人最终可能会这么做。

为什么不与他们一起帮助编写或至少告诉他们这样做呢?

资料来源:

1)http://blogs.kent.ac.uk/mik/2010/05/bluej-3-0-whats-new/

2)https://github.com/adobe/brackets/issues/search?q=Crockford

3)http://www.adobe.com/devnet/html5/articles/bracket-code-architecture.html


2
我不会说我们在Brackets团队“敬拜”克罗克福德(Crockford):-)不过,我们确实喜欢棉绒。实际上,我们希望使其可插入,甚至将来可能会将我们自己的编码样式切换为JSHint。如果您想发表评论,则有一个用户故事
peterflynn

很好,如果jsbin和jsfiddle可以做到,我相信Adobe人士可以!
DrM 2013年

-1

从来没听说过。这将是很棒的,但是它需要一个特定于JavaScript的词法分析器,并且在出现任何语法错误时可能无法使用。


1
作为评论,这确实更合适。
凯文·比尔
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.