====== Zsh And Oh-my-zsh ======
**General Information**
Setting up great looking terminals with zsh, oh-my-zsh and theming.
**Checklist**
* Fedora 28, Ubuntu 16.04 or Enterprise Linux 7
----
====== Install ZSH ======
Install zsh.
* Fedorasudo dnf install zsh
* Ubuntusudo apt install zsh
* EL 7sudo yum install zsh
===== Set ZSH As Default Login Shell =====
Configure zsh as your default login shell.
* Fedora, Ubuntu, EL 7
* Change shellchsh -s $(which zsh)
* Log out and back in
* Verifyecho $SHELL
**Note**: This only works for local accounts. If you are using LDAP, you will need to set your default login shell in your LDAP user profile.
----
====== Install oh-my-zsh ======
Oh-My-Zsh is a framework for managing zsh configuration. It adds tons of themes and plugins to zsh.
Official site: https://ohmyz.sh/
* Install pre-reqs (git and curl)
* Fedorasudo dnf install git curl
* Ubuntusudo apt install git curl
* EL 7sudo yum install git curl
* Install oh-my-zshsh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
----
====== Configure Zsh ======
Configuring zsh.
===== Change Theme =====
Easily change your zsh theme.
* List of all theme names/screenshots here: https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
* Agnoster theme: https://github.com/agnoster/agnoster-zsh-theme
\\
Example: Change to agnoster theme
* Edit zsh configvim ~/.zshrc
# Set theme name here
ZSH_THEME="agnoster"
* Re-read config changessource ~/.zshrc
* **Note**: The agnoster theme relies upon Powerline fonts for certain symbols. See next section in order to install the font.
----
===== Install Powerline Fonts =====
The powerline fonts are intended for use with the agnoster theme (they properly display certain symbols that it uses), but are a clean looking set of fonts that would be a great addition any in case.
==== Install Fonts: Linux ====
* Clone the repogit clone https://github.com/powerline/fonts.git
* Installcd fonts
./install
* Quit your terminal and re-open it
* Configure your terminal to use a PowerLine regular font
* **GNOME Terminal**
* Edit > Profile Preferences
* Check "Custom font", then click the font name
* Browse to and select a Powerline font (such as "Meslo LG L for Powerline Regular")
* **Konsole (KDE Terminal)**
* Settings > Manage Profiles
* Click either "Edit Profile" or "New Profile"
* Click the "Appearance" tab, at the bottom click "Select Font..."
* Browse to and select a Powerline font. (such as "Meslo LG L for Powerline")
* Click "OK"
\\
**Note**: If Symbols aren't displaying properly, close the terminal application and re-open it for the fonts to load. (And verify you are using a Powerline font)
\\
==== Install Fonts: Windows ====
* Open a web browser to the git repo: https://github.com/powerline/fonts
* Click the "Clone or download" drop down, then click "Download ZIP"
* Extract somewhere temporary
* Copy and paste all of the .ttf files from "Meslo Slashed" into C:\Windows\Fonts\
* You will be prompted if you would like to install the fonts
\\
* **Configure Putty/Kitty** to use the new font
* Open Putty/Kitty (optionally, load a saved session's settings)
* Settings > Window > Appearance
* Under Font settings
* Check the box "Allow selection of variable-pitch fonts"
* Click the "Change" button
* Browse to "Meslo LG L for Powerline" and click "OK"
* Save the session settings
\\
* **Configure colors** (Solarized Dark)
* Open Putty/Kitty (optionally, load a saved session's settings)
* Settings > Window > Colours
* Select each color to adjust and change the RGB values
"Colour0"="131,148,150" (Default Foreground)
"Colour1"="147,161,161" (Default Bold Foreground)
"Colour2"="0,43,54" (Default Background)
"Colour3"="7,54,66" (Default Bold Background)
"Colour4"="0,43,54" (Cursor Text)
"Colour5"="238,232,213" (Cursor Colour)
"Colour6"="7,54,66" (ANSI Black)
"Colour7"="0,43,56" (ANSI Black Bold)
"Colour8"="220,50,47" (ANSI Red)
"Colour9"="203,75,22" (ANSI Red Bold)
"Colour10"="133,153,0" (ANSI Green)
"Colour11"="88,110,117" (ANSI Green Bold)
"Colour12"="181,137,0" (ANSI Yellow)
"Colour13"="101,123,131" (ANSI Yellow Bold)
"Colour14"="38,139,210" (ANSI Blue)
"Colour15"="131,148,150" (ANSI Blue Bold)
"Colour16"="211,54,130" (ANSI Magenta)
"Colour17"="108,113,196" (ANSI Magenta Bold)
"Colour18"="42,161,152" (ANSI Cyan)
"Colour19"="147,161,161" (ANSI Cyan Bold)
"Colour20"="238,232,213" (ANSI White)
"Colour21"="253,246,227" (ANSI White Bold)
* Click Apply
* Save settings to session
* Alternative registry imports: https://github.com/altercation/solarized/tree/master/putty-colors-solarized
----
===== Install Plugin: Syntax Highlighter =====
The syntax highlighter plugin adds syntax highlighting to the commands you are typing.
* Clone the repogit clone https://github.com/zsh-users/zsh-syntax-highlighting.git
* Copy or move it into your oh-my-zsh plugins directorymv zsh-syntax-highlighting ~/.oh-my-zsh/plugins/
* Enable the plugin in your zshrc configvim ~/.zshrc
# Add plugins to enable space separated
plugins=(git python vi-mode z zsh-syntax-highlighting)
* Re-read config filesource ~/.zshrc
----