今天真的是一个非常值得大家期待的日子,因为,今天简书君为大家带来了一个很有腔调的升级哦!
那便是,橙须猿们期待已久的,<big><big>代码上色!</big></big>靐靐靐!!!(此处应有雷鸣般的掌声~~~)
先让我们来看一下效果吧~~~
```javascript
// This is javascript
function alohaKosmos (msg) {
var words = ['Aloha', "Kosmos", ':'];
console.log(words.join(' '), msg);
}
alohaKosmos('Tartarus Chronos Riddle');
```
```java
// This is Java
void alohaKosmos (String msg) {
String word1 = "Aloha ";
String word2 = "Kosmos ";
String word3 = ": ";
Log.i("Call Me God", word1 + word2 + word3 + msg);
}
alohaKosmos("Tartarus Chronos Riddle");
```
下面是在白天模式和黑夜模式下的效果图:
白天模式下的代码块黑夜模式下的代码块
程序员们是不是突然感觉好亲切,好激动?
下面就让我们一起来看看关于代码块的那些小技巧吧~~~
首先,代码块的Markdown语法,是这样的:
也就是说,用三个`或者~包围起来的一个段落,就构成了一个代码块,而代码块里的所有样式都会被原封不动地保留,比如回车和制表符。
代码块的这一标示符(`或者~)必须成对出现,用```
开始代码块无法通过~~~
来结束,同样的用~~~
开始的代码块也无法用```
来结束。
而在代码块开始标示符之后,可以跟上这个代码块所用的语言名,请注意要用小写。
比如说,你可以指定这块代码的语言是javascript,那么此后哪怕你使用VB来写代码,这块代码也会强制使用javascript的规则来上色,比如下面这样:
```javascript
Dim total as Integer = 10
Dim index as Integer = 1
Dim result as String = ""
For index = 1 to 10 step 1
result += " 傻瓜"
End For
Print(result)
```
出来的效果就是这样的:
你看,完全不是VB语法的上色结果。
当然,你也可以不指定所用语言,这样简书君会自动识别代码块中的语言,然后上色,只不过,可能效果和你想要的完全不同,比如下面这个:
```
Dim total as Integer = 10
Dim index as Integer = 1
Dim result as String = ""
For index = 1 to 10 step 1
result += " 傻瓜"
End For
Print(result)
```
上面这段VB被识别成了Mathematica了(不过,别说,效果还不错~~):
因此,如果想要上色尽可能地理想的话,请尽量为你的代码写上所用代码的语言名哟~~~
我们现在所支持的语言包括下面这些:
bash | c | cpp (C++) | cs (C#) | objectivec (Objective-C) | swift | java | css | xml (HTML, XML) | javascript | coffeescript | json | php | perl | python | ruby | sql | mathematica | matlab | r | scala | lisp | scheme | markdown | tex
相信已经可以满足大部分程序员的需求了吧~~~
当然,也因为不写代码语言一样可以识别,所以下面这种通过四个空格或者一个Tab来快速构造代码块的方法也一样可以用哟:
console.log('What Are You 弄撒来?');
而,为了可以更好地写代码,我们将Markdown编辑器进行了一定的小调整,现在你可以在Markdown编辑器中直接通过tab键来进行缩进了哟~~
默认情况下,一次tab是两个空格的缩进,应该可以满足大部分程序员的需求了吧?
什么?你说你要四个空格乃至一个制表符来作为默认缩进?
这个。。。这个。。。这个。。。简书君也是可以办到的!不过这属于不外传的秘术,这里就不公开了哟~~~
不过相信身为橙须猿攻城狮的你一定可以找到解决的办法的~~~
需要提醒的是,目前代码上色功能只在完整版网页上支持,手机上考虑到种种因素暂不支持代码上色,请大家见谅!
而目前我们所用的上色规则,是Solarize的Light/Dark风格,分别对应了白天模式与黑夜模式,应该也是挺护目的吧~
最后,祝广大程序员喜欢这次更新,如果有别的需求也请在下方留言,简书君一定会认真对待的哟!
再次感谢大家的惠顾!我们下次见~~~
网友评论
不喜欢,白色可以自定义背景色吗?
比如:电脑保护色(豆沙绿)
表情,不好看,没有旺旺表情吗?淘公仔?
1. 着色 theme 的选择很多,我们现在选择的是 Solarize 的 Light/Dark 版分别对应白天和黑夜模式,应该也是比较大众化的选择
2. 暂时 App 应用里还没有高亮。