Re: Help! Messing with UI settings.

2014-09-11 Thread Edward K. Ream
On Wed, Sep 10, 2014 at 9:21 PM, 'Terry Brown' via leo-editor
 wrote:

>> Yup.  It is, in fact, necessary to know Qt stylesheets to change
>> background colors ;-)
>
> I think we can shoot for the best of both worlds here, the template
> system can provide a tree of simple Leo settings for all the simple
> design elements (colors, fonts, font sizes, border widths, etc.)  If
> you want a gradient fill that changes when you hover over a widget,
> *then* you'd need to hack the stylesheet yourself, but for the core
> stuff, a simple user editable tree (Leo outline) of settings should be
> possible.

I agree.  In fact, Leo can and should make settings even easier, as
I'll explain in a new thread.

> Although I'm not thinking of combo boxes and tick boxes immediately
> (although they might not be that hard to layer on top of @color and
> @string nodes etc.) I think the simple menu taking you to the right
> part of a simple settings tree for things like colors, fonts, font
> sizes, border widths, etc. will help a lot.  That really is the first
> non-bug fixing thing I want to spend Leo time on, I just wish I had
> more of it.  I get tired of hearing myself say I'm going to do X and
> not getting it done.

A good idea.  And it's compatible with the changes that are coming soon.

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-09-10 Thread 'Terry Brown' via leo-editor
On Wed, 10 Sep 2014 17:27:28 -0500
"Edward K. Ream"  wrote:

> On Thu, Aug 14, 2014 at 11:48 AM, Fidel N 
> wrote:
> 
> > I also asked for a settings GUI, because IMO, this is screening out

[snip]

> 3. The most important point you raise here is about the necessity of
> learning Qt stylesheets in order to change settings.
> 
> This isn't great, but what we had before was worse: a huge number of
> settings that modified various aspects of Leo's appearance, without
> either the power or generality of Qt style sheets.
>
> > I know someone will think "its not necessary to know pyqt to change
> > the background colors", but I have been there, and otherwise you
> > don't really know what you are touching // how to edit that.
> 
> Yup.  It is, in fact, necessary to know Qt stylesheets to change
> background colors ;-)

I think we can shoot for the best of both worlds here, the template
system can provide a tree of simple Leo settings for all the simple
design elements (colors, fonts, font sizes, border widths, etc.)  If
you want a gradient fill that changes when you hover over a widget,
*then* you'd need to hack the stylesheet yourself, but for the core
stuff, a simple user editable tree (Leo outline) of settings should be
possible.

> > Also, having to restart the app for every change to make effect
> > makes everything much slower (for a newbie), all of this resulting
> > in non programmers running away from Leo as fast as they can.
> 
> There should be a faq about this.  The trick is to edit the settings
> in one copy of Leo, and test in another.   If the test file is small,
> this saves a lot of time.

This is true in general for settings - for style related stuff (colors,
fonts, font sizes, border widths, etc.) restarting is not necessary.

> > Just a few combo boxes with option lists, + tick boxes for boolean
> > values, would make a huge difference. If the need to restart Leo
> > was removed, that would make things perfect.
> 
> In general, I think this is a bad idea, but an exception might be made
> for the most important items: font, font size and maybe some colors.

Although I'm not thinking of combo boxes and tick boxes immediately
(although they might not be that hard to layer on top of @color and
@string nodes etc.) I think the simple menu taking you to the right
part of a simple settings tree for things like colors, fonts, font
sizes, border widths, etc. will help a lot.  That really is the first
non-bug fixing thing I want to spend Leo time on, I just wish I had
more of it.  I get tired of hearing myself say I'm going to do X and
not getting it done.

I would think that there are some settings which will always require a
restart, seeing plugins can use settings in just about anyway they
want, and don't monitor them for changes later.

Cheers -Terry

> No way am I going to build this back into Leo itself, but it would be
> conceivable as a plugin.  All contributions gratefully accepted ;-)
> However, this plugin would really like to update the settings
> immediately, which brings us to...
> 
> Allowing settings to take effect immediately would be a major project,
> especially considering how many setting there are.  Many settings are
> cached for speed, and such caches (ivars of some classes) would have
> to be updated.  In other cases, gui widgets must be reconfigure based
> on the settings.
> 
> All this is certainly doable, but it would be a major project, at
> least as big as the recent reorg, and possibly larger.  At present, I
> am focused on getting Leo 4.12 out the door, so my appetite for this
> project is meager at present.
> 
> > But then again, this is a dev time problem, so only thing I can do
> > till I get some extra time to develop that myself, is to remain
> > extremely grateful for Leo as is right now.
> 
> :-) Thanks for your patience.
> 
> Edward
> 

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-09-10 Thread Edward K. Ream
On Thu, Aug 14, 2014 at 11:48 AM, Fidel N  wrote:

> I also asked for a settings GUI, because IMO, this is screening out a lot of
> people that would otherwise use Leo for non-programming related stuff.

Leo once had a settings gui.  I ripped it out because it was a
mistake.  We aren't going there again.  But see below.

> Something as simple as Notepad++ settings/preferences menu, just a simple
> tick menu, would make much more people remain in Leo.

Imo, Leo outlines are the one and only correct way to organize huge
numbers of settings.  You won't change my mind about that.  Leo has
hundreds, if not thousands of settings. A flat organization would
suck.  And it wouldn't solve the more serious problems you mention
below.

> Even if you love the concept, clones, etc, if you must learn python and pyqt
> and Leo structures and Leo @node_id inheritance before you can edit that,
> you simply wont.

There are two, no three issues here:

1. The Leo devs realized for the last major release that clones were a
bad idea in leoSettings.leo.  All newbies want and need to play with
settings, and few if any newbies are comfortable with clones.  So we
decided that every setting would appear exactly once in
LeoSettings.leo.  Afaik, that has never created any problems.
Furthermore, users are always free to use clones in their
myLeoSettings.leo.

2. Terry has created a really nifty templating scheme.  It's on my
list to make sure that this scheme is explained clearly at the top of
LeoSettings.leo, somewhere in the "About this file" tree.

3. The most important point you raise here is about the necessity of
learning Qt stylesheets in order to change settings.

This isn't great, but what we had before was worse: a huge number of
settings that modified various aspects of Leo's appearance, without
either the power or generality of Qt style sheets.

> I know someone will think "its not necessary to know pyqt to change the
> background colors", but I have been there, and otherwise you don't really
> know what you are touching // how to edit that.

Yup.  It is, in fact, necessary to know Qt stylesheets to change
background colors ;-)

> Also, having to restart the app for every change to make effect makes
> everything much slower (for a newbie), all of this resulting in non
> programmers running away from Leo as fast as they can.

There should be a faq about this.  The trick is to edit the settings
in one copy of Leo, and test in another.   If the test file is small,
this saves a lot of time.

> Just a few combo boxes with option lists, + tick boxes for boolean values,
> would make a huge difference. If the need to restart Leo was removed, that
> would make things perfect.

In general, I think this is a bad idea, but an exception might be made
for the most important items: font, font size and maybe some colors.

No way am I going to build this back into Leo itself, but it would be
conceivable as a plugin.  All contributions gratefully accepted ;-)
However, this plugin would really like to update the settings
immediately, which brings us to...

Allowing settings to take effect immediately would be a major project,
especially considering how many setting there are.  Many settings are
cached for speed, and such caches (ivars of some classes) would have
to be updated.  In other cases, gui widgets must be reconfigure based
on the settings.

All this is certainly doable, but it would be a major project, at
least as big as the recent reorg, and possibly larger.  At present, I
am focused on getting Leo 4.12 out the door, so my appetite for this
project is meager at present.

> But then again, this is a dev time problem, so only thing I can do till I
> get some extra time to develop that myself, is to remain extremely grateful
> for Leo as is right now.

:-) Thanks for your patience.

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread 'Terry Brown' via leo-editor
On Thu, 14 Aug 2014 15:14:46 -0500
"Edward K. Ream"  wrote:

> On Thu, Aug 14, 2014 at 3:00 PM, 'Terry Brown' via leo-editor
>  wrote:
> 
> 
> >> > So, we need a git commit hook to update version.py on every
> >> > commit.
> 
> > I have a draft hook written, will share soon.

Ok, so this is way more complicated than it seems :-)

1) We can't put the sha1 of the commit into the version file, because
that would change the version file, which would change the sha1...

So I propose identifying builds with text of the form: 20140814161038

2) I've written two hooks, a pre-commit hook that checks if there's
anything to commit, and if there is, updates
leo/core/commit_timestamp.json, which looks like this:

{
"asctime": "Thu Aug 14 16:10:38 2014", 
"parent": "a69585e26f8162e652bee9eb6d982e55ec615e0e", 
"timestamp": "20140814161038"
}

hmmm, it occurs to me it should be possible to include the commit
message in here, oddly enough.

and a commit-msg hook that grabs the Leo Build ID (timestamp) from here,
and adds it to the commit message.

So when a user complains about build 20140814161038, a quick

git log --grep=20140814161038

will report the commit.  I usually browse the repo with gitk, which can
also search for these build IDs easily.

3) Finally, I said this was complicated, hooks execute arbitrary code
on your computer, so git won't install them automatically, hence:
leo/extensions/hooks/install_hooks.py which a developer must run to
install the hooks.

Oh, and the hooks are written in Python and start with
#!/usr/bin/python and install_hooks.py does 
os.chmod(data[hook+"PATH"], 0o744) but I don't know if that's
sufficient on Windows.

Cheers -Terry
  
> Excellent.  Thanks you.
> 
> I'm investigating what happens without any settings file, except for
> the file being loaded.
> 
> Edward
> 

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread Edward K. Ream
On Thu, Aug 14, 2014 at 3:00 PM, 'Terry Brown' via leo-editor
 wrote:


>> > So, we need a git commit hook to update version.py on every commit.

> I have a draft hook written, will share soon.

Excellent.  Thanks you.

I'm investigating what happens without any settings file, except for
the file being loaded.

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread 'Terry Brown' via leo-editor
On Thu, 14 Aug 2014 14:51:53 -0500
"Edward K. Ream"  wrote:

> On Thu, Aug 14, 2014 at 10:58 AM, 'Terry Brown' via leo-editor
>  wrote:
> 
> 
> > It's not ok to require that people use `git` to get it, that's
> > unreasonable.
> 
> I agree.  It's not a requirement--it's just the easiest, quickest
> way :-)
> 
> > So, we need a git commit hook to update version.py on every commit.
> 
> Yes.  This will save lots of time and confusion in the long run.  I've
> put it my immediate to-do list, unless you would like to take a
> crack...

I have a draft hook written, will share soon.

Cheers -Terry


> Edward
> 

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread Edward K. Ream
On Thu, Aug 14, 2014 at 10:58 AM, 'Terry Brown' via leo-editor
 wrote:


> It's not ok to require that people use `git` to get it, that's
> unreasonable.

I agree.  It's not a requirement--it's just the easiest, quickest way :-)

> So, we need a git commit hook to update version.py on every commit.

Yes.  This will save lots of time and confusion in the long run.  I've
put it my immediate to-do list, unless you would like to take a
crack...

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread 'Terry Brown' via leo-editor
On Thu, 14 Aug 2014 10:16:32 -0700 (PDT)
Dufriz  wrote:

> On Thursday, 14 August 2014 17:49:08 UTC+1, Fidel N wrote:
> >
> > I knew very few of programming, nothing of python, and now I know
> > both, because I had the time, loved the concept of Leo, and could
> > devote my time to study both.
> >
> 
> I intend to take the same path as you. I just wish I have the time
> and the patience required.
>  
> 
> I also asked for a settings GUI, because IMO, this is screening out a
> lot 
> > of people that would otherwise use Leo for non-programming related
> > stuff. Something as simple as Notepad++ settings/preferences menu,
> > just a simple tick menu, would make much more people remain in Leo.
> > Even if you love the concept, clones, etc, if you must learn python
> > and pyqt and Leo structures and Leo @node_id inheritance before you
> > can edit that, you simply wont.
> > I know someone will think "its not neccesary to know pyqt to change
> > the background colors", but I have been there, and otherwise you
> > dont really know what you are touching // how to edit that.
> > Also, having to restart the app for every change to make effect
> > makes everything much slower (for a newbie), all of this resulting
> > in non programmers running away from Leo as fast as they can.
> > Just a few comboboxes with option lists, + tickboxes for boolean
> > values, would make a huge difference. If the need to restart Leo
> > was removed, that would make things perfect.
> >
> > But then again, this is a dev time problem, so only thing I can do
> > till I get some extra time to develop that myself, is to remain
> > extremely grateful for Leo as is right now.
> >
> 
> I do believe that a middle ground could be struck for the management
> of settings, between the excessively dumbed down UI of all other
> general-use programs and the overly complicated (as in the current

Indeed the previously discussed blueprint for making UI config easier
is a middle ground along the lines you describe, and once the tricky
bits are done, it should be quite easy to set it up to cover a lot
config. options very quickly.  The tricky parts are copying sufficient
but not excessive content from LeoSettings to myLeoSettings, and
accounting for themes.  It's so easy to think "tell the user to move
all but one theme node out of their @settings tree"... but that's back
where we started.  Anyway, I'll try and find time.

Cheers -Terry

> case) Qt-based-only interface which excludes those who are not
> advanced programmers. I, for one, have programming experience, though
> not with Python/PyQt, so I am not at all scared of editing text files
> for settings. HOWEVER, don't you think that the present method of
> managing settings is way too complicated, and unnecessarily so? I
> mean, the user has to manually modify the text-based settings (which
> is OK, although it is not at all easy) but then he also has to *run a
> script in order to compile the settings via the script*. Come on.
> Does anyone think that this is even remotely normal?!?
> (No hard feelings, I hope)
> 
> The middle way I was hinting to would be having something similar to
> this:
> 
> color-background-body-pane:
> color-foreground-body-pane:
> font-size-text-body-pane:
> font-type-body-pane:
> color-background-log-pane:
> color-foreground-log-pane:
> font-size-text-log-pane:
> font-type-log-pane:
> 
> and so on...
> 
> The settings management would be still text-based, but it would be:
> 1) all within one node
> 2) no scripts required
> 3) clearly understandable variable names
> 
> In short, it would be something humanly readable and understandable.
> 
> 

-- 
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: Help! Messing with UI settings.

2014-08-14 Thread Dufriz
On Thursday, 14 August 2014 17:49:08 UTC+1, Fidel N wrote:
>
> I knew very few of programming, nothing of python, and now I know both, 
> because I had the time, loved the concept of Leo, and could devote my time 
> to study both.
>

I intend to take the same path as you. I just wish I have the time and the 
patience required.
 

I also asked for a settings GUI, because IMO, this is screening out a lot 
> of people that would otherwise use Leo for non-programming related stuff.
> Something as simple as Notepad++ settings/preferences menu, just a simple 
> tick menu, would make much more people remain in Leo.
> Even if you love the concept, clones, etc, if you must learn python and 
> pyqt and Leo structures and Leo @node_id inheritance before you can edit 
> that, you simply wont.
> I know someone will think "its not neccesary to know pyqt to change the 
> background colors", but I have been there, and otherwise you dont really 
> know what you are touching // how to edit that.
> Also, having to restart the app for every change to make effect makes 
> everything much slower (for a newbie), all of this resulting in non 
> programmers running away from Leo as fast as they can.
> Just a few comboboxes with option lists, + tickboxes for boolean values, 
> would make a huge difference. If the need to restart Leo was removed, that 
> would make things perfect.
>
> But then again, this is a dev time problem, so only thing I can do till I 
> get some extra time to develop that myself, is to remain extremely grateful 
> for Leo as is right now.
>

I do believe that a middle ground could be struck for the management of 
settings, between the excessively dumbed down UI of all other general-use 
programs and the overly complicated (as in the current case) Qt-based-only 
interface which excludes those who are not advanced programmers. I, for 
one, have programming experience, though not with Python/PyQt, so I am not 
at all scared of editing text files for settings. 
HOWEVER, don't you think that the present method of managing settings is 
way too complicated, and unnecessarily so? I mean, the user has 
to manually modify the text-based settings (which is OK, although it is not 
at all easy) but then he also has to *run a script in order to compile the 
settings via the script*. Come on. Does anyone think that this is even 
remotely normal?!?
(No hard feelings, I hope)

The middle way I was hinting to would be having something similar to this:

color-background-body-pane:
color-foreground-body-pane:
font-size-text-body-pane:
font-type-body-pane:
color-background-log-pane:
color-foreground-log-pane:
font-size-text-log-pane:
font-type-log-pane:

and so on...

The settings management would be still text-based, but it would be:
1) all within one node
2) no scripts required
3) clearly understandable variable names

In short, it would be something humanly readable and understandable.


-- 
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: Help! Messing with UI settings.

2014-08-14 Thread Dufriz


Terry said:
>(Summary - quite possibly Dufriz is using the latest code, can't tell 
>from the log pane content) 

Precisely. The version I am running was downloaded from git itself 
yesterday or the day before. The About window (whose data I had copied into 
the post) does not report updated info about the version.

Terry said:
> Well, if you'd read the instructions, you'd have been able to get 
> frustrated at a completely different step in the process :-} :-) 
...
> Sorry about all the frustration, and to be fair with it being broken 
> by the missing "c," thing, maybe you had followed this procedure 
> at one point and understandably thought it didn't work, on account 
> of it not working :-/ 

Yes, as a matter of fact I do recall trying to run a script at one point, 
and getting an error message.

Anyway, I have now followed your latest instructions, but I still get an 
error message while running the script.

Moreover, the part of the script that I corrected as per your instructions 
was commented out. Of course I removed the leading # before running the 
script. 
Here is the error message that I get:

exception executing script
AttributeError: 'NoneType' object has no attribute 'children'

  line 471: p = self
* line 472: return len(p.v.children)
  line 473: #@+node:ekr.20031218072017.915: *4* p.getX & VNode 
compatibility traversal routines
  line 474: # These methods are useful abbreviations.

By the way, the next line below what you mentioned is commented out:
# c.selectPosition(nd)
Should I uncomment it too?

By the way, I noticed yet another commented out line, above:
#X cp = c.p

Could these be responsible for the error?


-- 
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: Help! Messing with UI settings.

2014-08-14 Thread Fidel N
Dufriz is facing the same exact problems with GUI config I had when I
joined Leo.
I knew very few of programming, nothing of python, and now I know both,
because I had the time, loved the concept of Leo, and could devote my time
to study both.

I also asked for a settings GUI, because IMO, this is screening out a lot
of people that would otherwise use Leo for non-programming related stuff.
Something as simple as Notepad++ settings/preferences menu, just a simple
tick menu, would make much more people remain in Leo.
Even if you love the concept, clones, etc, if you must learn python and
pyqt and Leo structures and Leo @node_id inheritance before you can edit
that, you simply wont.
I know someone will think "its not neccesary to know pyqt to change the
background colors", but I have been there, and otherwise you dont really
know what you are touching // how to edit that.
Also, having to restart the app for every change to make effect makes
everything much slower (for a newbie), all of this resulting in non
programmers running away from Leo as fast as they can.
Just a few comboboxes with option lists, + tickboxes for boolean values,
would make a huge difference. If the need to restart Leo was removed, that
would make things perfect.

But then again, this is a dev time problem, so only thing I can do till I
get some extra time to develop that myself, is to remain extremely grateful
for Leo as is right now.



On Thu, Aug 14, 2014 at 6:35 PM, 'Terry Brown' via leo-editor <
leo-editor@googlegroups.com> wrote:

> On Thu, 14 Aug 2014 09:26:30 -0700 (PDT)
> Chris George  wrote:
>
> > "It's not ok to require that people use `git` to get it,
> > that's unreasonable."
> >
> > Why?
> >
> > The primary target user for Leo is a programmer, is it not?
>
> No, although I can understand why someone might think that was the
> case :-)
>
> Also, there are programmers (the docutils dev. team for example) who
> are not interested in using git, and would probably regard needing to
> use it to download and try a piece of software as a reason not to try
> the software.
>
> > Perhaps
> > once the development solidifies enough and begins targeting
> > non-programmers (average user), then it might need a little dumbing
> > down of the distribution method.
> >
> > I may be a bit on the edge as a user, I use a rolling distribution
> > for my operating system so I am familiar with the model, but Leo is
> > currently fluid, and as a user that is one of its strengths to me.
> > Installing git and writing a script to pull down the latest Leo and
> > start it was simple, and I can't see it being any more difficult on
> > other platforms. I guess I see the use of git as a feature. :-)
>
> For a programmer.  I think expecting people to unzip a zip is not
> unreasonable, although it will screen out some people, but they were
> probably not going to find Leo to their liking.  Hence the problem with
> the .zip reporting misleading version info.
>
> Cheers -Terry
>
> > Chris
> >
> > On Thursday, August 14, 2014 8:59:02 AM UTC-7, Terry wrote:
> > >
> > > On Thu, 14 Aug 2014 10:40:23 -0500
> > > "Edward K. Ream" > wrote:
> > >
> > > > On Thu, Aug 14, 2014 at 9:02 AM, Dufriz  > > > >
> > > wrote:
> > > > > I am on Windows 8.1, running Python 3.3.5 with
> > > > > PyQt4-4.10.4-gpl-Py3.3-Qt4.8.5-x64.
> > > > > I am using Leo 4.11 final, build 6240.
> > > >
> > > > Thanks for this.  This looks like ancient history, though I might
> > > > be mistaken. Recent builds (from git) look like:
> > > >
> > > > Leo 4.11 final, build 6e21a6dc12f0 (branch: master), 2014-08-13
> > > > 08:30:03
> > >
> > > That's a good point of course, my comments about needing "c, "
> > > added in that call apply to the current trunk, not sure about that
> > > version.
> > >
> > > Actually Houston, we have a problem.
> > >
> > > Leo uses the model "use the trunk, it's stable" - ok
> > >
> > > It's not ok to require that people use `git` to get it, that's
> > > unreasonable.
> > >
> > > But no problem, they can use the snapshot,
> > > https://github.com/leo-editor/leo-editor/archive/master.zip
> > >
> > > But... that identifies itself in the log window as
> > >
> > > Leo 4.11 final, build 6240, 2013-11-06
> > > Python 2.7.6, PyQt version 4.8.6
> > >
> > > which is completely misleading.  It does that because it falls back
> > > on version.py or similar, I assume, when the .git directory's not
> > > present.
> > >
> > > So, we need a git commit hook to update version.py on every commit.
> > >
> > > Or, not use git-hub for snapshots, but it seems git-hub is so close
> > > to doing exactly what we need it's worth getting version reporting
> > > in git-hub snapshots to work.
> > >
> > > (Summary - quite possibly Dufriz is using the latest code, can't
> > > tell from the log pane content)
> > >
> > > Cheers -Terry
> > >
> > > > Could you pull down the latest git version?  Alternatively, you
> > > > could get a recent daily snapshot?  That way we can all be
> > > > discussing 

Re: Help! Messing with UI settings.

2014-08-14 Thread 'Terry Brown' via leo-editor
On Thu, 14 Aug 2014 09:26:30 -0700 (PDT)
Chris George  wrote:

> "It's not ok to require that people use `git` to get it, 
> that's unreasonable."
> 
> Why?
> 
> The primary target user for Leo is a programmer, is it not? 

No, although I can understand why someone might think that was the
case :-)

Also, there are programmers (the docutils dev. team for example) who
are not interested in using git, and would probably regard needing to
use it to download and try a piece of software as a reason not to try
the software.

> Perhaps
> once the development solidifies enough and begins targeting
> non-programmers (average user), then it might need a little dumbing
> down of the distribution method.
> 
> I may be a bit on the edge as a user, I use a rolling distribution
> for my operating system so I am familiar with the model, but Leo is
> currently fluid, and as a user that is one of its strengths to me.
> Installing git and writing a script to pull down the latest Leo and
> start it was simple, and I can't see it being any more difficult on
> other platforms. I guess I see the use of git as a feature. :-)

For a programmer.  I think expecting people to unzip a zip is not
unreasonable, although it will screen out some people, but they were
probably not going to find Leo to their liking.  Hence the problem with
the .zip reporting misleading version info.

Cheers -Terry

> Chris
> 
> On Thursday, August 14, 2014 8:59:02 AM UTC-7, Terry wrote:
> >
> > On Thu, 14 Aug 2014 10:40:23 -0500 
> > "Edward K. Ream" > wrote: 
> >
> > > On Thu, Aug 14, 2014 at 9:02 AM, Dufriz  > > > 
> > wrote: 
> > > > I am on Windows 8.1, running Python 3.3.5 with 
> > > > PyQt4-4.10.4-gpl-Py3.3-Qt4.8.5-x64. 
> > > > I am using Leo 4.11 final, build 6240. 
> > > 
> > > Thanks for this.  This looks like ancient history, though I might
> > > be mistaken. Recent builds (from git) look like: 
> > > 
> > > Leo 4.11 final, build 6e21a6dc12f0 (branch: master), 2014-08-13 
> > > 08:30:03 
> >
> > That's a good point of course, my comments about needing "c, "
> > added in that call apply to the current trunk, not sure about that
> > version. 
> >
> > Actually Houston, we have a problem. 
> >
> > Leo uses the model "use the trunk, it's stable" - ok 
> >
> > It's not ok to require that people use `git` to get it, that's 
> > unreasonable. 
> >
> > But no problem, they can use the snapshot, 
> > https://github.com/leo-editor/leo-editor/archive/master.zip 
> >
> > But... that identifies itself in the log window as 
> >
> > Leo 4.11 final, build 6240, 2013-11-06 
> > Python 2.7.6, PyQt version 4.8.6 
> >
> > which is completely misleading.  It does that because it falls back
> > on version.py or similar, I assume, when the .git directory's not
> > present. 
> >
> > So, we need a git commit hook to update version.py on every commit. 
> >
> > Or, not use git-hub for snapshots, but it seems git-hub is so close
> > to doing exactly what we need it's worth getting version reporting
> > in git-hub snapshots to work. 
> >
> > (Summary - quite possibly Dufriz is using the latest code, can't
> > tell from the log pane content) 
> >
> > Cheers -Terry 
> >
> > > Could you pull down the latest git version?  Alternatively, you
> > > could get a recent daily snapshot?  That way we can all be
> > > discussing recent code.  If you use git you can instantly get any
> > > improvements. 
> > > 
> > > Edward 
> > > 
> >
> 

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread Chris George
"It's not ok to require that people use `git` to get it, 
that's unreasonable."

Why?

The primary target user for Leo is a programmer, is it not? Perhaps once 
the development solidifies enough and begins targeting non-programmers 
(average user), then it might need a little dumbing down of the 
distribution method.

I may be a bit on the edge as a user, I use a rolling distribution for my 
operating system so I am familiar with the model, but Leo is currently 
fluid, and as a user that is one of its strengths to me. Installing git and 
writing a script to pull down the latest Leo and start it was simple, and I 
can't see it being any more difficult on other platforms. I guess I see the 
use of git as a feature. :-)

Chris

On Thursday, August 14, 2014 8:59:02 AM UTC-7, Terry wrote:
>
> On Thu, 14 Aug 2014 10:40:23 -0500 
> "Edward K. Ream" > wrote: 
>
> > On Thu, Aug 14, 2014 at 9:02 AM, Dufriz > 
> wrote: 
> > > I am on Windows 8.1, running Python 3.3.5 with 
> > > PyQt4-4.10.4-gpl-Py3.3-Qt4.8.5-x64. 
> > > I am using Leo 4.11 final, build 6240. 
> > 
> > Thanks for this.  This looks like ancient history, though I might be 
> > mistaken. Recent builds (from git) look like: 
> > 
> > Leo 4.11 final, build 6e21a6dc12f0 (branch: master), 2014-08-13 
> > 08:30:03 
>
> That's a good point of course, my comments about needing "c, " added in 
> that call apply to the current trunk, not sure about that version. 
>
> Actually Houston, we have a problem. 
>
> Leo uses the model "use the trunk, it's stable" - ok 
>
> It's not ok to require that people use `git` to get it, that's 
> unreasonable. 
>
> But no problem, they can use the snapshot, 
> https://github.com/leo-editor/leo-editor/archive/master.zip 
>
> But... that identifies itself in the log window as 
>
> Leo 4.11 final, build 6240, 2013-11-06 
> Python 2.7.6, PyQt version 4.8.6 
>
> which is completely misleading.  It does that because it falls back on 
> version.py or similar, I assume, when the .git directory's not present. 
>
> So, we need a git commit hook to update version.py on every commit. 
>
> Or, not use git-hub for snapshots, but it seems git-hub is so close to 
> doing exactly what we need it's worth getting version reporting in 
> git-hub snapshots to work. 
>
> (Summary - quite possibly Dufriz is using the latest code, can't tell 
> from the log pane content) 
>
> Cheers -Terry 
>
> > Could you pull down the latest git version?  Alternatively, you could 
> > get a recent daily snapshot?  That way we can all be discussing recent 
> > code.  If you use git you can instantly get any improvements. 
> > 
> > Edward 
> > 
>

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread 'Terry Brown' via leo-editor
On Thu, 14 Aug 2014 10:40:23 -0500
"Edward K. Ream"  wrote:

> On Thu, Aug 14, 2014 at 9:02 AM, Dufriz  wrote:
> > I am on Windows 8.1, running Python 3.3.5 with
> > PyQt4-4.10.4-gpl-Py3.3-Qt4.8.5-x64.
> > I am using Leo 4.11 final, build 6240.
> 
> Thanks for this.  This looks like ancient history, though I might be
> mistaken. Recent builds (from git) look like:
> 
> Leo 4.11 final, build 6e21a6dc12f0 (branch: master), 2014-08-13
> 08:30:03

That's a good point of course, my comments about needing "c, " added in
that call apply to the current trunk, not sure about that version.

Actually Houston, we have a problem.

Leo uses the model "use the trunk, it's stable" - ok

It's not ok to require that people use `git` to get it, that's
unreasonable.

But no problem, they can use the snapshot,
https://github.com/leo-editor/leo-editor/archive/master.zip

But... that identifies itself in the log window as

Leo 4.11 final, build 6240, 2013-11-06
Python 2.7.6, PyQt version 4.8.6

which is completely misleading.  It does that because it falls back on
version.py or similar, I assume, when the .git directory's not present.

So, we need a git commit hook to update version.py on every commit.

Or, not use git-hub for snapshots, but it seems git-hub is so close to
doing exactly what we need it's worth getting version reporting in
git-hub snapshots to work.

(Summary - quite possibly Dufriz is using the latest code, can't tell
from the log pane content)

Cheers -Terry

> Could you pull down the latest git version?  Alternatively, you could
> get a recent daily snapshot?  That way we can all be discussing recent
> code.  If you use git you can instantly get any improvements.
> 
> Edward
> 

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread Edward K. Ream
On Thu, Aug 14, 2014 at 9:02 AM, Dufriz  wrote:
> I am on Windows 8.1, running Python 3.3.5 with
> PyQt4-4.10.4-gpl-Py3.3-Qt4.8.5-x64.
> I am using Leo 4.11 final, build 6240.

Thanks for this.  This looks like ancient history, though I might be
mistaken. Recent builds (from git) look like:

Leo 4.11 final, build 6e21a6dc12f0 (branch: master), 2014-08-13 08:30:03

Could you pull down the latest git version?  Alternatively, you could
get a recent daily snapshot?  That way we can all be discussing recent
code.  If you use git you can instantly get any improvements.

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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: Help! Messing with UI settings.

2014-08-14 Thread 'Terry Brown' via leo-editor
On Thu, 14 Aug 2014 07:15:58 -0700 (PDT)
Dufriz  wrote:

> BTW, the dark theme which I am trying to modify is the *last* node of
> the myLeoSetting outline.

So in addition to what I just said, it's important that (a) the dark
theme subtree be a descendant of the @settings node in myLeoSettings,
not a sibling, and (b) that there be no other 
`@data qt-gui-plugin-style-sheet` node following the theme subtree,
although you've probably got that covered by making it the last child
of @settings.  I'd delete / disable (@@data) an other `@data
qt-gui-plugin-style-sheet` nodes in @settings just to be sure.

Cheers -Terry

-- 
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: Help! Messing with UI settings.

2014-08-14 Thread 'Terry Brown' via leo-editor
On Thu, 14 Aug 2014 07:02:52 -0700 (PDT)
Dufriz  wrote:

> I am on Windows 8.1, running Python 3.3.5 with 
> PyQt4-4.10.4-gpl-Py3.3-Qt4.8.5-x64.
> I am using Leo 4.11 final, build 6240.
> 
> I have partially obtained the color combination I was looking for,
> simply by importing Terry's solarized theme which takes care of most
> things. However, this is not to say that I have solved the
> difficulties related to the UI configuration. I am still in the dark
> as to how settings should be properly managed. It's really
> infuriating, especially when you change a setting and for some reason
> it does not take effect.
> 
> For instance, based on Terry's dark (solarized) theme 0, which I am
> trying to modify:
> I am now trying to change the background color of the minibuffer's
> edit line, to make it stand out from the surrounding background
> color. So, I go to the node mini-buffer & status (under stylesheet &
> source) and I edit the background-color parameter, setting it to
> another color (drastically different, so I can easily see if the
> change took place). Then I save and restart Leo, and the change did
> not take effect! (despite having been saved correctly).

Well, if you'd read the instructions, you'd have been able to get
frustrated at a completely different step in the process :-} :-)

The README node in the theme sub trees says:
  
  *IMPORTANT:* to change the stylesheet, edit the Leo tree under the
  `stylesheet & source` node below, not the 
  `@data qt-gui-plugin-style-sheet` node itself.
  
  Then select the `stylesheet & source` node and click the `run-script`
  button. This creates a new `@data qt-gui-plugin-style-sheet` node and
  disables the old one by adding `@@data`.

You got the first part, but not the second.  Unfortunately, when you
`run-script` on `stylesheet & source`, it calls 

   g.expand_css_constants(nd.b)

and this now needs to be changed to

   g.expand_css_constants(c, nd.b)

specifically the code in `stylesheet & source` that reads

  # make the style active
  g.app.gui.frameFactory.masterFrame.setStyleSheet(
  g.expand_css_constants(nd.b))

needs to read
  
  # make the style active
  g.app.gui.frameFactory.masterFrame.setStyleSheet(
  g.expand_css_constants(c, nd.b))
  
With that change in place, clicking run-script or hitting Ctrl-B with
the `stylesheet & source` node active should immediately *compile* and
apply your new settings.

Sorry about all the frustration, and to be fair with it being broken by
the missing "c," thing, maybe you had followed this procedure at one
point and understandably thought it didn't work, on account of it not
working :-/

> I am wondering: is there any other setting which overrides this?!?
> This is a common problem in Leo settings, from what I understand (as
> I encountered it in other settings). The user is likely to mad if he
> has to check and counter-check all these cross-referenced settings!
> 
> Anyway, these are just some the difficulties I am encountering in
> changing the settings.
> I believe a radical restucturing of the way settings are handled, or
> at least presented to the end-user, is really called for here.

I think everyone's in complete agreement with the latter view, the way
this stuff is presented to the user needs changing and there's a
blueprint for what it should look like, it's just a matter of dev.
time.  There are so many things to develop on Leo, not necessarily
deficiencies, that it's hard to know what to pick and I suspect
whatever's top of mind and most interesting seeming gets picked, but
I'll try and get the user interface to UI config. revamp rolling as my
first priority for Leo dev. time.

Cheers -Terry

> There is no point in Leo being totally configurable if the user
> cannot manage to change even the simplest settings like the UI colors!
> 

-- 
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: Help! Messing with UI settings.

2014-08-14 Thread Dufriz
BTW, the dark theme which I am trying to modify is the *last* node of the 
myLeoSetting outline.

-- 
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: Help! Messing with UI settings.

2014-08-14 Thread Dufriz
I am on Windows 8.1, running Python 3.3.5 with 
PyQt4-4.10.4-gpl-Py3.3-Qt4.8.5-x64.
I am using Leo 4.11 final, build 6240.

I have partially obtained the color combination I was looking for, simply 
by importing Terry's solarized theme which takes care of most things. 
However, this is not to say that I have solved the difficulties related to 
the UI configuration. I am still in the dark as to how settings should be 
properly managed. It's really infuriating, especially when you change a 
setting and for some reason it does not take effect.

For instance, based on Terry's dark (solarized) theme 0, which I am trying 
to modify:
I am now trying to change the background color of the minibuffer's edit 
line, to make it stand out from the surrounding background color. So, I go 
to the node mini-buffer & status (under stylesheet & source) and I edit the 
background-color parameter, setting it to another color (drastically 
different, so I can easily see if the change took place). Then I save and 
restart Leo, and the change did not take effect! (despite having been saved 
correctly).
I am wondering: is there any other setting which overrides this?!?
This is a common problem in Leo settings, from what I understand (as I 
encountered it in other settings). The user is likely to mad if he has to 
check and counter-check all these cross-referenced settings!

Anyway, these are just some the difficulties I am encountering in changing 
the settings.
I believe a radical restucturing of the way settings are handled, or at 
least presented to the end-user, is really called for here.
There is no point in Leo being totally configurable if the user cannot 
manage to change even the simplest settings like the UI colors!

-- 
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: Help! Messing with UI settings.

2014-08-14 Thread Edward K. Ream
On Wed, Aug 13, 2014 at 12:45 PM, Dufriz  wrote:
> Leo's convoluted settings system is really trying my patience.

I'm sorry you are having problems.  I can relate :-)

First, what version of Leo are you using, and what platform are you on?

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 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.