annotate fish/config.fish @ 409:63463782d1cd

Merge changes.
author Ludovic Chabant <ludovic@chabant.com>
date Wed, 10 Jan 2018 00:05:36 -0800
parents c6da0c9f40ae
children 61f343a2aaff
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
1
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
2 # Environment variables {{{
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
3
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4 set -g -x fish_greeting 'Hello.'
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
5
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
6 # Homebrew.
404
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
7 #set -g -x PATH /usr/local/sbin $PATH
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
8 #set -g -x PATH /usr/local/bin $PATH
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
9
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
10 # My own stuff.
404
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
11 if test -d $HOME/.local/bin
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
12 set -g -x PATH $HOME/.local/bin $PATH
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
13 end
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
14 if test -d $HOME/bin
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
15 set -g -x PATH $HOME/bin $PATH
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
16 end
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
17 set -g -x OS MacOSX
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
18 set -g -x EDITOR vim
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
19 set -g -x SHELL fish
405
c05a8f250042 Fix Vim colours in tmux on macOS.
Ludovic Chabant <ludovic@chabant.com>
parents: 404
diff changeset
20 set -g -x TERM screen-256color-bce
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
21
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
22 # Python.
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
23 set -g -x VIRTUAL_ENV_DISABLE_PROMPT 1
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
24
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
25 # Go.
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
26 set -g -x GOPATH /usr/local/Cellar/go/1.4/gocode
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
27
404
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
28 if type -q git
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
29 set -g -x __local_has_git
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
30 end
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
31 if type -q hg
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
32 set -g -x __local_has_hg
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
33 end
407
c6da0c9f40ae Replace subrepos with an install script. Finally.
Ludovic Chabant <ludovic@chabant.com>
parents: 405
diff changeset
34 if test -e $HOME/.local/bin/fast-hg-bookmark
c6da0c9f40ae Replace subrepos with an install script. Finally.
Ludovic Chabant <ludovic@chabant.com>
parents: 405
diff changeset
35 set -g -x __local_has_fast_hg_bookmark
c6da0c9f40ae Replace subrepos with an install script. Finally.
Ludovic Chabant <ludovic@chabant.com>
parents: 405
diff changeset
36 end
404
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
37
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
38 # }}}
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
39
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
40 # Aliases {{{
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
41
404
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
42 # Run Tmux in UTF8 and 256 colours always.
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
43 alias tm 'tmux -u2'
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
44
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
45 # }}}
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
46
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
47 # Prompt {{{
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
48
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
49 set normal (set_color normal)
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
50 set magenta (set_color magenta)
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
51 set yellow (set_color yellow)
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
52 set green (set_color green)
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
53 set gray (set_color -o black)
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
54
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
55 function virtualenv_prompt
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
56 if set -q VIRTUAL_ENV
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
57 set_color -b blue white
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
58 printf '(venv:%s)' (basename "$VIRTUAL_ENV")
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
59 set_color normal
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
60 printf ' '
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
61 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
62 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
63
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
64 function prompt_char
404
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
65 if set -q __local_has_git
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
66 if git branch >/dev/null 2>/dev/null
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
67 printf '±' ; return
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
68 end
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
69 if hg root >/dev/null 2>/dev/null
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
70 printf '☿' ; return
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
71 end
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
72 echo '○'
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
73 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
74 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
75
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
76 function hg_prompt
407
c6da0c9f40ae Replace subrepos with an install script. Finally.
Ludovic Chabant <ludovic@chabant.com>
parents: 405
diff changeset
77 if set -q __local_has_hg
c6da0c9f40ae Replace subrepos with an install script. Finally.
Ludovic Chabant <ludovic@chabant.com>
parents: 405
diff changeset
78 and set -q __local_has_fast_hg_bookmark
404
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
79 set_color magenta
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
80 printf '%s' (fast-hg-bookmark 2>/dev/null)
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
81 set_color normal
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
82 end
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
83 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
84
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
85 function git_prompt
404
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
86 if set -q __local_has_git
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
87 if git root >/dev/null 2>&1
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
88 set_color normal
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
89 printf ' on '
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
90 set_color magenta
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
91 printf '%s' (git currentbranch ^/dev/null)
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
92 set_color green
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
93 git_prompt_status
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
94 set_color normal
b5d54b669b8c Improve fish config.
Ludovic Chabant <ludovic@chabant.com>
parents: 383
diff changeset
95 end
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
96 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
97 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
98
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
99 function fish_prompt
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
100 set last_status $status
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
101
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
102 echo
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
103
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
104 # 'username@hostname: '
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
105 set_color magenta
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
106 printf '%s' (whoami)
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
107 set_color normal
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
108 printf '@'
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
109 set_color yellow
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
110 printf '%s' (hostname|cut -d . -f 1)
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
111 set_color normal
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
112 printf ': '
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
113
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
114 set_color $fish_color_cwd
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
115 printf '%s' (prompt_pwd)
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
116 set_color normal
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
117
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
118 printf ' '
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
119 prompt_char
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
120 printf ' '
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
121
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
122 hg_prompt
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
123
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
124 echo
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
125
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
126 virtualenv_prompt
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
127
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
128 if test $last_status -eq 0
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
129 set_color white -o
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
130 printf '> '
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
131 else
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
132 set_color red -o
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
133 printf '[%d] > ' $last_status
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
134 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
135
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
136 set_color normal
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
137 end
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
138
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
139 # }}}
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
140
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
141 # Directories {{{
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
142
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
143 alias .. 'cd ..'
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
144 alias ... 'cd ../..'
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
145 alias .... 'cd ../../..'
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
146 alias ..... 'cd ../../../..'
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
147
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
148 alias md 'mkdir -p'
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
149
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
150 # }}}
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
151
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
152 # Local Settings {{{
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
153
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
154 if test -s $HOME/.config/fish/local.fish
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
155 . $HOME/.config/fish/local.fish
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
156 end
407
c6da0c9f40ae Replace subrepos with an install script. Finally.
Ludovic Chabant <ludovic@chabant.com>
parents: 405
diff changeset
157 #eval (/usr/local/bin/python -m virtualfish)
371
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
158
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
159 # }}}
93a174c912ea Re-add fish config.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
160