biscuit: AttributeError: 'TclError' object has no attribute 'message'
Bug
Describe the bug
I do python biscuit
and it shows me that:
Traceback (most recent call last):
File "C:\Program Files\Python311\Lib\site-packages\tkextrafont\__init__.py", line 118, in load
window.tk.eval("package require extrafont")
_tkinter.TclError: extra characters after close-brace
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "C:\Users\Administrator\Downloads\Biscuit-main\Biscuit-main\biscuit\__main__.py", line 15, in <module>
app = App(dir=dir)
^^^^^^^^^^^^
File "C:\Users\Administrator\Downloads\Biscuit-main\Biscuit-main\biscuit\app.py", line 36, in __init__
self.setup()
File "C:\Users\Administrator\Downloads\Biscuit-main\Biscuit-main\biscuit\app.py", line 48, in setup
self.setup_configs()
File "C:\Users\Administrator\Downloads\Biscuit-main\Biscuit-main\biscuit\app.py", line 93, in setup_configs
self.settings = Settings(self)
^^^^^^^^^^^^^^
File "C:\Users\Administrator\Downloads\Biscuit-main\Biscuit-main\biscuit\core\settings\__init__.py", line 31, in __init__
self.setup_properties()
File "C:\Users\Administrator\Downloads\Biscuit-main\Biscuit-main\biscuit\core\settings\__init__.py", line 64, in setup_properties
self.setup_font()
File "C:\Users\Administrator\Downloads\Biscuit-main\Biscuit-main\biscuit\core\settings\__init__.py", line 76, in setup_font
self.firacodefont = extra.Font(file=os.path.join(self.base.resdir, "fonts/firacode/firacode.ttf"), family="firacode")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Python311\Lib\site-packages\tkextrafont\__init__.py", line 90, in __init__
load(root)
File "C:\Program Files\Python311\Lib\site-packages\tkextrafont\__init__.py", line 120, in load
if "libfontconfig" in e.message:
^^^^^^^^^
AttributeError: 'TclError' object has no attribute 'message'
System Information
- OS: Windows
- Python Version: 3.11.4
About this issue
- Original URL
- State: closed
- Created a year ago
- Comments: 19 (11 by maintainers)
Actually CustomTkinterTitlebar only works for windows(I can’t test on any other platform)
It doesn’t. I think it’s because when you call
.wm_overrideredirect(True)
it tells the window manager, to disregard that window, and therefore the window will have no idea about the stacking order.No, but judging from my conclusion above, it is probably not possible 😦(
@littlewhitecloud seems the issue has been fixed, receiving some info from @rdbende, I can say that this is more of an issue with the font, some are not supported. I have removed the unnecessary fonts, let me know if you test again!
No idea what happened, resizing works now, and the menus doesn’t close immediately. However, they now can’t be dismissed at all, and the items can’t be activated.
@littlewhitecloud thanks for testing out! the current titlebar works notso fine and i had to reconfigure all window manager features manually when i did it, would check CustomTkinterTitlebar at a point and see if it can manage this better!
about the border, the only reason it was added was for the resizing feature of window, which was lost after
overrideredict
flag. Maybe can add a toggle option for the color in settings later!also comments on the CustomTkinterTitlebar, I cant say much about the padding issue there since I have not worked with win32 API. Seems the solution is pretty windows specific, it should be cross-platform at a point, so focus on that too 😃
@rdbende oh yess my bad! it was
but if this one was caused by the specific font, it shall be fixed by now i hope
@littlewhitecloud no changes were made to the libs used, they are used as they are. this one specific lib that is throwing an error here is
tkextrafont
. I will let you know of any updates!@littlewhitecloud Thank you for reporting this error! ❤ While I thought this was caused due to Python version
3.11.4
(maybe due to tcl updates, I was running3.11.3
), I tried to update Python and check again, but I was unable to reproduce the error. I will look into it, and test it in a few more machines!