MBeautifier是一个基于MATLAB源代码的开源一键美化m代码的格式器。它可以直接在MATLAB编辑器中使用,并且可按照使用者习惯进行配置的。MBeautifier支持的Matlab最低版本是R2013b。

MBeautifier的原始下载地址:https://github.com/davidvarga/MBeautifier

下载不方便的读者可以在公众号后台发送关键字:MBeautifier,即可获取百度网盘下载链接。

MBeautifier是一种基于M-Script的轻量级MATLAB源代码格式化程序,可直接在MATLAB编辑器中使用。

特点

  • 用空格填充运算符和关键字

  • 可配置缩进字符和级别。使用MATLAB编辑器的智能缩进功能进行缩进

  • 移除/添加连续空行

  • 在矩阵和单元数组初始化中插入缺少的元素分隔符(逗号)

  • 在矩阵和单元数组初始化中插入缺少的连续符号行

  • In-lining连续线

  • 格式化MATLAB编辑器的当前页面或仅在MATLAB编辑器或文件中选择一个选项

  • 而上面的一切都可以在一个XML文件中配置

部署和配置

只需将下载的zip文件解压到特定的目录,然后把MBeautifier的根目录添加到MATLAB路径。

配置Configuration

可以通过编辑MBeautifier\resources\settings\MBeautyConfigurationRules.xml文件来修改配置。

配置规则

目前实现了三种配置规则:Operator padding ruleKeyword padding ruleSpecial rule

运算符填充规则

每个OperatorPaddingRule表示单个运算符的格式规则,由一个键、应替换的字符串和用于替换的字符串组成。

<OperatorPaddingRule><Key>NotEquals</Key><ValueFrom>~=</ValueFrom><ValueTo> ~= </ValueTo>
</OperatorPaddingRule>

上面的示例显示了“不等于”运算符的规则。

ValueFrom节点存储运算符~=

ValueTo节点存储预期格式:运算符前面和后面都应该有white-space字符。

关键字填充规则

每个KeyworPaddingRule表示单个关键字的格式规则,并由关键字本身和右侧所需的white-space填充的数值组成。

<KeyworPaddingRule>
<Keyword>properties</Keyword>
<RightPadding>1</RightPadding>
</KeyworPaddingRule>

上面的例子显示了关键字“properties”的规则。RightPadding节点存储预期的右填充空白量:关键字前面应该有一个空白字符。

注意:并不是所有的关键字都列出了-只有那些控制填充有意义的关键字。

特殊规则

这些规则基本上是MBeautifier某些功能的开关。详情可以见压缩包的README.md文件,

使用方法,直接在命令行输入使用

目前支持四种方法:

  • 在MATLAB编辑器的当前活动页面上执行格式化。命令:MBeautify.formatCurrentEditorPage()。默认情况下,不会保存文件,但仍会在编辑器中打开并修改。可以选择使用MBeautify.formatCurrentEditorPage(true)语法保存格式化的文件。

  • 对MATLAB编辑器活动页面的当前选定文本执行格式化。命令:MBeautify.formatEditorSelection()。在这种情况下,还存在如上所述的可选保存机制。(这个功能实测下来不知道为啥运行时间比较长,不推荐了)

  • 对文件执行格式化。命令:MBeautify.formatFile(file)。可以与(1)一个参数一起使用:输入文件已格式化,并且在MATLAB编辑器中保持打开状态,未保存;(2)两个参数为MBeautify.formatFile(file, outFile):如果可能,将格式化的文件保存到指定的输出文件中。输出可以与输入相同。file需要绝对路径

  • 对目录中的多个文件执行格式化。命令:MBeautify.formatFiles(directory, fileFilter)。第一个参数是指向目录的绝对路径,第二个参数是一个通配符表达式(用于dir命令),用于过滤目标目录中的文件。文件将被格式化in-place(覆盖)。

Matlab代码格式一键美化神器相关推荐

  1. pycharm一键调整代码格式(快捷键)

    pycharm一键调整代码格式(快捷键) 快捷键为'Ctrl + Alt + L'. 如果不用快捷键的话,可以点击上面的Code -> Reformat Code,然后就搞定了. 调整前: 调整 ...

  2. SVNH数据(.mat格式)转为图像(.png)matlab代码

    一.获取SVNH数据 数据集集地址-http://ufldl.stanford.edu/housenumbers/ 提供两种格式的数据: 1.Format 1,图像形式,压缩包包括train.tar. ...

  3. 气象数据Grib格式解析的Python代码和Matlab代码

    以.grb/.grb1/.grb2为扩展名的都是气象数据,气象数据中可以存储多个内容,如云量.雪深.气压.风速等内容,或者具有时间序列的云量等.这些文件不可以直接打开成图片,若想直观地查看grib数据 ...

  4. vscode代码格式排列_vscode 一键规范代码格式的实现

    使用vscode的过程中 自己或者push代码以后 代码的格式可能会出现错乱, 作为一个成熟的开发 , 当然应该遵守一些代码规范, 首先代码整洁度应该排在第一位 使用vscode 格式化代码 在少量的 ...

  5. vscode 一键规范代码格式

    使用vscode的过程中 自己或者push代码以后 代码的格式可能会出现错乱, 作为一个成熟的开发 , 当然应该遵守一些代码规范, 首先代码整洁度应该排在第一位 使用vscode 格式化代码 在少量的 ...

  6. vscode代码格式排列_vscode怎么一键规范代码格式

    具体方法如下: 文件 -> 首选项 -> 设置 -> {} 在右侧用户设置中可以对当前编辑器默认的进行更改 下面的复制到用户设置中, ctrl + s 即可完成对代码的规范. { / ...

  7. 彩色matlab代码拷贝到word研究,matlab编辑器合并_彩色MATLAB代码拷贝到WORD研究

    公众号:理念世界的影子 文不可无观点,观点不可无论据. 转载请注明出处 结果简单,重在过程 有时将彩色Matlab代码拷贝到Word中,可能出现彩色消失.中文乱码.没有行号.字体不佳等问题.已有的措施 ...

  8. 优雅的在latex中插入MATLAB代码 | 解决MATLAB代码中文乱码问题

    我们要使用的核心宏包是 listings 和 matlab-prettifier.其中 listings 是为了插入代码,matlab-prettifier 提供了很好的配色方案. 最小工作示例如下: ...

  9. dw html5怎么美化,DW CS5/CS6代码格式化、美化插件 Dreamweaver代码格式化美化插件

    这个<DW CS5/CS6代码格式化.美化插件>应该是现在最好用的代码格式化扩展了. 众所周知Dreamweaver CS5 CS6自带的应用源格式只能独自格式化HTML文件与CSS文件, ...

  10. php歌声美化_PHP代码在线格式化美化工具

    PHP代码在线格式化美化工具 使用该工具可有效实现PHP代码的格式化与美化功能,并且输入代码与格式化之后的代码都具有代码高亮显示效果.除格式化功能外,还提供了生成代码的`一键保存功能,非常方便实用,免 ...

最新文章

  1. c++监听键盘_你会为颜值买单吗?杜伽fusion复古键盘晒单体验_键盘
  2. 《http权威指南》读书笔记 二
  3. RemoveError: ‘requests‘ is a dependency of conda and cannot be removed from
  4. 在CentOS7上编译GreenPlum5.3.0
  5. 兰州大学第一届 飞马杯 ★★快乐苹果树★★ 树链剖分 + 懒标记 + 树状数组
  6. qq消息连发代码_我们用的QQ是怎样实现通讯的
  7. linux中cat、more、less命令区别详解
  8. graph面板x轴模式包括哪些_激光五轴加工机床技术参数有哪些?
  9. Bailian4077 出栈序列统计【卡特兰数】(vijos P1122)
  10. 代码实现Autolayout
  11. 〔转〕Word域的应用和详解2_等式和公式域
  12. Springboot配置devtools实现热部署
  13. 京东商城逆势融资B2C成投资热土
  14. 自兴人工智能学院有话说,好机构培养好人才!
  15. adb shell appops(系统服务:appops)
  16. 免费域名证书最新申请方式大全
  17. 顶级的 18 款开源的低代码开发平台,经典收藏
  18. 抽象类和接口的区别(精简)
  19. 智能电视可以安装鸿蒙操作系统吗,智能电视或将现寡头垄断,鸿蒙凭为何能“上任”?...
  20. 设备维护保养的主要工作内容是什么?

热门文章

  1. 《个人信息去标识化指南》笔记
  2. 计算机联锁常见的故障,计算机联锁系统常见故障及处理方法.doc
  3. python基础:基础语法
  4. EFK家族---Fluentd日志收集
  5. 网络工程师/技术支持工程师面试题(1)
  6. 什么是java框架结构_Java框架概述
  7. 【渝粤教育】国家开放大学2019年春季 1317社会工作行政(本) 参考试题
  8. vue基础(三)——vue实例化对象
  9. SpringBoot java串口操作(rxtx)
  10. Invisible character on env file, cause programe abort abnormally