New Pharo Booklet

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

New Pharo Booklet

Stephane Ducasse-3
Hi guys

I just published a new little booklet on Pharo tips and tricks!
Available at: http://books.pharo.org

Feedback and contributions are welcome as usual.

Stef

Reply | Threaded
Open this post in threaded view
|

Re: New Pharo Booklet

hernanmd
Thank you Stef!

I wrote documentation for my packages in Markdown + pandoc + LaTeX.

The TeX macros contains syntax colorization for Smalltalk code which
can be easily added to Pillar (I suppose)
Would you consider adding the syntax coloring from the TeX macros I sent to you?

I have some silly questions about Pillar:

The documents can be integrated with toc through pandoc, can this be
done in Pillar?
For tables I use tabu, longtable, booktabs, what to use in Pillar?
For multiple language suppor I use fontspec and lmodern, what to use in Pillar?
For link I use hyperref, what to use in Pillar?

I have some chapters ready and I would love to be published in a book,
under the umbrella of Pharo Books:

https://github.com/hernanmd/Territorial/raw/master/Territorial.pdf
http://biosmalltalk.github.io/web/doc/BioSmalltalk-1.0.pdf
https://github.com/PhyloclassTalk/phyloclasstalk.github.io/raw/master/doc/PhyloclassTalk-1.0.pdf

What do you think?

Cheers

Hernán


2017-10-29 17:53 GMT-03:00 Stephane Ducasse <[hidden email]>:
> Hi guys
>
> I just published a new little booklet on Pharo tips and tricks!
> Available at: http://books.pharo.org
>
> Feedback and contributions are welcome as usual.
>
> Stef
>

Reply | Threaded
Open this post in threaded view
|

Re: New Pharo Booklet

Stephane Ducasse-3
> I wrote documentation for my packages in Markdown + pandoc + LaTeX.
>
> The TeX macros contains syntax colorization for Smalltalk code which
> can be easily added to Pillar (I suppose)
> Would you consider adding the syntax coloring from the TeX macros I sent to you?

Sure now I'm not a latex expert and I want to keep dependencies to a minimum
What you can do is

>
> I have some silly questions about Pillar:
>
> The documents can be integrated with toc through pandoc, can this be
> done in Pillar?

I do not understand what you mean here.

> For tables I use tabu, longtable, booktabs, what to use in Pillar?
In pillar you have

| a column | a column |

> For multiple language suppor I use fontspec and lmodern, what to use in Pillar?

I do not know that. And what are the use. In pillar we have utf-8

> For link I use hyperref, what to use in Pillar?

* *

> I have some chapters ready and I would love to be published in a book,
> under the umbrella of Pharo Books:
>
> https://github.com/hernanmd/Territorial/raw/master/Territorial.pdf
> http://biosmalltalk.github.io/web/doc/BioSmalltalk-1.0.pdf
> https://github.com/PhyloclassTalk/phyloclasstalk.github.io/raw/master/doc/PhyloclassTalk-1.0.pdf
>
> What do you think?

Good!
now I would start simple in plain pillar and avoid as much as possible
to use specific latex function
and see if this is really a problem and then we can see if we need to
extend the latex template or pillar.

Pillar is not latex. We want to keep agnostic about latex.



>
> Cheers
>
> Hernán
>
>
> 2017-10-29 17:53 GMT-03:00 Stephane Ducasse <[hidden email]>:
>> Hi guys
>>
>> I just published a new little booklet on Pharo tips and tricks!
>> Available at: http://books.pharo.org
>>
>> Feedback and contributions are welcome as usual.
>>
>> Stef
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: New Pharo Booklet

Renaud de Villemeur
In reply to this post by Stephane Ducasse-3
Hi Stephane

Your booklet is very usefull, and show stuff that can only be done by code.

However, in your example, you show how to change syntax style, or enable freetype, which can also be done using the setting framework, so I was wondering, how would you position Startup Loader with the settings framework ?

Next, you always use StartupLoader. In my recent Pharo 6.1 image, this seems to be replaced by class  StartupPreferencesLoader. Not a big deal, I was able to find the correct class through the message, but quite confusing if you only read the booklet.

I tend to use raw image, and load everything from scratch, instead of keeping multiple image around. So I try to clean things, or put things automatically at startup

How to remove automatically at startup the welcome windows (probably specific to Pharo 6)
World submorphs
  select: [ :sm | sm isSystemWindow and: [ sm label = ((Character value: 0) asString, 'Welcome')]]
  thenDo: [ :window | window delete ].

Open browser automatically on package specific to my (little) projects
|browser|
browser := Smalltalk tools openClassBrowser.
browser open.
browser ui packageSearchUpdate: 'MyPack'

Cheers
Renaud


2017-10-29 16:53 GMT-04:00 Stephane Ducasse <[hidden email]>:
Hi guys

I just published a new little booklet on Pharo tips and tricks!
Available at: http://books.pharo.org

Feedback and contributions are welcome as usual.

Stef


Reply | Threaded
Open this post in threaded view
|

Re: New Pharo Booklet

hernanmd
In reply to this post by Stephane Ducasse-3
Hi Stef,

2017-11-01 8:11 GMT-03:00 Stephane Ducasse <[hidden email]>:
>> I wrote documentation for my packages in Markdown + pandoc + LaTeX.
>>
>> The TeX macros contains syntax colorization for Smalltalk code which
>> can be easily added to Pillar (I suppose)
>> Would you consider adding the syntax coloring from the TeX macros I sent to you?
>
> Sure now I'm not a latex expert and I want to keep dependencies to a minimum

Yes, LaTeX is complicated and ugly.

> What you can do is
>
>>
>> I have some silly questions about Pillar:
>>
>> The documents can be integrated with toc through pandoc, can this be
>> done in Pillar?
>
> I do not understand what you mean here.
>

When creating PDF document with pandoc command line I use the
parameter "--toc" to automatically create Table of Contents from the
document titles and subtitles. For example from command line:

pandoc --toc --latex-engine=xelatex --listings -H macros.tex
BioSmalltalk.md -s -o BioSmalltalk.pdf

I don't know if "toc" is supported in Pillar. As I understand a Pillar
book can contain multiple chapters, but a chapter may include a table
of contents on its own?

>> For tables I use tabu, longtable, booktabs, what to use in Pillar?
> In pillar you have
>
> | a column | a column |
>

Ok, what I mean is for example with the "longtabu" LaTeX package I can
specify column width individually:

\begin{longtabu} to \linewidth{X[1.5,l,m] X[.3,m] X[.3,m] X[.5,m]
X[c,m] X[c,m] X[c,m]}

And many other table spacing properties :
https://en.wikibooks.org/wiki/LaTeX/Tables

I guess to add more advanced features one should edit Pillar templates
with archetype?

>> For multiple language suppor I use fontspec and lmodern, what to use in Pillar?
>
> I do not know that. And what are the use. In pillar we have utf-8
>
>> For link I use hyperref, what to use in Pillar?
>
> * *
>

I would love to have linkcolor, anchorcolor, citecolor, etc :)

What I found is
https://github.com/pillar-markup/Pillar-Archetype/blob/master/book/support/latex/common.tex

So I could inject my own LaTeX styles/commands/sections in common.tex?
Or should I go through PRLaTeXWriter?

Then if you like it you may integrate into Pillar in the future?

>> I have some chapters ready and I would love to be published in a book,
>> under the umbrella of Pharo Books:
>>
>> https://github.com/hernanmd/Territorial/raw/master/Territorial.pdf
>> http://biosmalltalk.github.io/web/doc/BioSmalltalk-1.0.pdf
>> https://github.com/PhyloclassTalk/phyloclasstalk.github.io/raw/master/doc/PhyloclassTalk-1.0.pdf
>>
>> What do you think?
>
> Good!
> now I would start simple in plain pillar and avoid as much as possible
> to use specific latex function
> and see if this is really a problem and then we can see if we need to
> extend the latex template or pillar.
>
> Pillar is not latex. We want to keep agnostic about latex.
>
>

Thanks for your comments Stef.

Cheers,

Hernán

>>
>> Cheers
>>
>> Hernán
>>
>>
>> 2017-10-29 17:53 GMT-03:00 Stephane Ducasse <[hidden email]>:
>>> Hi guys
>>>
>>> I just published a new little booklet on Pharo tips and tricks!
>>> Available at: http://books.pharo.org
>>>
>>> Feedback and contributions are welcome as usual.
>>>
>>> Stef
>>>
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: New Pharo Booklet

kilon.alios
In reply to this post by hernanmd
Pillar supports embedding LaTex and HTML inside your pillar files so whatever works for those should work for Pillar. Pillar also has templates you can modify via moustache. Pillar is actually so flexible I used as a static website generator utilizing moustache and bootstrap and worked like a charm. It’s syntax is just the tip of the iceberg. 

On Wed, 1 Nov 2017 at 06:39, Hernán Morales Durand <[hidden email]> wrote:
Thank you Stef!

I wrote documentation for my packages in Markdown + pandoc + LaTeX.

The TeX macros contains syntax colorization for Smalltalk code which
can be easily added to Pillar (I suppose)
Would you consider adding the syntax coloring from the TeX macros I sent to you?

I have some silly questions about Pillar:

The documents can be integrated with toc through pandoc, can this be
done in Pillar?
For tables I use tabu, longtable, booktabs, what to use in Pillar?
For multiple language suppor I use fontspec and lmodern, what to use in Pillar?
For link I use hyperref, what to use in Pillar?

I have some chapters ready and I would love to be published in a book,
under the umbrella of Pharo Books:

https://github.com/hernanmd/Territorial/raw/master/Territorial.pdf
http://biosmalltalk.github.io/web/doc/BioSmalltalk-1.0.pdf
https://github.com/PhyloclassTalk/phyloclasstalk.github.io/raw/master/doc/PhyloclassTalk-1.0.pdf

What do you think?

Cheers

Hernán


2017-10-29 17:53 GMT-03:00 Stephane Ducasse <[hidden email]>:
> Hi guys
>
> I just published a new little booklet on Pharo tips and tricks!
> Available at: http://books.pharo.org
>
> Feedback and contributions are welcome as usual.
>
> Stef
>

Reply | Threaded
Open this post in threaded view
|

Re: New Pharo Booklet

Stephane Ducasse-3
In reply to this post by hernanmd
Toc, list of figures are managed by the latex template. So yes you
have them if you template use it.

In fact a template is just a latex with {{{title}}}, {{{attribution}}}
We are working with guille in making pillar simpler to change.
Students were not really well supervised by damien and they produce
rather difficiult to understand and extend
design so I'm slowly going over the points.


Usually we can do the following
- first level, renewcommand in latex so like that we do not have to
extend the syntax of pillar
- second level, we can use the option of a command such as ${cite:}$ I
should check because for example we should be able to specify
the bib file but we should extend the nodes and model of pillar.
- third level we change the syntax but I would like to avoid it.

What I can try is to convert one of your document and check how it goes.
Now I'm really busy.

How do they do it in pandoc? In pillar now you can embed plain latex
using {{{}}} I guess  but it means that you cannot export that nicely
to HTML. I want to find a good css to produce a lot sexier output.









Stef

On Wed, Nov 1, 2017 at 7:44 PM, Hernán Morales Durand
<[hidden email]> wrote:

> Hi Stef,
>
> 2017-11-01 8:11 GMT-03:00 Stephane Ducasse <[hidden email]>:
>>> I wrote documentation for my packages in Markdown + pandoc + LaTeX.
>>>
>>> The TeX macros contains syntax colorization for Smalltalk code which
>>> can be easily added to Pillar (I suppose)
>>> Would you consider adding the syntax coloring from the TeX macros I sent to you?
>>
>> Sure now I'm not a latex expert and I want to keep dependencies to a minimum
>
> Yes, LaTeX is complicated and ugly.
>
>> What you can do is
>>
>>>
>>> I have some silly questions about Pillar:
>>>
>>> The documents can be integrated with toc through pandoc, can this be
>>> done in Pillar?
>>
>> I do not understand what you mean here.
>>
>
> When creating PDF document with pandoc command line I use the
> parameter "--toc" to automatically create Table of Contents from the
> document titles and subtitles. For example from command line:
>
> pandoc --toc --latex-engine=xelatex --listings -H macros.tex
> BioSmalltalk.md -s -o BioSmalltalk.pdf
>
> I don't know if "toc" is supported in Pillar. As I understand a Pillar
> book can contain multiple chapters, but a chapter may include a table
> of contents on its own?
>
>>> For tables I use tabu, longtable, booktabs, what to use in Pillar?
>> In pillar you have
>>
>> | a column | a column |
>>
>
> Ok, what I mean is for example with the "longtabu" LaTeX package I can
> specify column width individually:
>
> \begin{longtabu} to \linewidth{X[1.5,l,m] X[.3,m] X[.3,m] X[.5,m]
> X[c,m] X[c,m] X[c,m]}
>
> And many other table spacing properties :
> https://en.wikibooks.org/wiki/LaTeX/Tables
>
> I guess to add more advanced features one should edit Pillar templates
> with archetype?
>
>>> For multiple language suppor I use fontspec and lmodern, what to use in Pillar?
>>
>> I do not know that. And what are the use. In pillar we have utf-8
>>
>>> For link I use hyperref, what to use in Pillar?
>>
>> * *
>>
>
> I would love to have linkcolor, anchorcolor, citecolor, etc :)
>
> What I found is
> https://github.com/pillar-markup/Pillar-Archetype/blob/master/book/support/latex/common.tex
>
> So I could inject my own LaTeX styles/commands/sections in common.tex?
> Or should I go through PRLaTeXWriter?
>
> Then if you like it you may integrate into Pillar in the future?
>
>>> I have some chapters ready and I would love to be published in a book,
>>> under the umbrella of Pharo Books:
>>>
>>> https://github.com/hernanmd/Territorial/raw/master/Territorial.pdf
>>> http://biosmalltalk.github.io/web/doc/BioSmalltalk-1.0.pdf
>>> https://github.com/PhyloclassTalk/phyloclasstalk.github.io/raw/master/doc/PhyloclassTalk-1.0.pdf
>>>
>>> What do you think?
>>
>> Good!
>> now I would start simple in plain pillar and avoid as much as possible
>> to use specific latex function
>> and see if this is really a problem and then we can see if we need to
>> extend the latex template or pillar.
>>
>> Pillar is not latex. We want to keep agnostic about latex.
>>
>>
>
> Thanks for your comments Stef.
>
> Cheers,
>
> Hernán
>>>
>>> Cheers
>>>
>>> Hernán
>>>
>>>
>>> 2017-10-29 17:53 GMT-03:00 Stephane Ducasse <[hidden email]>:
>>>> Hi guys
>>>>
>>>> I just published a new little booklet on Pharo tips and tricks!
>>>> Available at: http://books.pharo.org
>>>>
>>>> Feedback and contributions are welcome as usual.
>>>>
>>>> Stef
>>>>
>>>
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: New Pharo Booklet

Stephane Ducasse-3
In reply to this post by Renaud de Villemeur
Hi renaud

thanks for the feedback. Settings is way to describe settings.
Now once you have a settings and save it you can take the setting code
and wrap it into a startUpLoader actions.
So there are really complementary.

Ok I did not know that we change the class name. I will check because
my preferences seems to work in pharo 70.
Can you do pull requests for your suggestions so that the chapter gets
improved.




On Wed, Nov 1, 2017 at 6:34 PM, Renaud de Villemeur
<[hidden email]> wrote:

> Hi Stephane
>
> Your booklet is very usefull, and show stuff that can only be done by code.
>
> However, in your example, you show how to change syntax style, or enable
> freetype, which can also be done using the setting framework, so I was
> wondering, how would you position Startup Loader with the settings framework
> ?
>
> Next, you always use StartupLoader. In my recent Pharo 6.1 image, this seems
> to be replaced by class  StartupPreferencesLoader. Not a big deal, I was
> able to find the correct class through the message, but quite confusing if
> you only read the booklet.
>
> I tend to use raw image, and load everything from scratch, instead of
> keeping multiple image around. So I try to clean things, or put things
> automatically at startup
>
> How to remove automatically at startup the welcome windows (probably
> specific to Pharo 6)
> World submorphs
>   select: [ :sm | sm isSystemWindow and: [ sm label = ((Character value: 0)
> asString, 'Welcome')]]
>   thenDo: [ :window | window delete ].
> ]
>
> Open browser automatically on package specific to my (little) projects
> |browser|
> browser := Smalltalk tools openClassBrowser.
> browser open.
> browser ui packageSearchUpdate: 'MyPack'
>
> Cheers
> Renaud
>
>
> 2017-10-29 16:53 GMT-04:00 Stephane Ducasse <[hidden email]>:
>>
>> Hi guys
>>
>> I just published a new little booklet on Pharo tips and tricks!
>> Available at: http://books.pharo.org
>>
>> Feedback and contributions are welcome as usual.
>>
>> Stef
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: New Pharo Booklet

Stephane Ducasse-3
Hernan

I was thinking about it this night. For the coloring we can also
change the template.
What we can do is to copy the book template and experiment.

Stef

On Thu, Nov 2, 2017 at 7:57 PM, Stephane Ducasse
<[hidden email]> wrote:

> Hi renaud
>
> thanks for the feedback. Settings is way to describe settings.
> Now once you have a settings and save it you can take the setting code
> and wrap it into a startUpLoader actions.
> So there are really complementary.
>
> Ok I did not know that we change the class name. I will check because
> my preferences seems to work in pharo 70.
> Can you do pull requests for your suggestions so that the chapter gets
> improved.
>
>
>
>
> On Wed, Nov 1, 2017 at 6:34 PM, Renaud de Villemeur
> <[hidden email]> wrote:
>> Hi Stephane
>>
>> Your booklet is very usefull, and show stuff that can only be done by code.
>>
>> However, in your example, you show how to change syntax style, or enable
>> freetype, which can also be done using the setting framework, so I was
>> wondering, how would you position Startup Loader with the settings framework
>> ?
>>
>> Next, you always use StartupLoader. In my recent Pharo 6.1 image, this seems
>> to be replaced by class  StartupPreferencesLoader. Not a big deal, I was
>> able to find the correct class through the message, but quite confusing if
>> you only read the booklet.
>>
>> I tend to use raw image, and load everything from scratch, instead of
>> keeping multiple image around. So I try to clean things, or put things
>> automatically at startup
>>
>> How to remove automatically at startup the welcome windows (probably
>> specific to Pharo 6)
>> World submorphs
>>   select: [ :sm | sm isSystemWindow and: [ sm label = ((Character value: 0)
>> asString, 'Welcome')]]
>>   thenDo: [ :window | window delete ].
>> ]
>>
>> Open browser automatically on package specific to my (little) projects
>> |browser|
>> browser := Smalltalk tools openClassBrowser.
>> browser open.
>> browser ui packageSearchUpdate: 'MyPack'
>>
>> Cheers
>> Renaud
>>
>>
>> 2017-10-29 16:53 GMT-04:00 Stephane Ducasse <[hidden email]>:
>>>
>>> Hi guys
>>>
>>> I just published a new little booklet on Pharo tips and tricks!
>>> Available at: http://books.pharo.org
>>>
>>> Feedback and contributions are welcome as usual.
>>>
>>> Stef
>>>
>>