Re: Generating PDFs

2011-09-14 Thread taa, Leo Newbie

Jeff, does this answer your question?

 Original Message 
Subject: Re: Generating PDFs
From: Terry Brown 
To: leo-editor@googlegroups.com
Date: Tuesday, September 13, 2011 8:04:46 PM


On Tue, 13 Sep 2011 17:50:22 -0700
"taa, Leo Newbie"  wrote:


What are the steps to generate PDFs in Leo if you don't use rst?


You can use Leo to write LaTeX, which can be converted to PDF, and I
guess there are text to PDF tools, but I don't think Leo makes PDFs in
any sense more direct than that.  rst is probably the easiest, unless
you're already familiar with LaTeX.

Cheers -Terry



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-editor@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Generating PDFs

2011-09-13 Thread taa, Leo Newbie

What are the steps to generate PDFs in Leo if you don't use rst?

 Original Message 
Subject: Re: Generating PDFs
From: Terry Brown 
To: leo-editor@googlegroups.com
Date: Tuesday, September 13, 2011 11:39:11 AM


On Tue, 13 Sep 2011 11:13:23 -0700 (PDT)
jeff aigner  wrote:


Could someone point me in the right direction on learning how to
generate PDF's with leo? I've looked around and read a lot and still
haven't quite figured out how to do it. Any help would be greatly
appreciated.


I think most people use reStructuredText in some form
or another.

http://docutils.sourceforge.net/rst.html

Leo is an excellent reStructuredText editor.  There's a
rst2pdf program as part of the reStructuredText distribution, or if you
want more control you can do rst2latex and the pdflatex to make a pdf,
but in all these cases the learning curve is the rst / latex tools, and
Leo just happens to be a great reStructuredText editor.  Leo has an
@auto-rst file type, and knows @language rest

Cheers -Terry



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-editor@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Creating outline file programmatically - any samples?

2011-07-01 Thread taa, Leo Newbie

OK, thanks for the specific example, I'll see what I can come up with.

 Original Message 
Subject: Re: Creating outline file programmatically - any samples?
From: Terry Brown 
To: leo-editor@googlegroups.com
Date: Friday, July 01, 2011 7:50:12 AM


On Thu, 30 Jun 2011 22:04:33 -0700
"taa, Leo Newbie"  wrote:


  >  I would think either XML or JSON, written to a file Leo can be told to
  >  read

All right, I'll try XML. What I need is an example showing cloned nodes,
and the steps to tell Leo to read it. Can you help?


Well, cloned nodes would be represented in XML by reference to an ID of
another node.

   
   
  title
  text
   
   
  title
  text
  
 title
 text
  
   
   
  title
  text
  
title
text
  
  
   


Would represent something like

1
2'
   3
4
   5
   2'
 3

where the node 2 subtree is cloned, occurring after node one and again
after node 5 in node 4.

If you can come up with an XML format along those lines that carries
the content you need it to carry, we can look at having Leo read it
into a tree.

Cheers -Terry



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-editor@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Creating outline file programmatically - any samples?

2011-06-30 Thread taa, Leo Newbie

> I would think either XML or JSON, written to a file Leo can be told to
> read

All right, I'll try XML. What I need is an example showing cloned nodes, 
and the steps to tell Leo to read it. Can you help?


 Original Message 
Subject: Re: Creating outline file programmatically - any samples?
From: Terry Brown 
To: leo-editor@googlegroups.com
Date: Sunday, June 26, 2011 7:40:12 AM


On Sat, 25 Jun 2011 22:03:33 -0700
"taa, Leo Newbie"  wrote:


Link to first post on this thread started by Satheesh Babu Vattekkat,
since I'm replying several months later: http://tinyurl.com/6zjjkfw

Excerpt of what Satheesh wrote so you don't have to re-read the entire
thread:

  >  One really good use I can think of is to automate generating outline
  >  files from different data sources.
...
  >  take a minimal file, load it into Leo, then run through my exported
  >  data and attach instances of leoNodes to the file and then save it.
  >  I will also need to attach cloned nodes at various points in the
  >  outline.

I would like to find someone who would work with me to write something
new for Leo to do the above. Let's call it LeoBridge II for the sake of
discussion. Its purpose is to get chunks of textual "stuff" into Leo, in
a simple way. It would have these important criteria:

1) Support for clones.

2) Support data streams passed to Leo using other programming languages
(i.e., non-Python) and other methods external to Leo.

3) Support adding to an existing Leo outline.


Without reading your whole post, it seems like you just need to have
your other non-python software write a data stream Leo can read.  I
would think either XML or JSON, written to a file Leo can be told to
read, unless you need something more interactive in which case you
might need to use sockets.

g2g, but I think that addresses most of what you're trying to do.

Cheers -Terry


I'm appealing to the Leo gurus out there to think outside the box --
outside the Python world -- to come up with a LeoBridge II-like
application that =supports clones=.

It's OK to tell me if the ideas below are beyond Leo's current level of
integration capability, i.e., it just can't be done. Or, maybe it's
possible, but just too involved and would take a team of Python+Leo
experts months or years to implement. I would (reluctantly) accept
either of these answers and just give up on the idea of using Leo for
the kind of project management that I think it would excel at.

I've put a lot of time and thought into the high-level design outlined
below; I just can't make it happen because I don't know enough about
Python and even less about Leo's internal workings. I'm not opposed to
learning, and I =have= made several attempts to figure this out on my
own in the last several months, but the learning curve for Python+Leo
combined is just too steep for me. I don't work in Python every day like
other (most?) Leo users. I don't have a need to use Leo for Python app
development so Leo's Python-specific features aren't a benefit to me. I
can't even make use of Leo's fantastic IDE capabilities because there's
no way to integrate it to the programming language I use every day. Even
if I did know Python better, I have read several times about the
delicacy of some of Leo's internals -- that tells me I'm really not the
person to go messing with Leo's code.

I've lost count of the number of times I've started a new project and
thought, "Gee, this would be incredibly easier to manage with Leo's
powerful clone feature, if I could just figure out an easy/simple way to
get everything I needed from different sources =into= Leo." Project
management is what is driving my request to find someone to work with me
on this.

Design discussion:

==
1) Support for clones.
==

1a) It would be my responsibility to come up with a unique identifier
that is =meaningful to me= (for my work flow, this would be a six to
eight digit alphanumeric reference#), and that would become a node's
headline. The body associated with this node would likely contain text.

1b) It would be my responsibility to keep track of when this uniquely
identifiable node is first sent to Leo, because the first time is when
the body would also be sent.

1c) It would be my responsibility to tell Leo -- in some way -- that
this node is to be used later for cloning. I can live with the fact that
I may need to add some special character or word to the unique
identifier's headline that indicates this, if no other method seems
practical (like the "node type" method described below), but if possible
I'd like Leo to strip this special character/word when it creates the
headline.

1d) As I continue to stream data to Leo, when I want a cloned node to be
made I would pass 

Re: Creating outline file programmatically - any samples?

2011-06-25 Thread taa, Leo Newbie
Link to first post on this thread started by Satheesh Babu Vattekkat, 
since I'm replying several months later: http://tinyurl.com/6zjjkfw


Excerpt of what Satheesh wrote so you don't have to re-read the entire 
thread:


> One really good use I can think of is to automate generating outline
> files from different data sources.
...
> take a minimal file, load it into Leo, then run through my exported
> data and attach instances of leoNodes to the file and then save it.
> I will also need to attach cloned nodes at various points in the
> outline.

I would like to find someone who would work with me to write something 
new for Leo to do the above. Let's call it LeoBridge II for the sake of 
discussion. Its purpose is to get chunks of textual "stuff" into Leo, in 
a simple way. It would have these important criteria:


1) Support for clones.

2) Support data streams passed to Leo using other programming languages 
(i.e., non-Python) and other methods external to Leo.


3) Support adding to an existing Leo outline.

I'm appealing to the Leo gurus out there to think outside the box -- 
outside the Python world -- to come up with a LeoBridge II-like 
application that =supports clones=.


It's OK to tell me if the ideas below are beyond Leo's current level of 
integration capability, i.e., it just can't be done. Or, maybe it's 
possible, but just too involved and would take a team of Python+Leo 
experts months or years to implement. I would (reluctantly) accept 
either of these answers and just give up on the idea of using Leo for 
the kind of project management that I think it would excel at.


I've put a lot of time and thought into the high-level design outlined 
below; I just can't make it happen because I don't know enough about 
Python and even less about Leo's internal workings. I'm not opposed to 
learning, and I =have= made several attempts to figure this out on my 
own in the last several months, but the learning curve for Python+Leo 
combined is just too steep for me. I don't work in Python every day like 
other (most?) Leo users. I don't have a need to use Leo for Python app 
development so Leo's Python-specific features aren't a benefit to me. I 
can't even make use of Leo's fantastic IDE capabilities because there's 
no way to integrate it to the programming language I use every day. Even 
if I did know Python better, I have read several times about the 
delicacy of some of Leo's internals -- that tells me I'm really not the 
person to go messing with Leo's code.


I've lost count of the number of times I've started a new project and 
thought, "Gee, this would be incredibly easier to manage with Leo's 
powerful clone feature, if I could just figure out an easy/simple way to 
get everything I needed from different sources =into= Leo." Project 
management is what is driving my request to find someone to work with me 
on this.


Design discussion:

==
1) Support for clones.
==

1a) It would be my responsibility to come up with a unique identifier 
that is =meaningful to me= (for my work flow, this would be a six to 
eight digit alphanumeric reference#), and that would become a node's 
headline. The body associated with this node would likely contain text.


1b) It would be my responsibility to keep track of when this uniquely 
identifiable node is first sent to Leo, because the first time is when 
the body would also be sent.


1c) It would be my responsibility to tell Leo -- in some way -- that 
this node is to be used later for cloning. I can live with the fact that 
I may need to add some special character or word to the unique 
identifier's headline that indicates this, if no other method seems 
practical (like the "node type" method described below), but if possible 
I'd like Leo to strip this special character/word when it creates the 
headline.


1d) As I continue to stream data to Leo, when I want a cloned node to be 
made I would pass only the unique identifier and Leo would create a 
cloned node with the appropriate gnx.


1e) Leo needs a way to associate the gnx with the unique identifier. 
Possible ways I can think of:


- When Leo sees "'" or "@clone" (or whatever method ends up being used, 
I'll use "@clone" for the rest of this discussion), it creates/updates a 
special "@clone-list" node in the outline so Leo has a specific place to 
look, rather than having to search the entire outline each time looking 
for a match. At the start of the import/data streaming process, Leo 
would just need to search the entire outline only once to find the 
"@clone list", and could then limit searching to only this node. When I 
pass a new unique identifier in the data stream, Leo would create a new 
child node in "@clone-list".


- OR, at the start of the import/data streaming process, Leo builds a 
headline-and-gnx table in memory by reading through the entire outline, 
for all headlines. When @clone headlines are encountered in the data 
stream, it searches thi

Re: Visions of Leo 5.0

2011-06-19 Thread taa, Leo Newbie

>Being able to run your data through a script is not a selling point
>for people who have no idea what a script is, so maybe one click
>install isn't critical.

I respectfully disagree. One-click install IS critical for more 
widespread use of Leo.


I don't understand why a user's knowledge (or lack thereof) of the 
concept of scripts would have any bearing on whether there should be a 
one-click installer.


> 1.  The goal is to increase the number of Leo's users.

PLEASE, before too much time and energy is put into Leo 5.0, PLEASE 
define what kind of new users you want? Who exactly is the target 
audience? What do you want/expect their technical skills to be? What 
problems can Leo help with that these users would appreciate?


If you could make one of the goals for Leo 5.0 to be that it has less 
emphasis on its Python underpinnings and less emphasis on users needing 
to know something about Python to use it effectively, I think new users 
will get excited.


 Original Message 
Subject: Re: Visions of Leo 5.0
From: Terry Brown 
To: leo-editor@googlegroups.com
Date: Saturday, June 18, 2011 7:37:03 AM


On Sat, 18 Jun 2011 06:20:12 -0700 (PDT)
"Edward K. Ream"  wrote:



1.  The goal is to increase the number of Leo's users.

This is really the *only* goal.  Leo is already good enough for what I
do, so Leo 5.0 must focus on what others might want.


Not sure how this relates to points 2-5 :-)  I think one click install
would do more to increase the number of Leo users than anything else.
OTOH, much of the coolness of Leo is only relevant to at least somewhat
technical users.  Being able to run your data through a script is not a
selling point for people who have no idea what a script is, so maybe
one click install isn't critical.  It would certainly increase the
number of people who try Leo, anyway.


5. Patterns (and other techniques) can define views.


I think there's potential here but not sure if there's a single simple
way of making views - not that you're suggesting there should be, but
just pointing out that ways of generating them may be as varied as
their uses.  Which are not, of course, restricted to ways of looking at
source code ;-)

UNLs UNLs UNLs

don't get anywhere near as much credit as they deserve.  What does it
stand for (have to branch contrib branch to find out... :-):
Uniform Node Locators.  Personally I think they can replace clones and
eliminate all the complexity clones introduce, but I don't expect that
to happen :-)

I use leo/external/leosax.py to zip through a list of 20-30 .leo files
and generate a view of all the todo nodes found therein.  The script
builds the view so that there's a node for each file searched, and
below that a kind of sparse tree of all the todo nodes found in the
file, which maintains the hierarchy among todo nodes, but ignores all
others.  E.g. if one file contained:

A
B
C
   C1
D
   D1
   D2
   D3
   D4

where A, C1, D, D1, and D4 where todo nodes, the resulting view would
be

   node-for-file
  A
  C1
  D
 D1
 D4

with the priority of D adjusted to the max. of its own priority and the
priorities of its descendants.

Also, each node in the view is an @url node using an UNL to jump the
user back to the original node in whichever outline.

So:
   - don't forget UNLs
   - leosax can parse dozens of .leo files in seconds, the time is in
 building the view tree, not parsing the files.  It does not expand
 @file nodes (which I don't use)
   - there are lots of kinds of possible views, of source, of summaries
 of .leo files as above, of database records, etc.
   - don't forget UNLs

Cheers -Terry



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-editor@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Towards generalizing Leo as a data management tool

2011-04-12 Thread taa, Leo Newbie
I'm curious, and this would help me understand gnx's: This sounds like Leo
currently parses gnx's. For what purpose(s)? I thought Leo already worked
the way Ville is proposing, that Leo just "knew" a gnx would be unique,
without caring what it looked like in terms of structure (date/time stamp,
user id, etc.).
On Apr 12, 2011 9:10 AM, "Ville M. Vainio"  wrote:
> On Tue, Apr 12, 2011 at 5:45 PM, Edward K. Ream 
wrote:
>
>> That would utterly defeat the one and only purpose of gnx's, namely a
>> guaranteed unique, immutable identity for every Leo node.
>>
>> We can not possibly allow this: it would surely corrupt Leo data.
>
> It would only corrupt data if a plugin developer screws up by reusing old
gnx's.
>
> Leo itself would still assign the same kind of gnx's, what we want is
> to ensure leo doesn't crash if gnx format changes. Let's say a plugin
> wants to use 128 bit GUUID gnx - it should not crash leo, even if it
> can't be parsed with current gnx parsing rules.
>
> That is, IMO leo should have no business ever parsing the gnx anyway.
> It should generate the gnx, and then ignore how it was generated.
>
> --
> You received this message because you are subscribed to the Google Groups
"leo-editor" group.
> To post to this group, send email to leo-editor@googlegroups.com.
> To unsubscribe from this group, send email to
leo-editor+unsubscr...@googlegroups.com.
> For more options, visit this group at
http://groups.google.com/group/leo-editor?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-editor@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Creating outline file programmatically - any samples?

2010-12-20 Thread taa, Leo Newbie

Hi Edward,

> I suppose this would work, but it's not "safe" in the sense that it
> will use the headline text, rather than a unique gnx, to identify
> nodes that should be clones.

To satisfy my curiosity... does, or can, findTopLevelNode() return the 
gnx? And can the gnx be given to insertAfter() and insertAsNthChild()? 
And if so, would this be the solution to making it "safe"?


> create a python script that would import the information directly into
> a Leo outline. It that works it will be much simpler than the way you
> are proposing.

OK, this sounds fine as long as the Python code isn't too complicated 
for a newbie. :D The bulk of the information I want to import into Leo 
is in the proprietary format of the ProvideX (PVX) language (somewhat 
similar to VBasic), which is why I was using the intermediate file.


The information to be imported is stored natively in three forms:

a) Excel spreadsheet
b) tokenized PVX source code
c) a b-tree like PVX datafile

The first two cells of the Excel spreadsheet will become the cloned 
node's headline and body text, respectively. Other cells need to be 
looked at for selecting which rows to import.


Each of the above import sources will contain different headlines/body 
text, and would need to be merged separately (e.g., three different 
imports) into an existing .leo file.


I agree a Python script to import the above directly into Leo would be 
the most direct way, but I don't see how b) and c) could be done. I also 
don't know how a) would be handled, but I'm guessing someone has already 
done this (maybe Python can open the Excel spreadsheet using DDE???).


The first import method I considered was leoRemote: 
http://tinyurl.com/25r5pkj and in particular please read the last post 
in the thread at http://tinyurl.com/293r57z


From PVX, I can easily open a TCP port to a listening server on the 
same PC running PVX (and Leo) or on a different server box entirely. 
That's easy.


What's confusing to me about the leoRemote thread I refer to above is this:

>Leoremote is not using network sockets, just local sockets for inter-
>process communication.

I don't understand the difference between "network sockets" and "local 
sockets." Perhaps PVX just shields me from having to deal with the 
difference.


Does "local socket" mean communication with Leo at 127.0.0.1, port 1? 
And does "network socket" mean, say, a public IP port like 
209.191.122.70, port 1?


If I wrote a PVX program to communicate with leoRemote, what would the 
"conversation" look like? Something like ftp?


S=Server (leoRemote), C=Client (a PVX program)

C: [opens file handle at TCP address 127.0.0.1, port 1]

S: [sends a greeting banner? maybe the Leo version#?]

C: [somehow sends a command to Leo to open an existing file OR to create 
a new file, and tells Leo the file name]


S: [tells C file was opened successfully (for an existing file or new 
file), or that the file was not found (for an existing file)]


C: [if S sends an error back about the open, C deals with it, otherwise...]

A loop starts between C and S, ending when C closes the TCP connection:

C: [sends command to create new node or a new child node, with headline 
text and optional body text]


S: [responds to client with gnx if successful insertion, else error]

- OR -

C: [sends command to insert a new CLONE node or new child CLONE node, 
passing gnx and no body text]


S: [success or failure response]

In the case of using leoRemote, I think the Client has to be in charge 
of keeping track of the gnx to be used for clone nodes? Can do, but 
because there will be three separate import sessions, I'll also need a 
way to retrieve the gnx of a node based on headline text:


C: [sends command to retrieve gnx with headline text of node's gnx to get]

S: [sends gnx, or error]

Or is there a better way?

--Todd

 Original Message 
Subject: Re: Creating outline file programmatically - any samples?
From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Monday, December 20, 2010 7:32:16 AM


On Sat, Dec 18, 2010 at 4:37 AM, taa, Leo Newbie  wrote:

Do I know what I'm doing? No. Do I know Python? No. But I can study the code
to try to figure things out as best I can. Then holler for help on this
forum. :D


Always a good plan :-)

So you want '~' to denote a clone?  I suppose this would work, but
it's not "safe" in the sense that it will use the headline text,
rather than a unique gnx, to identify nodes that should be clones.

Before getting into details, I think it might be best to step back and
think of some alternatives.  Rather than create a new file format, and
complex code to parse same, my inclination would be to create a python
script that would import the information directly into a Leo outline.
It that works it will be much

Re: Creating outline file programmatically - any samples?

2010-12-18 Thread taa, Leo Newbie
Someday I hope to be able to use Leo to manage some fairly large and 
complex projects, specifically with the use of clones, and I would be 
looking for a way to import project data elements into Leo. I was 
envisioning using Leo's ability to import MORE format files, since it is 
such a simple format (and being a Leo newbie, I like simple!).


MORE uses + and - to trigger new headlines, and I was envisioning a new, 
special character to trigger the creation of a cloned node at the 
current import location. Suppose the special character is a tilde (~).


+ someheadline1
Body text for someheadline1 goes here.
+ someheadline2
Body text for someheadline2 goes here.
+ someheadline3
Body text for someheadline3 goes here.
+ project element1
Body text for project element1 goes here.
  -~ someheadline2
+ project element2
Body text for project element2 goes here.
  -~ someheadline1
  -~ someheadline2
+~ someheadline3

There could be no body text below a headline marked with "~" as the body 
would come from the cloned node.


What I think I'd have to do in leoImport.py is:

1. Change moreHeadlineLevel() to look for "~" in addition to "+" and "-"

2. Probably change moreHeadlineLevel() to return a new flag, maybe 
cloneFlag, when it found a "~".


3. Change convertMoreStringsToOutlineAfter() so that after 
moreHeadlineLevel(), if cloneFlag is true...


4. Call findTopLevelNode() with the text of the "~" headline, and if one 
is found...


... and this is as far as I think I can code on my own. What are the 
equivalents to insertAfter() and insertAsNthChild() when inserting as 
clones? Is there anything else I would need to do to implement the logic 
above?


Do I know what I'm doing? No. Do I know Python? No. But I can study the 
code to try to figure things out as best I can. Then holler for help on 
this forum. :D


 Original Message 
Subject: Re: Creating outline file programmatically - any samples?
From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Tuesday, December 14, 2010 7:33:04 AM


On Tue, Dec 14, 2010 at 7:21 AM, Satheesh Babu Vattekkat
  wrote:

One really good use I can
think of is to automate generating outline files from different data
sources.



ie., take a minimal file, load it into Leo, then run through my
exported data and attach instances of leoNodes to the file and then
save it. I will also need to attach cloned nodes at various points in
the outline.

Has anyone done this or any pointers on how to go about this?


Creating a new Leo outline will create a minimal .leo file when you
save the outline.

A script can do this with c2 = c.new()

If you don't want to see the new window, you can use the contents of
c.new to guide you. c.new calls::

   c,frame = g.app.newLeoCommanderAndFrame(
 fileName=yourFileName,gui=None)

If gui is None, g.app.gui is used as default.  We may want a null gui::

import leo.core.leoGui as leoGui
nullGui = leoGui.nullGui("nullGui")
c2,frame = g.app.newLeoCommanderAndFrame(
 fileName=None,gui=nullGui)
c2.frame.createFirstTreeNode()
for p in c2.all_positions():
 g.es(p.h)

This works.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Unmark-all command [was: Q: Outline icon has red line that won't go away]

2010-12-15 Thread taa, Leo Newbie

> What commands do is different from what scripts do.  Commands are
> supposed to handle dirty bits, though perhaps some do not.

I see. I will keep this distinction in mind so I can know what to expect.

 Original Message 
Subject: Re: Unmark-all command [was: Q: Outline icon has red line that 
won't go away]

From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Sunday, December 12, 2010 9:04:51 AM


On Sat, Dec 4, 2010 at 7:57 PM, taa, Leo Newbie  wrote:


When I toggle the mark (red) in a node, it's flagged as dirty, and the
overall file is flagged as changed. Whether the state changes from marked to
unmarked, it still gets flagged as dirty. This works as I would expect.

When I execute the unmark-all command on the entire outline, any nodes
changed from marked to unmarked are flagged as dirty and the overall file is
flagged as changed. This also works as I would expect.

When I execute the unmark-tree script, any nodes changed from marked to
unmarked are NOT flagged as dirty, and neither is the overall file flagged
as changed.

If "marking nodes as dirty happens automatically", then what is the reason
unmark-tree isn't "automatically" flagging the nodes as dirty, when
unmark-all DOES, and toggling a single node DOES?


What commands do is different from what scripts do.  Commands are
supposed to handle dirty bits, though perhaps some do not.

In addition, there are serious performance issues due to redrawing and
due to clones.  Thus, Leo's core takes care to compute dirty bits in
the most efficient way possible.

The general idea is that v.setDirty and v.clearDirty set only the
bits, but p.setDirty is quite expensive: it calls
p.setAllAncestorAtFileNodesDirty.  Thus, the unmark-all command (the
unmarkAll method)  initially calls p.v.setDirty, and then computes
list of dirty vnodes.

You could call this a minor bug: ancestor @file nodes never get marked dirty.

There is another complication: **undoing** an operation that sets a
mark is not the same as an operation that clears the mark.  The former
may clear the appropriate dirty bits, while the latter will always set
dirty bits.

In short, your script needs to take care to save and restore any
needed state of the dirty/marked bits.  If only a few nodes are
involved, it would be tolerable to call p.setDirty, but if many are
involved you must be more careful, perhaps even more careful than
Leo's own core code.

HTH.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Unmark-all command [was: Q: Outline icon has red line that won't go away]

2010-12-04 Thread taa, Leo Newbie
I do understand the difference between a marked (red) node and a dirty 
(black) node.


>Marking nodes as dirty happens automatically.

I guess I wasn't being clear.

When I toggle the mark (red) in a node, it's flagged as dirty, and the 
overall file is flagged as changed. Whether the state changes from 
marked to unmarked, it still gets flagged as dirty. This works as I 
would expect.


When I execute the unmark-all command on the entire outline, any nodes 
changed from marked to unmarked are flagged as dirty and the overall 
file is flagged as changed. This also works as I would expect.


When I execute the unmark-tree script, any nodes changed from marked to 
unmarked are NOT flagged as dirty, and neither is the overall file 
flagged as changed.


If "marking nodes as dirty happens automatically", then what is the 
reason unmark-tree isn't "automatically" flagging the nodes as dirty, 
when unmark-all DOES, and toggling a single node DOES?


 Original Message 
Subject: Re: Unmark-all command [was: Q: Outline icon has red line that 
won't go away]

From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Saturday, December 04, 2010 8:19:34 AM


On Wed, Dec 1, 2010 at 1:39 AM, taa, Leo Newbie  wrote:

Is this code supposed to automatically mark the nodes as dirty, and the
overall file as being changed?


No.  Marking a node is distinct from marking it as changed (dirty).
Marking nodes as dirty happens automatically.  You can see dirty nodes
by the black border around their icon box.

Marking a node shows a red vertical bar in the icon box.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: My mails are not arriving to this group

2010-12-01 Thread taa, Leo Newbie
They seem to be arriving 2-3 days later than the posting date. I got 
your "cool projects" one today, with a date/time stamp of: 11/27/2010 
10:01 AM.


 Original Message 
Subject: My mails are not arriving to this group
From: Offray Vladimir Luna Cárdenas 
To: leo-editor@googlegroups.com
Date: Saturday, November 27, 2010 12:25:50 PM


Hi,

I have just see that some of my mails are not arriving to this mailing
list. For example the one about "cool projects" and ReStructured Text
real time preview. Could some admin see if this is related with
something in the account I suscribed to this list (some messages arrive
fine, some don't). May be is my mail server and in that case I would
like to subscribe another account (but I need admin help here also,
because I'm of the minority who doesn't have/want a google account and
google groups is not much friendly for users like me)

Thanks,

Offray



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Unmark-all command [was: Q: Outline icon has red line that won't go away]

2010-11-30 Thread taa, Leo Newbie
Is this code supposed to automatically mark the nodes as dirty, and the 
overall file as being changed? If so, it doesn't seem to do so in 4.8 
rc1 build 3715. I must be doing something wrong or have a wrong setting?


 Original Message 
Subject: Re: Unmark-all command [was: Q: Outline icon has red line that 
won't go away]

From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Thursday, November 11, 2010 3:41:07 PM


On Thu, Nov 11, 2010 at 12:35 PM, taa, Leo Newbie  wrote:


Unmark-all appears to remove all marks in ALL outlines and not just
the currently selected one.


You are confused about what "the outline" means.

The docstring for the unmark-all command is:

'''Unmark all nodes in the entire outline.'''

I think this is as clear as it can possibly be.

How can I unmark only the select outline

(node) and all its children?


The proper terminology would be, umark the selected *node* and all its children.

I don't think there is a command that does exactly this, but the
following script will do the job:

for p in c.p.subtree():
p.clearMarked()
c.redraw()

I put it in a node called @button unmark-tree.

To make this undoable, use the following (tested) code:

u = c.undoer ; undoType = 'unmark-tree'
changed = False
u.beforeChangeGroup(c.p,undoType)
for p in c.p.subtree():
 if p.isMarked():
 bunch = u.beforeMark(p,undoType)
 p.clearMarked()
 u.afterMark(p,undoType,bunch)
 changed = True
if changed:
 u.afterChangeGroup(c.p,undoType)
 c.redraw()

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Comments on ZODB, leoBridge documentation

2010-11-28 Thread taa, Leo Newbie

Using ZODB with Leo — Leo v4.8 documentation
http://diigo.com/0dw79

Embedding Leo with the leoBridge module — Leo v4.8 documentation
http://diigo.com/0dw77

--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Revisions to Leo's Users Guide

2010-11-27 Thread taa, Leo Newbie

You're welcome, and thanks for the compliment. :D

 Original Message 
Subject: Re: Revisions to Leo's Users Guide
From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Saturday, November 27, 2010 6:50:27 PM


On Sat, Nov 27, 2010 at 8:42 PM, taa, Leo Newbie  wrote:

Comments: http://diigo.com/0dw6d

There sure has been an incredible amount of enhancements done.


:-) Yes, and more are coming.

It's great to have such good proofreading help.  I'll get to them
tomorrow, I think.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Revisions to Leo's Users Guide

2010-11-27 Thread taa, Leo Newbie

Comments on Appendices chapter: http://diigo.com/0dw6u

 Original Message 
Subject: Revisions to Leo's Users Guide
From: Edward K. Ream 
To: leo-editor 
Date: Monday, October 25, 2010 9:56:40 PM


The reorganization of Leo's users guide is a big success.  Thanks for
Viktor for the suggestion.

It's starts with the reorganized table of contents:
http://webpages.charter.net/edreamleo/leo_toc.html  To do this, I had
to hack the page created by Sphinx.  It's worth it.

Big improvements to the look and feel:

- I switched to the latest version of Sphinx, which ended lots of
confusion :-)
- The sidebar is now collapsible.
- The sidebar no longer shows scrunched contents.  Instead, each
chapter has a table of contents following introductory remarks.

To my eyes, the docs look *much* better than before.

I also put a lot of work into revising the docs, especially these
chapters:

- History of Leo.
- Theory of Operation.
- What's New.
- Appendices.

I made many other smaller improvements.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Revisions to Leo's Users Guide

2010-11-27 Thread taa, Leo Newbie

Comments: http://diigo.com/0dw6d

There sure has been an incredible amount of enhancements done.

 Original Message 
Subject: Revisions to Leo's Users Guide
From: Edward K. Ream 
To: leo-editor 
Date: Monday, October 25, 2010 9:56:40 PM


The reorganization of Leo's users guide is a big success.  Thanks for
Viktor for the suggestion.

It's starts with the reorganized table of contents:
http://webpages.charter.net/edreamleo/leo_toc.html  To do this, I had
to hack the page created by Sphinx.  It's worth it.

Big improvements to the look and feel:

- I switched to the latest version of Sphinx, which ended lots of
confusion :-)
- The sidebar is now collapsible.
- The sidebar no longer shows scrunched contents.  Instead, each
chapter has a table of contents following introductory remarks.

To my eyes, the docs look *much* better than before.

I also put a lot of work into revising the docs, especially these
chapters:

- History of Leo.
- Theory of Operation.
- What's New.
- Appendices.

I made many other smaller improvements.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Revisions to Leo's Users Guide

2010-11-27 Thread taa, Leo Newbie

Comments on Theory of Operation: http://diigo.com/0dw43

 Original Message 
Subject: Revisions to Leo's Users Guide
From: Edward K. Ream 
To: leo-editor 
Date: Monday, October 25, 2010 9:56:40 PM


The reorganization of Leo's users guide is a big success.  Thanks for
Viktor for the suggestion.

It's starts with the reorganized table of contents:
http://webpages.charter.net/edreamleo/leo_toc.html  To do this, I had
to hack the page created by Sphinx.  It's worth it.

Big improvements to the look and feel:

- I switched to the latest version of Sphinx, which ended lots of
confusion :-)
- The sidebar is now collapsible.
- The sidebar no longer shows scrunched contents.  Instead, each
chapter has a table of contents following introductory remarks.

To my eyes, the docs look *much* better than before.

I also put a lot of work into revising the docs, especially these
chapters:

- History of Leo.
- Theory of Operation.
- What's New.
- Appendices.

I made many other smaller improvements.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: The step-by-step tutorial is here

2010-11-26 Thread taa, Leo Newbie

Matt> I keep pressing Ctrl-Y, which is redo in MS-Office but is paste in
Matt> Leo, which screws up my undo/redo stack. Eventually I'll get
Matt> myself retrained. I just think it would be good to alert new
Matt> users ahead of time.

EKR> You can change any key binding if you like.

I think you misunderstood: Matt was suggesting the slideshow pages alert 
new users about Ctrl-Y and how it differs from the ubiquitous MS-Office. 
I've made the same Ctrl-Y mistake myself, so Matt's request seems 
reasonable and helpful. The step-by-step slideshow, which is what this 
thread is about, does not explain how to change key bindings (and I 
don't think it should in such a "first tutorial" for newbies).


If on the other hand, you simply didn't want to implement the 
suggestion, could you tell us why not?


 Original Message 
Subject: Re: The step-by-step tutorial is here
From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Thursday, October 21, 2010 7:53:03 AM


On Wed, Oct 20, 2010 at 5:49 PM, Graham Chiu  wrote:


Any reason why shift-alt-A is select all instead of control-A?


There are not enough keys to go around :-)


   Can that be added?


You can change the keys any way you like.


Step:13 - Please also include keyboard command for Redo.


Will do.


I keep pressing Ctrl-Y, which is redo in MS-Office but is paste in
Leo, which screws up my undo/redo stack. Eventually I'll get myself
retrained. I just think it would be good to alert new users ahead of
time.


You can change any key binding if you like.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Revisions to Leo's Users Guide

2010-11-26 Thread taa, Leo Newbie

Comments on the History page: http://diigo.com/0dvvx

I enjoyed reading this revised version.

 Original Message 
Subject: Revisions to Leo's Users Guide
From: Edward K. Ream 
To: leo-editor 
Date: Monday, October 25, 2010 9:56:40 PM


The reorganization of Leo's users guide is a big success.  Thanks for
Viktor for the suggestion.

It's starts with the reorganized table of contents:
http://webpages.charter.net/edreamleo/leo_toc.html  To do this, I had
to hack the page created by Sphinx.  It's worth it.

Big improvements to the look and feel:

- I switched to the latest version of Sphinx, which ended lots of
confusion :-)
- The sidebar is now collapsible.
- The sidebar no longer shows scrunched contents.  Instead, each
chapter has a table of contents following introductory remarks.

To my eyes, the docs look *much* better than before.

I also put a lot of work into revising the docs, especially these
chapters:

- History of Leo.
- Theory of Operation.
- What's New.
- Appendices.

I made many other smaller improvements.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: The installation slideshow is here

2010-11-26 Thread taa, Leo Newbie

A few comments:

http://diigo.com/0dvua
http://diigo.com/0dvub
http://diigo.com/0dvud

Also, page headings say v4.7.

I like how these install steps are organized.

 Original Message 
Subject: The installation slideshow is here
From: Edward K. Ream 
To: leo-editor 
Date: Tuesday, October 19, 2010 4:33:05 AM


The slides page: http://webpages.charter.net/edreamleo/slides.html
now links to the installation slideshow:
http://webpages.charter.net/edreamleo/slides/installation/slide-001.html

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: The step-by-step tutorial is here

2010-11-26 Thread taa, Leo Newbie
I just discovered that the Diigo annotation service strips . Just revised these:

http://diigo.com/0dvua
http://diigo.com/0dvsz
http://diigo.com/0dvsy

On Nov 26, 5:09 pm, "taa, Leo Newbie"  wrote:
> As someone who tends to learn things a bit faster with visual aids, I
> really like the slide shows.
>
> A few comments:
>
> http://diigo.com/0dvsxhttp://diigo.com/0dvsyhttp://diigo.com/0dvszhttp://diigo.com/0dvt0http://diigo.com/0dvt1http://diigo.com/0dvt2http://diigo.com/0dvt3
>
> Also, just noticed the pages says "v4.7-final" in the titles and not "v4.8".
>
>  Original Message 
> Subject: The step-by-step tutorial is here
> From: Edward K. Ream 
> To: leo-editor 
> Date: Monday, October 18, 2010 7:27:17 PM
>
> > Probably the best introductory tutorial ever is on Leo's web site at:
> >http://webpages.charter.net/edreamleo/slides/leo-basics-step-by-step/...
>
> > I did the "slide shoot" this morning and the post production this
> > evening.  It is the first slideshow to use Wink, the screenshots
> > plugin and the meld script.
>
> > I'll be away from work tomorrow, but will write up the workflow in
> > detail asap.  The main ideas:
>
> > 1. It's fairly easy to use Wink to generate screenshots, *provided*
> > one has a good script.
>
> > 2. The meld script associates (melds) the screenshots with the @slide
> > nodes.  The meld script will complain (and stop) if the number of
> > screenshots is not as expected.
>
> > 3. After meld succeeds, one will typically use the make-slide-show
> > command to generate all slides.  Thereafter, one can edit individual
> > slides by deleting the "@url built slides" nodes and then running the
> > make-slide command.
>
> > 4. There are two "cleanup" scripts I wrote this evening that delete ..
> > image:: directives and @url final output nodes.  These allow one to
> > run the meld script after previously running the make-slide-show
> > commands.
>
> > In short, it will probably be harder to explain the workflow than to
> > use it :-)  After fixing a few bugs the workflow was a lot of fun.
>
> > Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: The step-by-step tutorial is here

2010-11-26 Thread taa, Leo Newbie
As someone who tends to learn things a bit faster with visual aids, I 
really like the slide shows.


A few comments:

http://diigo.com/0dvsx
http://diigo.com/0dvsy
http://diigo.com/0dvsz
http://diigo.com/0dvt0
http://diigo.com/0dvt1
http://diigo.com/0dvt2
http://diigo.com/0dvt3

Also, just noticed the pages says "v4.7-final" in the titles and not "v4.8".

 Original Message 
Subject: The step-by-step tutorial is here
From: Edward K. Ream 
To: leo-editor 
Date: Monday, October 18, 2010 7:27:17 PM


Probably the best introductory tutorial ever is on Leo's web site at:
http://webpages.charter.net/edreamleo/slides/leo-basics-step-by-step/slide-001.html

I did the "slide shoot" this morning and the post production this
evening.  It is the first slideshow to use Wink, the screenshots
plugin and the meld script.

I'll be away from work tomorrow, but will write up the workflow in
detail asap.  The main ideas:

1. It's fairly easy to use Wink to generate screenshots, *provided*
one has a good script.

2. The meld script associates (melds) the screenshots with the @slide
nodes.  The meld script will complain (and stop) if the number of
screenshots is not as expected.

3. After meld succeeds, one will typically use the make-slide-show
command to generate all slides.  Thereafter, one can edit individual
slides by deleting the "@url built slides" nodes and then running the
make-slide command.

4. There are two "cleanup" scripts I wrote this evening that delete ..
image:: directives and @url final output nodes.  These allow one to
run the meld script after previously running the make-slide-show
commands.

In short, it will probably be harder to explain the workflow than to
use it :-)  After fixing a few bugs the workflow was a lot of fun.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Draft of the External Files slide show

2010-11-26 Thread taa, Leo Newbie

A few annotated comments:

http://diigo.com/0dvse
http://diigo.com/0dvsf
http://diigo.com/0dvsg
http://diigo.com/0dvsh
http://diigo.com/0dvsi
http://diigo.com/0dvsj

 Original Message 
Subject: Re: Draft of the External Files slide show
From: Edward K. Ream 
To: leo-editor 
Date: Thursday, November 18, 2010 6:15:13 AM




On Nov 18, 7:11 am, "Edward K. Ream"  wrote:

Here is a first draft of a slideshow explaining @file, @auto and
@edit.


The strategic question is how much detail to include in the discussion
of references.  Surely, the details must be discussed somewhere,
either in the slideshow or in the tutorial, or both.  The basic
problem is that expansion is so much easier to use than to describe
fully.  Hmm.  Maybe that would be the best strategy: describe by
example...

EKR



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: The contrib branch is a big success

2010-11-22 Thread taa, Leo Newbie

> Done:  https://code.launchpad.net/~leo-editor-team/leo-editor/contrib

Will (or has) this link be placed anywhere on a public web site?

 Original Message 
Subject: The contrib branch is a big success
From: Edward K. Ream 
To: leo-editor 
Date: Saturday, November 06, 2010 7:08:56 PM


Imo, we will look back on today as the day that sharing of Leo ideas
took off.

Once we all pull the contrib branch, adding new content is completely
straightforward:

1. Add files or folders.
2. Do bzr add, commit, push.

Nothing could be simpler.

I don't expect that the contributions will change much once they are
submitted, although there would certainly not be any objection to
updating them.

The point is that the contrib branch will enable us to share
information with a minimum of fuss, and a minimum of bandwidth.  There
is no need to dump everything into Leo distributions, and yet all this
good stuff is readily available to all.

I think it would be good to announce contributions here, and also
describe them briefly in the checkin logs.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: On the subject of Nav...

2010-11-22 Thread taa, Leo Newbie

Thanks for doing this, Terry. I use the Nav tab a lot.

 Original Message 
Subject: Re: On the subject of Nav...
From: Terry Brown 
To: leo-editor@googlegroups.com
Date: Saturday, November 20, 2010 5:20:49 PM


On Sat, 20 Nov 2010 23:01:46 +0200
"Ville M. Vainio"  wrote:


On Sat, Nov 20, 2010 at 9:07 PM, Rob Sheppard  wrote:


Ctrl-Shift-F is exactly the sort of thing I was looking for.  But,
sometimes I'm poking around an outline with the mouse and it's natural
to click the Nav tab if I want to search for something...


File a feature request on launchpad, perhaps me/someone else will
return to it later.


Done on the trunk:

--- leo/plugins/quicksearch.py  2010-11-13 19:00:20 +
+++ leo/plugins/quicksearch.py  2010-11-21 01:18:13 +
@@ -108,7 +108,7 @@

  def focus_quicksearch_entry(event):
  c.frame.log.selectTab('Nav')
-wdg.ui.lineEdit.setText('')
+wdg.ui.lineEdit.selectAll()
  wdg.ui.lineEdit.setFocus()

  def focus_to_nav(event):
@@ -136,6 +136,18 @@

  c.frame.nav = wdg

+# make activating this tab activate the input box
+def activate_input(idx, c=c):
+wdg = c.frame.nav
+tab_widget = wdg.parent().parent()
+if tab_widget.currentWidget() == wdg:
+wdg.ui.lineEdit.selectAll()
+wdg.ui.lineEdit.setFocus()
+
+tab_widget = wdg.parent().parent()
+tab_widget.connect(tab_widget,
+QtCore.SIGNAL("currentChanged(int)"), activate_input)
+
  class LeoQuickSearchWidget(QtGui.QWidget):
  """ 'Find in files'/grep style search widget """
  #...@+others



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Unmark-all command [was: Q: Outline icon has red line that won't go away]

2010-11-15 Thread taa, Leo Newbie
OK, what program (or Leo tool/function?) did you use to do the search, 
and where exactly did you point the search to (what folder or whatever)?


 Original Message 
Subject: Re: Unmark-all command [was: Q: Outline icon has red line that 
won't go away]

From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Sunday, November 14, 2010 10:43:50 AM


On Sat, Nov 13, 2010 at 2:07 PM, TAA, Leo Newbie  wrote:


I would like to know the specific steps you went through to find the
"docstring" (whatever that is) for the unmark-all command in order for you
to copy and paste it into this thread.


I searched for "def unmarkAll" because I remembered the convention for
functions corresponding to commands.  Had I not remembered, I could
have searched for the string "unmark-all" which would have taken me to
a table (one of many) that associate command names with functions.

After finding the function, the docstring is a Python docstring.  For
information about docstrings, see the Python tutorial:

http://docs.python.org/tutorial/controlflow.html#defining-functions

For more information about docstrings, see

http://www.python.org/dev/peps/pep-0257/
and
http://en.wikipedia.org/wiki/Docstring

In general, I suggest getting into the habit of googling for any terms
you don't understand.  It's a great way to learn :-)

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: New plugins chapter is ready: please review

2010-11-15 Thread taa, Leo Newbie

You're very welcome.

 Original Message 
Subject: Re: New plugins chapter is ready: please review
From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Monday, November 15, 2010 6:22:16 AM


On Mon, Nov 15, 2010 at 1:27 AM, Todd A  wrote:

My comments, using the Diigo web page annotation service, are here:
http://diigo.com/0doj3


Many thanks for this excellent work.  It has made the Plugins chapter
much stronger. I have made virtually all the changes you suggest, plus
a few more formatting-related changes.

The latest, and presumably last, version of the Plugins chapter is on
Leo's web site, and the sources for it are on the trunk at rev 3712.

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Why I love Leo

2010-11-14 Thread taa, Leo Newbie

> I present it here to show newbies that it's worth the trouble
> to learn how to use Leo :-)

Don't you mean, "newbies that it's worth the trouble to learn how to 
=program in Python="?


 Original Message 
Subject: Why I love Leo
From: Edward K. Ream 
To: leo-editor 
Date: Thursday, November 11, 2010 6:36:59 PM


Here is a script I wrote this evening.  I present it here to show
newbies that it's worth the trouble to learn how to use Leo :-)

The script that finds all docstrings in leoPlugins.leo.  It was
inspired by Terry's plugin_catelog.py program.  It opens
leoPlugins.leo, finds the top-level Plugins nodes, then in the
LeoDocs.leo outline creates a tree mirroring the structure of the
Plugins node in leoPlugins.leo, with each node containing just the
docstring of the plugin.  I'll use this script to update docs in
LeoDocs.leo.

Here it is, flattened:

Q
'''Create a tree containing the docstrings
of most plugins in leoPlugins.leo.'''

class controller:

 def __init__ (self,c):
 self.c = c

 def clear (self,p):
 p.b = '@language rest\n'
 while p.hasChildren():
 p.firstChild().doDelete()

 def getDocString(self,p):
 '''Return the docstring of the @  node p.'''
 for p2 in p.self_and_subtree():
 s = p2.b
 for tag in ("'''",'"""'):
 i = s.find(tag)
 if i>  -1:
 j = s.find(tag,i+3)
 if j>  -1:
 return s[i+3:j]
 else:
 return ''

 def openLeoPlugins(self):
 fn = g.os_path_finalize_join(
 g.app.loadDir,'..','plugins','leoPlugins.leo')
 ok,frame = g.openWithFileName(fn,

old_c=self.c,enableLog=True,gui=None,readAtFileNodesFlag=True)
 if ok:
 return frame.c
 else:
 g.error('can not open leoPlugins.leo')
 return None

 def run(self):
 c = self.c
 new_c = self.openLeoPlugins()
 if not new_c: return

 aList = ('Examples','Experimental','Gui plugins','Testing',)

 # Create the output node.
 tag = 'get-docstrings-output'
 output = c.p.insertAfter()
 output.h = tag
 self.clear(output)

 # Scan the descendants of the Plugins node.
 root = g.findNodeAnywhere(new_c,'Plugins')
 if not root: return g.error('no Plugins node')
 print('='*20)
 for p in root.children():
 if p.h not in aList and not p.h.startswith('  '):
 print('\n**',p.h)
 child = output.insertAsLastChild()
 child.h = p.h
 for p2 in p.subtree():
 if p2.isAnyAtFileNode() and p2.h.endswith('.py'):
 h = p2.anyAtFileNodeName()
 s = self.getDocString(p2)
 print('%5s %s' % (len(s),h))
 child2 = child.insertAsLastChild()
 child2.h = h
 child2.b = "%s\n\n" % s.strip()
 new_c.close()
 c.redraw()

controller(c).run()
Q

It's easier to understand in the original outline form, but of course
I can't show that here.  It's on the trunk at rev 3676.

The point is that a relatively simple script saves me a lot of work.
The script shows how easy it is to access and modify nodes in any
outline.

Edward

P.S.  I flattened the script with an @button script.  Here it is:

'''Convert a script to a string as if written with @nosent.'''

at = c.atFileCommands

at.write (p,kind = '@unknown',
 nosentinels = True,thinFile = False,
 scriptWrite = False, toString = True,
)

output = p.insertAfter()
output.h = 'flattened %s' % p.h
output.b = at.stringOutput
c.redraw()

EKR



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Unmark-all command [was: Q: Outline icon has red line that won't go away]

2010-11-13 Thread TAA, Leo Newbie

Matt Wilkie recently wrote (http://tinyurl.com/22lf48p)

> Thank you for taking the time to explain. Insight into your process is
> more valuable to me at this stage in my learning-to-program
> development than what or how script X does Y.

I would like to know the specific steps you went through to find the 
"docstring" (whatever that is) for the unmark-all command in order for 
you to copy and paste it into this thread.


 Original Message 
Subject: Re: Unmark-all command [was: Q: Outline icon has red line that 
won't go away]

From: Edward K. Ream 
To: leo-editor@googlegroups.com
Date: Thursday, November 11, 2010 3:41:07 PM


On Thu, Nov 11, 2010 at 12:35 PM, taa, Leo Newbie  wrote:


Unmark-all appears to remove all marks in ALL outlines and not just
the currently selected one.


You are confused about what "the outline" means.

The docstring for the unmark-all command is:

'''Unmark all nodes in the entire outline.'''

I think this is as clear as it can possibly be.

How can I unmark only the select outline

(node) and all its children?


The proper terminology would be, umark the selected *node* and all its children.

I don't think there is a command that does exactly this, but the
following script will do the job:

for p in c.p.subtree():
p.clearMarked()
c.redraw()

I put it in a node called @button unmark-tree.

To make this undoable, use the following (tested) code:

u = c.undoer ; undoType = 'unmark-tree'
changed = False
u.beforeChangeGroup(c.p,undoType)
for p in c.p.subtree():
 if p.isMarked():
 bunch = u.beforeMark(p,undoType)
 p.clearMarked()
 u.afterMark(p,undoType,bunch)
 changed = True
if changed:
 u.afterChangeGroup(c.p,undoType)
 c.redraw()

Edward



--
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Unmark-all command [was: Q: Outline icon has red line that won't go away]

2010-11-11 Thread taa, Leo Newbie
>You can remove all marks in an outline with the unmark-all
> command.

Unmark-all appears to remove all marks in ALL outlines and not just
the currently selected one. How can I unmark only the select outline
(node) and all its children?

Original message: http://tinyurl.com/2djugch

On Apr 17 2009, 5:08 am, "Edward K. Ream"  wrote:
> On Thu, Apr 16, 2009 at 9:29 PM, tan  wrote:
>
> > I have an @auto outline node that reads in a small file. The outline
> > icon had a vertical red line when I edited the file outside of Leo.
> > However, even after re-reading the node, the vertical red indicator
> > remains.
>
> Marks are permanent until you remove them.
>
> You can toggle the mark of a single node with the (misnamed) mark command
> (Ctrl-m).  You can remove all marks in an outline with the unmark-all
> command.
>
> Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: taa: thanks for the corrections to the rst chapter

2010-11-11 Thread taa, Leo Newbie
You're very welcome, and thanks for the kind words.

On Oct 26, 6:36 am, "Edward K. Ream"  wrote:
> I've just completed making a remarkable set of corrections to the
> "Creating Documents with Leo" chapter.
>
> Many thanks totaa, LeoNewbie for these hard-to-find catches.  It is
> extremely rare for anyone to read docs so closely.  Your work is much
> appreciated.
>
> Edward
>
> P.S. One way to the original post 
> ishttp://groups.google.com/group/leo-editor/browse_thread/thread/c02a44...
>
> EKR

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Enhancing leo_to_rtf.py

2010-09-13 Thread taa, Leo Newbie
I'm experimenting with this plugin to see if it will meet my needs.
Not being a Python programmer, it appears like it would be easy to add
@ignore node functionality by copying the code I see for ignoring
@file nodes, including adding a new parameter to the .ini file. I know
that if the changes become part of the Leo distro, I won't have to
keep manually changing leo_to_rtf.py after I get the latest Leo
revision.

1. Do I need to contact the original author of this plugin, Dan
Rahmel, to submit potential changes for his review, or,

2. Do I submit the changes via Launchpad's bug/enhancement tracking
system?, or,

3. Do I post the changes to this mailing list?

Is there a tool I need to use to create a "patch" in the proper
format?

I can't seem to find anything in Leo's documentation on how to submit
code changes. If someone could point me in the right direction, I'll
try to do the rest on my own.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: A1 may be delayed again

2010-09-12 Thread taa, Leo Newbie
>It looks like I shall be on vacation starting on Sept 20 or
>thereabouts for about two weeks.

In your absence, can someone be assigned to monitor first-posts from
new users that are held for approval, for both leo-editor and leo-
editor-users? When I first needed help, I had posted around the time
you last went on vacation and was surprised when I apparently needed
to wait for your return, despite the declaration, "Typically
[approval] takes less than a day."

On Sep 12, 11:45 am, "Edward K. Ream"  wrote:
> It looks like I shall be on vacation starting on Sept 20 or
> thereabouts for about two weeks.
>
> I am becoming increasingly uncomfortable about releasing Leo 4.8 a1
> before then:
>
> 1. Despite significant progress on the slideshow.py plugin, I do not
> want to rush the work to meet an artificial deadline.  As impatient as
> I am to finish this work, more work now on the plugin could save a lot
> of work later.
>
> 2. I want to have first-rate slideshows available when a1 goes out the
> door.  Indeed, the first things newbies may want to do is look a the
> slideshows.  I want to make a good first impression.
>
> 3. There are significant bugs outstanding.  I don't want to release
> any code, not-even alpha-quality code, with those bugs.
>
> It is unlikely that I can finish the work necessary to release a1
> before going on vacation.  It may be middle or late October before a1
> goes out the door.  I can live with that. Imo, quality trumps
> everything else.
>
> Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Quiet time in effect until a1

2010-08-31 Thread taa, Leo Newbie
Any chance you could look at bug#626587? I'm still trying to debug the
flattened file import problems I'm having. I'm sure it's related to my
file, but having a working example with multiple nodes (which the
unittest flat.txt does not) would help me move forward. If it's not
easy to resolve #626587 quickly, I'll understand.

On Aug 31, 10:10 am, "Edward K. Ream"  wrote:
> I would like to get a1 out the door asap.
>
> To do this, I would like once again to request that you limit your
> emails to urgent matters: critical new bugs or other stuff that really
> should be fixed for a1.
>
> However, offers of help are always welcome :-)  In particular, I would
> like to get one or two new slideshows done for a1.  If you can
> automate the process of creating callouts I would greatly appreciate
> hearing about it.
>
> Thanks for your understanding.
>
> Edward
>
> P.S. I do plan to finish the DnD work next.  It's unbearable to leave
> half-finished projects lying around.  Furthermore, creating only @edit
> nodes is actually dangerous, as I'll explain in another post or two.
>
> EKR

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Problem importing flattened outline (MORE text format)

2010-08-30 Thread taa, Leo Newbie
> I don't want to take time now to do this--it's not high enough priority.

I must have misinterpreted "remove the file reference from the tree
produced by @auto" -- I thought this meant I could manually remove it
outside of Leo (like, using an editor), and all would be well. I just
didn't know how to go about removing it. Since you quoted both of my
questions in your reply, and I know #2 requires a program change, I
guess this means #1 does as well.

> If you want to change Leo you will have to start studying the code.

Your suggestion is certainly reasonable, and I've been around open
source projects long enough to know that sometimes the only way an
enhancement would get done is if I do it myself. I get that.

I've been studying the Leo code when I run into problems. It's way
over my head. :D After looking at it for hours, reading some of the
detail code discussions (fascinating, but also way over my head), and
reading in other threads about how fragile some Leo code sections are,
I'm too intimidated to try to make significant changes on my own.

I'm reluctant to ask for feature enhancements. I know that some
changes users request might be incredibly simple to implement, so I'd
rather ask in case it is something easy, rather than suffer in
silence. :D

On Aug 30, 11:05 am, "Edward K. Ream"  wrote:
> On Sun, Aug 29, 2010 at 12:58 AM, taa, Leo Newbie  
> wrote:
> > 1. Could you provide the specific steps to "remove the file reference
> > from the tree produced by @auto"?
>
> > 2. Is there a way to have a File->Import... function open a file based
> > on its extension and automatically create an @auto node? There doesn't
> > seem to be an import-at-auto command I can tie to an @menu node, like
> > the import-at-file command.
>
> I don't want to take time now to do this--it's not high enough priority.
>
> If you want to change Leo you will have to start studying the code.
> Stepping through the code with g.pdb() is sometimes useful in this
> study.
>
> Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Import Flattened Outline log error: not a valid MORE file

2010-08-30 Thread taa, Leo Newbie
'p var' and the link are exactly what I needed. Thanks!

On Aug 30, 9:53 am, "Edward K. Ream"  wrote:
> On Mon, Aug 30, 2010 at 11:10 AM, taa, Leo Newbie  
> wrote:
> > I didn't realize I needed to restart Leo to have it recognize the
> > change I made to leoImport.py. Having done that and attempting the
> > import again, I switch to the console and use 'n' to step through the
> > code. I'm making progress. :D
>
> Indeed you are.  The first steps are always the most fraught with
> difficulty.  It's good you are pushing on.  Things will only get
> easier from here on.
>
> How do I show the contents of variables?
>
> p var
>
> See also:http://docs.python.org/library/pdb.html#debugger-commands
>
> EKR

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Import Flattened Outline log error: not a valid MORE file

2010-08-30 Thread taa, Leo Newbie
I didn't realize I needed to restart Leo to have it recognize the
change I made to leoImport.py. Having done that and attempting the
import again, I switch to the console and use 'n' to step through the
code. I'm making progress. :D How do I show the contents of variables?
I did 'help' at the (Pdb) prompt but don't see a command to show
variable values.

On Aug 30, 8:48 am, "Edward K. Ream"  wrote:
> On Mon, Aug 30, 2010 at 10:25 AM, taa, Leo Newbie  
> wrote:
> > What do I do to see the the results of g.pdb()?
>
> Run Leo from a console.  When g.pdb() starts it will print a message
> to the console.
>
> Switch to the console (Alt-tab) and then do 'n' (pdb's next command)
> to get out of the pdb() function itself.  Now you are at the "real"
> breakpoint.
>
> EKR

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Import Flattened Outline log error: not a valid MORE file

2010-08-30 Thread taa, Leo Newbie
>Put a call to g.pdb() in stringsAreValidMoreFile.
>
>The 'i' variable will be the line number you want, +- 1 perhaps.

I don't know Python but I tried changing leoImport.py as follows:

def stringsAreValidMoreFile (self,strings):
g.pdb()
if len(strings) < 1: return False
...

I saved the change, tried the import again, got the error (as
expected). What do I do to see the the results of g.pdb()? Only the
error appears in the log tab.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Import Flattened Outline log error: not a valid MORE file

2010-08-29 Thread taa, Leo Newbie
I've converted a plain text file to MORE format using the
specifications for MORE described in Chapter 5, Importing Files into
Leo Outlines:

>Headlines are denoted by a leading + or - character,
>preceding by zero or more tabs that denote the level of
>the headline. Body text follows its headline, with no
>indentation.

I also studied: leo\test\unittest\input\flat.txt

I'm using MORE because it looks to be the simplest format for
importing, and because the plain text file had some structure to it
already.

The file is 1,509 lines at a total of 62,730 bytes in size (in case
there's a limit I don't know about) and lines use CR/LF terminators.

When I attempt to do the import, I get "not a valid MORE file" but
there's no further information to indicate where I screwed up in
creating the file.

I've studied leoImport.py's MORE-related routines but cannot make
sense of the logic because 1) I lack sufficient knowledge of how Leo
operates and 2) I don't know Python.

What would help me most right now is if leoImport.py could tell me the
line# of the import file that it stopped at. Can anyone help with this?

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Leo in a nutshell

2010-08-29 Thread taa, Leo Newbie
> This script only works when using Leo's Tk gui, but it could be
> changed to execute the Tk code in an external process.

Too bad I'm using Qt. :(

> In that case, you would have to pass the "synthesized" script to Tk,
> but that should be straightforward.

I suppose this would be straightforward to a Python and/or Tk
programmer, but I'm neither. :(

I'll have to give up on the idea of using Leo for unit tests in
another programming language. The skill set required is too over my
head.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Installing prerequisites of Leo on Windows

2010-08-29 Thread taa, Leo Newbie
> Part I: Install Python, if it does not already exist.
(snip)
> E. Go to this page of the Python 
> tutorial:http://docs.python.org/tutorial/interpreter.html

As a newbie I went to this link and thought, "What exactly is it I'm
supposed to be reading here?"

It's a lot to read and absorb just to be able to install Leo. Which
section(s) do you want newbies to focus on?

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Leo in a nutshell

2010-08-28 Thread taa, Leo Newbie
Taa> > Question: Are unit tests confined toLeoitself and Python? Or
can it
Taa> > be used for other programming languages?

Edward> Unit tests are, or should be, a standard tool for any
language.

I can see I wasn't clear. I meant, "Can Leo's unit testing capability
be used to perform unit tests in other programming languages, or is
Loe's unit testing capability confined to Leo itself and Python?"

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Problem importing flattened outline (MORE text format)

2010-08-28 Thread taa, Leo Newbie
> All existing commands put a file reference somewhere.

I did a test where I did File->New, imported flat.txt, then saved the
result as a .leo file. If I open the file in notepad, there's no place
I can find that references the original imported file. So at least
with File->Import->Import Flattened Outline, it doesn't seem to put a
file reference anywhere.

> However, it would be easy enough to remove the file reference from
> the tree produced by @auto.

I'm not sure how to do this. Here's what I read in Chapter 4:

>When reading @auto nodes, Leo creates the @auto tree using
>**importers**, parsers that create an outline with nodes for each
>class, method and function in the external file. Some importers create
>other kinds of nodes as well.
>
>Importers presently exist for C, elisp, HTML, Java, Javascript, Pascal,
>PHP, Python and xml. Leo determines the language using the file's
>extension. If no parser exists for a language, Leo copies the entire
>body of the external file into the @auto node.

I know that there's an importer for .ini as well, here's what I tried
in order to "convert" the .ini to a true .leo file (just for testing
@auto functionality):

   File->New
   Change NewHeadline to @auto t:\x.ini

File x.ini is 248K in size.

Nothing happened when I did this, so I next did a File->Save As and
created t:\x-test.leo. I got a message that x.ini already existed and
I said NO to overwrite. The log tab shows:

   not written: t:\x.ini
   saved: x-test.leo

OK so far, I think.

I closed x-test.leo. Trying next to follow this instruction:

> However, it would be easy enough to remove the file reference from
> the tree produced by @auto.

I open x-test.leo in notepad, find the @auto node and remove just the
"@auto " from it so that it looks like this:

...t:\x.ini

I save this change and attempt to re-open x-test.leo. One node exists
with the headline t:\x.ini and that's it. leoImport.py does not seem
to have run. I open x-test.leo in notepad again, put back the "@auto
", save it and open it in Leo again. This time leoImport.py did run
and I see lots of nodes. I do File->Save. I open x-test.leo in Notepad
again to remove "@auto " (again, I'm trying to follow the instruction,
"remove the file reference from the tree produced by @auto"). Very
little in the .leo file has changed -- I don't see any of the ini
nodes yet -- and I doubt removing the @auto will change anything by I
try anyway and on re-opening in Leo it shows the single node
containing t:\x.ini as above.

1. Could you provide the specific steps to "remove the file reference
from the tree produced by @auto"?

2. Is there a way to have a File->Import... function open a file based
on its extension and automatically create an @auto node? There doesn't
seem to be an import-at-auto command I can tie to an @menu node, like
the import-at-file command.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Leo 4.7.1 Windows installation problem: PyQt not installed, reverting to Tk UI

2010-08-28 Thread taa, Leo Newbie
> The same problem occurs with Python 2.7 too.
>  On Stackoverflow is the solution 
> :http://stackoverflow.com/questions/2738879/cannot-import-pyqt4-qtgui

In case someone else runs into a similar problem, I found a variation
on the Windows PATH issue recently when I attempted to install Leo on
my work desktop and then tried running it from a DOS command line. I
discovered that PyQt had modified %PATH% to point to the PyQt
directory, but because I had opened the DOS command window BEFORE
installing PyQt, its %PATH% was not updated. I just had to close the
DOS window and open a new instance for it to work. I was launching Leo
from the DOS command line to watch for start up errors.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: s5 is not good enough

2010-08-21 Thread taa, Leo Newbie
Thanks, Edward, for all the time you are continuing to invest in
creating tutorials for us newbies.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Using Bazaar to run latest development version instead of latest stable version [was: Re: nav_qt not working]

2010-08-19 Thread taa, Leo Newbie
Thanks zpcspm and Matt. Your steps worked.

The Bazaar installer =did= install the command line version (by
default), and even offered (by default) to modify the Windows PATH
(which it did) so it would find bzr.exe. Even though Chapter 1
recommends installing a friendly GUI, the command line does seem
simpler. But Bazaar Explorer is much cooler. :D

The third option suggested by Matt, getting the snapshots from
http://www.greygreen.org/leo, seems even simpler as it doesn't involve
installing Bazaar at all. Depending on what happens with a standalone
installer bundling everything together (Python, Qt, Leo), this might
be the best option for newbies. It's also quicker to download -- 7MB
zipped, 24MB unzipped, vs. 73MB-76MB using bzr/Bazaar Explorer.

For now I'm going to play with all three options and see what works
out best. I'll keep Newbie Notes as I go along so Chapter 1 could be
updated if desired.

>Bazaar Explorer > Get source from elsewhere > branch
>  From: lp:leo-editor
>  To: D:/Code/Leo  (yes forward slashes are legal, in python)

The "From: lp:leo-editor" (a non-file path) was key. Because there was
a standard Windows "browse" button, I thought this meant it =had= to
be already downloaded, which is what I was trying to do (catch 22). So
I thought using "Get source from elsewhere..." couldn't be the right.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Problem importing flattened outline (MORE text format)

2010-08-18 Thread taa, Leo Newbie
> s.replace will crash if s is None.  Do this instead:
>
>     s,e = g.readFileIntoString(fileName)
>     if s is None: return ''
>     s = s.replace("\r","")
>     etc.

That took care of the trailing rectangles -- thanks.

Regarding my second post: which File-related command would do a "true"
import of the file so there's no external file reference at all?

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Using Bazaar to run latest development version instead of latest stable version [was: Re: nav_qt not working]

2010-08-17 Thread taa, Leo Newbie
> I encourage you to start using the bzr trunk instead of the stable
> version.

Attempting to install Bazaar, I go to the Leo docs (Chapter 1,
Tracking the development version) and see:

>First, you need to get Bazaar (bzr) from http://bazaar-vcs.org. For
>windows users we recommend the standalone installer - the python
>installer may have problems pushing to Launchpad.

Being a newbie, I go with the recommendation of using the Windows
standalone installer. That sounds simple. I shudder at reading, "the
python installer MAY HAVE PROBLEMS..." A chill and cold sweat go down
my spine. I flip a coin. Heads. Great -- I can skip problematic Python
installers tonight. I downloaded the latest version, 2.1.1, from the
above URL.

>Plain bzr installer only contains the command line version, so you might
>want to augment that with a friendly GUI - qbzr is recommended as it’s
>the easiest one to install. It provides command like bzr qlog, bzr
>qannotate etc.

On running the setup, I accept all defaults and it automatically
installs Bazaar Explorer. Great, thinks I, newer Bazaar installs
already come with "a friendly GUI." Newbie friendly, I like it! I
shouldn't have to worry about things called qbzr, qlog, qannotate --
whatever those are.

I launch Bazaar Explorer and choose the Open Location option. I type
in: lp:leo-editor

It does its thing for several seconds, and then a new window opens
that says, "This branch has no working tree. Latest revision is 3265."

Bazaar waits patiently for me to do something next. We both have a
good, long, blank stare at each other. I'm not sure what I should do,
so I go back to the docs and read: "And that’s it! You can run leo/
core/leo.py directly."

I don't see where to go to "run leo/core/leo.py directly." So I keep
reading: "When you want to refresh the code with latest modifications
from Launchpad, run bzr pull."

Aha! Says I. I see a Pull icon/button in Bazaar Explorer. That must be
what I need to do next! I click on it and it says, "Sorry, action not
yet supported by current app_suite." There's a button for Details and
when clicked it shows, "Profile name is: qbzr  Action identifier is:
pull"

There's an icon/button called "All" that when I hover over it, it
says, "Run an arbitrary Bazaar command."

Aha! Says I. I'll try what the Leo docs say above: "run bzr pull." So
I click on the All button and get a new window with focus set to
"Command" where I can type something in. I type "pull" (without the
quotes) and click OK.

It gives me:

-

Run command: bzr pull
bzr: ERROR: Not a branch: "C:/".

-

So now I'm stuck. And I don't know why it's trying to use C:/, an
illegal path, when it seems like it should be C:\.

I can't seem to, simply, "run leo/core/leo.py directly" because I
don't know what step does that in Bazaar Explorer.

I can't get the latest modifications using Pull because I get an
error, probably because I don't have something set up right, but I
don't know what that might be.

Are there any Bazaar Explorer 2.1 users out there who could help a
poor Leo newbie get the latest development version before he pulls out
his last hairs, and while he still only just =contemplates= drinking
hard liquor? :DDD

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Docs and installer should have top priority

2010-08-16 Thread taa, Leo Newbie
>My thought was to set up python, leo, and Qt in a single directory - the
>directory would then be installed by the "leo" installer, so that you end
>up with leo and its private copies of python/qt in c:\program
>files\leo\leo or somesuch.  Dumb, inelegant, and the lowest possible
>barrier to the Leo experience from a user perspective.

In case this is the approach taken, and registry entries need to be
captured to create a "Leo" installer, this program does a pretty good
job of comparing copies of the registry to see what's changed:

 http://sourceforge.net/projects/regshot/

Todd

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Glossary and index [was: @root must disappear]

2010-08-15 Thread taa, Leo Newbie
Just trying to help. :D I've been trying to use the glossary and index
often so have a vested interest in seeing the glossary/index issues
you've raised resolved. I asked a related question on the Sphinx-dev
mailing list about a week ago. No reply yet so I thought I'd take a
stab at it. I think I better just walk away quietly and wait for a
real Sphinx guru to step up. :D

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: nav_qt not working

2010-08-15 Thread taa, Leo Newbie
> I encourage you to start using the bzr trunk instead of the stable
> version.

You're right, I should. And I will. :D

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Naive Leo impressions

2010-08-15 Thread taa, Leo Newbie
> Support for @ignore could be added, but changing @menu to @@menu is
> just one of many ways of disabling @menu: there is no reason for Leo
> to treat as  special case.

In the "About this file" section of leoSettings.leo, there's a
headline with  "\...@ignore comment" and the body says, "Leo ignores
subtrees of @settings trees whose headline starts with @ignore." So
I'm confused by the statement, "support for @ignore could be added"
when "Leo ignores..." seems to be saying support is already there. I'm
obviously not understanding because to me there's a contradiction
here. Does @ignore work on subtrees everywhere in @settings EXCEPT for
@menu trees?

The @ignore worked on the @menu headline, just not child @items. Maybe
I'm just not understanding the difference between child items and
subtrees that @ignore is supposed to include in its processing?

Or is it a case where @ignore functionality was removed long ago from
@settings, and thus "support for @ignore could be added [back]" and
the "About this file" was just not updated?

Can you let me know one or two alternates of the "many ways of
disabling @menu"?

And my question remains: why didn't @@menu cause the child @items to
also be disabled? If there are only certain scenarios where @@ can be
used to disable something, (like, an exception is that child nodes of
@@menu headlines in @setting trees are not affected) that would be
helpful for me to know. When I look at the various @settings, the @@
method seems to be a common way of disabling functionality, so that's
why I tried using it.

> > 3. What exactly is/are the differences between the import-derived-file
> > and import-at-file commands?
>
> I don't know myself.  You would have to look at the code.

I think as a newbie it is reasonable for me to want to understand the
differences between the multitude of file import/read choices Leo has
so I can use the most appropriate one for whatever task I have at
hand.

If it was explained in the documentation, there would be no need to
expect a newbie like myself, who programs but not in Python, to look
at the code. I thought the place to ask these kinds of questions about
the inner workings of Leo was in this leo-editor Google group. If it
is better asked in leo-editor-users, then that's fine, but tell me
that's the case.

>From this recent thread: http://preview.tinyurl.com/284gnhk

I read this:

>1. I can't/wont' improve documentation in general.  I have to know
>what it is you want to know.  Why not just ask?  I typically answer
>question in a timely fashion, and my answers could form the basis of
>documentation that targets just your concerns.

I believe my question was specific and clear, but if it was not, then
I obviously do not know what/how to ask in a way to get an answer.
I've seen threads in this forum that end with, "if not, please feel
free to ask more questions". Well I =am= asking questions, and "look
at the code" =is= an answer -- and a timely one -- but not a =helpful=
one. So from my perspective, "why not just ask?" =is NOT working.= If
the expectation is that Leo users need to have a background in Python
so that the documentation doesn't need to explain such things as the
difference between import-derived-file and import-at-file commands,
then please let users know this upfront. It will save the helpful
people here (including yourself!) a lot of time, and will establish
proper and reasonable expectations for newbies if they have questions
and come here seeking support, like I'm trying to do now.

I hope it goes without saying that responses like, "You would have to
look at the code" doesn't give me much hope that, "my answers could
form the basis of documentation that targets just your concerns." To
me the message I'm getting is that the docs won't be updated to
explain the difference between the import functions I'm asking about.

I =do= realize that multiple people have contributed to Leo over the
years, so perhaps whoever did the original code for these two
functions (import-derived-file and import-at-file) will chime in here.

>Would it be possible to configure an "expert" menu mode, which shows
>all of the options as it does now--and then a "beginner" mode which
>shows only those menu items useful to beginners?

I like this idea a lot.

>Of course, as a Leo user become more proficient, they would probably
>like to choose which items are shown in the menus.

Yep, choosing what's shown is exactly what I'm attempting to do. I
want to do this even though I'm =not= very proficient yet. :D

>So the ultimate solution would seem to be configuration options that
>allow certain menu items to be visible or non-visible to the individual
>user's liking.

This sounds like it's being introduced as a new concept, so maybe the
@ignore method for @settings =was= removed long ago and has since been
forgotten?

>-  File ->Tangle(archaic)
>-  File -> Import -> Import to @root(deprecated)

I like this idea. It would avoid the problem where newbies like me

nav_qt not working

2010-08-14 Thread taa, Leo Newbie
Similar to the thread back in May 15-16, 2010: I get the green left/
right arrow buttons but they don't do anything.

Leo 4.7.1 final, build 3005, February 26, 2010
Python 2.6.5, qt version 4.6.2
Windows 5, 1, 2600, 2, Service Pack 3

It looks like I need to install the latest Leo rev to fix? Out of
curiosity, what is the policy for creating a Leo "final" release
incorporating the latest changes? Is a new "final" imminent? (It's OK
if it isn't due out any time soon, but if it is I'll just wait.)

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Problem importing flattened outline (MORE text format)

2010-08-14 Thread taa, Leo Newbie
I'm still interested in knowing how to eliminate the trailing
rectangles described above, and I've since studied Appendices->Format
of external files; not sure yet which one of these methods I'll use to
get my current text files into Leo.

The goal is to end up with a .leo file containing all the outline
data, and NO external file references. I have no need to share the
files with anyone so the outline can be self-contained. This would
keep it simple -- one file.

I would envision launching Leo, doing File->New, read/import the .txt
file with sentinels, then save it as, for example, weekend-
project.leo, in Leo's native XML format.

Creating a .txt file with sentinels I can handle, but what I don't
know is which File-related command would do a "true" import of the
file so there's no external file reference at all?

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Naive Leo impressions

2010-08-14 Thread taa, Leo Newbie
I'm working on eliminating File and Import menu choices I don't need.
I made a copy of leoSettings.leo to create myLeoSettings.leo.

1. I'm not going to need the Tangle and Untangle choices or their
submenus. I attempted to eliminate them by changing the headlines to
"@@menu Tan&gle..." and "@@menu &Untangle...". When I restarted Leo,
the submenu choices (Tangle All, Tangle Marked, etc.) were moved to
the main File "level" of menu choices, (E.G., "Tangle All" appears
right below "Read/Write...".) Since this didn't work, I next tried
changing "@@menu..." to "@ignore @menu..." but the results were the
same. I eventually fixed this by changing the submenu @item nodes to
@@item.

Question: Is there a specific reason why telling Leo to remove @menu
choices, using either "@@menu" or "@ignore @menu", does not also
remove the child @item choices?

2. I'm attempting to come up with a more meaningful/intuitive label
for File->Import->Import Derived File. In the body text I put, "Import
File Containing &Sentinels" and left the headline as "@item *import-
&derived-file". Having this particular combination results in the
"Import Derived File" menu choice going away entirely. I would have
expected one or the other to be shown. I eventually fixed it by
removing the "*" and "&" from "*import-&derived-file".

Question: Shouldn't either the body text or the @item have caused one
of them to be displayed, instead of NEITHER?

3. What exactly is/are the differences between the import-derived-file
and import-at-file commands? I couldn't find an explanation in the
documentation, but maybe I'm looking in the wrong place. I know at
least one difference is that it appears import-at-file uses
leoImport.py. Can someone enlighten me? :D

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Second draft of rst3 tutorial now on the web

2010-08-14 Thread taa, Leo Newbie
> For the first time the rst3 chapter 
> http://webpages.charter.net/edreamleo/rstplugin3.html
> has a proper introduction.  Comments about the overview and tutorial
> are welcome now.

I've recreated my feedback notes using the online service Diigo.
Here's a link to see the highlights and sticky notes: http://diigo.com/0c9u2

This is an experiment as I've been researching Diigo-like services for
about a week, and would like to know if this would be an acceptable
method when there are lots of things to be commented on for Leo's web
pages. Otherwise I would do email when there are only a few comments.

When you go to the link, you'll see pink highlighted text, with a
small icon in the top left of each text "piece" with a number. Hover
over it to cause the sticky note to be displayed. The number
represents the number of comments entered on the sticky note.

Usually when I'm highlighting edits to be made (like in Acrobat), I
only highlight the specific word or punctuation that needs attention.
With Diigo, there are two problems:

a) there seems to be a minimal number of characters that need to be
highlighted before you get an option to add a sticky note, and

b) Diigo appears to "remember" the location of highlights/stickies
based on where the text first occurs on the page. If you highlight
text halfway into the document that also appears at the beginning of
the document, reloading the web page causes your highlight to "move"
without warning to the beginning of the document. This took a while
for me to realize, because I'd keep redoing highlights, not knowing I
was spinning my wheels. (I don't know what will happen to these
annotations if Chapter 14 is changed and reuploaded. Probably it will
still "find" the highlighted text that hasn't changed and be able to
show the sticky notes.)

The solution to both issues is to highlight more text than you want,
and make sure it's enough text to identify its location uniquely on
the web page. I noted in the sticky note where extra text highlighting
was done, eventually saying I did it due to a Diigo bug.

You do NOT need to sign up for Diigo to see the edits, but there are
two benefits I can see for collaborating on web pages. If you had an
account (and you can use your Google account, like I did), you could:

1) Add comments to the comments I've made. Without an account, when a
sticky note is displayed, it acts like you could type in a comment and
click on Post. But when you click on Post the comment is not saved
anywhere, and there's no message that it was sent to /dev/null.

2) Navigate easier through the list of annotations, if you also
install the Diigo toolbar. There's a "Comment" button that when
clicked opens up a side bar listing all annotations. The biggest
feature I wish Diigo had was an easy way to go to the previous/next
annotation to be sure I see them all.

3) Create the first sticky note for highlighted text that Diigo has
trouble dealing with: Text highlighted at the very beginning of the
line causes the icon to appear at the very end of the line above it.
The problem is, you need to hover over the highlighted text to cause
the icon to appear that allows adding the sticky note. But you can't
move the mouse fast enough :) from the highlighted text to the icon at
the end of the line above it. The solution is to sign in to your Diigo
account, go to My Library, find your highlighted text and choose the
"Add Sticky Note" link.

Phew, been working on this and the Chapter 14 edits for hours. Time to
take a break.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Glossary and index [was: @root must disappear]

2010-08-13 Thread taa, Leo Newbie
About the glossary

Terry>I think it would be more helpful if [the glossary] didn't start
Terry>with all those @ entries - no doubt alphabetical order is
Terry>working against us there.

Edward>Please, let's all be clear that I want this to happen too.
Edward>But I don't know how to do this.

I think this means that instead of a glossary that looks like this:

 @apple
 @berry
 @citrus
 Alpha
 Beta

the desired effect is:

 Alpha
 @apple
 @berry
 Beta
 @citrus

Based on my interpretation of http://sphinx.pocoo.org/markup/para.html#glossary
and the section, "New in version 0.6", the easy part to make this
happen is to remove the :sorted: flag. Then the hard part is manually
re-ordering the glossary to the desired sequence. I wouldn't mind
volunteering to do at least the initial pass on the hard part. After
that new entries should be easier -- just insert them in the order
desired.

About the index

Based on my interpretation of 
http://sphinx.pocoo.org/markup/para.html#index-generating-markup
it doesn't seem to be that index entry types (single, pair, triple)
are mutually exclusive. For example, in directives.txt rev 3259:

   .. index::
   pair: @killcolor; Reference

I think you could add "single: killcolor" like this:

   .. index::
   single: killcolor
   pair: @killcolor; Reference

or maybe two pairs:

   .. index::
   pair: killcolor; Reference
   pair: @killcolor; Reference

So it would create @killcolor under Symbols and killcolor under K.

I would have thought:

   .. index::
   triple: @killcolor; killcolor; Reference

would also work but that doesn't seem to give the desired results as
described at the para.html#index-generating-markup link above, but I'm
probably just not understanding the description correctly.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Second draft of rst3 tutorial now on the web

2010-08-11 Thread taa, Leo Newbie
I made copious notes for 2.5+ hours on the latest chapter 14 draft and
OF COURSE had a power glitch and lost 'em all! :( Too tired to
recreate them tonight.

> There are two main parts following the tutorial, an "intermediate
> topics" section with items of general interest, and the "advanced
> topics" section that covers the horrors of code mode and per-mode
> settings.

Thanks so much for splitting it up like this. As a newbie, this helps
a lot. I may freak when I see how long the chapter is, but when I
realize I don't need to worry about the advanced topics, it instantly
becomes less overwhelming. :D

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: UPDATE: quickMove support bookmarks and *tags*

2010-08-11 Thread taa, Leo Newbie
Wow, I was just thinking today how useful it would be to have a
@button to copy nodes like this, and PRESTO, it exists! :D

On Aug 11, 6:41 pm, Terry Brown  wrote:
> Here's the docstring for the quickMove updated plugin.  Really it supported 
> bookmarks and tags before, but now it has the `Set Parent` functionality to 
> make its buttons into sub-menu items, which makes using it with large numbers 
> of bookmarks/tags more practical.
>
> Create buttons to quickly move nodes to other nodes
>
> Quickly move/copy/clone nodes from around the tree to one or more target 
> nodes.  It can also create
> bookmark and tagging functionality in an outline (see `Set Parent Notes`_ 
> below).
>
> Adds `Move/Clone/Copy To Last Child Button` and `Move/Clone/Copy To First 
> Child
> Button`, `Link To/From` and `Jump To` commands to the Move sub-menu on the
> Outline menu, and each node's context menu, if the `contextmenu` plugin is 
> enabled.
>
> Select a node ``Foo`` and then use the `Move To Last Child Button` command.
> This adds a 'to Foo' button to the button bar. Now select another node and 
> click
> the 'to Foo' button. The selected node will be moved to the last child
> of the node 'Foo'.
>
> `To First Child Button` works the same way, except that moved nodes are 
> inserted
> as the first child of the target node.
>
> `Clone` and `Copy` variants are like `Move`, but clone or copy instead of 
> moving.
>
> `Link` works in conjunction with the `backlink` plugin (and also the
> `graphcanvas` plugin) creating a link to/from the target and current nodes.
>
> `Jump` buttons act as bookmarks, taking you to the target node.
>
> You can right click on any of these buttons to access their context menu:
>
>   Goto Target
>     takes you to the target node (like a `Jump` button).
>   Make Permanent
>     makes the button permanent, it will reappear
>     when the file is saved / closed / re-opened.
>   Set Parent
>     allows you to move buttons to sub-menu items of other
>     `quickMove` buttons.  This implicitly makes the moved button
>     permanent.  It also causes the moved button to lose its context menu.
>   Remove Button
>     comes from the `mod_scripting` plugin, and just
>     removes the button for the rest of the current session.
>
> Set Parent Notes
> 
>
> `Set Parent` doesn't allow you to do anything with `quickMove` you couldn't
> do with a long strip of separate buttons, but it collects quickMove buttons
> as sub-menu items of one quickMove button, saving a lot of toolbar space.
>
> Bookmarks
>   Create somewhere out of the way in your outline a node called
>   `Bookmarks`. Use the quickMove menu to make it a `Jump To` button, and use 
> its
>   context menu to make it permanent. There is no particular reason to jump to
>   it, but it needs to be a `quickMove` button of some kind.
>
>   Now, when you want to bookmark a node, first use the quickMove menu to make
>   the node a `Jump To` button, and then use the context menu on the button to
>   set its parent to your `Bookmarks` button.  It becomes a sub-menu item
>   of the `Bookmarks` button.
>
> Tags
>   In conjunction with the `backlinks` plugin you can use `quickMove` to
>   tag nodes.   The `backlinks` plugin adds a `Links` tab to the `Log pane`.
>
>   Create somewhere in your outline a node called `Tags`. Use the quickMove 
> menu
>   to make it a `Jump To` button, and use its context menu to make it 
> permanent.
>   Clicking on it will jump you to your tag list. Now create a node under the
>   `Tags` node for each tag you want. The node's name will be the tag name, and
>   can be changed later. Then use the quickMove menu to make each of these 
> nodes
>   a `Link To` button, and then use the context menu on the button to set its
>   parent to your `Tags` button. It becomes a sub-menu item of the `Tags` 
> button.
>
>   To see the tags on a node, you need to be looking at the `Links` tab in the
>   `Log pane`.  To see all the nodes with a particular tag, click on the `Tags`
>   button to jump to the tag list, and select the node which names the tag of
>   interest.  The nodes with that tag will be listed in th `Links` tab in the
>   `Log pane`.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Leo 4.7.1 Windows installation problem: PyQt not installed, reverting to Tk UI

2010-08-11 Thread taa, Leo Newbie
Steve, see this post: http://preview.tinyurl.com/36epdr2

On Aug 11, 5:36 pm, Terry Brown  wrote:
> On Wed, 11 Aug 2010 15:51:52 -0700 (PDT)
>
>
>
> Steve Allen  wrote:
> > H, I get module not found?!
> > C:\Python26\Lib\site-packages\PyQt4>c:\Python26\python
> > Python 2.6.4 (r264:75708, Oct 26 2009, 08:23:19) [MSC v.1500 32 bit
> > (Intel)] on win32
> > Type "help", "copyright", "credits" or "license" for more information.
>
> > >>> from PyQt import QtGui
> > Traceback (most recent call last):
> >   File "", line 1, in 
> > ImportError: No module named PyQt
>
> > I wonder if it has something to do with a previous installation of
> > Python25, and that there's something in the Windows registry or
> > something that needs to point to the Python26 version?
>
> I don't know.  You said you installed PyQt-Py2.6-gpl-4.7.4-1.exe which 
> presumably would only install itself into the Python26 environment.  And you 
> seem to be explicitly pathing to c:\Python26\python, so no problem there.
>
> In your example above you were running python from 
> C:\Python26\Lib\site-packages\PyQt4, but I'm not 100% sure that means it 
> would actually look in that dir for the module, to be 100% sure do
>
> import sys
> sys.path.append("C:\\Python26\\Lib\\site-packages\\PyQt4")
> from PyQt import QtGui
>
> ...but if qt had installed properly you wouldn't need that.
>
> ...gah - just noticed you have
>
> from PyQt import QtGui
>
> ...should be...
>
> from PyQt4 import QtGui
>
> ...try that
>
> Cheers -Terry
>
> > On Aug 11, 5:39 pm, Terry Brown  wrote:
> > > On Wed, 11 Aug 2010 13:52:07 -0700 (PDT)
>
> > > Steve Allen  wrote:
> > > > But when I look in the site-packages directory, PyQt4 is there:
>
> > > What happens when you just run python and enter
>
> > > from PyQt4 import QtGui
>
> > > ?
>
> > > I get:
>
> > > MNOdonata> python
> > > Python 2.6.4 (r264:75706, Dec  7 2009, 18:45:15)
> > > [GCC 4.4.1] on linux2
> > > Type "help", "copyright", "credits" or "license" for more information.
>
> > > >>> from PyQt4 import QtGui
>
> > > i.e. nothing, which is correct.  Do you also get nothing?
>
> > > Cheers -Terry

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Problem importing flattened outline (MORE text format)

2010-08-10 Thread taa, Leo Newbie
Running Leo under Windows, when I import ..\site-packages\Leo-4.7.1-
final\leo\test\unittest\input\flat.txt, rectangles trail each headline
node.

This appears to be caused by flat.txt using CR/LF (\r\n) line
terminators.

I see code in leoImport.py (Rev 3202) that looks like it's supposed to
strip CR's and leave only LF's, here:

[line 1015]
def convertMoreStringToOutlineAfter (self,s,first_p):
s = s.replace("\r","")
strings = s.split("\n")
return self.convertMoreStringsToOutlineAfter(strings,first_p)

and here:

[line 1146]
def stringIsValidMoreFile (self,s):
s = s.replace("\r","")
strings = s.split("\n")
return self.stringsAreValidMoreFile(strings)

but not here:

def importFlattenedOutline (self,files): # Not a command, so no
event arg.
(snip)
[line 1114]
s,e = g.readFileIntoString(fileName)
if s is None: return
array = s.split("\n")

Question: Is this line:

s = s.replace("\r","")

missing above the 'If s is None..."?

s,e = g.readFileIntoString(fileName)
s = s.replace("\r","")  <---missing?
if s is None: return
array = s.split("\n")

Does 'If s is None' check properly for a null string, even if CR's are
still present? It's why I'm wondering if the CR's need to be stripped
before 'If s is None'.

Is the missing line what's causing the trailing rectangles?

This is an issue for me because I'm not a Python programmer and the
flattened outline import appears to be the simplest structure I can
use for converting text files to a mult-level outline in Leo. The
files I create for import will have CR/LF terminators, and I don't
relish the idea of manually editing each headline node to take out the
trailing rectangle.

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Create Leo as an executable .EXE file?

2010-08-10 Thread taa, Leo Newbie
> No, many python applications are bundled as self contained exe files
> created by py2exe/whatever. The exe contains python interpreter and
> the source files.

That's cool, I didn't know that, but shoot just another example where
my lack of Python knowledge surfaces again. :(

qt02537, is the above the kind of bundle you were talking about? If
so, I'll have to change my vote to -1 instead. :D

>Only partially. Leo expects to find certain files in file system
>(leoSettings.leo, items under help menu) , instead of being bundled in
>the .exe.

With other Python apps, do they just not need to access the file
system outside of the .exe? Is Leo unusual in this regard?

> Leo already has an exe installer.

On the plus side, the Leo .exe installer does find where Python is
installed and can intelligently install itself to the site-packages
directory. On the negative, it doesn't install any other required
pieces, and it doesn't uninstall properly (the latter isn't too big of
a deal since hopefully the user will keep Leo installed forever).

But also, the .exe may be eliminated entirely (http://
preview.tinyurl.com/29ekrf3): "At present, the installer is not very
useful.  I may just kill the
installer. "

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Create Leo as an executable .EXE file?

2010-08-09 Thread taa, Leo Newbie
> > Is this same concept possible with Leo to create a self-contained
> > Leo.exe file?

+1

>instead of being bundled in the .exe.

I think qt02537 means the EXE/DMG is just the installer and not that
the app runs within them. Right, qt?

On Aug 9, 9:57 pm, "Ville M. Vainio"  wrote:
> On Tue, Aug 10, 2010 at 4:23 AM, qt02537  wrote:
> > Is this same concept possible with Leo to create a self-contained
> > Leo.exe file?
>
> Only partially. Leo expects to find certain files in file system
> (leoSettings.leo, items under help menu) , instead of being bundled in
> the .exe.
>
> I'm not sure if this is a big issue. People who can't download python,
> pyqt, and leo separately are unlikely to be willing to deal with leo
> learning curve anyway,
>
> --
> Ville M. Vainio @@ Forum Nokia

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: Leo in a nutshell

2010-08-08 Thread taa, Leo Newbie
Overall I like the blog post. Leo is such a generic tool (in my mind)
that that's what makes it difficult to define.

>Outlines and organization: Leo's outlines are far more flexible and
>powerful than any other outline you have ever used, for at least three
>reasons:

I think you meant, "any other outliner" (missing the "r")"?

>1. Unlike other browsers, you, not the browser,

A browser to me is Firefox, IE, Safari, Opera, etc. Do you mean an
"outline browser"?

>2. Leo outlines may look like other outlines, but in fact Leo outlines are
>views of a more general underlying graph structure.

The jargon here I don't understand is "graph structure." The word
"graph" to me conjures up images of charts and plotting points on x-y
axes. I've yet to see anything like this in Leo, so I'm obviously not
"getting" the "graph structure" concept. If "graph structure" is akin
to "graph databases" as in the presentation described at
http://preview.tinyurl.com/25zmhdd or the discussion at
http://preview.tinyurl.com/29zfnep, then can you "dumb down" the use
of "graph structure" above? (I did watch the entire Problem Solving
using Graph Traversals presentation and found it fascinating... but
WAY over my head in hopes of my ever grasping it, let alone applying
its concepts.) I'd never even heard of a graph database before August
1. :D

>3 External files
>2. just as in typical class browsers.

The jargon I don't know here is "class browser" -- is this the same
kind of browser you refer to under "1. Unlike other browsers, you, not
the browser," ? Is a class browser something common in Python
programming? Object-oriented programming? What about those of us who
use neither on a regular basis, if at all? It might be helpful to know
who the intended audience for Leo is, what kind of background is
needed to understand its concepts and use it effectively.

>Here are some of the implications of of this new world:

The word "of" is repeated twice. I wish I had $1000 for every time I
did this myself. I'd have paid off my mortgage years ago. :D

>Design There is no need for separate design tools because creating
>a Leo outlines

I think you mean "outline" (singular) here?

>Programming Nodes also provide unlimited room to save as many
>details an notes as you like,

I think you mean "and notes" (missing "d")?

>Testing 1. You can make node a unit test simply by putting @test at
>the start of its headline.

I think you mean, "make a node" (missing "a")?

Question: Are unit tests confined to Leo itself and Python? Or can it
be used for other programming languages?

>Organization everywhere: Have you noticed that Leo's organizational
>prowess applies to everything?

I =really= like this paragraph. As I said above, Leo is a generic
tool. :D

On Aug 8, 1:18 pm, "Edward K. Ream"  wrote:
> The first draft of a new page of Leo's docs is on my blog:
>
> http://edreamleo.blogspot.com/2010/08/leo-in-nutshell.html
>
> It should be syndicated to Planet Python soon.
>
> I am happy.  "Leo in a nutshell" uses no jargon, yet it does much more
> than just hint at the large array of possibilities in the Leonine
> world.
>
> All comments and suggestions welcome.  These are early days for this
> page.
>
> Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Re: First Leo screencast at youtube

2010-08-08 Thread taa, Leo Newbie
Thanks, Ville, nicely done!

On Aug 8, 10:17 am, "Ville M. Vainio"  wrote:
> I uploaded the first Leo screencast to 
> youtube:http://www.youtube.com/watch?v=Zu6J-J0qFi0
>
> It seems it takes a sweet while for showmedo to process it, so I
> dediced to bite it and go youtube. Unfortunately youtube lowers the
> quality quite a bit (at least with my settings).
>
> As you can see, it was not polished/edited/planned to death ;-).
>
> Again, this is mostly useful for newcomers.
>
> --
> Ville M. Vainio @@ Forum Nokia

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.



Glossary and index [was: @root must disappear]

2010-08-08 Thread taa, Leo Newbie
Terry>I think it would be more helpful if [the glossary] didn't start
Terry>  with all those @ entries - no doubt alphabetical order is
Terry> working against us there.

+1

As an example, @settings is listed under "S" and not under Symbols --
this is a GOOD thing because as a newbie it's where I would look, not
realizing that @settings was a special keyword. If I didn't see
Settings under "S" I'd give up looking and think the docs were
incomplete.

Could we have the best of both worlds and have @ keywords under
Symbols and under the entry based on the first character after the @?

I like the idea of having all the @ keywords grouped together in one
place. Since @ keywords seem to fall into two categories (I think?) --
body text directives and headline node directives(?) -- maybe in the
Symbols section you could follow each keyword with a designation of
where they can be used? That would create a quick reference arranged
alphabetically. Not having much experience with Leo yet, sometimes
just knowing where a keyword should be used is enough.

Edward> This may be an issue with the standard .cssfile.  I didn't do
Edward> anything to set up the index: it just happened.
Edward>
Edward> Remember I've only begun to play with sphinx.  Was it only
three days
Edward> ago that I figured out that conf.py controlled the index?

The new glossary and index are looking really good!

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-edi...@googlegroups.com.
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.