The applied terminal varies by the host OS:
Additionally, I have included my NeoVim (text editor) config which is OS agnostic.
This repo only does not list my IDE: VS Code settings.
Warp - my main terminal for macOS.
- Theme:
Fancy Dracula
- Prompt:
Shell prompt (PS1)
- Font: JetBrains Mono 11
- Framework: Oh My Zsh
- Prompt: Starship
- If you have installed conda, I suggest to disable printing environment names, as they will be displayed already by Starship:
conda config --set changeps1 False
- If you have installed conda, I suggest to disable printing environment names, as they will be displayed already by Starship:
Oh My Zsh plugins:
- aliases
- colored-man-pages
- common-aliases
- copyfile
- copypath
- docker
- dotenv
- fzf
- git
- globalias
- istioctl
- jsontools
- kubectl
- pip
- poetry
- python
- sublime
- sudo
- virtualenv
- vscode
External plugins:
- zsh-autosuggestions ← fish-like autosuggestions for Zsh
- zsh-syntax-highlighting ← fish shell like syntax highlighting for Zsh
Note
Since 2024/01/07, I keep my core text-expansion config in my-espanso-config.
I recommend keeping aliases in the ~/.aliases
file, and then source this file in your respective profile file through source ~/.aliases
. Keep in mind that a bunch of aliases is already configured through the aforementioned Oh My Zsh plugins, which you can quickly check using the aliases plugin.
general:
alias aliases='code ~/.aliases'
← quickly open~/.aliases
in VS Codealias lisl='eza -hla --icons'
← betterls
with ezaalias list='eza -hlas time --icons'
← betterls
with eza (ordered by time)alias treee='br -c :pt'
← bettertree
with brootalias path='echo -e ${PATH//:/\\n}'
← show all directories in the PATH variable, one per linealias ports='netstat -a | grep -i "listen"'
← show all open ports and the processes using themalias reload='source ~/.zshrc'
← reload the configuration file for zshalias zshrc='code ~/.zshrc'
← quickly open~/.zshrc
in VS Code
kubernetes:
alias k8s-get-pods='kubectl get pods --all-namespaces'
← get the list of all podsalias k8s-get-services='kubectl get services --all-namespaces'
← get the list of all services
macOS:
alias cleanup="find . -type f -name '*.DS_Store' -ls -delete"
← find and delete all.DS_Store
files in the current directory and all subdirectories
functions:
-
check if a website is up or down:
function website-status(){ curl -Is "$1" | head -n 1 }
-
open finder in the current folder:
function openfinder(){ open -a Finder "$1"; }
You can find a list of my recommended shell tools in my other repo.
iTerm2 - my alternative terminal for macOS.
- Theme: Dracula PRO
- iTerm2 theme size:
Compact
- Font: JetBrains Mono 12
Extra iTerm2 configuration:
- Jump between words with
⌥
+←
/→
- Settings > Profiles > Keys > Key Mappings > +
- Keyboard shortcut:
⌥ ←
, Action:Send Escape Sequence
, Esc+:b
- Keyboard shortcut:
⌥ →
, Action:Send Escape Sequence
, Esc+:f
- Keyboard shortcut:
- Settings > Profiles > Keys > Key Mappings > +
- Delete words with
⌥
+BACKSPACE
- Settings > Profiles > Keys > General
- Left and Right option keys: change from
Normal
toEsc+
- Left and Right option keys: change from
- Settings > Profiles > Keys > General
Windows Terminal - my main terminal for Windows.
- Theme: Dracula PRO (with
"brightBlack": "#8F89B4"
as I have reasoned here) - Background opacity:
80%
- Font: JetBrains Mono 11
Install Git Bash from here.
Add profile to Windows Terminal:
- Name:
Git Bash
- Command line:
%PROGRAMFILES%/Git/bin/bash.exe -i -l
- Starting directory:
%USERPROFILE%
- Icon:
%PROGRAMFILES%/Git/mingw64/share/git/git-for-windows.ico
Extras:
- Prompt: Starship
- To be able to activate conda environments, you may also need to set a system variable:
PYTHONIOENCODING=utf8
.bash_profile
:
# Set Starship theme
eval "$(starship init bash)"
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
eval "$('/c/Users/pawel/miniconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
# <<< conda initialize <<<
I am using PowerShell 7 in addition to the native Windows PowerShell 5.
Extras:
$PROFILE
:
# Set Starship
Invoke-Expression (&starship init powershell)
# Show navigable menu of all options when hitting Tab
Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete
# Autocompletion for arrow keys
Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward
Install Ubuntu:
- Set a default version of WSL:
wsl --set-default-version 2
. - Install Ubuntu 22.04 LTS.
Setup the environment:
- Start with
sudo apt update
andsudo apt upgrade
. - Install Zsh, Oh My Zsh and Starship.
- Copy the 👨💻 Zsh settings.
Extras:
- Disable beep sound in Windows Terminal settings for the Ubuntu Profile (
Advanced
>Bell notification style
) - If you have installed conda, I suggest to disable printing environment names, as they will be displayed already by Starship:
conda config --set changeps1 False
.
Neovim - my main text editor used within the terminal of any OS.
- Neovim config: NvChad
- Theme:
chadracula
- Font: JetBrains Mono 12
-
Make sure you have set up the local terminal of your OS (ideally as in this repo).
-
Post installation steps to set up the config files:
cd ~/.config/nvim mkdir lua/custom cp examples/init.lua lua/custom/init.lua cp examples/chadrc.lua lua/custom/chadrc.lua
-
Edit
~/.config/nvim/lua/custom/chadrc.lua
(applychadracula
theme and enable dashboard):local M = {} M.ui = { theme = "chadracula", } M.plugins = { user = { ["goolord/alpha-nvim"] = { disable = false, }, }, } return M
-
Start Neovim with
nvim
and do:PackerSync
. You can also display the file explorer withCTRL
+N
. -
Optionally, apply Neovim in your IDE, such as in VS Code through the VSCode Neovim extension.
Termux - my main terminal for Android installed from F-Droid.
UI modified with Termux:Styling (obtained from F-Droid):
- Theme:
Dracula
- Font:
FiraCode
(JetBrains Mono does not support icons ofeza --icons
) - Keyboard: Gboard
- Install F-Droid, and use it to install Termux with Termux:Styling.
- Open up Termux and start with
apt update
andapt upgrade
. - Install extra packages:
pkg install git
,pkg install python
andpkg install vim
. - Install Zsh (
pkg install zsh
), Oh My Zsh and Starship (pkg install starship
). - Copy the 👨💻 Zsh settings.
- Optionally, install further tools such as Tool-X.