josteink / emacs-oob-reboot

A project to revitalize Emacs by providing core-friendly changes for an improved out-of-the-box experience
85 stars 9 forks source link

Improve default color theme, fonts? #4

Closed alphapapa closed 12 months ago

alphapapa commented 7 years ago

It seems that a lot of people like the default theme and fonts, but I feel like it doesn't look very friendly or contemporary, and doesn't seem to integrate well with OS- or desktop-level user defaults.

josteink commented 7 years ago

I'll have to second that. Most modern editors seems to come with a dark default theme these days.

I think the biggest challenges with such a change are:

Any better default theme we can add? Suggestions?

alphapapa commented 7 years ago

Well, I'm a big fan of Solarized, and my impression is that it's one of the most popular editor themes in general (not just for Emacs). However, if the goal is to improve defaults for upstream, it's probably not appropriate.

It might be good to start with the existing default theme and make it a bit...friendlier? Or perhaps use colors that seem more common. For example, the default of having comments be blood-red has always seemed strange to me; comments are important, but I feel like red should be used for text that is more urgent and less likely to occupy large parts of the screen. Also, the other non-black colors in the default theme seem...CGA-ish to me?...and that seems anachronistic to me.

angrybacon commented 7 years ago

I think the list of themes available by default is fine as is. While I haven't tested them all, the list has both dark and light themes.

But I also agree that the list could be extended with more modern themes. I don't know the numbers but Solarized and Zenburn seem somewhat popular.

...and that seems anachronistic to me

Well, Emacs predates most of us after all. :-)

alandmoore commented 7 years ago

I agree that a dark theme would look more current.

Keep in mind the default theme needs to look good in both windowed mode and in a terminal, where it may have a dark or light background.

dchrzanowski commented 7 years ago

Most of good editors/IDE's have their own, unique dark theme. I mean the Atom's default dark theme is just fantastic. I think that Emacs should have its own dark theme. One that would be THE Emacs dark theme, unique, modern, beautiful!

rolispr commented 7 years ago

Why not provide a few preset themes and fonts upon first launching? Or even give a optional tutorial in how to change themes/fonts.

jackrusher commented 7 years ago

1) I'd like to see a default dark and light theme shipped with emacs (there's a ~70/30 split in preference between the two), and then the ability to easily audition and install other color themes.

2) Can we bundle a free font with emacs? I think that's the only way to get a particular really nice one on all platforms. If so, I think Fira Code would be a fine choice: https://github.com/tonsky/FiraCode

daveliepmann commented 7 years ago

+1 particularly for shipping with a default dark and light theme.

angrybacon commented 7 years ago

I've had feedback on the default white theme from non-IT people. Besides the toolbar and its icons, no box around the mode-line seems to modernize a little.

phillord commented 7 years ago

I started off with white, then went blue, then went black. That was 20 years ago, so it's funny to hear this described as modern. But I agree, it is.

@josteink Sure, it's opinionated, but everything is. We need to show that it's lot of peoples opinions.

@angrybacon No box around the mode-line? Can you show what you mean (screen shot, or configuration?)

angrybacon commented 7 years ago

@phillord By default the mode-line uses the button style which gives a strong Windows 98 feel. But I feel it depends a lot on the colors being used by the theme.

(set-face-attribute 'mode-line nil :box nil)
(set-face-attribute 'mode-line-inactive nil :box nil)  ;; Optional
alandmoore commented 7 years ago

@jackrusher Seems like we already have point 1. Emacs (at least whenever I've installed it on Linux) ships with about a dozen themes, and M-x customize-themes (or options->customize->customize theme from the menu) seems pretty straightforward. What's missing from this arrangement?

jackrusher commented 7 years ago

@alandmoore To clarify:

1) There should be a pair of very good-looking default themes for emacs (dark and light), both of which are shipped with it, and between which it is super trivial to switch (the current default light theme is... not nice). These themes should be well integrated with the default mode-line decorations (which should look more like powerline/tromey's mods). Best case, we also include a beautiful free font like Source Code Sans or Fira Code. The idea here is that it should look great and "modern" (as the kids like to say) over all installable platforms.

2) For those who want to change themes, it should be easier to skim through the possibilities by eye, rather than going through a series of installations just to find out what they look like.

daveliepmann commented 7 years ago

I agree that skimming through previews (perhaps including thumbnails?) is critical.

@alandmoore It's easy to underestimate a noob's feeling that they could break something if they go down the wrong path. I've been using emacs for years and I feel a twinge of trepidation at the customize-theme options—will I really be able to select one, and if I don't like it, de-select it and go completely totally back to where I was? Or will it change something somewhere else and I have to go digging to fix my editor?

This kind of spooky-action-at-a-distance happened just now in my explorations, albeit harmlessly. But part of getting through this interaction unscathed was my background emacs knowledge: 1) that I had (and remembered the name of) a not-shipped-with-emacs theme already loaded (whose checkbox was strangely not ticked in the list, but which I had to tick to return to my original settings) (and whose entry in the list was not identifiable as not-shipped-with-emacs) and 2) that changes would be written to a (custom) block in init.el. For many emacs newcomers, that might probably have meant needing third party help to get their emacs back to a useable state!

angrybacon commented 7 years ago

There are many pages online that showcase themes though.

phillord commented 7 years ago

@alandmoore Having a good looking theme OOB is my interest. It takes a while for a newbie to work out how to change themes.

jackrusher commented 7 years ago

Technical sophisticated people often mistake "possible" for "easy". As @daveliepmann mentioned above, what's actually easy is very different for different users. There are certain things that new users are going to be especially keen to do, and those things should be super easy to do properly.

alandmoore commented 7 years ago

@phillord I don't disagree; I was responding to the comment that emacs needs multiple dark/light themes and that there should be an easy way to switch between them. I feel like that's already the case -- or at least, a way that is straightforward in the context of emacs idioms. But in no way am I saying that makes up for having a poor default.

@daveliepmann @jackrusher I can agree that parts of the customization system are non-obvious and unconventional (saving your settings, e.g.). Fixing that seems beyond the scope of this project, though, unless there are settings or packages that can make this simpler.

EDIT: Reading through your comments again, I think I can agree it would be good to have something in the menus to switch quickly between two "default" themes. Is that something that can be easily accomplished?

alandmoore commented 7 years ago

Just wanted to revive this discussion, because it seems like it got a bit derailed, and if we all seem to agree on one thing, it's that the current theme needs improvement.

If I can summarize the options that have been presented, from least ideal to most ideal, it looks like:

  1. Keep the status quo
  2. Choose the most "modern looking" of the included custom themes and make it default.
  3. Find an amazing 3rd-party theme, get the author to assign copyright and get it in Elpa, and make that the default.
  4. Get someone to design an awesome new default theme for emacs.
  5. Get someone to design an awesome new dark them and awesome new light theme for emacs, and provide a dead-easy way to toggle it.
  6. Number 5 + and easy way to preview custom themes.

Within the scope and intended use of this project, what is a reasonable yet still meaningful goal?

justinjk007 commented 7 years ago

I remember a dark theme author, he seems like a nice guy, let me ping him.. @credmp are you willing​ to get your theme up on elpa so that can be set as a default? Thanks

credmp commented 7 years ago

Hi Justin,

Sure... reading the thread here it seems you are building something nice! If you are interested in the theme I can try and figure out what needs to be done to get it on elpa. Do you have any experience with it?

Regards,

Arjen

justinjk007 commented 7 years ago

I am quoting @phillord from another conversation

All "non-trivial" contributors need to have copyright assignment, which to a first point of reference means more than 11 lines (remaining in the current version). In your case, this means 3 people (including @credmp and assuming that the metadata in your repo is accurate -- i.e. that the code doesn't come from elsewhere). Some of them probably already have copyright assignment I am sure.

After this, you need commit rights to ELPA, and then you push everything up there (I normally do this as an external branch).

So in your case this should be easy because it seems like you did almost all the work except with one commit from @purcell.

angrybacon commented 7 years ago

It would make sense to also include popular themes like it was suggested. eg. Solarized, and Zenburn come to mind.

https://pawelbx.github.io/emacs-theme-gallery/

Edit: The page sorts by popularity (downloads) by default. Zenburn is much ahead.

justinjk007 commented 7 years ago

Indeed but making them all sign up to elpa and adding them all in seems like a lot of work.

alandmoore commented 7 years ago

Zenburn is my personal favorite, but as @justinjk007 it comes down to convincing people to do copyright assignment. Zenburn alone has 62 contributors listed on github...

justinjk007 commented 7 years ago

Exactly that is the problem, my favorite theme is solarized, but this theme I am suggesting would way better for beginning than the plain theme we have right now.

phillord commented 7 years ago

Justin Kaipada notifications@github.com writes:

I am quoting @phillord from another conversation

All "non-trivial" contributors need to have copyright assignment, which to a first point of reference means more than 11 lines (remaining in the current version). In your case, this means 3 people (including @credmp and assuming that the metadata in your repo is accurate -- i.e. that the code doesn't come from elsewhere). Some of them probably already have copyright assignment I am sure.

After this, you need commit rights to ELPA, and then you push everything up there (I normally do this as an external branch).

So in your case this should be easy because it seems like you did almost all the work except with one commit from @purcel.

Colour themes are not copyrightable, I think, since the text is generated. Steve, I am sure, has FSF assignment anyway.

phillord commented 7 years ago

Alan D Moore notifications@github.com writes:

Just wanted to revive this discussion, because it seems like it got a bit derailed, and if we all seem to agree on one thing, it's that the current theme needs improvement.

If I can summarize the options that have been presented, from least ideal to most ideal, it looks like:

  1. Keep the status quo
  2. Choose the most "modern looking" of the included custom themes and make it default.
  3. Find an amazing 3rd-party theme, get the author to assign copyright and get it in Elpa, and make that the default.
  4. Get someone to design an awesome new default theme for emacs.
  5. Get someone to design an awesome new dark them and awesome new light theme for emacs, and provide a dead-easy way to toggle it.
  6. Number 5 + and easy way to preview custom themes.

Within the scope and intended use of this project, what is a reasonable yet still meaningful goal?

My answer: give Emacs the most cool, modern looking theme. If this is one that is internal, or already exists great, otherwise, also great.

Phil

alandmoore commented 7 years ago

If copyright is not an issue (or if @credmp is ok with assigning), I would support the one suggested by @justinjk007, it looks better IMHO than anything currently shipping with emacs.

Maybe I'm cynical, but I'm anticipating an epic battle over theme selection. Do we nominate candidates and take a vote, or will emacs-devel even care?

purcell commented 7 years ago

Steve, I am sure, has FSF assignment anyway.

Yes, I do.

credmp commented 7 years ago

I have not yet gotten around to it and am going on holiday for the next week, after that I will look at what I need to do to get it sorted out.

josteink commented 12 months ago

I think recent changes to Emacs (eglot, tree-sitter, etc) has helped make Emacs much more usable OOB. Considering repo-purpose obsolete.

Closing all issues and archiving repo. Thanks to all contributors!