Ich sehe Farben

Seit gestern habe ich es endlich geschafft ein einheitliches Farbschema in allen Kommandozeilenprogrammen zu bekommen.

Der einfachste Weg um das zu erreichen ist das Framework Base 16. Das Projekt ist ein Framework aus Farben und Templates fuer eine grosse Auswahl von Programmen.

Im Alltag benutze ich folgende unterstuetzte Programme:

  • Bash
  • Vim
  • XFCE4-Terminal

Eine Uebersicht alles vorhandenen Themes kann man hier sehen: https://chriskempson.github.io/base16/

Fuer jedes Programm gibt es ein separates Projekt. Doch alle Projekte benutzen die gleichen Farbwerte.

Programm Link
Bash https://github.com/chriskempson/base16-shell
Vim https://github.com/chriskempson/base16-vim
XFCE4-Terminal https://github.com/afg984/base16-xfce4-terminal

XFCE4-Terminal

Das Programm ist der Terminal Emulator meiner Wahl, es gibt wahrscheinlich bessere, aber die einfache Handhabung qualifizieren ihn schon fuer den Job. Installiert werden die Themes indem das Projekt geclont wird. Danach werden die Themedateien in den Theme Ordner kopiert.

git clone https://github.com/afg984/base16-xfce4-terminal
cd base16-xfce4-terminal
cp colorschemes/ ~/~/.local/share/xfce4/terminal/colorschemes/

Make sure that the colorschemes folder exists. Now chose the scheme from the Color Option inside the Terminal.

Shell/Bash

Die Shell Skripte klont man auch und fuehrt sie in der .bashrc beim Start von Bash aus.

git clone https://github.com/chriskempson/base16-shell.git ~/.config/base16-shell

Folgende Zeilen kommen in die .bashrc:

BASE16_SHELL=$HOME/.config/base16-shell/
[ -n "$PS1" ] && [ -s $BASE16_SHELL/profile_helper.sh ] && eval "$($BASE16_SHELL/profile_helper.sh)"

Jetzt kann man seinen Farbstil mit Hilfe des Kommandozeilenprogramms auswaehlen:

$ base16_ocean

Natuerlich sollte vorher der Terminal neu gestartet werden. Das Ergebnis kann wie folgt getestet werden:

~/.config/base16-shell/colortest

Wenn die untersten Linien alle die gleiche Farbe mit verschiedenen Abstufungen haben wie im Bild, stimmt noch etwas nicht.

Falsche Farben, Bild aus dem Base16-Shell Repository

Vim

Farben werden in Vim ueber die Option colorschme gesteuert. Zum Installieren kann man einen Plugin Manager verwenden. Wenn zum Beispiel Vundle verwendet wird, muss man folgende Zeile zu seinen Plugins in der .vimrc hinzufuegen:

Plugin 'chriskempson/base16-vim'

In der gleichen Datei wird auch das Template ausgewaehlt.

colorschemes base16-ocean

Und um den richtigen Hintergrund auszuwaehlen muessen folgende Zeilen hinzugefuegt werden:

if filereadable(expand("~/.vimrc_background"))
    let base16colorspace=256
    source ~/.vimrc_background
endif

Tmux

Abschliessend sollte man auch testen, ob alles in tmux funktioniert. Der Terminalmultiplexer muss auf jeden Fall mit tmux -2 gestartet werden. Am einfachsten fuegt man einen Alias in .bashrc hinzu.

alias tmux='tmux -2'

Jetzt sollte alles funktionieren.