简体   繁体   中英

How to print Smalltalk code from Pharo/Squeak?

What is the best way to print - syntax colored and well formatted - code from Pharo/Squeak on paper?

1) Is there a way to print directly from within Pharo/Squeak? (i use it on macosx)
2) Is there a way to export syntax colored, well formatted code from Pharo/Squak?
3) Are there external tools to color and format a filed out piece of code?

For the appendix in my master thesis I used the Pier CMS -to-LaTeX converter in the Pier-Documentation package. However, this plugin only takes class comments and method comments into consideration, it does not print the source code. Pier also provides a package ShoutPier for syntax highlighting of Smalltalk code, so I guess it would require little work to bring the two together. You can find the mentioned extension packages in http://source.lukas-renggli.ch/pieraddons.html .

Here's how I did it on my Mac, I think this should work on other platforms too.

  1. Save your categories to a Monticello local folder on your disk -- see the Pharo manual on how to do this: http://book.pharo-project.org/book/PharoTools/Monticello/?_s=hdGOLc_FXsvVY1iR&_k=YYH-Ln8f5mtWZ8z2&_n&148

  2. Browse to this folder, and unzip the .mcz file

  3. You'll see all your code in snapshot/source.st file

  4. You'll need to edit this a bit, to remove the ! characters for eg, there might be a tool to do this?

-Eric.

有webdoc项目,它允许您在Web浏览器中导航代码: http ://ss3.gemstone.com/ss/webdoc.html(当然,您可以从您喜欢的Web浏览器打印代码)。

Pharo browsers seem to use syntax highlighting.

What difficulty are you having reading Smalltalk code using the browsers and senders/implementors ?

Edit: Would something that produces UML give the overview you're looking for ? The Dandelion website only shows downloads for old Squeak versions - I don't know if they would work with Pharo.

And perhaps this GSoC project "Generate UML diagrams from Smalltalk code for Pharo" suggests not.

1) Install shout from www.squeaksource.com

2) I don't know. May be you can customize shout.

3) In gnu-smalltalk you have a smalltalk mode for emacs. But I am not pretty sure to understand what you are looking for.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM