Hi,
On 09/07/2014 05:47 PM, Ben Coman wrote:
Offray Vladimir Luna Cárdenas wrote:
Hi Doru,
I really like the advancements in this direction. If fact what I have
trying to do, as a newbie, by making a Glamorous Toolkit powered
outliner/tree like interface for writing structured documents tries
something similar. I think that writing is mainly a non-linear
experience and the usual metaphors of document processors are not
powerful enough in expressing/exploring the structure of ideas in the
writing process (some thought about it ane examples about how
implement non-linear academic writing are in [1], in Spanish).
[1]
http://mutabit.com/offray/static/blog/output/posts/la-forma-en-que-escribo-para-el-doctorado.html
I would like to create Visual Data Narratives inside
Pharo/Moose/Roassal that use file system and web, and LateX as
"exportation formats", but where the writing/structuring experience
happen mainly inside Pharo. For that persistence/change of trees is
important, but as I have documented in other threads, I'm having
problems with it, using Glamorous Toolkit (specifically on updating
objects from text panes and from emergent windows for tree
names/properties).
With your post, I'm wondering who difficult is:
a. To put support to Pillar/Markdown inside text panes (something
similar to the "smalltalkCode" message for showing Smalltalk in text
panes but with "pillarCode" or "markdownCode" (or some dictionary with
the #syntax keyword and the language as a value).
b. To execute some parts of the code, for example the ones that are
inside "[[[" "]]]" while the cursor is there, so we could not only
preview imagages, but also execute code for visualizations or other
computations
I have been thinking previously, that it would be good to have named
code blocks "[[[ ]]]", some of which are visible which appear in the end
document, and some are invisible, just used to scaffold the live
document, e.g. to generate pictures. For example, visible code block
code A might show the text to "create a class definition and accessors"
and invisible code block B might say...
"close all windows.
run code block A.
open System Browser at origin: 100@100 extent 500@300.
System Browser select class and accessor just created.
Screen snapshot and save to filenameXXX.png."
cheers -ben
What I made on Leo Outliner is to have some custom directive (@ words
like "@ignore") as headers of a node, so I can ignore what is inside
that part of the tree. For the ouliner on Pharo I'm thinking in adding
tags to nodes so, some exportation procedures for the interactive book
can be put in invisible nodes (I mean invisible in the context of the
exportation of the book). That nodes can contain code for "Pharo
selfies" where the environment takes screenshots of itself, or metadata
for the exportation (template for document, database information and so
on).
I will be trying to make some progress on the saving/updating of trees
front, but If I can not, I will be on the nodes tags and interface, at
least to show some ideas and explain myself better with pictures :-).
Cheers,
Offray