weixin_39534978
weixin_39534978
2020-11-27 14:02

User .Xresources colors override generated ones

I have default colors in my own .Xresources which works with pywal. With wpgtk, since it also reloads the user .Xresources, my default colors are being used instead of the generated ones. If possible, could this be done first? If not, could there be a flag to ignore the user .Xresources file?

该提问来源于开源项目:deviantfero/wpgtk

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

6条回答

  • weixin_39520595 weixin_39520595 5月前

    Yes this is the expected behavior, you can alleviate this by using more specific Xresources rules in your file, what program are you trying to affect?

    点赞 评论 复制链接分享
  • weixin_39534978 weixin_39534978 5月前

    I want the default colors to affect every program that uses Xresources, and I want the new colors to affect every program as well (e.g. polybar) without extra configuration. If this is the expected behavior, can you add an option to disable it?

    点赞 评论 复制链接分享
  • weixin_39520595 weixin_39520595 5月前

    So you want every program that uses .Xresources to use your default defined colors, and the rest that don't support .Xresources to use the new colors set by wpgtk?

    if you want every program regardless of whether they support .Xresources or not to be affected, just uncomment your own colors from the file, I'll consider adding the feature, but it works this way just in case the user wants to override some colors set by wpgtk by using .Xresources

    点赞 评论 复制链接分享
  • weixin_39534978 weixin_39534978 5月前

    So you want every program that uses .Xresources to use your default defined colors, and the rest that don't support .Xresources to use the new colors set by wpgtk?

    Everything should use defaults or nothing should, and this is only not the case with wpgtk for programs that use .Xresources. They use the defaults when I want them to use the new colors set by wpgtk. I want to use the default defined colors if I haven't run any wpg or wal commands. If I've set new colors with wpg, I want them to be used instead. It's understandable that a user may want to override some colors set by wpgtk, but my use case is the opposite. I have default colors in my config files that I want used only if I'm on a machine without pywal/wpgtk, for example.

    点赞 评论 复制链接分享
  • weixin_39520595 weixin_39520595 5月前

    Hi, I'm sorry, yours seems like a pretty particular use case, if you have machines without wpgor wal why not just comment the colors in your .Xresources in machines that do use either of those programs? in any case, you're free to modify wpg, it's a matter of commenting a single line here:

    /wpgtk/data/reload.py

    
    def xrdb():
        """Merges both a user's .Xresources and pywal's."""
        reload.xrdb([
            os.path.join(FORMAT_DIR, "colors.Xresources"),
            # os.path.join(HOME, ".Xresources")
        ])
    

    you can find and modify this line by checking were are the installed python packages, if you installed via the AUR, it should be somewhere in /usr/lib/python3.8/site-packages/wpgtk, let me know if this works out for you.

    点赞 评论 复制链接分享
  • weixin_39534978 weixin_39534978 5月前

    Hi, I'm sorry, yours seems like a pretty particular use case

    To me the default behavior seems more bizarre and its use case seems more particular. It is inconsistent with pywal and doesn't follow the principle of least suprise in my opinion. Maybe I don't fully understand the use case, but if a user did want to override some colors external to wpgtk in .Xresources for whatever reason, they could just run xrdb after wpg.

    if you have machines without wpgor wal why not just comment the colors in your .Xresources in machines that do use either of those programs?

    Because it's a lot simpler to just have a single config file that works and not have to modify it depending on whether or not the machine has wpgtk and whether or not I want to use wpgtk currently (or whether or not something with wpgtk is temporarily borked; e.g. I broke it with a partial system upgrade; hasn't happened with wpgtk specifically, but I'm lazy and don't always rebuild all my aur packages). For one file, it doesn't matter as much, but it would be a nightmare to handle possible variations between machines and different states on the same machine like this for a lot of files.

    I'd rather not fork wpgtk or modify any installed files or modify a local version. I think this behavior should be configurable, but it's not actually that big of a deal. If you think this is the best default, stick with it. And thanks for wpgtk! I can just run wpg in a jail so that it can't access or my .Xresources file or more likely just add an additional xrdb call to redo the colors.

    点赞 评论 复制链接分享

相关推荐