zsh-startify
You can also use it in a more minimal configuration, like this:
This is a fancy start screen for zsh
. After starting a terminal session, it will:
- Start a
tmux
server if it's not already running - Allow you to easily attach to any
tmux
sessions - Allow you to easily create new tmux sessions
- Allow you to quickly launch a
zsh
session, byCtrl-C
'ing orCtrl-D
'ing out of the prompt.
Installation
The recommended installation method is through PyPi
:
$ pip3 install zsh-startify
$ echo "zsh-startify" >> ~/.zshrc
But, if you'd like to install it manually:
$ git clone git@github.com:alichtman/zsh-startify.git && cd zsh-startify
$ python3 setup.py install
$ echo "zsh-startify" >> ~/.zshrc
Note: This tool depends on Python 3.6+
. You can check what version you have with:
$ python3 --version
Python 3.7.4
Configuration
This tool comes with sensible defaults. No configuration is necessary, however, the following settings may be changed in your ~/.zshrc
file:
-
ZSH_STARTIFY_HEADER_FONT
- This is the Figlet font that the header text will be printed in.
- Default:
univers
. Accepts any Figlet font.
-
ZSH_STARTIFY_HEADER_TEXT
- This string will be printed as the header.
- Default:
zsh
. Accepts any string.
-
ZSH_STARTIFY_NO_SPLASH
- Set this environment variable to not print the splash screen.
- Default: Not set. If set to anything, the splash screen will not be printed.
-
ZSH_STARTIFY_NON_INTERACTIVE
- Set this environment variable to not display the action picking menu.
- Default: Not set. If set to anything, the interactive menu will not be displayed.
An example of this could be:
export ZSH_STARTIFY_HEADER_TEXT="custom-header"
export ZSH_STARTIFY_HEADER_FONT="slant"
My configuration is:
export ZSH_STARTIFY_NO_SPLASH=true
export ZSH_STARTIFY_NON_INTERACTIVE=true
tmux
Integration
This works best when used with these two tmux
plugins:
Inspiration
I've used vim-startify a lot. I figured it was time for zsh
and tmux
to have a similar tool.