Add ZSH with OMP

This commit is contained in:
Snoweuph 2024-09-01 12:40:29 +02:00
parent ae4b252b6c
commit 41a4ee810c
No known key found for this signature in database
GPG key ID: 941D59944BDEB1B5
12 changed files with 194 additions and 2 deletions

3
.config/.gitignore vendored
View file

@ -7,6 +7,9 @@
# Oh My Bash # Oh My Bash
!/oh-my-bash-custom/ !/oh-my-bash-custom/
# oh My Posh
!omp.toml
# SSH # SSH
!/ssh/ !/ssh/

119
.config/omp.toml Normal file
View file

@ -0,0 +1,119 @@
version = 2
final_space = true
console_title_template = '{{ .Shell }} in {{ .Folder }}'
[[blocks]]
type = 'prompt'
alignment = 'left'
newline = true
[[blocks.segments]]
type = 'session'
style = 'diamond'
leading_diamond = ''
trailing_diamond = ''
template = ' {{ if .SSHSession }} {{ end }}{{ .UserName }} '
background = 'p:cyan'
foreground = 'p:black'
[[blocks.segments]]
type = 'path'
style = 'powerline'
powerline_symbol = ''
template = '  {{ path .Path .Location }} '
background = 'p:beige'
foreground = 'p:black'
[blocks.segments.properties]
style = 'folder'
[[blocks.segments]]
type = 'git'
style = 'powerline'
powerline_symbol = ''
foreground_templates = ['{{ if or (.Working.Changed) (.Staging.Changed) }}p:black{{ end }}', '{{ if and (gt .Ahead 0) (gt .Behind 0) }}p:white{{ end }}', '{{ if gt .Ahead 0 }}p:white{{ end }}']
background_templates = ['{{ if or (.Working.Changed) (.Staging.Changed) }}p:yellow{{ end }}', '{{ if and (gt .Ahead 0) (gt .Behind 0) }}p:red{{ end }}', '{{ if gt .Ahead 0 }}#49416D{{ end }}', '{{ if gt .Behind 0 }}#7A306C{{ end }}']
template = ' {{ if .UpstreamURL }}{{ url .UpstreamIcon .UpstreamURL }} {{ end }}{{ .HEAD }}{{if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Working.Changed }}  {{ .Working.String }}{{ end }}{{ if .Staging.Changed }}  {{ .Staging.String }}{{ end }} '
background = 'p:green'
foreground = 'p:black'
[blocks.segments.properties]
branch_max_length = 25
fetch_status = true
fetch_upstream_icon = true
[[blocks.segments]]
type = 'root'
style = 'powerline'
powerline_symbol = '60°, 10'
template = '  '
background = 'p:yellow'
foreground = 'p:white'
[[blocks.segments]]
type = 'status'
style = 'diamond'
background_templates = ['{{ if gt .Code 0 }}p:red{{ end }}']
leading_diamond = '<transparent,background></>'
trailing_diamond = ''
template = ' {{ if gt .Code 0 }}{{ else }}{{ end }} '
background = 'p:blue'
foreground = 'p:black'
[blocks.segments.properties]
always_enabled = true
[[blocks]]
type = 'rprompt'
[[blocks.segments]]
type = 'node'
style = 'plain'
template = ' '
background = 'transparent'
foreground = 'p:green'
[blocks.segments.properties]
display_mode = 'files'
fetch_package_manager = false
home_enabled = false
[[blocks.segments]]
type = 'go'
style = 'plain'
template = ' '
background = 'transparent'
foreground = 'p:blue'
[blocks.segments.properties]
fetch_version = false
[[blocks.segments]]
type = 'python'
style = 'plain'
template = ' '
background = 'transparent'
foreground = 'p:yellow'
[blocks.segments.properties]
display_mode = 'files'
fetch_version = false
fetch_virtual_env = false
[transient_prompt]
foreground_templates = [
"{{if gt .Code 0}}p:red{{end}}",
"{{if eq .Code 0}}p:green{{end}}"
]
background = 'transparent'
template = ' '
[palette]
black = '#11111b'
blue = '#89b4fa'
cyan = '#74c7ec'
green = '#a6e3a1'
orange = '#fab387'
red = '#f38ba8'
white = '#cdd6f4'
yellow = '#f9e2af'
beige = '#f2cdcd'

View file

@ -12,7 +12,7 @@
[core] [core]
editor = nvim editor = nvim
pager = /usr/share/git-core/contrib/diff-highlight | less #pager = /usr/share/git-core/contrib/diff-highlight | less
commentChar = ";" commentChar = ";"
[diff] [diff]

5
.gitignore vendored
View file

@ -13,6 +13,9 @@
!.bashrc !.bashrc
!.profile !.profile
# Include zsh config
!.zshrc
# Include config # Include config
!.config/ !.config/
@ -20,4 +23,4 @@
!.ssh !.ssh
# Include Resource # Include Resource
!Resources/ !Resources/

67
.zshrc Normal file
View file

@ -0,0 +1,67 @@
# Zinit
#########################################################
ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git"
[ ! -d $ZINIT_HOME ] && mkdir -p "$(dirname $ZINIT_HOME)"
[ ! -d $ZINIT_HOME/.git ] && git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME"
source "${ZINIT_HOME}/zinit.zsh"
# Plugins
zinit light zsh-users/zsh-autosuggestions
zinit light zdharma-continuum/fast-syntax-highlighting
# Oh My Posh
#########################################################
OMP_EXECUTABLE="${XDG_DATA_HOME:-${HOME}/.local}/bin/oh-my-posh"
[ ! -f $OMP_EXECUTABLE ] && curl -s https://ohmyposh.dev/install.sh | zsh -s
eval "$(oh-my-posh init zsh --config ~/.config/omp.toml)"
# Basic ZSH
#########################################################
# History
HISTFILE=~/.histfile
HISTSIZE=10000
SAVEHIST=1000
# Disable Bell
unsetopt beep
# Application Envs
#########################################################
export PATH=$PATH:"$HOME/.local/bin"
# NPM
export npm_config_cache="$HOME/.cache/npm"
export npm_config_prefix="$HOME/.local/share/npm"
export npm_config_userconfig="$HOME/.config/npmrc"
# Volta
export VOLTA_HOME="$HOME/.local/share/volta"
export PATH="$VOLTA_HOME/bin:$PATH"
# Go
export GOPATH=~/.local/share/go
export GOBIN=~/.local/bin/go
# ROCM
export HSA_OVERRIDE_GFX_VERSION=10.3.0 # RX 6650 XT
# Just
export JUST_UNSTABLE=1
# Git
#########################################################
case "$HOSTNAME" in
Snoweuph-desktop)key=B06857C59C7DC672599657D3941D59944BDEB1B5;;
fedorabook-pro)key=CFB8E8CF1F0BA9FA2A1840CA0021ADF278B2F49B;;
esac
alias git="git -c user.signingKey='$key'"
# Aliases
#########################################################
alias edit-nvim-conf="nvim ~/.config/nvim"
alias edit-bash-conf="nvim ~/.bashrc"
alias todo="nvim ~/Documents/Notes/Todo.md"
alias nano="nvim"
alias neofetch="fastfetch"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.