Thank you Edward, Ville and everyone else who contributes to keeping
leo a vibrant project. Your efforts are appreciated. :)
Tip for windows users who don't want to change their shortcuts with
every release, and still retain the release number on extracted
folder:
1. unpack leo-x.x.x.zip to %pythonpath%\lib\site-packages
2. Create a "Junction Link" from
%pythonpath%\lib\site-packages\leo-x.x.x to .\leo
3. Set leo shortcut to %pythonpath%\lib\site-packages\leo (and leave
it there evermore)
The program I like for creating junctions is LinkShellExtension -
http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html -
not open source but has a fairly liberal use license, even in
commercial settings.
NTFSLink is open source, but doesn't work on 64bit machines -
http://elsdoerfer.name/=ntfslink
cheers,
--
-matt
> Leo 4.6.1 final is now available at:
> http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106
The debian/ubuntu package is also ready:
http://ppa.launchpad.net/villemvainio/ppa/ubuntu/pool/main/l/leo/leo_4.6.1-1_all.deb
Please upload that to sourceforge as well.
And don't neglect the opportunity to announce at the blog ;-).
--
Ville M. Vainio
http://tinyurl.com/vainio
The debian/ubuntu package is also ready:
http://ppa.launchpad.net/villemvainio/ppa/ubuntu/pool/main/l/leo/leo_4.6.1-1_all.deb
Please upload that to sourceforge as well.
And don't neglect the opportunity to announce at the blog ;-).
> I am unable to open my main .leo file with 4.6.1 (using the qt plugin,
> although the message seems to be Tk related. I can open smaller leo
> files):
The message indicates your file has uAs that contain pickled tk
"variables", whatever that is. I'd try disabling some plugins (esp.
cleo) and seeing if that works. But this is probably harmless since
they are reported as "ignored".
Terry might be able to give more accurate info. Can you get the Tk
version up? If you can, you can use it to strip away the uA, hopefully
emerging with a "clean" document.
> I am unable to open my main .leo file with 4.6.1 (using the qt plugin,
> although the message seems to be Tk related. I can open smaller leo
> files):
>
> Exception AttributeError: "TkPickleVar instance has no attribute
> '_tk'" in <bound method TkPickleVar.__del__ of <cleo.TkPickleVar
> instance at 0x0250D558>> ignored
If it's working as intended, this is just a warning message, not an
error that stops your file loading.
uAs are unpickled on load, so if they contain pickles of objects which
are no longer defined, this happens. I think prior to 4.6.x some Tk
stuff was being imported even when you're using Qt, possibly masking
the problem. Pickling any object other than core Python types into uAs
is a bad idea of course, it was something cleo did from way back.
Anyway, as far as I know Edward and / or I changed the uA loading to
ignore failed unpicklings.
Is that the whole Traceback you supplied in the email?
Cheers -Terry
> That is the short version. When I try passing the file name to
> launchLeo.py, I get that issue plus more:
I'll fix this is in 46-maint branch. Stay tuned.
> I am unable to open my main .leo file with 4.6.1 (using the qt plugin,
> although the message seems to be Tk related. I can open smaller leo
> files):
Can you please try:
bzr branch lp:~leo-editor-team/leo-editor/46-maint
run launchLeo.py, and try to open the same file.
Ah, this is still with us, and also on Windows. We probably should
extend the following fix to windows as well:
Other guis-->@thin tkGui.py-->frame classes-->class
leoTkinterTreeTab-->Tabs...-->tt.setNames
# This crashes on recent Ubuntu versions.
# It may be a Tk bug.
if not sys.platform.startswith('linux'):
tt.chapterMenu.setitems(names)
> Ah, this is still with us, and also on Windows. We probably should
> extend the following fix to windows as well:
>
> Other guis-->@thin tkGui.py-->frame classes-->class
> leoTkinterTreeTab-->Tabs...-->tt.setNames
>
> # This crashes on recent Ubuntu versions.
> # It may be a Tk bug.
> if not sys.platform.startswith('linux'):
> tt.chapterMenu.setitems(names)
For reference:
https://bugs.launchpad.net/leo-editor/+bug/397433
> From the package installer "included files" tab I deduced that you
> launch it by executing /usr/bin/leo. This failed with the message:
Either that, or from your application menu under "development". Or,
you can create a launcher of your own. Or, click a .leo file. If one
of these won't work, it's a new bug I missed ;-).
> keybindings requires the Pmw module. Official distributions contain
> this module in Leo's extensions folder, but this module may be missing
> if you get Leo from cvs.
>
> From the "included files" tab in the package installer I see that the
> install did not create any "extensions" folder and did not include
> Pmw.
I can see that you have 'keybindings.py' plugin enabled. Were you
trying to use qt or tk ui? This is a tk-only plugin that goes ahead
and tries to import pmw & tk, even if you were using qt ui. You should
probably disable that plugin if you are not using it.
'extensions' folder is intentionally not shipped in the debian
package, as doing that would be quite a non-debianic thing to do.
> So I used Synaptic to install:
> python-pmw (version 1.3.2-3) will be installed
> Now I can run Leo 4.6.1. There are errors, but Leo seems fairly
> functional.
The errors you get are probably harmless, caused by some files being
read only. If you do get actual exceptions, report them as bugs.
> I'm happy with this, but other people might have trouble.
Our consolation is that newcomers probably won't have additional
plugins specified right from the start.
> From the package installer "included files" tab I deduced that you
> launch it by executing /usr/bin/leo. This failed with the message:
>
> keybindings requires the Pmw module. Official distributions contain
> this module in Leo's extensions folder, but this module may be missing
> if you get Leo from cvs.
Fix for this was pushed to 46-maint, so it will be on 4.6.2. This was
indeed pretty bad situation, because a plugin that was implemented
according to guidelines in:
Plugins--> Templates: these show recommended ways of defining
plugins.-->Template for Tk plugin with per-commander controller
class--><< imports >>
prevented the whole Leo from starting up if pmw was not available. The
problematic line was:
Pmw = g.importExtension('Pmw',
pluginName=__name__,verbose=True,required=True)
I removed that "fatal" message (failing to load a plugin should never
be fatal), and fixed up the scenario of missing pmw a bit. Now, if you
have no pmw, you'll get a warning and Qt ui.
I removed that "fatal" message (failing to load a plugin should never
be fatal), and fixed up the scenario of missing pmw a bit. Now, if you
have no pmw, you'll get a warning and Qt ui.
> I am unable to open my main .leo file with 4.6.1 (using the qt plugin,
> although the message seems to be Tk related. I can open smaller leo
> files):
Any change you could try opening the same file on current trunk
version (bzr branch lp:leo-editor)? I think this should be fixed now
(on both 46-maint and trunk), but I'd like to have some confirmation
before we release 4.6.2...