Sage Notebook 使用说明

软件和网站开发以及相关技术探讨
回复
头像
peakgg
帖子: 1122
注册时间: 2006-10-10 9:40

Sage Notebook 使用说明

#1

帖子 peakgg » 2009-03-27 10:52

  说明:译自Sagenb帮助文档首页,因原条目按英文字母排序,所以有些非常用功能会排在前面,不过还是建议使用前至少浏览一遍本文。
  
  工作表(worksheet)是带有输出结果的一个Sage计算的有序列表。
  
  会话(session)是一个工作表和一个某种状态下的变量集合。
  
  Sage notebook 是一个包含工作表,保存的项目和用户信息的文集。

  
  开始Sage前请先阅读[url=http://www.sagenb.or​g/doc/live/tutorial/​index.html]入门指南[/url](如果有问题,可以阅读[url=http://www.sagenb.or​g/doc/static/tutoria​l/index.html]静态版本[/url],中文版,翻译中...)。
  
  加附脚本:用“attach 文件名.sage”和“attach 文件名.py”。加附的文件会在改变时自动重载。如果$HOME/.sage/init.sage文件存在则会在SAGE启动时自动加附。
  
  加载时自动计算元组(cell):任何输入内容中带有“#auto”的元组都会在工作表第一次打开时自动运算。
  
  DATA变量:变量DATA为载入到工作表的数据文件的目录。例如,打开该目录的一个文件用“open(DATA+'文件名')”。
  
  DIR变量:变量DIR为开启SAGE notebook的目录。例如,打开该目录的一个文件用“open(DIR+'文件名')”。
  
  删除元组:删除元组中所有内容,然后按ctrl-backspace。其实这是联接元组的一个特例。(译注:实际上在空元组中按backspace就能将其删除)
  
  使用GAP,Singular等计算元组:将“%gap”,“%singular”等作为元组的第一行,元组中的内容即会采用相应的系统进行计算。
  
  运算:按shift-enter。可以一次进行多个运算。如果按alt-enter,可在当前元组后建立新的元组。如果按control-enter则会将元组分成两片并分别运算。
  
  文档和源码全文搜索:在输入元组中输入“search_doc("查询关键词")”并按shift-enter来查询SAGE文件。查源码用“search_src("查询关键词")”,查询关键词支持所有正则表达式。
  
  HTML:在元组间按Shift点击可插入HTML单元。双击已有HTML可进行编辑。在HTML块中使用“$...$”和“$$...$$”来包含排版数学公式(译注:当鼠标指针靠近下一个输入cell的上端时会出现一个Sage蓝的水平分割线,这部分才是“元组之间”,按住Shift点击左键就出现HTML编辑框了,不过我在Firefox和Opera中都发现超链接无法插入,所以要插入超链接只能到上面菜单中将工作表切换到Edit模式手动添加超链接的HTML代码,另外在HTML编辑框中linux的中键粘贴也是不好使的,只能老老实实的ctrl+v;排版数学公式当然就是latex的啦,一个$的是文本间公式,两个$的是正常公式,要在网页中显示需要装jsMath,页面会自动提示安装的)。
  
  帮助查询:在对象或函数后面输入“?”并按tab键。
  
  隐藏/显示输出:在输出的左侧点击可在隐藏,折行显示和无折行显示间进行切换。
  
  历史:点击菜单中的log链接可查看notebook中在所有工作表输入过的内容。
  
  块缩进:选中文本后按>可将选中的文本缩进,或按<进行反缩进(Safari和Firefox中有效)。在Firefox中也可按tab和shift-tab键(译注:事实上在我的Firefox中><键都不好使,Opera中只有tab有效)。
  
  输入规则:代码运行后只有元组的最后一行是默认输出的。如果某些行以提示符“sage:”或者“>>>”开始,整个块都会被认为是文本和代码的混合,因而只有带提示符的行才会被执行。因此你可以将文档中整块的例子贴入而不进行任何修改,你也可以采用将需要执行的代码块以“>>>”开始的方式编写含有不进行计算文本的元组。
  
  插入新元组:将鼠标放在上一个元组的输出和下一个元组的输入之间,当出现水平线时点击即可。如果你在一个元组中按Alt-Enter,将在计算后在该元组后插入新元组。
  
  交互式计算组件(Widgets):在定义函数前加一行“@interact”。详细使用可输入“interact?”查看。
  
  中断计算:点击Interrupt(译注:在Action菜单下)或在任意输入元组中按escape键。系统会(尝试)通过向SAGE发送很多信号进行中断。
  
  载入SAGE/Python脚本:用“load 文件名.sage”和“load 文件名.py”。加载以开启notebook的相对路径进行。.sage文件会进行预解析,但.py文件不会。.sage或.py扩展名可省略。文件可嵌套加载。
  
  载入和保存对象:用“save 对象1 对象2 ...”和“load 对象1 对象2 ...”。以此可以很容易的将一些对象从一个工作表移到另一个工作表或将对象保存以待它用。
  
  载入和保存会话:用“save_session('名字')”来保存一个对象的所有变量。用“load_session('名字')”合并一个保存的会话中的所有变量。

  重启:在给定的工作表中输入“restart”来重启SAGE解释器。(需要先进行中断。)
  
  终端:在块的开始处加一行“%sh”该块后面的代码将以shell脚本方式运算。并保持当前工作目录。
  
  源码:在要显示源码的目标后面输入“??”然后按tab键。
  
  分离和联接元组:在元组中按ctrl-;将其分成两个元组,按ctrl-backspace联接。按ctrl-enter可将元组分离,同时进行计算。
  
  Tab自动完成:鼠标在标识符状态下按tab键。某些浏览器(如Opera)则是control-space(译注:事实上Opera也是tab的)。
  
  计时:在元组开始的地方键入“%time”。
  
  输出排版:在输入元组中键入“pretty_print_default()”后按shift-enter。以后所有的输出都将自动排版。
  
  工作目录:每个代码块都在自身的目录下运行。就此创建的图片将自动显示。(译注:因此调用pylab来plot的时候要用savefig()函数显示而不是用show()函数)
回复