【发布时间】:2011-06-21 02:51:04
【问题描述】:
使用Messages 的内置函数已嵌入内联格式。例如:
In[1]:= ActionMenu::usage // FullForm
Out[1]//FullForm=
"\!\(\*RowBox[{\"ActionMenu\", \"[\", RowBox[{StyleBox[\"name\", \"TI\
\"], \",\", RowBox[{\"{\", \
RowBox[{RowBox[{SubscriptBox[StyleBox[\"lbl\", \"TI\"], \
StyleBox[\"1\", \"TR\"]], \":>\", SubscriptBox[StyleBox[\"act\", \"TI\
\"], StyleBox[\"1\", \"TR\"]]}], \",\", \
RowBox[{SubscriptBox[StyleBox[\"lbl\", \"TI\"], StyleBox[\"2\", \
\"TR\"]], \":>\", SubscriptBox[StyleBox[\"act\", \"TI\"], \
StyleBox[\"2\", \"TR\"]]}], \",\", StyleBox[\"\[Ellipsis]\", \
\"TR\"]}], \"}\"}]}], \"]\"}]\) represents an action menu with label \
\!\(\*StyleBox[\"name\", \"TI\"]\), and with items labeled \
\!\(\*SubscriptBox[StyleBox[\"lbl\", \"TI\"], StyleBox[\"i\", \
\"TI\"]]\), that evaluates the expression \
\!\(\*SubscriptBox[StyleBox[\"act\", \"TI\"], StyleBox[\"i\", \
\"TI\"]]\) if the corresponding item is chosen."
可以看出,这种内联格式基于 Core.nb 样式表的“内联格式的样式”部分中定义的一组样式。但我还没有找到任何关于这些样式的文档,也没有找到任何关于将格式添加到usageMessages 的便捷算法的描述。
在Mathematica 中向用户定义的usageMessages 添加内嵌格式的便捷方法是什么? Core.nb 样式表中定义的内联格式的默认样式的使用规则是什么?我想使用 Mathematica 将内联格式添加到我的包中的 usage Messages,而不安装其他组件,如 Workbench 等。
附: Strings 中嵌入的内嵌格式的语法部分记录在教程页面“String Representation of Boxes”上。官方新闻组中有关此语法的相关问题:“(any documentation for) linear syntax?” 在前端显示此类字符串由Cell 的选项ShowStringCharacters->False 控制。
【问题讨论】:
-
我不会将此作为答案发布,因为您明确无视 WorkBench。但我认为你喜欢这个调色板reference.wolfram.com/workbench/index.jsp?topic=/…
标签: wolfram-mathematica mathematica-frontend