matlab加亮,博客园Markdown模式的MATLAB代码高亮方案

前言博客园随笔写作可以使用 Markdown 进行编辑,当展示代码时,可以使用下面的语法来对代码块进行展示:​```languagecode-content​```一般来说,指明了 language 后,应该是可以是实现语法高亮的。其基本原理就是将代码中的 关键字 、变量 、函数 等待字符做正则化匹配,将纯文本的代码内容分块,与固定语法内容的着色方案(css样式)对应上。然鹅!!大部分编程语言都能...
摘要由CSDN通过智能技术生成

前言

博客园随笔写作可以使用 Markdown 进行编辑,当展示代码时,可以使用下面的语法来对代码块进行展示:

​```language

code-content

​```

一般来说,指明了 language 后,应该是可以是实现语法高亮的。其基本原理就是将代码中的 关键字 、变量 、函数 等待字符做正则化匹配,将纯文本的代码内容分块,与固定语法内容的着色方案(css样式)对应上。

然鹅!!大部分编程语言都能实现较好的高亮,而 Matlab 效果却很差,语法样式是错误的!看着很不舒服。

就像下面这样:

% 为输出创建文件

!touch testFile.txt

fid = fopen('testFile.txt','w');

for i = 1:10

frprintf(fid,'%6.2f \n',i);

end

作为强迫症的我想把 Matlab 代码高亮变成和 Matlab软件中高亮方式一模一样。话不多说,开干!

语法高亮的基本内容

在改造之前,首先得理解语法高亮的基本内容。

一般来说,作为一种编程语言,都包括以下基本语法项目:

keyword 关键字,也就是我们常用 for、if、else、end等等

string 字符串,作为文本的一些字符

params 变量,自己定义的变量

comment 注释,代码一般都会有注释

bracket 括号,一般地代码都会有成对出现的圆括号、花括号

以上这些,就是作为一个语法高亮方案,所需要匹配的基本内容。这些语法项目,都会有一定的规律(不然怎么叫语法),通过正则表达式,可以将写好的代码块中,对应的语法基本项目匹配出来。比如你的代码中有很多个 if ,那么通过正则表达式,就可以将他们全部匹配到。

贴上样式标签

当匹配到基本的语法项目后,将他们贴上对应的样式标签,例如对于匹配到的 if ,将其贴上关键字标签:

if

这样,if 这个关键字就会被 matlab-keyword 样式着色。其他的也和这个一样,贴上对应的样式即可。

代码高亮识别

那么,在一堆文字中,我怎么识别这部分文字就是要高亮的代码?

在这里我们通过

这样一对标签来包裹代码内容,让代码识别到这段文字是需要高亮的代码。为了区别其他样式,一般在markdown中只需要这样来表示代码需要高亮成 Matlab 样式
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值