python - fvwm-menu-desktop 在菜单创建期间挂起,使用 --get-menus 时出现 python 异常失败

标签 python ubuntu

我已经升级到 ubuntu 20.04 并拥有 fvwm,我拥有为我创建菜单的 fvwm-menu-desktop,但最近它开始表现得很糟糕:
(我使用命令fvwm-menu-desktop --desktop gnome --type gtk --theme masalla --title FvwmKde生成我的菜单
)

  • 它会生成两次菜单
  • 它在创建 Android Studio 菜单项之前挂了一半(两次),(这是提示吗?)
  • 当我尝试检查可用的桌面菜单时,它会引发 python 异常错误:
  • $ fvwm-menu-desktop --get-menus desktop
    Traceback (most recent call last):
      File "/usr/bin/fvwm-menu-desktop", line 821, in <module>
        main()
      File "/usr/bin/fvwm-menu-desktop", line 388, in main
        parsemenus(menulist, desktop)
      File "/usr/bin/fvwm-menu-desktop", line 677, in parsemenus
        parsemenu(xdg.Menu.parse(menu), name, title)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 1137, in parse
        return XMLMenuBuilder(debug).parse(filename)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 641, in parse
        menu = self.parse_menu(tree.getroot(), filename)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 659, in parse_menu
        self.parse_node(node, filename, menu)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 668, in parse_node
        menu = self.parse_menu(child, filename)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 659, in parse_menu
        self.parse_node(node, filename, menu)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 668, in parse_node
        menu = self.parse_menu(child, filename)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 659, in parse_menu
        self.parse_node(node, filename, menu)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 691, in parse_node
        parent.Rules.append(self.parse_rule(child))
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 768, in parse_rule
        return Rule(type, tree)
      File "/usr/lib/python3/dist-packages/xdg/Menu.py", line 421, in __init__
        self.code = compile(self.expression, '<compiled-menu-rule>', 'eval')
    ValueError: Name node can't be used with 'True' constant
    
    我有
    Ubuntu 20.04
    fvwm 2.6.8 于 2019 年 1 月 14 日 19:59:25 编译,支持:ReadLine、RPlay、Stroke、XPM、SVG、Shape、XShm、SM、Bidi text、Xinerama、XRender、XCursor、XFT、NLS
     mau  ~  python --version
    Python 2.7.18
     mau  ~  python3 --version
    Python 3.8.5
    
    谢谢

    最佳答案

    我知道这是一个迟到的答案,但我遇到了同样的问题。
    这是由于 Python 3.8.4 的更改导致 pyxdg 出现问题。这是错误报告:
    https://gitlab.freedesktop.org/xdg/pyxdg/-/issues/20
    这是 Menu.py 的补丁:
    https://gitlab.freedesktop.org/xdg/pyxdg/-/commit/9b913229ace838958e51a16cabc41905a2460f7b
    我更新了我的/usr/lib/python3-dist-packages/xdg/Menu.py,问题就消失了。

    关于python - fvwm-menu-desktop 在菜单创建期间挂起,使用 --get-menus 时出现 python 异常失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64770659/

    相关文章:

    python - 不可变列表属性

    python - 简单的游戏库存

    Python面向对象: how to stop procedure flow in an entire class with `return` statement?

    php - 如何在 ubuntu 16 上安装 php 5.4?

    Python/feedparser 脚本不会显示在 CGI/字符编码上

    ubuntu - 在 VSCode 和 Ubuntu 中从 go 返回到定义?

    c++ - nvidia 驱动程序使套接字在接受时失败

    python - python 中与本地和全局库的相对导入

    python频率分析,

    python - Ubuntu AWS 上的 Cron 与 Python/Anaconda 虚拟环境