MATLAB m文件帮助格式

MATLAB m文件帮助格式,matlab,formatting,Matlab,Formatting,我找不到什么格式可以为您自己的MATLAB函数编写帮助。资料很少 您知道可以通过“帮助浏览器”(而不是“帮助”功能)查看的其他格式吗?因为它是用于内置功能的。如何格式化标题(如语法、说明、示例)?子弹、桌子可能吗或者它应该是一个单独的文件? 我尝试过用于发布和HTML的文本标记,但没有成功 我只发现了一件有趣的事。如果函数包含混合大小写,如testHelpFunction,则其名称将突出显示: 如果只是testhelpfunction,则不突出显示 还有其他想法吗 更新 以下是我在创建您自己的

我找不到什么格式可以为您自己的MATLAB函数编写帮助。资料很少

您知道可以通过“帮助浏览器”(而不是“帮助”功能)查看的其他格式吗?因为它是用于内置功能的。如何格式化标题(如语法、说明、示例)?子弹、桌子可能吗或者它应该是一个单独的文件?

我尝试过用于发布和HTML的文本标记,但没有成功

我只发现了一件有趣的事。如果函数包含混合大小写,如
testHelpFunction
,则其名称将突出显示:

如果只是
testhelpfunction
,则不突出显示

还有其他想法吗

更新

以下是我在创建您自己的帮助文件时发现的大量文档:


(死链接替换为web存档链接)


(已拆下固定连杆)


再次更新:

我认为有一些(参见示例),但我从未找到合适的文档。我经常有这样的积木:

% ...
%
% See also:
%   this_other_function()
%
% <author>

请尝试官方文档中的其他部分。更彻底。MATLAB>用户指南>桌面工具和开发环境>自定义帮助和演示>提供您自己的帮助和演示。这描述了简单的帮助文本和生成单独的HTML帮助文件

这是我学习到的有用的帮助文本格式

function foo(x,y,z)
%FOO One-line description goes here
%
% foo(x,y,z)
%
% Multi-line paragraphs of descriptive text go here. It's fine for them to
% span lines. It's treated as preformatted text; help() and doc() will not
% re-wrap lines. In the editor, you can highlight paragraphs, right-click,
% and choose "Wrap selected comments" to re-flow the text.
%
% More detailed help is in the <a href="matlab: help foo>extended_help">extended help</a>.
% It's broken out like this so you can keep the main "help foo" text on 
% a single screen, and then break out obscure parts to separate sections.
%
% Examples:
% foo(1,2,3)
%
% See also:
% BAR
% SOMECLASS/SOMEMETHOD

disp(x+y+z);

function extended_help
%EXTENDED_HELP Some additional technical details and examples
%
% Here is where you would put additional examples, technical discussions,
% documentation on obscure features and options, and so on.

error('This is a placeholder function just for helptext');
函数foo(x,y,z) %FOO这里有一行描述 % %foo(x,y,z) % %描述性文本的多行段落位于此处。对他们来说 %跨越线。它被视为预先格式化的文本;help()和doc()将不会 %重新包装线条。在编辑器中,可以高亮显示段落,单击鼠标右键, %然后选择“包装所选注释”以重新显示文本。 % %更详细的帮助在中。 %它是这样出现的,这样你就可以保持主“help foo”文本处于打开状态 %一个单独的屏幕,然后将模糊的部分拆分为单独的部分。 % %示例: %foo(1,2,3) % %另见: %酒吧 %SOMECLASS/SOMEMETHOD disp(x+y+z); 函数扩展的\u帮助 %EXTENDED_帮助提供了一些附加的技术细节和示例 % %在这里,您可以添加其他示例、技术讨论, %关于模糊功能和选项等的文档。 错误('这是一个仅用于helptext的占位符函数');
  • 函数签名后的第一行称为“H1行”。它只需要一行,就可以被contentsrpt()正确拾取,它可以从函数中的helptext自动生成Contents.m文件
  • H1行中的函数名都是大写,与签名中函数名的实际大小写无关
  • 案件对“另见”至关重要。我不确定哪些案例都有效;这一个是肯定的
  • “另请参见:”后面的函数名都是大写。方法名称是限定的;我认为与当前方法在同一类中的方法的名称可能是非限定的
H1行和“Examples:”之间的所有内容都是我认为可读的常规格式;help()并没有特别对待它


您可以在帮助中使用有限形式的超链接。特别是,您可以使用超链接调用任意Matlab命令,并通过调用help()指向helptext的其他部分。您可以使用它指向任何函数;“function>subfunction”只是在help()调用中寻址子函数的语法。不幸的是,由于您需要在这些超链接中放置“帮助”或“文档”,因此它只能在一种或另一种演示形式中工作。如果有一个直接的帮助文本超链接表单就更好了。

我认为帮助格式最重要的方面是有帮助,并且格式是一致的,这样你(以及与你一起工作的人)就不会浪费时间去寻找信息。请注意,对于OOP,有一个超类和一个调用
doc(class(obj))
的“help”方法是很有用的,因为您无法通过类的实例化轻松访问帮助

为了帮助我保持一致(并确保我不会忘记东西),我在文件交换上创建了一个

这是最小标题

function testhelp
%TESTHELP is an example (this is the H1 line)
%
% SYNOPSIS: a=testhelp(b,c)
%
% INPUT b: some input parameter
%       c: (opt) some optional input parameter. Default: []
%
% OUTPUT a: some output parameter
%
% REMARKS This is just an example, it won't run
%
% SEE ALSO testHelpFunction
%
% created with MATLAB ver.: 7.11.0.584 (R2010b) on Mac OS X  Version: 10.6.4 Build: 10F569 
%
% created by: Jonas
% DATE: 01-Oct-2010
%

谢谢伟大的发现,+1。有趣的是,“请参见”部分将位于“帮助浏览器”中“帮助”的最后。现有功能将有指向其帮助页面的链接。您添加的第二个链接正是我要建议的。非常有用的东西。你应该把你的更新作为一个答案,并接受它@Alex,我想问这个问题是为了收集有关m文件格式的信息。创建单独的文档只是一个次要问题。不幸的是,该链接不再有效。干得好!这些较新的链接似乎没有太多关于文档注释的信息:(我决定接受这个答案作为m-file帮助格式化功能的最完整摘要。谢谢,Andrew。我也非常感谢其他答案。你提到的帮助部分似乎在最新版本中消失了?
function testhelp
%TESTHELP is an example (this is the H1 line)
%
% SYNOPSIS: a=testhelp(b,c)
%
% INPUT b: some input parameter
%       c: (opt) some optional input parameter. Default: []
%
% OUTPUT a: some output parameter
%
% REMARKS This is just an example, it won't run
%
% SEE ALSO testHelpFunction
%
% created with MATLAB ver.: 7.11.0.584 (R2010b) on Mac OS X  Version: 10.6.4 Build: 10F569 
%
% created by: Jonas
% DATE: 01-Oct-2010
%