Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mattmc3/fishconf
:fish: :shell: My fish config
https://github.com/mattmc3/fishconf
dotfiles fish fish-shell
Last synced: 2 months ago
JSON representation
:fish: :shell: My fish config
- Host: GitHub
- URL: https://github.com/mattmc3/fishconf
- Owner: mattmc3
- Created: 2019-03-12T17:35:06.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2024-10-02T18:50:13.000Z (3 months ago)
- Last Synced: 2024-10-12T23:27:05.621Z (3 months ago)
- Topics: dotfiles, fish, fish-shell
- Language: Shell
- Homepage:
- Size: 362 KB
- Stars: 26
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# fishconf
My fish shell configuration
## Installation
```fish
# get the repo
test -d ~/.config/fish && mv ~/.config/fish ~/.config/fish.bak
git clone [email protected]:mattmc3/fishconf ~/.config/fish
fish# select color scheme - I like Nord or Tomorrow Night
fish_config
```## Performance
A snappy shell is very important to me. My config includes a `benchmark` function that
runs fish 10 times and presents the timings.The latest benchmark run shows that we load a new shell pretty fast.
```fish
$ # MacBook Air (M3, 2024)
$ set fprof (mktemp)
$ fish --profile-startup=$fprof -c exit
$ awk 'NR==1 || $3==">"{print}' $fprof | string replace $HOME '~'
$ rm $fprof
Time Sum Command
274 6595 > builtin source /opt/homebrew/Cellar/fish/3.7.1/share/fish/config.fish
13 13 > builtin source /opt/homebrew/etc/fish/config.fish
74 8572 > builtin source /Users/matt/.config/fish/config.fish$ for i in (seq 1 10); /usr/bin/time fish -i -c exit; end
0.02 real 0.01 user 0.01 sys
0.01 real 0.01 user 0.00 sys
0.01 real 0.00 user 0.00 sys
0.01 real 0.00 user 0.00 sys
0.01 real 0.00 user 0.00 sys
0.01 real 0.00 user 0.00 sys
0.01 real 0.00 user 0.00 sys
0.01 real 0.00 user 0.00 sys
0.01 real 0.00 user 0.00 sys
0.01 real 0.00 user 0.00 sys
```You can also profile fish's startup with the following command:
```fish
fish --profile-startup=$__fish_config_dir/fishprof.txt -c "exit"
```[fishingline]: https://github.com/fishingline
[fzf]: https://github.com/jethrokuan/fzf
[pure]: https://github.com/rafaelrinaldi/pure
[spacefish]: https://github.com/matchai/spacefish