I've been busy, trying to make 5.4 perfect.  I plan no further changes 
until after 5.4 final.

*User-visible changes*

1. The pylint and pyflakes commands now write to Leo's log window, as well 
as the console. This is way more convenient than having to bring the 
console window into view.

2. When the new setting @bool run-pyflakes-on-write is True, Leo runs 
pyflakes when saving any changed file.  It's not run if the file hasn't 
actually changed.  The default setting is False--pyflakes can be intrusive.

3. Eliminated the buffer-*, register-* and 'how-many' commands, along with 
their shortcuts entries and menus. These are relics of a time when Leo was 
much less capable than it is today.

*Code changes*

1. Simplified how code gets arguments from the minibuffer. The new pattern 
uses k.get1arg and k.getNextArg. This should have been done a decade ago.

2. Deprecated g.execute_shell_commands. This is the worst kind of wrapper: 
it obscures the use of Python's subprocess module. Leo's code no longer 
uses g.execute_shell_commands.

I spent several days playing with the subprocess module.  I have a much 
greater appreciation for it now.

The PylintCommand class now actually works regardless of the value of its 
.wait ivar.  However, waiting turns out to be better, for several reasons:

A. Waiting allows the output to be sent to the log pane.

B. Without waiting the user can't tell when the command has ended, which 
feels wrong.

C. Not waiting might intermixing output, which would be very confusing.

Calling subprocess.poll at idle time might solve all these problems by 
running subprocesses sequentially, but it's not simple and it might create 
other problems.  It's not going to happen in 5.4.

3. Deprecated g.run_pylint.

The run function in pylint-leo.py now invokes pylint without having to use 
g.run_pylint.  Imo, there is no reason not to be more direct.

4. Moved commands related to external checkers from leoApp.py to 
checkerCommands.py. This is a code cleanup only.  It should have no effect 
on anyone, or any script.

4. Better git hooks, written in Python.

That's it for 5.4.

Edward

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

Reply via email to