[GH-ISSUE #8] [Enhancement] Color schemes #7

Closed
opened 2026-03-03 01:18:51 +03:00 by kerem · 8 comments
Owner

Originally created by @Kabouik on GitHub (Jan 13, 2020).
Original GitHub issue: https://github.com/d99kris/nmail/issues/8

Originally assigned to: @d99kris on GitHub.

I would love to have some color choices for nmail, even minimalistic ones with just different colors for read vs. unread in message list, and header vs. text content in messages. Also, a "+" or "@" marker in the message list to highlight emails with attachments would be quite useful.

How hard would it be? Ideally, this would use a single color file to ease using different themes, pretty much like what sup does (but much simpler, no need for 400 lines of code for just a few colored states):

sup Lucius theme

Originally created by @Kabouik on GitHub (Jan 13, 2020). Original GitHub issue: https://github.com/d99kris/nmail/issues/8 Originally assigned to: @d99kris on GitHub. I would love to have some color choices for nmail, even minimalistic ones with just different colors for read *vs.* unread in message list, and header *vs.* text content in messages. Also, a "+" or "@" marker in the message list to highlight emails with attachments would be quite useful. How hard would it be? Ideally, this would use a single color file to ease using different themes, pretty much like [what sup does](https://github.com/sup-heliotrope/sup/wiki/Customizing-colors) (but much simpler, no need for 400 lines of code for just a few colored states): ![sup Lucius theme](https://reho.st/https://github.com/madhat2r/sup-colors-lucius/blob/c0ed77a078df1ca404258ac3c805f8a5ee33a992/screenshots/Sup_Inbox_lucius.png?raw=true)
kerem closed this issue 2026-03-03 01:18:52 +03:00
Author
Owner

@d99kris commented on GitHub (Jan 13, 2020):

I think icon for attachment in message list is a good idea and a fundamental feature that's currently missing. I have a local patch implementing it, but I was using "paperclip emoji" 📎and found it disrupting the relatively simple UI. Using a + or @ may be a better way to go, I'll try it out and evaluate.

Color schemes are not really on the current road map to be honest. But let me take some time to review the references you shared and see if I can re-evaluate. The original UI of nmail was heavily inspired by pine (or alpine) which do not have color schemes (I think..).

<!-- gh-comment-id:573693183 --> @d99kris commented on GitHub (Jan 13, 2020): I think icon for attachment in message list is a good idea and a fundamental feature that's currently missing. I have a local patch implementing it, but I was using "paperclip emoji" 📎and found it disrupting the relatively simple UI. Using a + or @ may be a better way to go, I'll try it out and evaluate. Color schemes are not really on the current road map to be honest. But let me take some time to review the references you shared and see if I can re-evaluate. The original UI of nmail was heavily inspired by `pine` (or `alpine`) which do not have color schemes (I think..).
Author
Owner

@Kabouik commented on GitHub (Jan 13, 2020):

📎 sounds like a good idea actually, however you're right that it might break a little the nice minimalistic appearance of nmail. + would certainly look more elegant than @, or just a for attachment. Nothing comes as unambiguous as 📎 I suppose, but maybe those would still be clear enough. I think it is important to select something unambiguous because unclear hints and icons is one of the things that tended to discourage me from really diving into more comprehensive MUAs before.

Regarding colors, I think Mutt, Neomutt and Sup have a fairly complex theme feature. I don't think anything this complete would be necessary, and actually a color scheme should not be necessary, but it can still be a nice addition when simple enough. I tend to dislike themes with more than 2 or 3 colors, but the one I posted for instance is simple and yet helps focusing on unread emails immediately. The blue in it would not be necessary at all in nmail, so it would just be green and gray.

Also, when using multiple instances of nmail, having different colors could help distinguishing e-mail accounts at first glance. Let's say I have multiple nmail instances running, with my disroot account's main.conf set to show unread e-mails in green and my work account's main.conf set to show them in red, I don't need to actually read anything from the message list to immediately identify which nmail instance I'm viewing. I understand it might be kind of a gadget and by no means something important to nmail, but there are some interesting productivity uses to such distinctive themes.

<!-- gh-comment-id:573710268 --> @Kabouik commented on GitHub (Jan 13, 2020): `📎` sounds like a good idea actually, however you're right that it might break a little the nice minimalistic appearance of nmail. `+` would certainly look more elegant than `@`, or just `a` for attachment. Nothing comes as unambiguous as `📎` I suppose, but maybe those would still be clear enough. I think it is important to select something unambiguous because unclear hints and icons is one of the things that tended to discourage me from really diving into more comprehensive MUAs before. Regarding colors, I think Mutt, Neomutt and Sup have a fairly complex theme feature. I don't think anything this complete would be necessary, and actually a color scheme should not be necessary, but it can still be a nice addition when simple enough. I tend to dislike themes with more than 2 or 3 colors, but the one I posted for instance is simple and yet helps focusing on unread emails immediately. The blue in it would not be necessary at all in nmail, so it would just be green and gray. Also, when using multiple instances of nmail, having different colors could help distinguishing e-mail accounts at first glance. Let's say I have multiple nmail instances running, with my disroot account's `main.conf` set to show unread e-mails in green and my work account's `main.conf` set to show them in red, I don't need to actually read anything from the message list to immediately identify which nmail instance I'm viewing. I understand it might be kind of a gadget and by no means something important to nmail, but there are some interesting productivity uses to such distinctive themes.
Author
Owner

@d99kris commented on GitHub (Feb 10, 2020):

I've decided to split this feature request into two Github issues, as they are a bit different from a development perspective. This issue will be use to track the color schemes request, and a newly reported issue #33 will be used to track support for attachment indication in the message list.

<!-- gh-comment-id:584106828 --> @d99kris commented on GitHub (Feb 10, 2020): I've decided to split this feature request into two Github issues, as they are a bit different from a development perspective. This issue will be use to track the color schemes request, and a newly reported issue #33 will be used to track support for attachment indication in the message list.
Author
Owner

@Kabouik commented on GitHub (Apr 2, 2020):

I have a local patch implementing it, but I was using "paperclip emoji" paperclipand found it disrupting the relatively simple UI. Using a + or @ may be a better way to go, I'll try it out and evaluate.

Related question: is there a way to change the font used by nmail to show special characters like emojis?

Email subjects from companies or online services contain more and more emojis characters for the "Woohoo" effect and I really dislike when they are converted to coloured smileys, it's breaking the overall minimal aesthetics of the terminal.

For instance, while the "plain text" version (from the Github text field) below is acceptable, 😱 or 😱 both look out of place in nmail.

ss-2020-04-02_184334

I suppose Github uses a different font in the text field when commenting and converts emojis when messages are posted?

<!-- gh-comment-id:607961335 --> @Kabouik commented on GitHub (Apr 2, 2020): > I have a local patch implementing it, but I was using "paperclip emoji" paperclipand found it disrupting the relatively simple UI. Using a + or @ may be a better way to go, I'll try it out and evaluate. Related question: is there a way to change the font used by nmail to show special characters like emojis? Email subjects from companies or online services contain more and more emojis characters for the "Woohoo" effect and I really dislike when they are converted to coloured smileys, it's breaking the overall minimal aesthetics of the terminal. For instance, while the "plain text" version (from the Github text field) below is acceptable, `😱` or 😱 both look out of place in nmail. ![ss-2020-04-02_184334](https://user-images.githubusercontent.com/7107523/78275428-1f5fa380-7501-11ea-8712-0e88bfdf5a97.png) I suppose Github uses a different font in the text field when commenting and converts emojis when messages are posted?
Author
Owner

@d99kris commented on GitHub (Aug 2, 2020):

is there a way to change the font used by nmail to show special characters like emojis?

I don't think there's a way to control font from inside nmail, it would need to be configured in the terminal emulator I'd think.

In nchat https://github.com/d99kris/nchat I've solved this problem by providing an option to convert graphical emojis to their textual counterpart, e.g. 👍 can be shown as :thumbsup:. nchat also supports entering emojis using textual representation and then automatically sending the graphical version. Possibly could consider something similar for nmail.

<!-- gh-comment-id:667669649 --> @d99kris commented on GitHub (Aug 2, 2020): > is there a way to change the font used by nmail to show special characters like emojis? I don't think there's a way to control font from inside `nmail`, it would need to be configured in the terminal emulator I'd think. In `nchat` https://github.com/d99kris/nchat I've solved this problem by providing an option to convert graphical emojis to their textual counterpart, e.g. 👍 can be shown as `:thumbsup:`. `nchat` also supports entering emojis using textual representation and then automatically sending the graphical version. Possibly could consider something similar for nmail.
Author
Owner

@Kabouik commented on GitHub (Aug 4, 2020):

That'd perfectly do it for me!

<!-- gh-comment-id:668494441 --> @Kabouik commented on GitHub (Aug 4, 2020): That'd perfectly do it for me!
Author
Owner

@d99kris commented on GitHub (Mar 12, 2021):

Basic color customization was added in above commit. I propose that specific requests for further color tweak are reported as separate github issues.

<!-- gh-comment-id:797420356 --> @d99kris commented on GitHub (Mar 12, 2021): Basic color customization was added in above commit. I propose that specific requests for further color tweak are reported as separate github issues.
Author
Owner

@d99kris commented on GitHub (Mar 13, 2021):

A follow-up fix for the color theme implementation was committed in 2d5efc0 with some improvements. After upgrading it's recommended to use the updated theme templates in /usr/local/share/nmail/themes.

<!-- gh-comment-id:798006276 --> @d99kris commented on GitHub (Mar 13, 2021): A follow-up fix for the color theme implementation was committed in 2d5efc0 with some improvements. After upgrading it's recommended to use the updated theme templates in `/usr/local/share/nmail/themes`.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/nmail#7
No description provided.