firecat53 / urlscan

Mutt and terminal url selector (similar to urlview)
GNU General Public License v2.0
213 stars 37 forks source link

Color scheme makes menu unreadable #61

Closed machinedgod closed 6 years ago

machinedgod commented 6 years ago

Hi there, the curses interface presented by URL scan makes the top menu really unreadable (desaturated blue with gray text, see screenshot). This is of course due to my xlib color scheme (hybrid-dark), but since it looks good in all other software that uses xlib colors, it'd be really great if we could either set the colors ourselves (through commandline switches) or at least have the option of the b/w mode.

If this is something you'd allow in your codebase, I'd be OK to write code on my own.

2018-05-18-134208_697x364_scrot

firecat53 commented 6 years ago

Yep, this is similar to #46. If you'd like to work on it, I'd be happy to discuss options with you (config file vs command line switches, etc.). It's gonna be awhile before I can work on it in depth. Thanks!

machinedgod commented 6 years ago

Hey there, yeah I think I can tackle this :-) So, what did you have in mind, vis-a-vis options? I myself always prefer switches rather than config files, reasoning behind it is that switch mechanism is standardized and allows configuration to be changed for each instance of software ran, while config files come in all sorts of different flavors (ini, xml, tables, something wonky like asoundrc or irssi), different system paths, and config is shared across instances. Plus, it somewhat feels intuitive to use switches for programs that have a short life. This being said, I'm totally OK going either way.

machinedgod commented 6 years ago

So after short looking, it looks like urlchoose.py contains a class URLChooser, which defines a palette, keyed by first element of the tuple. This could be a parameter to the class, set up as a default with options provided, to extract the options to the construction place. The options themselves, I have few ideas:

I'll wait for your feedback before jumping in.

machinedgod commented 6 years ago

Heya, I went to be proactive and figured third option might actually be the best - ability to switch palettes on the fly. I've added PR here https://github.com/firecat53/urlscan/pull/62

firecat53 commented 6 years ago

Hey, give the develop branch a try and see what you think. I built on your PR. Added a json config file for editing/adding palettes and changed keybinding to p for cycling through palettes.

machinedgod commented 6 years ago

Hey! Sorry that it took me this long to get back to you, I was real busy. I run Arch and I've modified my PKGBUILD to check out develop branch, reinstalled everything, and it works awesome! I've only QA-ed default 'P' settings (B/W and standard palette), but I'll try toying with custom colorschemes down the line, try and create one that's a better fit for hybrid and send you another PR.

Cheers, and thanks for taking time to implement this.

firecat53 commented 6 years ago

FYI, I ended up settling on a config file because the palette configuration is so complex it was the only option that made sense.