我一直在玩的各种途径做有文化编程在蟒蛇。我喜欢 noweb, 但我有两个主要问题:第一,它是努力建设上的窗口,在那里,我花费大约一半,我的发展时间;第二,它需要我缩进每个区块的代码如,它会在最后的节目---我不需要知道当我写信。我不想使用狮子座的,因为我非常重视Emacs。

是否有一个良好的识字的编程工具:

  1. 运行上的窗户
  2. 让我设置的缩进块时,他们使用,而不是当他们写的
  3. 还让我工作在Emacs

谢谢!


更正: noweb 请允许我以缩后来我看错了纸张我找到它。

默认情况下, notangle 保留的空白,并保持压痕在扩大的区块。因此,它可以使用的语言,如米兰达和Haskell,其压痕是显着的

我只有"可以运行在窗口"的问题。

有帮助吗?

解决方案

我这样做:

http://sourceforge.net/projects/pywebtool/

你可以得到任何数量的web/编织产品,这将有助于构建一个文件和代码一举.

你可以-很轻松-写你自己。这不是火箭科学美国的代码块出的第一来源和组装。事实上,我建议你写你自己的Docutils指令装配代码,从第一来源文件。

你运行的第一次通过docutils rst2html(或狮身人面像的)产生最终HTML报告。

你经营自己的工同第一个来源提取代码块和最后产生的模块。

其他提示

我已经写Pweave http://mpastell.com/pweave, ,目的是为动态的报告的产生和使用noweb语法。它是一个纯粹的蟒蛇脚本,所以它也运行在窗。它不会解决你的缩的问题,但也许你可以修改它的,该代码真的很简单。

事实上的标准在社会IPython笔记本电脑。

很好的例子在这彼得Norvig表明了算法来解决的旅行推销员的问题: http://nbviewer.ipython.org/url/norvig.com/ipython/TSPv3.ipynb

更多的例子列出在 https://github.com/ipython/ipython/wiki/A-gallery-of-interesting-IPython-Notebooks

你可以使用的组织模式和babel-纠结。

这一工作的很好,因为你可以得到:noweb-ref来源块。

这里有一个很小的例子: 激活组织-babel缠, 然后把这个放到的文件 noweb-test.org:

#+begin_src python :exports none :noweb-ref c
abc = "abc"
#+end_src

#+begin_src python :noweb yes :tangle noweb-test.py
def x():
  <<c>>
  return abc

print(x())
#+end_src

你也可以使用特性的头条新闻给noweb-ref。然后,它可以甚至会自动连接几源块进入一个noweb参考。

添加 :results output 来的 #+begin_src 线的第二块,看看打印的结果,根据该框当你打 C-c C-c 在块。

你可能会找到 noweb3 更容易建立。它的目的是要将更多的便携式比标准noweb.

还请参见我上一次LP工具: http://code.google.com/p/nano-lp.它不需要特别输入格式,支持降价/MultiMarkdown,reStructuredText,OpenOffice在,克里奥尔语,TeX/乳胶和具有超光和清洁的语法-没有更多神秘的识字方案。

找到这个工具是有用的: https://github.com/bslatkin/pyliterate

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top