-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfish_config
113 lines (104 loc) · 3.71 KB
/
fish_config
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
set fish_greeting
# Replace ls with eza
alias ls 'eza -al --color=always --group-directories-first --icons' # preferred listing
alias la 'eza -a --color=always --group-directories-first --icons' # all files and dirs
alias ll 'eza -l --color=always --group-directories-first --icons' # long format
alias lt 'eza -aT --color=always --group-directories-first --icons' # tree listing
alias l. 'eza -ald --color=always --group-directories-first --icons .*' # show only dotfiles
alias tree 'tree -C' # colorize tree output
# custom aliases
alias cleanup="sudo apt autoremove"
alias update="sudo apt update && sudo apt upgrade -y"
alias install="sudo apt install"
alias uninstall="sudo apt purge"
alias gin="git init"
alias ga="git add ."
alias gc="git commit -m"
alias gp="git push"
alias gb="git checkout -b"
alias gpull="git pull"
alias cat="batcat"
# Common use
alias .. 'cd ..'
alias ... 'cd ../..'
alias .... 'cd ../../..'
alias ..... 'cd ../../../..'
alias ...... 'cd ../../../../..'
# Distro name
function _fishblocks_distro_name -d 'Returns linux distribution name'
set distro_name
if test -z $distro_name && test -r /etc/os-release
set distro_name (awk -F '=' '$1=="ID" { print $2 ;}' /etc/os-release)
end
if test -z $distro_name && test -r /usr/lib/os-release
set distro_name (awk -F '=' '$1=="ID" { print $2 ;}' /usr/lib/os-release)
end
if test -z $distro_name && [ (command -v lsb_release) ]
set distro_name (lsb_release -i)
end
if test -z $distro_name
set distro_name 'unknown'
end
set distro_name (string lower $distro_name)
echo $distro_name
end
# Distro icon
function _fishblocks_distro_icon -d 'Returns linux distribution icon'
switch (_fishblocks_distro_name)
case '*arch*'
set icon ''
case '*kali*'
set icon 'ﴣ'
case '*macos*'
set icon ''
case '*debian*'
set icon ''
case '*ubuntu*'
set icon ''
case '*raspbian*'
set icon ''
case '*mint*'
set icon ''
case '*manjaro*'
set icon ''
case '*elementary*'
set icon ''
case '*fedora*'
set icon ''
case '*coreos*'
set icon ''
case '*gentoo*'
set icon ''
case '*centos*'
set icon ''
case '*mageia*'
set icon ''
case '*opensuse*' '*tumbleweed*'
set icon ''
case '*sabayon*'
set icon ''
case '*slackware*'
set icon ''
case '*alpine*'
set icon ''
case '*devuan*'
set icon ''
case '*redhat*'
set icon ''
case '*aosc*'
set icon ''
case '*nixos*'
set icon ''
case '*void*'
set icon ''
case '*artix*'
set icon ''
case '*'
set icon ''
end
echo $icon
end
set icon (_fishblocks_distro_icon)
set -x STARSHIP_DISTRO "$icon "
set -x STARSHIP_CONFIG ~/.config/starship.toml
starship init fish | source