I am observing the same problem for several weeks too:
---
** isPython3: True
Leo 4.11 devel, build 5514, 2012-11-23 08:01:18
Python 3.3.0, qt version 4.8.3
linux
setting leoID from os.getenv('USER'): 'halir'
load dir: /usr/local/Sources/leo/leo/core
global config dir: /usr/local/Sources/leo/leo/config
home dir: /home/halir
reading settings in /usr/local/Sources/leo/leo/config/leoSettings.leo
reading settings in /home/halir/.leo/myLeoSettings.leo
reading settings in /home/halir/.leo/myLeoSettings.leo
unexpected exception in g.importFromPath(plain)
Traceback (most recent call last):
File "/usr/local/Sources/leo/leo/core/leoGlobals.py", line 5695, in importFromPath
data = imp.find_module(moduleName,[path]) # This can open the file.
File "/usr/lib/python3.3/imp.py", line 203, in find_module
package_directory = os.path.join(entry, name)
File "/usr/lib/python3.3/posixpath.py", line 92, in join
"components.") from None
TypeError: Can't mix strings and bytes in path components.
Can not import plain
---
After little investigation inside importFromPath() [in leoGlobals.py], it seems that "path" makes the problem. At least if I print both moduleName and path around line 5684, I see:
---
plain
b'/usr/local/Sources/leo/leo/modes'
---
I don't know leo internals enough to provide a proper fix but after deleting the problematic(?) line
path = g.toEncodedString(path)
the exception disappears and I see
---
plain
/usr/local/Sources/leo/leo/modes
---
as expected. Hope this helps...
Radim