笔记本操作
作为 Wolfram 语言表达式的单元 | 选项设置的风格与继承 |
作为 Wolfram 语言表达式的笔记本 | 单元选项 |
通过内核操作笔记本 | 文本和字体选项 |
通过内核操作前端 | 表达式输入和输出选项 |
前端令牌 | 笔记本选项 |
在前端直接执行笔记本指令 | 前端的全局选项 |
单元结构 |
与 Wolfram 语言中其他对象类似,笔记本中的单元和笔记本本身都是用 Wolfram 语言表达式表示的. 在标准的笔记本前端中,用 显示表达式 命名可以观察与任何单元对应的 Wolfram 语言表达式的内容.
Show Expression menu item | 显示形式和 Wolfram 语言内部表达式之间的联系 |
Ctrl+* or Ctrl+8 (between existing cells) | 提供按 Wolfram 语言表达式形式输入单元的对话框 |
在笔记本前端中处理 Cell 表达式.
Cell[contents,"style"] | 具有指定风格的单元 |
Cell[contents,"style",options] | 有额外指定选项的单元 |
Cell[contents,"style1","style2",…,options] | 具有一些风格的单元 |
选项
|
默认值
| |
CellFrame | False | 单元是否加框 |
Background | Automatic | 单元底色的颜色选择 |
Editable | True | 是否能对单元内容进行编辑 |
TextAlignment | Left | 单元中的文本如何对齐 |
FontSize | 12 | 文本字形的尺寸 |
CellTags | {} | 与单元相关的标记 |
在 Wolfram 语言标准的笔记本前端中,有几种途径去改变单元选项. 有一些菜单项来改变尺寸和文本颜色,但一般要使用前端内部设置的选项检查. 这一般是在 格式 菜单中调用 选项设置 菜单项来实现的.
有时候仅需要改变与一特点单元有关的设置. 但更常见的则是要改变与笔记本中具有某一风格的全部单元有关的选项. 为此,先用 编辑样式表 命令在前端中打开一个与笔记本有关的风格页面,然后在这个风格页面中修改单元的选项.
Notebook[{
Cell["Section heading", "Section"],
Cell["Some text.", "Text"],
Cell["More text.", "Text"]}]
选项
|
默认值
| |
WindowSize | {nx,ny} | 用来显示笔记本的窗口尺寸 |
WindowFloating | False | 该窗口是否位于其他窗口之上 |
WindowToolbars | {} | 窗口上端包括哪些工具栏 |
ShowPageBreaks | False | 是否显示打印笔记本时的分页 |
CellGrouping | Automatic | 笔记本中怎样对单元分组 |
Evaluator | "Local" | 用什么内核进行笔记本中的计算 |
Saveable | True | 笔记本是否应该被保存 |
Notebook[{
Cell["Section heading", "Section"],
Cell["Some text.", "Text"]},
WindowToolbars->{"RulerBar"}]
Notebook[{
Cell["Section heading", "Section"],
Cell["Some text.", "Text"]},
Background->GrayLevel[.7]]
在 Wolfram 系统之外看对应于笔记本文件的原始内容时,所看到的就是表示这个笔记本的表达式的文本形式. 所有产生 Wolfram 系统笔记本的另一途径就是构造一个合适的表达式,并将其放在一个文件中.
在 Wolfram 系统生成的笔记本文件中,包含一些额外的信息,这使得 Wolfram 系统可以很快地读入这个文件. 这些信息包含在 Wolfram 语言注解中,注解的标记为 (*…*),不影响存在文件中的实际表达式.
NotebookOpen["file.nb"] | 在前端打开一个笔记本文件 |
NotebookPut[expr] | 在前端建立一个对应于 expr 的笔记本 |
NotebookGet[obj] | 得到一个与前端打开的笔记本对应的表达式 |
在前端中用 NotebookOpen 设置了笔记本以后,就可以像其他笔记本一样对其进行交互式的操作. 但使用NotebookOpen 时,文件中必须明显地含有一个笔记本表达式. 用 NotebookPut 可以将在内核中产生的笔记本表达式立即作为一个笔记本显示在前端中.
Notebooks[] | 所有打开的笔记本集合 |
Notebooks["name"] | 所有打开的有指定名的笔记本集合 |
InputNotebook[] | 用于输入的笔记本 |
EvaluationNotebook[] | 对这个函数正进行计算的笔记本 |
ButtonNotebook[] | 可能包含启动这个计算的按钮的笔记本 |
在 Wolfram 语言内核中,前端中打开的笔记本用形式为 NotebookObject[fe,id] 的笔记本对象来表示. NotebookObject 中的第一个变量是该笔记本所在的前端 FrontEndObject,第二个变量是给出这个笔记本唯一的序列号.
NotebookGet[obj] | 得到对应于笔记本对象 obj 的笔记本表达式 |
NotebookPut[expr,obj] | 将 expr 作为对应于笔记本对象 obj 的表达式 |
NotebookPut[expr] | 将 expr 作为对应于当前所选笔记本的表达式 |
对一个笔记本进行大量操作时,用 NotebookGet 将整个笔记本作为内核的一个表达式是非常方便的. 但是对笔记本进行一系列小操作时,最好还是把笔记本放在前端,然后从内核向前端发出一系列命令来指出进行怎样的操作.
Options[obj] | 给出对应于笔记本对象 obj 的笔记本的所有选项集合 |
Options[obj,option] | 给出一个选项的设置 |
AbsoluteOptions[obj,option] | 即使当实际设置是 Automatic 时给出绝对选项值 |
CurrentValue[obj,option] | 给出并且设置 option 的值 |
SetOptions[obj,option->value] | 设置选项的值 |
对当前选择的笔记本给出 WindowSize 选项设置:
对 CurrentValue 使用简单的赋值来改变选项:
在任何打开的笔记本中,前端总是保持当前的选择,这个选择由一个单元中的文本区域组成,或者是由这个单元组成. 通常这个选择在屏幕上是由一个高亮度形式表明. 这个选择也可以在文本的两个字符之间,或者在两个单元之间,这时其在屏幕上由两个竖直或水平的插入杠来表明.
SelectionMove[obj,Next,unit] | 移动当前选择使其成为具有指定类型的下一单位 |
SelectionMove[obj,Previous,unit] | 移到上一单位 |
SelectionMove[obj,After,unit] | 移动到具有指定类型的当前单位的后面 |
SelectionMove[obj,Before,unit] | 移动到当前单位之前 |
SelectionMove[obj,All,unit] | 将当前选择扩展到覆盖具有指定类型的整个单位 |
Character | 单个字符 |
Word | 词或其他语言符号 |
Expression | 完全的子表达式 |
TextLine | 文本行 |
TextParagraph | 文本段 |
GraphicsContents | 图形内容 |
Graphics | 图形 |
CellContents | 单元内容 |
Cell | 完整单元 |
CellGroup | 单元组 |
EvaluationCell | 与当前计算有关的单元 |
ButtonCell | 与启动计算按钮相关的单元 |
GeneratedCell | 由当前计算产生的单元 |
Notebook | 完整的笔记本 |
NotebookFind[obj,data] | 将当前选择移到笔记本中下一次出现的指定数据 |
NotebookFind[obj,data,Previous] | 移到前一次出现的指定数据 |
NotebookFind[obj,data,All] | 使当前选择覆盖所有出现的指定数据 |
NotebookFind[obj,data,dir,elems] | 按照方向 dir 在每一个单元的指定元素中查找 |
NotebookFind[obj,"text",IgnoreCase->True] | |
在文本中不区分大小写字母 |
由于 字母没有在当前笔记本中出现,所以返回的是 $Failed,选择没有移动:
NotebookFind 可能查找的单元元素.
在设置大笔记本时,插入一些通常不显示的记号是十分方便的,这些记号给单元加标记,使得他们能用 NotebookFind 进行查找. 可以在前端交互地设置标志,也可以明确对单元设置选项 CellTags.
NotebookLocate["tag"] | 在当前笔记本中确定和选择具有指定记号的单元 |
NotebookLocate[{"file","tag"}] | 必要时打开另一笔记本 |
NotebookLocate 是在笔记本中沿着超链接前进时 Wolfram 语言调用的一个潜在函数. 菜单项 插入 ▶ 超链接 将适当的 NotebookLocate 设置为特定超链接按钮文本的一部分.
NotebookWrite[obj,data] | 在一个笔记本中当前选择位置写入 data |
NotebookApply[obj,data] | 将 data 写入一个笔记本,把当前选择插入 data 中第一次出现 的位置 |
NotebookDelete[obj] | 在笔记本中删除当前选择内容 |
NotebookRead[obj] | 得到一个笔记本中与当前选择对应的表达式 |
NotebookWrite[obj,data] 与笔记本前端中的 Paste 运算类似. 用 data 替换笔记本中的当前选择. 若当前选择是一个单元时,NotebookWrite[obj,data] 将用 data 替换这个单元. 若当前选择位于两个单元之间时,NotebookWrite[obj,data] 就产生一个或一些适当的新单元.
NotebookWrite[obj,data] 用 data 替换当前选择. 但在设置面板时,先将当前选择插入 data 的某一位置对其修改往往是很方便的. 这可以选定占位符和 NotebookApply 来实现. 在 data 第一次出现字符 "" 的位置,该字符的输入方法是 ∖[SelectionPlaceholder] 或 EscsplEsc , NotebookApply 就用当前选择去替换这个字符.
SelectionEvaluate[obj] | 对当前选择进行计算 |
SelectionCreateCell[obj] | 产生一个仅包含当前选择的新单元 |
SelectionEvaluateCreateCell[obj] | 计算当前选择并产生一个单元放置结果 |
SelectionAnimate[obj] | 激活当前选择中的图形 |
SelectionAnimate[obj,t] | 激活图形 秒 |
SelectionEvaluate 从笔记本选取内容并将其送往内核进行计算. SelectionEvaluate 总是覆盖以前选取的内容,但使用 SelectionCreateCell 等函数可以保持所产生形式序列的记录,这与标准 Wolfram 语言进程一样.
用 Factor 把当前单元的内容包含起来:
NotebookWrite 和 SelectionEvaluate 等函数默认将当前选择放在笔记本中所插入的内容之后. 明确地用SelectionMove 能移动选择. 但是在 NotebookWrite 和 SelectionEvaluate 等函数中使用另外的变量也可指定任务完成后当前选择所在的位置.
NotebookWrite[obj,data,sel] | 将 data 写进笔记本,用 sel 指定当前选择 |
NotebookApply[obj,data,sel] | 用原当前选择替换 写出 data,然后用 sel 指定当前选择 |
SelectionEvaluate[obj,sel] | 计算当前选择,并用 sel 指定新的当前选择 |
SelectionCreateCell[obj,sel] | 产生一个仅包含当前选择的新单元,产生用 sel 指定新的当前选择 |
SelectionEvaluateCreateCell[obj,sel] | 计算当前选择,为结果产生一个新单元,并用 sel 指定新的当前选择 |
After | 紧跟所插入的内容(默认) |
Before | 在所插入的内容之前 |
All | 所插入内容本身 |
Placeholder | 所插入内容中第一个 |
None | 保持当前选择不变 |
用 FactorInteger 包含当前选择:
Options[obj,option] | 找出完整笔记本的一个选项值 |
Options[NotebookSelection[obj],option] | |
找出当前选择的值 | |
SetOptions[obj,option->value] | 设置完整的笔记本的一个选项值 |
SetOptions[NotebookSelection[obj],option->value] | |
设置当前选择的值 |
CreateWindow[] | 产生一个新笔记本 |
CreateWindow[options] | 产生一个具有指定选项的笔记本 |
NotebookOpen["name"] | 打开一个已有的笔记本 |
NotebookOpen["name",options] | 打开一个具有指定选项的笔记本 |
SetSelectedNotebook[obj] | 选择一个指定的笔记本 |
NotebookPrint[obj] | 打印一个笔记本 |
NotebookPrint[obj,"file"] | 将一个笔记本的 PostScript 版本输出到一个文件 |
NotebookPrint[obj,"!command"] | 将一个笔记本的 PostScript 版本送到一个外部命令 |
NotebookSave[obj] | 将笔记本的当前版本存入一个文件 |
NotebookSave[obj,"file"] | 将笔记本存为一个给定文件名的文件 |
NotebookClose[obj] | 关闭一个笔记本 |
调用 CreateWindow[] 时,屏幕上出现一个空笔记本.
执行 SetSelectedNotebook 和 NotebookOpen 等指令时,就是让 Wolfram 语言改变所看到的窗口. 在NotebookOpen 和 CreateWindow 中使用选项设置 Visible->False 可以处理笔记本,但不将其显示在屏幕上.
$FrontEnd | 当前使用的前端 |
Options[$FrontEnd,option] | 前端全局选项的设置 |
AbsoluteOptions[$FrontEnd,option] | 选项的绝对设置 |
SetOptions[$FrontEnd,option->value] | 在前端重设选项 |
CurrentValue[$FrontEnd, option] | 返回选项值,当用于赋值的左边时,允许设置选项. |
选项
|
缺省值
| |
NotebookBrowseDirectory |
(取决于系统)
| 打开和保存笔记本文件的缺省目录 |
NotebookPath |
(取决于系统)
| 当试图打开笔记本时的搜索路径 |
Language | "English" | 文本的缺省语言 |
MessageOptions |
(设置列表)
| 如何处理各种帮助和警告消息 |
FrontEndTokenExecute["name"] | 前端执行一个命名的指令 |
"Indent" | 所有选定的行缩进一个 tab 键 |
"NotebookStatisticsDialog" | 显示当前笔记本的统计数据 |
"OpenCloseGroup" | 一个单元组的打开和关闭切换 |
"CellSplit" | 在当前插入点将一个单元分为二个 |
"DuplicatePreviousInput" | 产生一个新单元,其是上边最近的一个输入单元的复制 |
"FindDialog" | 调出 查找 对话框 |
"ColorSelectorDialog" | 调出 颜色设置 对话框 |
"GraphicsAlign" | 对齐所选择的图形 |
"CompleteSelection" | 完成当前选择的指令名 |
FrontEndExecute 可以采用列表作为其自变量,允许在单一的计算过程中执行多个令牌. 当用户计算下面的命令时,前端创建一个新的笔记本,并且把剪贴板的内容粘贴到笔记本中.
简单和合成前端令牌
简单令牌
对于简单令牌,FrontEndToken 可以具有一个或者两个变量.
在两个变量的情况下,FrontEndToken 的变量必须是一个 NotebookObject 并且是一个前端令牌. 例如,要保存包含当前计算的笔记本,FrontEndToken 的第一个变量是笔记本对象 EvaluationNotebook,而第二个变量是前端令牌 "Save".
合成令牌
在执行 NotebookWrite[obj,data] 等指令时,向笔记本中插入数据的实际操作是在前端进行的. 但为了估算原来的指令和构造送向前端的适当请求,还是要使用内核的. 不过,前端可以直接执行一定量的指令,而不需涉及内核.
NotebookWrite[obj,data] | 在内核执行的 NotebookWrite 版本指令 |
FrontEnd`NotebookWrite[obj,data] | 在前端直接执行的 NotebookWrite 版本指令 |
FrontEndExecute[expr] | 把 expr 发送到前端执行 |
Cell[contents,"style"] | 有特殊风格的单元 |
Cell[contents,"style1","style2",…] | 有多个风格的单元 |
Cell[contents,"style",options] | 有额外选项设置的单元 |
"text" | 纯文本 |
TextData[{text1,text2,…}] | 不同样式或包含单元的文本 |
BoxData[boxes] | 格式化的 Wolfram 系统表达式 |
GraphicsData["type",data] | 图形或声音 |
OutputFormData["itext","otext"] | 由 InputForm 和 OutputForm 产生的文本 |
RawData["data"] | 用 显示表达式 产生的无格式表达式 |
CellGroupData[{cell1,cell2,…},Open] | 一个打开的单元组 |
CellGroupData[{cell1,cell2,…},Closed] | 一个关闭的单元组 |
StyleData["style"] | 定义样式的单元 |
在标准笔记本前端中,用 选项设置 菜单项可以设置可以层次的选项. 如果未在某一层设置选项,则其值总会从上层继承下来. 例如,当一个单元没有设置 CellFrame 选项时,则所用的值就会从单元样式或包含这一单元的笔记本的设置中继承下来.
选项
|
默认值
| |
ScreenStyleEnvironment | "Working" | 屏幕显示的样式环境 |
PrintingStyleEnvironment | "Printout" | 打印输出的样式环境 |
在一个基本默认样式中,Wolfram 系统使用两种不同的样式环境:一种用于屏幕显示,另一种用于打印机输出. 者两种用于屏幕和打印机的不同样式环境可以分别用来优化设置低分辨率的屏幕显示和高分辨率的打印机.
Wolfram 系统实际上用样式定义单元来定义样式. 这些单元可以放在另外的样式定义笔记本中,也可以包含在一个笔记本的选项中. 不论哪一种情形,都可以在标准笔记本前端中用 编辑样式表 菜单项访问他们.
Wolfram 语言提供了大量的单元选项,这些选项都可以在前端中通过 选项设置 菜单项访问. 他们可以在单个单元层上直接设置,也可以在高层设置而让单个单元去继承.
选项
|
典型默认值
| |
CellDingbat | None | 用于强调单元的标志 |
CellFrame | False | 单元是否加框 |
Background | None | 单元背景色 |
ShowCellBracket | True | 是否显示单元括号 |
Magnification | 1. | 单元显示的缩放率 |
CellOpen | True | 是否显示单元的内容 |
选项
|
典型默认值
| |
CellMargins | {{7,0},{4,4}} | 按打印点计算单元内容周围的边幅 |
CellFrameMargins | 8 | 单元框内的边幅 |
CellElementSpacings | list of rules | 单元元素布局的细节 |
CellBaseline | Baseline | 怎样对齐文本中内嵌单元的基准线 |
当一个选项涉及单元的四边时,Wolfram 语言中的约定形式是 {{left,right},{bottom,top}}. 给出了 top 和 bottom 的非零值后,CellMargins 就指定一个单元上面和下面应该留出的间隙. 这些值的单位总是打印点.
Wolfram 语言笔记本的每个方面几乎都能用一些选项控制. 更细致的方面一般由 CellElementSpacings 等“聚合”选项处理. 这些选项的设置是一系列 Wolfram 语言规则,他们为子选项序列指定值. 这些子选项名一般是字符串,而不是符号.
在 Wolfram 语言中可将单元嵌入文本块中. 选项 CellBaseline 决定这些内嵌单元在竖直方向怎样与周围文本对齐. 与 Grid 的 BaselinePosition 选项相同,选项 CellBaseline 指定单元的基线.
用 CellBaseline->Bottom 设置指定对齐方式:
选项
|
典型默认值
| |
CellLabel | "" | 单元标签 |
ShowCellLabel | True | 是否显示单元标签 |
CellLabelAutoDelete | True | 单元修改后是否删除标签 |
CellTags | {} | 一个单元的标志 |
ShowCellTags | False | 是否显示的标志 |
ConversionRules | {} | 外部转化规则 |
在一个标准的 Wolfram 语言进程中,包含相继内核输入和输出单元的标记形式是 In[n]:= 和 Out[n]=. 选项ShowCellLabel 决定是否显示这样的标记. CellLabelAutoDelete 确定一个单元的内容修改后是否删除单元标记. 这样做可以保证 In[n]:= 和 Out[n]= 标记仅与没有修改过的内核输入和输出相联系.
单元标志一般用来联系单元的关键词或其他属性,可以用 NotebookFind 等函数进行搜索. Wolfram 语言笔记本中超链接的目标可以用这些单元标志来实现.
选项 ConversionRules 用来给出包含 "TeX"->data 等条目的集合,这些条目指定一个单元的内容怎样转化为外部形式. 对于那些从外部格式转化为 Wolfram 语言笔记本中的单元,要保存该单元的原始形式时,这种转化形式是非常有用的.
选项
|
典型默认值
| |
Deletable | True | 能否在前端交互式地删除一个单元 |
Copyable | True | 能否拷贝一个单元 |
Selectable | True | 能否选择一个单元的内容 |
Editable | True | 是否能编辑一个单元的内容 |
Deployed | False | 单元中的用户界面是否能被激活 |
Deployed 允许用户把单元内的内容作为用户界面来处理. 在用户界面中,标签是不能被选择的,并且控制了按钮是可用但不可修改的. Deployed 也可以在一个单元的特定元素上设置,使得例如 Manipulate 的输出总是被部署即使该单元具有设置为 False 的 Deployed 选项.
选项
|
典型默认值
| |
Evaluator | "Local" | 用于计算的内核名 |
Evaluatable | False | 单元内容是否被计算 |
CellAutoOverwrite | False | 产生新输出时是否覆盖以前的输出 |
GeneratedCell | False | 该单元是否从内核产生 |
InitializationCell | False | 打开笔记本时是否自动计算该单元 |
选项 CellAutoOverwrite 一般设置为 True,表示 Wolfram 语言输出风格. 这意味着重新计算一个输入块时,Wolfram 语言将自动删除前一次从该输入块产生的输出,并用新输出覆盖.
当一个外部请求在前端产生一个单元(而不是通过前端的交互运算产生的单元)时就设置选项 GeneratedCell. 例如,任何由内核技术输出产生的单元将具有 GeneratedCell->True. 由低层函数产生并设计用来直接操作笔记本的单元,如 NotebookWrite 和 NotebookApply,不具有 GeneratedCell 选项设置.
选项
|
典型默认值
| |
PageBreakAbove | Automatic | 是否恰在一个单元之前换页 |
PageBreakWithin | Automatic | 是否在某一单元内换页 |
PageBreakBelow | Automatic | 是否恰在一个单元后换页 |
GroupPageBreakWithin | Automatic | 是否在一个单元组内换页 |
在屏幕上显示一个笔记本时可以连续滚动他,但在打印一个笔记本时就要决定是否换页. 将换页选项设置为 Automatic 时,Wolfram 语言就在必要时换页,设置为 True 时意味着总要换页,而设置为 False 时意味着总不换页.
使用 PageBreakAbove 和 PageBreakBelow 选项的换页设置也决定了在一个幻灯片中页面之间的停顿. 当创建一个幻灯片时,用户通常使用具有特定名称风格的单元来决定每个幻灯片从什么位置开始. 这种命名风格将具有某一种换页选项设置.
选项
|
典型默认值
| |
PageWidth | WindowWidth | 页宽 |
TextAlignment | Left | 怎样对齐文本行 |
TextJustification | 0 | 允许文本行伸展多少 |
Hyphenation | False | 是否用连字符连接 |
ParagraphIndent | 0 | 每段第一行缩进多少打印点 |
对没有明确换行符的大文本块,Wolfram 系统将文本块分成文本行序列. 选项 PageWidth 指定每行的宽度.
WindowWidth | 屏幕窗口宽度 |
PaperWidth | 打印时的页宽 |
Infinity | 无限宽度(无换行) |
n | 用打印点给出的确切页宽 |
设置单元和笔记本中的 PageWidth 选项.
TextAlignment 选项指定文本中的相继行怎样对齐. 由于 Wolfram 系统在空格或标点处对文本分行,所有通常各行长短不一. 变换的长度使文本的边界不整齐. 但是 Wolfram 系统允许对文本相继行的空隙进行调节以便各行长度大致相同. TextJustification 设置给出 Wolfram 系统允许额外增加的空隙比例. TextJustification->1 为全调整,其使得文本的所有行调整到相同的长度.
设置 TextAlignment 选项.
用了 TextAlignment->Center 后,该文本居中:
用 TextJustification->1 调节词间的距离,使各行左、右边均对齐:
用 TextJustification->0.5 减少了不整齐程度,但并没有使左、右边界都对齐:
用了 Hyphenation->True,文本使用连字符连接:
在 Wolfram 系统笔记本中输入文本块时,Wolfram 系统把明显的换行符当作分段符处理. 选项 ParagraphIndent 指定每段第一行缩进多少. 将 ParagraphIndent 选项设置为负值时,就是让各段的第一行突出到其他行的左侧之外.
LineSpacing->{c,0} | 留出的距离使得每行的总高度是其内容高度的 c 倍 |
LineSpacing->{0,n} | 每行的总高度恰是 n 个打印点 |
LineSpacing->{c,n} | 每行总高度是内容高度的 c 倍再加 n 个打印点 |
ParagraphSpacing->{c,0} | 每段开始前额外留出 c 倍字体高度的距离 |
ParagraphSpacing->{0,n} | 每段开始前额外留出恰好 n 个打印点的距离 |
ParagraphSpacing->{c,n} | 额外留出的距离为字体高度的 c 倍再加 n 个打印点 |
默认设置是 LineSpacing->{1,1} 的文本,这对相邻行间额外插入1个打印点的距离:
选用 LineSpacing->{1,5} 时,文本就较松散:
LineSpacing->{2,0} 使得文本行距加倍:
用 LineSpacing->{1,-2} 时,文本排得很紧:
选项
|
典型默认值
| |
FontFamily | "Courier" | 所用字体族 |
FontSubstitutions | {} | 用于替换的字体名集合 |
FontSize | 12 | 字符高度的最大值 |
FontWeight | "Bold" | 所用字符的粗细度 |
FontSlant | "Plain" | 所用字符的斜度 |
FontTracking | "Plain" | 字符的水平伸缩 |
FontColor | GrayLevel[0] | 字符颜色 |
Background | GrayLevel[1] | 字符的背景色 |
FontWeight->"Plain" | text like this |
FontWeight->"Bold" |
text like this
|
FontWeight->"ExtraBold" | text like this |
FontSlant->"Oblique" | text like this |
Wolfram 系统中可以非常仔细地给出所用字形的描述. 但有时在使用的计算机系统中没有所需字体的组合和变化,这时,Wolfram 系统就找出与其最接近的字体. 有 FontPostScriptName 等附加选项,这些选项设置可以帮助 Wolfram 系统找到合适的字体. 另外,还可以把 FontSubstitutions 设置为一个规则集合,由此给出试用字体名的替换.
常用文本可使用多种字体. 但对一些特殊字符(甚至对希腊字母),可用的字体不多. Wolfram 系统包含了支持其所使用的各种特殊字符的字体. 有三种类型的字体:普通(如Times)、单空(如Courier)和无衬线(如Helvetica).
对给出的文本字体,Wolfram 系统选择尽量与其匹配的字体. 在设置 FontProperties 选项时,对"FontSerifed" 和 "FontMonospaced" 给出规则可帮助 Wolfram 系统选择匹配. 也可以对 "FontEncoding" 给出规则明确指定每个字符所用的字体.
选项
|
典型默认值
| |
AutoIndent | Automatic | 回车符输入后是否缩进 |
DelimiterFlashTime | 0.3 | 匹配的定界符输入后闪烁的秒数 |
ShowAutoStyles | True | 是否显示句法结构等的自动风格变化 |
ShowCursorTracker | True | 光标位置跳跃时是否用椭圆点去指出其踪迹 |
ShowSpecialCharacters | True | 当输入 ] 时是否用一个特殊字符去代替 ∖[Name] |
ShowStringCharacters | True | 输入字符串时是否显示 " |
SingleLetterItalics | False | 单字母符号是否为斜体 |
ZeroWidthTimes | False | 是否用零宽度字符表示乘法 |
InputAliases | {} | 允许 EscnameEsc 别名 |
InputAutoReplacements | {"->"->"",…} | 输入时自动替换的字符串 |
AutoItalicWords | {} | 自动排位斜体的词 |
LanguageCategory | "NaturalLanguage" | 一个单元拼写校队和连字符用的语言范畴 |
用 StandardForm 默认值输入的一个表达式:
Wolfram 语言中常用特殊字符有许多别名. InputAliases 可以给更多的特殊字符或其他类型的 Wolfram 语言输入定义别名. 形如 "name"->expr 的规则决定 EscnameEsc 应该在输入时立即被 expr 替换.
别名用明确的 Esc 字符定界. 选项 InputAutoReplacements 指定一些类型的输入序列即使设有明显的定界符也应该被立即替代. 例如,在默认设置下,-> 立即被 替换. 可以用形如 "seq"->"rhs" 的规则去指定输入中出现的 seq 立即用 rhs 替换.
"NaturalLanguage" | 英语等语言 |
"Mathematica" | Wolfram 语言输入 |
"Formula" | 数学公式 |
None | 不用拼写校对或连字符连接 |
控制拼写校对和连字符的 LanguageCategory 设置.
LanguageCategory 选项告诉 Wolfram 语言单元内容的类型. 这决定怎样进行拼写和结构检查,以及怎样使用连字符.
GridBox[data,opts] | 给出用于某个网格盒的选项 |
StyleBox[boxes,opts] | 给出用于 boxes 中所有盒子的选项 |
Cell[contents,opts] | 给出用于 contents 中所有盒子的选项 |
Cell[contents,GridBoxOptions->opts] | 给出 contents 中所有 GridBox 对象的默认设置 |
与 "文本输入和输出" 中讨论的相同,Wolfram 语言提供了如何显示表达式的许多选项. 用StyleBox[boxes,opts] 能将选项用到盒子的集合中. 在 Wolfram 语言中,能用于 StyleBox 的选项可以用于一个完整的单元 Cell 对象,甚至可用于一个完整的 Notebook. 例如,Background 和 LineIndent 等选项既可以用于StyleBox 对象,也可以用于完整的单元.
GridBox 等选项仅用于某些特殊类型的盒子. 这些选项在需要时最好在每个 GridBox 中分别给出. 但有时要指定默认设置,使得某一个单元中出现的所有 GridBox 对象能继承. 这可以通过把这些默认设置定义为整个单元选项GridBoxOptions 的值来实现.
对名为 XXXBox 型的盒子,Wolfram 语言有一个单元选项 XXXBoxOptions,可以用来给出这类盒子选项的默认设置. 通过定义 XXX 风格,采取选项的盒子类型也可以在一个样式表中具有他们的选项集合. Wolfram 语言具有的样式表定义了许多这样的风格.
■ 用 选项设置 菜单交互式的改变选项. |
■ 使用内核的 SetOptions[obj,options]. |
■ 用 CreateWindow[options] 产生具有指定选项的新笔记本. |
选项
|
典型默认值
| |
StyleDefinitions | "Default.nb" | 用于笔记本的基本样式表 |
ScreenStyleEnvironment | "Working" | 用于屏幕显示的样式环境 |
PrintingStyleEnvironment | "Printout" | 用于打印的样式环境 |
当对于特定笔记本给出样式定义时,Wolfram 语言允许用户或者指向另一个笔记本,或者明确包含定义样式的Notebook 表达式.
选项
|
典型默认值
| |
CellGrouping | Automatic | 如何在笔记本中对于单元进行分组 |
ShowPageBreaks | False | 是否显示打印笔记本时的分页位置 |
NotebookAutoSave | False | 在每次输出后,是否自动保存笔记本 |
使用 CellGrouping->Automatic,单元将自动基于样式分组:
使用 CellGrouping->Manual,用户必须手动对单元进行分组:
选项
|
典型默认值
| |
DefaultNewCellStyle | "Input" | 笔记本中所产生新单元的默认样式 |
DefaultDuplicateCellStyle | "Input" | 从已有单元拷贝所产生单元的默认样式 |
选项
|
典型默认值
| |
Editable | True | 笔记本中是否能对单元进行编辑 |
Selectable | True | 是否可以选择单元 |
Deletable | True | 是否可以删除单元 |
ShowSelection | True | 是否用高亮度显示当前选项 |
Background | GrayLevel[1] | 笔记本所用的背景色 |
Magnification | 1 | 笔记本的大小 |
PageWidth | WindowWidth | 单元内容的宽度 |
一个在笔记本层设置 Background 选项的笔记本:
选项
|
典型默认值
| |
Visible | True | 窗口是否可以在屏幕看见 |
WindowSize | {Automatic,Automatic} | 窗口宽度和高度的打印点数 |
WindowMargins | Automatic | 屏幕显示时窗口周围的边幅 |
WindowFrame | "Normal" | 窗口框线的样式 |
WindowElements | {"StatusArea",…} | 窗口中包含的元素 |
WindowTitle | Automatic | 窗口标题 |
WindowFloating | False | 该窗口是否总放在其他窗口之上 |
WindowClickSelect | True | 在该窗口点击时是否就选择了 |
DockedCells | {} | 指定窗口上面docked区域内容的单元列表 |
WindowSize 决定一个窗口的大小;WindowMargins 决定窗口在屏幕上的位置. 设置 WindowMargins->{{left,right},{bottom,top}} 以像素形式指定屏幕上在该窗口四周的边幅. 一般是明确地设置两个边幅;其余两个是 Automatic 的,这些边幅是根据所使用的屏幕尺寸决定的.
WindowClickSelect 是决定窗口是否与面板同样工作的主要选项. 面板通常是具有内容基于其他窗口工作的窗口,而不是在自身进行选择的窗口. 面板也普遍具有其他选项设置集合如 WindowFloating->True 和 WindowFrame->"Palette".
DockedCells 允许用户指明需要位于窗口之上并且从来不滚动出屏幕的内容. DockedCells 选项的典型应用是顶一个一个自定义的工具条. 许多默认样式表具有定义在某些环境中用来对幻灯片演示和编辑程序包文件的 DockedCells 选项.
"Normal" | 通常的窗口 |
"Palette" | 面板窗口 |
"ModelessDialog" | 无模式对话框窗口 |
"ModalDialog" | 形式对话框窗口 |
"ThinFrame" | 具有细边框的窗口 |
"Frameless" | 无边框窗口 |
"Generic" | 具有一般边界的窗口 |
WindowFrame 的典型选项设置.
Wolfram 语言中有不同类型的窗口. 在不同的计算机系统中一个窗口的显示可能有细微的区别,但是总的形式是相同的. WindowFrame 指定窗口边界的类型. WindowElements 给出窗口中所包含的元素的集合.
"StatusArea" | 显示状态信息的区域,例如从 StatusArea 选项得到的区域 |
"MagnificationPopUp" | 通常的缩放弹出菜单 |
"HorizontalScrollBar" | 水平滚动条 |
"VerticalScrollBar" | 竖直滚动条 |
WindowElements 集合中的一些典型元素.
在标准笔记本前端中,可以设置许多 Wolfram 系统全局选项. 默认情况下,这些选项的值保存在一个“偏好文件”中,当重新运行 Wolfram 系统时就自动再次使用. 这些选项包含可以用偏好设置对话框生成的设置.
style definitions | 新笔记本使用的默认样式定义 |
file locations | 搜索笔记本和系统文件的目录 |
data export options | 如何用各种格式输出数据 |
character encoding options | 如何对特殊字符编码 |
language options | 文本使用的语言 |
message options | 如何处理 Wolfram 系统产生的信息 |
dialog settings | 对话框中的选择 |
system configuration | 对特定计算机系统的私有选项 |