AutoMatlab
Sublime Text插件,适用于Matlab,具有自动完成、文档生成和命令面板功能。
详细信息
安装
- 总数 1K
- Win 1K
- Mac 0
- Linux 1
8月6日 | 8月5日 | 8月4日 | 8月3日 | 8月2日 | 8月1日 | 7月31日 | 7月30日 | 7月29日 | 7月28日 | 7月27日 | 7月26日 | 7月25日 | 7月24日 | 7月23日 | 7月22日 | 7月21日 | 7月20日 | 7月19日 | 7月18日 | 7月17日 | 7月16日 | 7月15日 | 7月14日 | 7月13日 | 7月12日 | 7月11日 | 7月10日 | 7月9日 | 7月8日 | 7月7日 | 7月6日 | 7月5日 | 7月4日 | 7月3日 | 7月2日 | 7月1日 | 6月30日 | 6月29日 | 6月28日 | 6月27日 | 6月26日 | 6月25日 | 6月24日 | 6月23日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 3 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 2 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | 0 | 2 | 0 |
Mac | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Linux | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
README
AutoMatlab
AutoMatlab通过结合Sublime Text和Matlab的优点,让编写Matlab代码变得更有趣。
功能:
- 自动完成任何Matlab函数!
- 在Sublime Text中运行Matlab命令!
- 生成基于上下文的Matlab函数文档!
目录:
入门指南
- 自动完成 即插即用!开始输入或尝试按下 Ctrl + Space 来查看其功能。如果您对更多定制功能感兴趣,请查看 这里。
- Matlab命令 需要 AutoHotkey。如果已安装AutoHotkey并且正确指定了AutoMatlab设置中的
auto_hotkey_path
,请尝试按下 Ctrl + b 在Matlab中运行当前文件或 Alt + m 打开AutoMatlab命令面板。如果您对更多定制功能感兴趣,请查看 这里。 - 函数文档生成 立即开启!在 Matlab 函数文件中按 Ctrl + Alt + m 看看它能做什么。如果您想了解更多定制功能,请查看这里。
注意 1:AutoMatlab 目前仅支持 Windows 下的 Matlab 安装.
注意 2:请确保 .m
文件的语法设置为 Matlab(默认情况)
View > Syntax (> Open all with current extension as...) > Matlab
自动完成
AutoMatlab 提供了大量自动完成功能,这比 Matlab 编辑器内置的非常有限的自动完成功能有了很大的改进。
功能:
- 多层次的自动完成:Matlab 全局、项目全局、文件夹全局、文件全局。
- 可自定义的自动完成源。
- 文档弹窗类似于 Matlab 的
help
。 - 响应式的
相关内容
超链接。
在键入文本时会自动显示自动完成建议,但也可以通过默认的键盘快捷键 Ctrl + Space 进行查询。
当键入的文本与功能名称完全匹配时,使用 Ctrl + Space 进行自动完成查询将显示一系列建议的功能签名片段,以及功能文档的弹窗。也可以通过命令 show_auto_matlab_documentation_panel
调出功能文档的面板。
Matlab自动完成
AutoMatlab 默认包含约 3000 个内置 Matlab 函数的自动完成信息。由于 Matlab 安装和用户偏好不同,这些信息可以通过以下步骤调整到特定 Matlab 安装
- 打开 AutoMatlab 设置
- 通过
matlabroot
指定 Matlab 安装路径。 - (可选)通过
matlab_pathdef_path
指定pathdef.m
路径。 - (可选)在
Matlab 自动完成源
部分,细化自动完成信息的来源。所有细化选项均在默认的 AutoMatlab 设置文件中记录。
- 通过
- 打开 Sublime 命令面板
- 运行
AutoMatlab: Index Matlab autocomplete
。AutoMatlab 将解析指定的目录,寻找符合 The MathWorks 所用文档格式的 Matlab 函数。 - 等待进程完成(见状态栏)。这可以持续几分钟,具体时间取决于 Matlab 安装。
- 运行
- 完成!Matlab 自动完成数据存储在
Packages\AutoMatlab\data\matlab_completions
。
项目自动完成
AutoMatlab 为当前活动的 Sublime 项目中的 Matlab 函数提供自动完成信息。每次项目中的文件保存时,AutoMatlab 会更新此信息。
以下设置可以添加到 .sublime-project
文件中,以在每个项目中调整自动完成源。这些选项与默认 AutoMatlab 设置文件中的相应选项具有相同的操作方式,其中它们有所记录。
{
"auto_matlab":
{
"include_dirs": [],
"exclude_dirs": [],
"exclude_patterns": [],
"free_documentation_format": true
}
}
当前文件夹自动完成
AutoMatlab 为当前打开的文件夹中的 Matlab 函数提供自动完成信息。每次文件夹中的文件保存时,AutoMatlab 会更新此信息。
当前文件自动完成
AutoMatlab 为当前打开的文件内的本地 Matlab 函数提供自动完成信息。每次文件保存或激活时,AutoMatlab 会更新此信息。
Matlab命令
如果已安装 AutoHotkey,AutoMatlab 可以发送命令到 Matlab,以在 Matlab 命令窗口中运行。
AutoMatlab命令面板
可以通过 Sublime 命令面板或通过 Alt + m 访问 AutoMatlab 命令面板。它显示最近的 Matlab 命令历史中的命令建议。如果没有显示历史记录,请确保 AutoMatlab 设置中的 matlab_history_path
已正确设置。
通过 AutoMatlab 命令面板,可以向 Matlab 发送命令
- Enter 在 Matlab 中运行选中的历史条目。
- → 将选中的历史条目插入到 AutoMatlab 命令面板中。
- Tab 在 Matlab 中运行来自 AutoMatlab 命令面板的输入。
预定义命令
已预定义了一些有用的命令。可以通过 Sublime 命令面板或通过键盘快捷键运行。一些示例
- Ctrl + b 在 Matlab 中运行当前文件。
- Ctrl + Shift + b 修改当前文件夹并在Matlab中运行当前文件。
- Alt + . 在当前行设置Matlab断点。
- Alt + , 从当前行清除Matlab断点。
自定义命令:Matlab命令行窗口
可以定义自定义的AutoHotkey命令,这些命令可以在Matlab命令窗口中执行文本命令。这些AutoMatlab命令可以添加到Sublime的键绑定或命令面板中。要为Matlab命令窗口创建自定义命令,请使用以下格式的AutoMatlab命令run_matlab_command
[
{
"caption": "AutoMatlab: Print status",
"command": "run_matlab_command",
"args": {"command": "disp('I am editing file $file_name at line $line.')"}
}
]
run_matlab_command
将展开默认的Sublime Text变量,如$file
、$file_name
、$file_base_name
、$folder
和$project_name
。此外,AutoMatlab还定义了以下变量
$line
: 当前活动行。$column
: 当前活动列。$package_member
: 当前打开的Matlab文件名,包括包命名空间。例如:C:\Users\Foo\myproject\+mypack\myfun.m
→mypack.myfun
。$package_parent
: 当前打开的Matlab包的父目录路径。例如:C:\Users\Foo\myproject\+mypack\myfun.m
→C:\Users\Foo\myproject
。
自定义命令:Matlab键盘快捷键
可以定义自定义的AutoHotkey命令,这些命令可以在Matlab中执行键盘快捷键。这些AutoMatlab命令可以添加到Sublime的键绑定或命令面板中。要创建自定义的键盘快捷键命令,请使用AutoMatlab命令run_matlab_command
,如下所示
[
{
"caption": "AutoMatlab: Stop execution",
"command": "run_matlab_command",
"args": {"command": "^c", "type": "key"}
}
]
这些命令使用AutoHotkey的SendInput
函数的语法。有关此语法的更多信息,请参阅AutoHotkey文档中的参数和键名部分。
函数文档生成
AutoMatlab提供了一种灵活且上下文感知的函数文档生成方法,基于可定制的模板片段。可以通过Sublime命令面板或键盘快捷键Ctrl + Alt + m生成函数文档。
预定义文档模板代码片段
AutoMatlab提供了一系列预定义的文档模板片段。这些模板片段遵循MathWorks使用的函数文档格式:它们包含一行函数描述和至少一个函数签名。此外,它们是自适应的,意味着它们将函数定义中的元素替换到片段中。
在AutoMatlab设置中,可以通过设置documentation_snippet
为以下值之一来选择预定义的文档模板片段
matlab_documentation.sublime-snippet
(默认)
matlab_documentation_args.sublime-snippet
matlab_documentation_args_in_out.sublime-snippet
自定义文档模板代码片段
AutoMatlab还支持自定义文档模板片段。要创建这些片段,请从以下示例开始,根据需要添加/删除/修改,并将结果保存为.sublime-snippet
文件。最后,在AutoMatlab设置中将documentation_snippet
设置为创建的模板片段的名称或路径。
<snippet>
<description>Matlab documentation</description>
<content><![CDATA[
%${MDOC_NAME} ${1:<one line description>}${MDOC_NAME_MARKER}
%
% ${MDOC_SIGNATURE} ${2:<explain usage>}${MDOC_SIGNATURE_MARKER}
%
% Input:${MDOC_INARG_BLOCK_MARKER}
% - ${MDOC_INARG}: ${3:<description>}${MDOC_INARG_MARKER}
%
% Output:${MDOC_OUTARG_BLOCK_MARKER}
% - ${MDOC_OUTARG}: ${4:<description>}${MDOC_OUTARG_MARKER}
%
% ${MDOC_ARG_BLOCK_MARKER}
% ${MDOC_ARG}: ${5:<description>}${MDOC_ARG_MARKER}
%
% See also ${6:<list related>}${MDOC_SEE_ALSO_MARKER}
% Author(s): ${7:<authors>}${MDOC_AUTHOR_MARKER}
% Copyright ${8:<year>} ${9:<owner>}${MDOC_COPYRIGHT_MARKER}
]]></content>
<scope>source.matlab</scope>
</snippet>
项目特定文档格式
以下设置可以添加到.sublime-project
文件中,以根据项目适配生成的函数文档。
{
"auto_matlab":
{
"documentation_upper_case_signature": true,
"documentation_snippet": "mysnippet.sublime-snippet"
}
}
附加功能
打开/结束语句配对
AutoMatlab可以识别成对的开语句(例如,if
、for
、function
)和结束语句。当光标处于开或结束语句中时,可以使用以下命令触发关于成对语句的弹出窗口
[
{
"caption": "AutoMatlab: Pair open+end statement",
"command": "pair_matlab_statements",
"args": {"action": "popup"},
}
]
还有直接在开/结束语句之间跳转或选择所有封装代码的命令。
[
{
"caption": "AutoMatlab: Jump open+end statement",
"command": "pair_matlab_statements",
"args": {"action": "jump"},
},
{
"caption": "AutoMatlab: Select open+end statement",
"command": "pair_matlab_statements",
"args": {"action": "select"},
}
]