​​On Mon, Mar 20, 2017 at 5:23 PM, Edward K. Ream <[email protected]>
wrote:

> On Mon, Mar 20, 2017 at 12:23 PM, marquis patrick <[email protected]>
> wrote:
>
> leo
>> ​ ​
>> would be even more
>> ​[awesome] if it could support markdown rendering and syntax highlighting
>> support as well.
>> ​ ​
>> I think if combined with the features from
>> ​​
>> ​ ​
>> Quiver
>> ​ ​
>> https://github.com/HappenApps/Quiver
>>
>> ​Thanks for the link.  I'll look into it.
>

​This page <https://github.com/HappenApps/Quiver/wiki/Getting-Started> is
the overview.  Here are some preliminary reactions. These will be
pre-writing for one or more enhancement items, some of which may already
exist.

*Cells*: Cells correspond to Leo nodes, though perhaps the correspondence
isn't exactly.  I'm not sure whether quiver cells form a tree.

*Cell types*. Quiver follows the Jupyter design. Each cell has a *single*
type.

In Leo, one might say that @language directives within a node assign a type
until the next @language directive. For sure, we aren't going to remove
@language directives :-)

Another option would be to use uA's to indicate cell type. Once Leo
supports drawers <http://orgmode.org/manual/Drawers.html> (p.drawer,
implemented via uA), the *only* natural thing would be to have a cell-type
attribute in the drawer.

QQQ

   1. A "Text Cell" lets you edit rich-text in-place. It supports images
   and links too.
   2. A "Code Cell" packs the awesome ACE code editor, with syntax
   highlighting support for 120+ languages, 20+ themes, automatic indent and
   outdent, code completion, and much more.
   3. A "Markdown Cell" lets you write in Markdown with inline formatting
   and custom CSS options.
   4. A "LaTeX Cell” uses MathJax to typeset mathematical equations in your
   notes.
   5. A “Diagram Cell” lets you create sequence diagrams and flowcharts
   from text.

QQQ

The source code for ACE is available.  Afaik, Quiver isn't open source.
Correct me if I'm wrong.  However, these days stack overflow
<https://stackoverflow.com/> usually suffices to get any programming task
done.

Much of the Quiver docs discuss the syntax of markdown, latex and diagram
cells. This is a good design document for a corresponding Leo enhancement.

*Cell operations*: Insert cell (Leo: Ctrl-I), change cell type, merge cells.

All straightforward in Leo. Exactly what they do will depend on whether Leo
nodes can contain one cell, or multiple cells.

*Images, files and links*: Leo already has support for drag and drop,
url's, etc., so this section implies minimal changes to Leo.

*Preview and presentation*: *Live preview* (side-by-side view) is how Leo
works at present The body pane contains "raw" markup, the viewrendered pane
contains the rendered result. *Presentation mode* (start-presentation)
would work like Leo's demo.py plugin.

*Team collaboration*: Quiver has no special features here.

*Import and export*: Quiver uses json.  .json.leo files are on the list for
Leo 5.6.

"Quiver has built-in exporters for HTML, Markdown and PDF". Leo could use a
PDF importer. Leo has a rudimentary rST to PDF writer.
*Preferences*: No changes will be made to Leo.

That's it. All comments welcome here.  I'll be referencing the appropriate
enhancement items later today.

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.

Reply via email to