Using leoBridge from within Leo, or using several outlines from a main one

2014-05-05 Thread Fidel N
Hi:

Im trying to use another outline from within the current outline. 
Basically,the objective is to have another outline nodes and tree loaded as 
virtual nodes so I can work with them from within the currently open 
outline.
The thing is that several outlines use and edit those nodes, so ideally I 
should call the database outline from within many different Leo outlines.

The starting idea is to use leoBridge in this fashion, but it doesnt work 
as expected:

import leo.core.leoBridge as leoBridge 

bridge = leoBridge.controller(gui='nullGui', 
loadPlugins=False,  # True: attempt to load plugins. 
readSettings=False, # True: read standard settings files. 
silent=False,   # True: don't print signon messages. 
verbose=False)  # True: print informational messages. 

ggg = bridge.globals() 
print dir(bridge) 
ccc = bridge.openLeoFile(D:/test.leo)

g.es(ccc.rootPosition())

I have also played with:

g.app.newCommander()

But still no success.

Did anyone find a way to do this?
Thank you!

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


Re: Using leoBridge from within Leo, or using several outlines from a main one

2014-05-05 Thread gatesphere

On 5/5/2014 6:56 AM, Fidel N wrote:

Hi:

Im trying to use another outline from within the current outline.
Basically,the objective is to have another outline nodes and tree 
loaded as virtual nodes so I can work with them from within the 
currently open outline.
The thing is that several outlines use and edit those nodes, so 
ideally I should call the database outline from within many 
different Leo outlines.


The starting idea is to use leoBridge in this fashion, but it doesnt 
work as expected:


import leo.core.leoBridge as leoBridge

bridge = leoBridge.controller(gui='nullGui',
loadPlugins=False,  # True: attempt to load plugins.
readSettings=False, # True: read standard settings files.
silent=False,   # True: don't print signon messages.
verbose=False)  # True: print informational messages.
ggg = bridge.globals()
print dir(bridge)
ccc = bridge.openLeoFile(D:/test.leo)

g.es(ccc.rootPosition())

I have also played with:

g.app.newCommander()

But still no success.

Did anyone find a way to do this?
Thank you!
--

If you don't mind having the 'database' outlines open in separate tabs, 
you can access their commanders from within the current outline:



for com in g.app.commanders():

   if 'test.leo' in com.fileName():

 dc = com

 break


## dc is now the commander of your database, use it just like c



There's probably a way to get Leo to open the file with a script too -- 
but I don't know it off the top of my head.


Hope this helps,
--Jake

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


Re: Why Leo is not yet ready for prime time (for most users)

2014-05-05 Thread 'Terry Brown' via leo-editor
I think why Leo behaves as it does and how it should behave are
complicated by the problem of defining what Leo is.

Config. user friendliness wise I think there's a possible middle way
solution where we make the Leoine way easy for non-technical users.

I.e. a settings menu with a hierarchy that lets you select
Settings -- Appearance -- Colors -- Backgrounds

etc.

I think we should get that far and then decide if more GUI is needed,
or if the user can be expected to edit a list of background colors.
Note providing a visual color picker would be a separate issue, I'm
just talking about whether we can ask the user to edit a Leo outline to
change scalar values or not.

Anyway, as a first step, I've just closed
https://bugs.launchpad.net/leo-editor/+bug/555014

Settings - Open Personal Settings will now create myLeoSettings.leo if
it doesn't already exist.

Currently the created outline looks like this:

  Settings README
  @settings
  @enabled-plugins
  @keys
  @shortcuts
  
  myLeoSettings.leo personal settings file created Mon May  5 09:21:51 2014
  
  Only nodes that are descendants of the @settings node are read.
  
  Only settings you need to modify should be in this file, do
  not copy large parts of leoSettings.py here.
  
  For more information see http://leoeditor.com/customizing.html

(with no actual shortcuts defined in @shortcuts, just a comment about
how to do it).

More could be added.

Cheers -Terry

On Sat, 3 May 2014 20:15:17 -0700 (PDT)
duf...@gmail.com wrote:

 I am a long-time lurker on this newsgroup, and I have noticed that in
 the last few months there have been significant improvements to Leo,
 in the hopes of making it more accessible to the non-technical crowd.
 It was certainly a move in the right direction but, alas, I think it
 was not enough. The point of my argument is that Leo is still too 
 technically-oriented, and this alienates so many potential users. You
 just have to read the posts on this newsgroup (as I have been doing
 for a long time), to realize that people with little or no
 programming experience are bound to find major difficulties in using
 Leo, from the very beginning. Just trying to configure the simplest
 (UI-related) settings is a major challenge.
 This issue was already raised in the past, but is yet to be solved.
 
 Why can't we (non-technical people) be relieved with having to tinker
 with the internal workings of Leo? Come to think of it, the
 overwhelming majority of modern programs are totally GUI-based, so
 that the settings can be easily changed via menus. Why can't we have
 this in Leo too, instead of having to learn technical jargon and
 manually modify settings files? I really don't get it.
 
 Please, consider doing something radical about it (e.g. refurbishing
 the default menus with all the main commands and settings, at least),
 or realistically Leo might be bound for extinction.
 
 All the best,
 
 Duf
 

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


Re: Using leoBridge from within Leo, or using several outlines from a main one

2014-05-05 Thread Fidel N
Hey Jake, as said on the chat, big thanks. After playing with this I am 
facing a problem that looks like a bug to me:

The new commander cant handle 'dc.all_unique_positions():' or any other 
position generator function whatsoever.
Am I doing something wrong? Here is the code:

for com in g.app.commanders():
if 'I_Programming.leo' in com.fileName():
dc = com
break

for child in dc.all_unique_positions():
g.es(child.h)

This actually will only print the root node header on the Log pane, instead 
of the expected (all positions).

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


Re: Using leoBridge from within Leo, or using several outlines from a main one

2014-05-05 Thread Fidel N
Ok, after the discussion on the chat, here is the solution (thanks for your 
help everyone):
This script opens a Leo file, and traverses its nodes.

exists=0

for com in g.app.commanders():

if 'I_Programming.leo' in com.fileName():

dc = com

exists=1

break


if not exists:

c2 = g.openWithFileName('D:/Dropbox/MY LEO FILES/LEO 
FILES/I_Programming/I_Programming.leo',old_c=c)

 for com in g.app.commanders():

if 'I_Programming.leo' in com.fileName():

dc = com

exists=1

break


for child in dc.all_unique_positions():

g.es(child.h)


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


Re: Why Leo is not yet ready for prime time (for most users)

2014-05-05 Thread dufriz
Thanks for the explanation, Terry.
I think the solution lies in the middle ground that you propose, and which 
I was already looking forward to. But I thought it was going to be 
implemented months ago! Things seem to have stalled, after an initial 
flurry of activity (videocasts, etc) in the right direction.

Leo's settings can by all means remain exactly as they are, with no problem 
whatsoever, provided that there is also a more user friendly way of 
accessing them, so that the same settings can be accessed in a more 
humanly readable way.
As things stand today, the situation a bit too intricate, and what the new 
user experiences is a feeling of confusion. Complexity tends to be 
overwhelming and to put off people. Also, why complexity, when things could 
be simplified with no loss?
Hiding at least part of the complexity under the hood could be a major 
improvement, I believe.



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


Re: Why Leo is not yet ready for prime time (for most users)

2014-05-05 Thread 'Terry Brown' via leo-editor
On Mon, 5 May 2014 10:06:45 -0700 (PDT)
duf...@gmail.com wrote:

 Thanks for the explanation, Terry.
 I think the solution lies in the middle ground that you propose, and
 which I was already looking forward to. But I thought it was going to
 be implemented months ago! Things seem to have stalled, after an
 initial flurry of activity (videocasts, etc) in the right direction.

Yes, it has definitely stalled, rather than been completed and failing
to be what you were hoping for.  I'm very busy these days... maybe next
month it won't be so bad, maybe.

Cheers -Terry

 Leo's settings can by all means remain exactly as they are, with no
 problem whatsoever, provided that there is also a more user friendly
 way of accessing them, so that the same settings can be accessed in a
 more humanly readable way.
 As things stand today, the situation a bit too intricate, and what
 the new user experiences is a feeling of confusion. Complexity tends
 to be overwhelming and to put off people. Also, why complexity, when
 things could be simplified with no loss?
 Hiding at least part of the complexity under the hood could be a
 major improvement, I believe.
 
 
 

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