2020-01-25 /
@syui
dotfiles
開発環境を作り直してみる3
開発環境をイチから作りなおしてみる企画やってます。
https://git.syui.cf/syui/dotfiles
powerline.zsh
https://github.com/syui/powerline.zsh
https://github.com/syui/ricomoon
zshのprompt(powerline.zsh)を調整しています。昔から不満のあったオリジナルアイコンの位置などを修正しました。昔からちょっと上にズレてたんですよね、気になってたんですが、放置してたのです。
icomoonで作ったやつは以下の調整でいけた。ただし、基本とするフォントにもよる。
#!/usr/bin/fontforge -script
Open("./font/icomoon.ttf")
SelectAll()
foreach
Scale(80, 80, 0, 0)
endloop
Generate("./font/i.ttf")
Close()
またgitlabやheroku(に似ている)アイコンをプラスしました。昔はfont-awesome(bland)に入ってなかった。ただ、省略したアイコンも多く、最初は必要なものにとどめました。
フォントに関しては、SF Mono
がいいらしい。そのうち時間があれば見てみようかなと思っています。ただ、フォントやアイコン周りを久しぶりに触ることになりましたが、たいへん。fontforge
なんもわからん。
zstyle ':vcs_info:git:*' formats
とかで表示する情報にコミット数を追加してみたりした。
$ git --no-pager shortlog -sn |tr -d ' '|cut -f 1 | head -n 1
zsh-notify
zsh-notify
入れたら端末がおかしくなったような気がしたので、アンインストールした。
#zsh-notify
#commandを実行してもpromptが動かなくなることがある
zinit light marzocchi/zsh-notify
zstyle ':notify:*' error-title "Command failed"
zstyle ':notify:*' success-title "Command finished"
export SYS_NOTIFIER=`which terminal-notifier`
zstyle ':notify:*' command-complete-timeout 15
一応、上記の構成で機能はする。
git add + git diff
git add
するときにdiffをfzf --preview
で確認する^g
unbuffer
を使うので、ない場合は、$ brew install expect
で入ります。
念の為にbindkey -s
扱いにした。
# git addするときにdiff
function gadd() {
selected=$(unbuffer git status -s | fzf -m --ansi --preview="echo {} | awk '{print \$2}' | xargs git diff --color" | awk '{print $2}')
if [ -n "$selected" ]; then
BUFFER="git add $selected"
CURSOR=$#BUFFER
fi
}
zle -N gadd
bindkey '^g' gadd
vimで直前のカーソル位置からファイルを開く
この設定は必須。
" 直前のカーソル位置で開く
augroup vimrcEx
au BufRead * if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "normal g`\"" | endif
augroup END
今後の予定と方向性
今後は、気になる箇所を修正しながら、linux対応とansible化やvagrant化していこうかなと考えています。
必要性はありませんが、やってみることで新たな知見を得られたりもするものなので、やっていきたいなあ。