moe-theme
Screenshot
What Special?
Most basic:
- Optimized for terminal’s 256 color palettes.
- Dark & Light
And more:
- Carefully-considered & reasonable colors
- Delightful & good-looking color palettes™
- Customizable
- Optional
Monokai
/Tomorrow
for syntax-highlighting (or totally customize by yourself) - Mode-line / Powerline color
- Titles font sizes for .
- Optional
- Fully-supported for each modes:
- Diff / EDiff
- Dired / Dired+
- ERC / rcirc
- Eshell / Ansi-term
- Gnus / Message
- Helm / ido
- Org-mode / Agenda / calfw
- Magit / Git-commit / Git-gutter
- Markdown-mode / ReStructText-mode
- Auto-complete-mode / Company
- Rainbow-delimiters
- Swoop
- Twittering-mode
- undo-tree / Neotree
- Ruby / Haskell / CPerl / Tuareg / Web-mode
- ……etc
Requirements
- Emacs 25.3 or above.
- 256-colors (or higher) terminal.
Download
Via package.el
Moe-theme
is available in MELPA repository now, so you can install moe-theme
easily with M-x
list-packages
.
Manually
Download the archive of moe-theme
(or git clone
it) to ~/.emacs.d/moe-theme.el
and extract it. Then, add these to your init file:
;;customize theme
(add-to-list 'custom-theme-load-path "~/.emacs.d/moe-theme.el/")
(add-to-list 'load-path "~/.emacs.d/moe-theme.el/")
(require 'moe-theme)
Customizations
It’s impossible to satisfy everyone with one fixed theme, but
moe-theme
provide some easy ways to customize itself.
There’s a full customization example:
;; If you want to use powerline, (require 'powerline) must be
;; before (require 'moe-theme).
(add-to-list 'load-path "~/.emacs.d/PATH/TO/powerline/")
(require 'powerline)
;; Moe-theme
(add-to-list 'custom-theme-load-path "~/.emacs.d/PATH/TO/moe-theme/")
(add-to-list 'load-path "~/.emacs.d/PATH/TO/moe-theme/")
(require 'moe-theme)
;; Show highlighted buffer-id as decoration. (Default: nil)
(setq moe-theme-highlight-buffer-id t)
;; Resize titles (optional).
(setq moe-theme-resize-title-markdown '(1.5 1.4 1.3 1.2 1.0 1.0))
(setq moe-theme-resize-title-org '(1.5 1.4 1.3 1.2 1.1 1.0 1.0 1.0 1.0))
(setq moe-theme-resize-title-rst '(1.5 1.4 1.3 1.2 1.1 1.0))
;; Choose a color for modeline.(Default: blue)
(setq moe-theme-modeline-color 'cyan)
;; Finally, apply moe-theme now.
;; Choose what you like, (moe-light) or (moe-dark)
(moe-light)
If you have any question about settings, go on and read following README to get more detailed information first.
**** Note
*Notice that the file
moe-theme.el
is NOT a theme file, but it provide the ability for customizationmoe-dark-theme
&moe-light-theme
.*So, if you just want to use
load-theme
to apply ONLYmoe-theme
itself and without customizations, you can skip “Customizations” chapter and just use this:(add-to-list 'custom-theme-load-path "~/.emacs.d/PATH/TO/moe-theme/") (load-theme 'moe-dark t) ;;or (load-theme 'moe-light t)
Resize Titles
You may want to resize titles in markdown-mode
, org-mode
, or
ReStructuredText-mode
:
;; Resize titles
(setq moe-theme-resize-title-markdown '(2.0 1.7 1.5 1.3 1.0 1.0))
(setq moe-theme-resize-title-org '(2.2 1.8 1.6 1.4 1.2 1.0 1.0 1.0 1.0))
(setq moe-theme-resize-title-rst '(2.0 1.7 1.5 1.3 1.1 1.0))
Markdown should have 6 items; org has 9 items; rst has 6 items.
Make sure that these resizing settings should be placed before
(moe-dark)
or(moe-light)
.
The values should be lists. Larger the values, larger the fonts. If you don’t like this, just leave them nil, and all the titles will be the same size.
Change Color of Mode-line (or Powerline)
(setq moe-theme-modeline-color 'orange)
;; (Available colors: blue, orange, green ,magenta, yellow, purple, red, cyan, w/b.)
You can also use M-x
moe-theme-modeline-select-color
to change color interactively.
Or M-x
moe-theme-modeline-random-color
to have a good luck.
Powerline support
Now moe-theme
supports Powerline. Run powerline-moe-theme
if powerline
installed.
(powerline-moe-theme)
Frenquently Asked Problems
No 256-Color Output?
If your terminal emulator doesn’t render 256-color output correctly, set its environment variable TERM
to xterm-256color
. For example:
- If you are using
bash
orzsh
, add following line into your~/.bashrc
or~/.zshrc
:export TERM=xterm-256color
- Or if you are using
Konsole
, navigate toEdit Current Profile General > Environment > Edit
and add the following line:TERM=xterm-256color
- If you’re using
tmux
and it cannot display in 256-color correctly, add this to~/.tmux.conf
, too:set -g default-terminal "screen-256color"
Parenthesis Is Hard To Read?
I recommend set the value of show-paren-style
to expression
for better visual experience:
(show-paren-mode t)
(setq show-paren-style 'expression)
Known Issues
- If you add
(moe-dark)
or(moe-light)
to your init file, the color ofbuffer-id
would be incorrect after startuping CLI Emacs(but if youM-x moe-dark/light
again, it would be corrected immediately). I don’t know why, but this issue doesn’t occur in GUI version Emacs. (Tested on GNU Emacs 24.3.90.1 2014-04-11) - When using
moe-light
and typing characters under terminal emulator (e.g. Konsole) with IM (e.g. fcitx), the string embedded in Emacs may be very insignificant (But as you output the word from IM, it turns normal).
License
moe-theme.el
(include images) is released under GPL v3.