Hi again,
I will be using this thread to update my advances and questions about
how to build an outliner in Pharo Smalltalk. If there is a better method
like starting a new thread for particular questions, or a less narrative
style, please let me know.
The idea is to use the tools provided by Moose to build a quick outliner
that can be extended to suit my needs on academical writing. This is
kind of a strange approach in the sense that I'm not following the
tutorials with a predefined problems (make a game and so) but trying to
start with a real (in the sense of closer) problem (making an outliner)
and to see which knowledge I need to solve this necessity. In that sense
is more like the Freire's alphabetization of adults in Brazil.
So, the things I have done so far was to search for a good model to
start with. Something already done that can be used as scaffolding for
my outliner. The Help System seems like a good start for an outliner (in
fact it is already one), so I have taken the Help-Core system and start
to use it as a base for my project.
After that I have used the Moose browsers to build a simple interface,
as seen here:
http://mutabit.com/offray/static/blog/output/galleries/objetos/ubakye-brows…
The part I want to deal with is this:
===============
explorer := GLMTabulator new
title: (mainTree header).
explorer column: #tree;
column: #body.
explorer transmit to: #tree; andShow: [:a |
a tree
display: mainTree children ].
explorer openOn: mainTree.
===============
So, instead of "display: mainTree children" I need something that takes
the get names (headers) of the two nodes and the contents in the right
panel. For that I think that I need to learn some iterators. I have
already a "header" method for the nodes. Any clue would be appreciated
and I will keep you posted on my advances.
Cheers,
Offray
On 07/21/2014 12:58 PM, Offray Vladimir Luna Cárdenas wrote:
> Hi Damien,
>
> Thanks for your answer. Comments below.
>
> On 07/21/2014 11:09 AM, Damien Cassou wrote:
>> On Sat, Jul 19, 2014 at 2:47 AM, Offray Vladimir Luna Cárdenas
>> <offray(a)riseup.net> wrote:
>>> The first idea that comes to mind is using STON for storage nodes and
>>> tree
>>> information, so I can interchange it with the flatland files world
>>> and keep
>>> it readable. Sounds that reasonable?
>>
>>
>> without more information, it is hard to stay. Try with STON and change
>> if that does not work :-). We have XML and JSON generators as well.
>>
>
>
> This is a kind of raw preview of I'm talking about:
>
> http://www.enlightenment.org/ss/e-53cd4f36f021e9.68569046.jpg
>
> Of course in this case, it is just a Help browser with a Playground
> window over it, but I would like to have something like Playgrounds
> inside the help browser. I was trying to build a custom browser with
> Glamour, but seems that Help Browser already has the machinery I'm
> looking for.
>
> So my first question is how to use the Help Browser class as a template
> for my outliner class? And can I put a Playground where the plain text
> is located right now?
>
>>
>>> The second thing I would like to do is to add pandoc's markdown inside
>>> comments, but I don't like the syntax of comments in Smalltalk because
>>> single quotes are fairly easy to find in light markup language like
>>> markdown. Is difficult to change it to create something more like python
>>> (with """) or Lua (with -[]- )?
>>
>>
>> There is only one syntax for comments in Pharo. Instead of Markdown,
>> you might want to have a look at Pillar which is implemented in Pharo
>> and can generate Markdown (and html, and pdf) :
>> https://github.com/pillar-markup/pillar-documentation/
>>
>>
>
> I have seen Pillar. Seems really interesting, but Pandocs markdown
> support academic citation in several formats and I have already long
> docs wrote on that format integrated in my workflow from Zotero and even
> there is a growing community working on Scholarly Markdown[1][2] so I
> would like to stick with it as much as I can for my own writing.
> That being said. I would like also a better integration between
> Smalltalk outliners and all the academic publication work flow,
> including working better with pandoc as a external library.
>
> [1] https://github.com/scholmd/scholmd/wiki
> [2] http://blog.martinfenner.org/2013/06/29/metadata-in-scholarly-markdown/
> [3]
> http://programminghistorian.org/lessons/sustainable-authorship-in-plain-tex…
>
>
> Thanks again, this conversation with people in the community is very
> valuable to me,
>
> Offray
>
>
Dear All,
This week end has been intense for Roassal (yeah, I got a flu, so I stayed home :-)
Two major improvements of Roassal: Pie builder and Builder composition have been added.
I will send a post about the pie builder later on. In this email I want to discuss the composition. Here is an example of builder composition:
The code is available from RTComposerExample>>exampleClassAnalysis
The cool thing, is that highlights are propagated across different builders. This means that you can globally highlight some elements.
The class RTComposer is actually quite simple.
Here is a short and simple example, in which code dedicated to the composition is indicated in bold:
-=-=—=-=-=—=-=-=—=-=-=—=-=-=—=
classes := Collection withAllSubclasses.
c := RTComposer new.
b1 := RTMondrianViewBuilder new.
b1 view: c view.
b1 nodes: classes.
b1 gridLayout.
b1 build.
c propagateHighlight.
c group: #hierarchy.
b2 := RTCharterBuilder new.
b2 view: c view.
b2 extent: 200 @ 200.
b2 points: classes.
b2 allY: #numberOfMethods.
b2 stackX.
b2 curve.
b2 axisX.
b2 axisYWithNumberOfTicks: 4.
c propagateHighlight.
c group: #curve.
c move: #hierarchy above: #curve.
c open
-=-=—=-=-=—=-=-=—=-=-=—=-=-=—=
This is still early work. Many more things have to be improved. For example, the layout of builder is quite simple. Maybe we will need something more complex. The propagation of events may also be improved.
Feedbacks are welcome. This is a crucial point of Roassal, and it has to be done right.
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi,
The next stop in our little tour around code actions was the compilation
notifications. Again, we used a popper interface to show the error without
affecting the underlying text editor:
[image: Inline image 2]
You can find more details here:
http://www.humane-assessment.com/blog/rethinking-compilation-notifications-…
Please let us know what you think.
Cheers,
Doru
--
www.tudorgirba.com
"Every thing has its own flow"
Hi!
The favorite programming environments of biologists, mathematicians and physicians, are R, matlab, maple, Octave. All of them allow for saving and loading the content of a workspace. Would it be possible to have this in a playground? As you can imagine, I am not encouraging this practice at all. But it may help attracting them to Pharo.
Is this feasible? I can work on this if you guys are okay.
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi!
We are happy to announce the website http://agilevisualization.com
The website will federate our documentation effort for Roassal.
A chapter on creating builders in Roassal is now online.
Feedback is welcome!
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi!
We are actively working on S2py, the nice successor of Spy1. S2py is a profiler framework: it allows one to easily build dynamic analysis.
Hapao, shipped with S2py, is a test coverage tool. Here is how to use it:
First, you need free type font: http://bit.ly/installingFreeTypeFont
Then, you need Roassal2 and S2py
-=-=-=-=-=-=-=-=-=-=
Gofer new smalltalkhubUser: 'ObjectProfile'
project: 'Roassal2';
package: 'ConfigurationOfRoassal2';
load.
(Smalltalk at: #ConfigurationOfRoassal2) loadBleedingEdge.
Gofer new smalltalkhubUser: 'ObjectProfile'
project: 'S2py';
package: 'S2py';
load.
-=-=-=-=-=-=-=-=-=-=
Here is a screenshot of the coverage of Nautilus:
Run "Hapao @ Class" and "Hapao @ Class …” from the World menu.
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi,
In the course of revamping the Pharo environment, we stumbled across the
print it action and we (Andrei and I) decided to rethink it.
[image: Inline image 1]
You can find more details here:
http://www.humane-assessment.com/blog/rethinking-print-it-in-pharo
Let us know what you think.
Cheers,
Doru
--
www.tudorgirba.com
"Every thing has its own flow"
Hi!
If I put the mouse above the play icon, top right of a window. The keybinding (cmd-o) may be indicated no?
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi!
Just to share the progress of the new charting library we are working on.
Accessible from the Roassal example World menu entry
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Dear All,
The chapter “QuickStart” is now online on http://agilevisualization.com
This chapter comes with some examples about using Roassal.
It would really help us if some could read it and give us feedback.
Feel free to send us feedback on hello(a)agilevisualization.com
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Yes it is. But I will not do
TRMorph allInstances do: #delete
In command line every day…
Vincent
De : Pharo-dev [mailto:pharo-dev-bounces@lists.pharo.org] De la part de Usman Bhatti
Envoyé : jeudi 31 juillet 2014 10:59
À : Pharo Development List
Cc : Moose-related development
Objet : Re: [Pharo-dev] Pharo image corruption and fatal VM error with Roassal
This may be related to this known issue reported a few days back.
https://code.google.com/p/moose-technology/issues/detail?id=1084
And there is a possible solution to recover your image.
usman
On Thu, Jul 31, 2014 at 10:50 AM, Blondeau Vincent <vincent.blondeau(a)worldline.com<mailto:vincent.blondeau@worldline.com>> wrote:
Hi,
Yesterday, I was using GraphET (a part of Roassal) to do some charts and, today, when I wanted to reopen the image.
And I got that :
[cid:image001.png@01CFACAF.C4370C70]
It is *very* unpleasant…
To reproduce the bug:
1 - You can do either:
| builder |
builder := GET2Line data: (0 to: 100) .
builder
y: [ :x | x*x ].
builder open.
Or
WorldMenu -> Roassal examples -> choose an item -> click on a graph . A TRMorph should be opened.
2 - don’t close the graph and save the pharo image.
3 – Close the pharo image
4 - Reopen it
I am under W7 x64 with the latest moose image and the VM available on the pharo.org<http://pharo.org> website (http://files.pharo.org/platform/Pharo3.0-win.zip) from the 10 july.
You will find the crash dump attached.
Thankfully, I managed to open the image with a latest VM (http://www.mirandabanda.org/files/Cog/VM/VM.r3056/cogwin-14.29.3056.zip).
Thanks a lot Eliot ! :)
And I got this:
[cid:image002.png@01CFACAF.C4370C70]
Thanks in advance
Cheers,
Vincent BLONDEAU
________________________________
Ce message et les pièces jointes sont confidentiels et réservés à l'usage exclusif de ses destinataires. Il peut également être protégé par le secret professionnel. Si vous recevez ce message par erreur, merci d'en avertir immédiatement l'expéditeur et de le détruire. L'intégrité du message ne pouvant être assurée sur Internet, la responsabilité de Worldline ne pourra être recherchée quant au contenu de ce message. Bien que les meilleurs efforts soient faits pour maintenir cette transmission exempte de tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa responsabilité ne saurait être recherchée pour tout dommage résultant d'un virus transmis.
This e-mail and the documents attached are confidential and intended solely for the addressee; it may also be privileged. If you receive this e-mail in error, please notify the sender immediately and destroy it. As its integrity cannot be secured on the Internet, the Worldline liability cannot be triggered for the message content. Although the sender endeavours to maintain a computer virus-free network, the sender does not warrant that this transmission is virus-free and will not be liable for any damages resulting from any virus transmitted.
________________________________
Ce message et les pièces jointes sont confidentiels et réservés à l'usage exclusif de ses destinataires. Il peut également être protégé par le secret professionnel. Si vous recevez ce message par erreur, merci d'en avertir immédiatement l'expéditeur et de le détruire. L'intégrité du message ne pouvant être assurée sur Internet, la responsabilité de Worldline ne pourra être recherchée quant au contenu de ce message. Bien que les meilleurs efforts soient faits pour maintenir cette transmission exempte de tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa responsabilité ne saurait être recherchée pour tout dommage résultant d'un virus transmis.
This e-mail and the documents attached are confidential and intended solely for the addressee; it may also be privileged. If you receive this e-mail in error, please notify the sender immediately and destroy it. As its integrity cannot be secured on the Internet, the Worldline liability cannot be triggered for the message content. Although the sender endeavours to maintain a computer virus-free network, the sender does not warrant that this transmission is virus-free and will not be liable for any damages resulting from any virus transmitted.
Hi all,
I am please to present you Telescope.
Telescope provides a system to express highly interactive software
visualizations and a rich API to express interactive, dynamic, and
customized visualizations built on top of Roassal.
You can find more information and tutorials here.
Telescope is almost finish (missing some tests, little features...) and now
it needs your feedback.
To install Telescope
Gofer new
smalltalkhubUser: 'LeoPerard' project: 'Telescope';
package: 'ConfigurationOfTelescope';
load.
(Smalltalk at: #ConfigurationOfTelescope) load
A small example to get a tree explorer
| visualization |
visualization := TLTreeExplorer new
root: Collection;
property: #subclasses;
yourself.
visualization nodeBuilder shapeBuilder: TLEllipseShapeBuilder new.
visualization nodeBuilder nodeLabel: #name position: #inside.
visualization nodeBuilder addInteraction: TLNodeBasicInteraction popup.
visualization nodeBuilder addInteraction: TLNodeBasicInteraction draggable.
visualization open
In this visualization, click on the blue circle to expand the node and the
red to collapse it.
In the class TLDemos you can find others examples to understand how it
works.
--
Cheers,
Leo Perard
University of Lille 1
Hi,
Yesterday, I was using GraphET (a part of Roassal) to do some charts and, today, when I wanted to reopen the image.
And I got that :
[cid:image001.png@01CFACAA.E0CB2060]
It is *very* unpleasant...
To reproduce the bug:
1 - You can do either:
| builder |
builder := GET2Line data: (0 to: 100) .
builder
y: [ :x | x*x ].
builder open.
Or
WorldMenu -> Roassal examples -> choose an item -> click on a graph . A TRMorph should be opened.
2 - don't close the graph and save the pharo image.
3 - Close the pharo image
4 - Reopen it
I am under W7 x64 with the latest moose image and the VM available on the pharo.org website (http://files.pharo.org/platform/Pharo3.0-win.zip) from the 10 july.
You will find the crash dump attached.
Thankfully, I managed to open the image with a latest VM (http://www.mirandabanda.org/files/Cog/VM/VM.r3056/cogwin-14.29.3056.zip).
Thanks a lot Eliot ! :)
And I got this:
[cid:image002.png@01CFACAD.350D7DB0]
Thanks in advance
Cheers,
Vincent BLONDEAU
________________________________
Ce message et les pi?ces jointes sont confidentiels et r?serv?s ? l'usage exclusif de ses destinataires. Il peut ?galement ?tre prot?g? par le secret professionnel. Si vous recevez ce message par erreur, merci d'en avertir imm?diatement l'exp?diteur et de le d?truire. L'int?grit? du message ne pouvant ?tre assur?e sur Internet, la responsabilit? de Worldline ne pourra ?tre recherch?e quant au contenu de ce message. Bien que les meilleurs efforts soient faits pour maintenir cette transmission exempte de tout virus, l'exp?diteur ne donne aucune garantie ? cet ?gard et sa responsabilit? ne saurait ?tre recherch?e pour tout dommage r?sultant d'un virus transmis.
This e-mail and the documents attached are confidential and intended solely for the addressee; it may also be privileged. If you receive this e-mail in error, please notify the sender immediately and destroy it. As its integrity cannot be secured on the Internet, the Worldline liability cannot be triggered for the message content. Although the sender endeavours to maintain a computer virus-free network, the sender does not warrant that this transmission is virus-free and will not be liable for any damages resulting from any virus transmitted.
Hi!
The World menu contains the entry Workspace. Clicking on it open a playground.
Maybe we could unify this and pick just one name?
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi Peter!
I’ve just added the orthogonal vertical and horizontal lines in Roassal2. Here are some screenshots.
These last script has been made with:
-=-=-=-=-=-=-=-=-=-=-=-=
| v |
v := RTView new.
v addAll: ((RTEllipse new size: 20; color: (Color red alpha: 0.3)) elementsOn: (1 to: 20)).
shape := RTMultiLine new.
shape orthoVertical.
shape color: (Color blue alpha: 0.3).
RTEdge
buildEdgesFromObjects: (1 to: 20) from: [ :n | n // 3 ] to: #yourself using: shape inView: v.
v elements @ RTDraggable @ RTPopup.
RTTreeLayout on: v elements.
v open
-=-=-=-=-=-=-=-=-=-=-=-=
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On Jul 26, 2014, at 3:57 PM, Peter Uhnák <i.uhnak(a)gmail.com> wrote:
> Hi,
>
> is there any support for orthogonal lines in Roassal2? I've seen something similar (ROOrthoVerticalLineShape), however nothing of that sort in Roassal2. I would imagine it to behave similarly to RTBezierLine - having controllingElements to specify the corners. (While ROOrtholines did it automatically I was looking for something more manual, so it can go in both directions - thus the controllingElements).
>
> Second thing I wasn't able to figure out is whether it is possible to create line from element to itself. All *AttachPoint classes aren't really able to cope with that. The best result I got was from Vertical/Horizontal AttachPoints (combined with BezierLine), however I would like to be able to specify which side it would start on and end on. Ideally not just middle of sides, but arbitrary part of the shape (I imagine that might be hard for non-rectangular shapes).
>
> Thanks,
> Peter
Hi,
A while ago, Stef reported that he could not select text anymore in the new
Rubric-based interfaces (inspector, playground).
I noticed this as well but only occasionally. Here is what I found.
TextMorph uses a kind of a simulation to support smart selection. As a
result, you basically can do:
- click once at the beginning of a parenthesis
- wait a couple of seconds
- click again
==> and the text is selected
Instead of this mechanism, Rubric relies on real double click events. So,
in order to select something you have to click-click quickly.
Now, the issue is that every once in a while, somehow the image seems to
stop receiving double clicks. I experienced this both on Windows and on
Mac. As a consequence, it appears that you cannot select anymore with
double click. To double check that this happens, you can try double
clicking on the window title and you will see that it does not maximize
anymore.
If you close the image and open it again, the problem gets fixed. This
makes it difficult to reproduce and debug.
Cheers,
Doru
--
www.tudorgirba.com
"Every thing has its own flow"