2020年1月25日土曜日

[WSL] fish shell

WSLでお手軽にオシャレfish環境構築


$ sudo apt-add-repository ppa:fish-shell/release-3
$ sudo apt update -y
$ sudo apt install -y fish
$ curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs https://git.io/fisher
$ fish
> fish -v
> fisher -v
> fisher add oh-my-fish/theme-agnoster
* fish set_color: Unknown color '~' とエラーが出る
> fisher add oh-my-fish/theme-bobthefish


デフォルトシェルの設定
$ chsh -s /usr/local/bin/fish
* こっちが無難
~/.bashrcの最終行に追記
exec fish


PowerLineのフォントのインストール
> git clone https://github.com/powerline/fonts.git 
> fonts/install.sh
> rm -rf fonts


プラグインのインストール
・jethrokuan/fzf
Ctrl + R でコマンド履歴を検索可能になる
> fisher add jethrokuan/fzf # https://github.com/jethrokuan/fzf
> git clone --depth 1 https://github.com/junegunn/fzf.git $HOME/.fzf
> $HOME/.fzf/install --all
・fish-bd
親ディレクトリに bd コマンドで移動可能になる
> fisher add 0rax/fish-bd
・edc/bass
bash script を fish で実行可能
> fisher add edc/bass
・jethrokuan/z
すべてのディレクトリへ直接移動できる(行ったことあるディレクトリにしか行けない)
> fisher add jethrokuan/z
・z
*  jethrokuan/zと同じみたいなので、使っていない
> git clone https://github.com/rupa/z
> sudo cp z/z.sh /usr/local/bin/
~/.config/fish/config.fishに以下を追加
set -gx Z_SCRIPT_PATH /usr/local/bin/z.s

プラグインのインストール完了後にやること
> fish_update_completions


fishの設定ファイル(~/.bashrcに相当)
~/.config/fish/config.fish
----------
# fish起動時のメッセージを削除
function fish_greeting
  echo ""
end

# lsの色を見やすく変更
if test ! -e ~/.dircolors/dircolors.ansi-dark
    git clone https://github.com/seebi/dircolors-solarized.git ~/.dircolors
end
eval (dircolors -c ~/.dircolors/dircolors.ansi-dark)

set -g theme_newline_cursor yes
set -g theme_display_git_master_branch yes
# set -g theme_color_scheme dracula
set -g theme_color_scheme gruvbox
# set -g theme_powerline_fonts no
set -g theme_display_date no
set -g theme_display_cmd_duration no
----------

CmderのテーマをBabunに (Monokaiに)

コマンドカラーの変更
fishでは設定をブラウザ経由で変更することができます。
> fish_config
* 現在の設定: "Lava"


fish shellで過去に入力した履歴を削除する

passwordという文字列を含むコマンドを探索
> history search --contains "password"

passwordという文字列を含む履歴を削除
> history delete --contains "password"

全履歴削除
> history clear

履歴ファイルはデフォルトは以下の場所にある
~/.local/share/fish/fish_history

0 コメント: