私の作業環境を管理する各種設定ファイル(ドットファイル)の見直しを行いました。
https://github.com/yuya-matsushima/dotfiles
設定ファイルの対象は次のソフトウェアです。
zsh vim tmux git tig iTerm2 見直し箇所 zsh 環境変数の整理 PHP に関する設定項目を削除 vim プラグインの見直し PHP に関する設定項目を削除 ファイラに vim-molder を追加 .vimrc, .gvimrc ともに個別環境で設定を上書きできる .vimrc_local, .gvimrc_local の読み込み処理追加 .vimrc .gvimrc iTerm2 の設定に合わせて colorschme を変更: https://github.com/yuya-matsushima/dotfiles/blob/main/.vim/_config/300_colorscheme.vim tmux ステータスラインまわりの表示を調整しよりシンプルに git git-secrets の追加 iTerm2 Profile や配色設定を管理する様に追加: https://github.com/yuya-matsushima/dotfiles/tree/main/iterm2 動画撮影用に背景透過のプロファイルを追加 見直しの理由 PHP を書く機会がほぼなくなっているので見直したかった デスクトップの動画撮影時に必要な設定がすぐに反映できるようにしたかった 複数の端末で作業する機会が増えているので見直したかった 最後に ブログを書く機会がグッと減っているので少しずつ書くようにしたい。
特定のプロジェクトであったり特定のカテゴリの調査の場合, 対応するディレクトリを用意しておいて日付ファイル名の markdown でメモを取ることが多いです。 例えば ~/path/to/dir/2018-01-10.md のようなファイル名になります。
この時 Markdown の 1 行目, つまり見出しも日付にしています。
# 2018-01-10 都度日付を思い出すのは面倒なので .zshrc に関数を定義して簡単に呼び出されるようにしています。
.zshrc に追加するコード function todaymd() { filename=`date "+%Y%m%d.md"` if [ ! -f $filename ];then date "+# %Y-%m-%d" > $filename fi vi $filename } 使い方 次のコマンドを実行することで markdown ファイルを vim で開きます。
$ todaymd vim で開いた時点で見出し(#) に日付が記述されるようになっています。例えば今日の $ todaymd を実行すると次のように。
# 2018-01-10 地味だけど便利。
このところ歳をとった影響なのか何なのか, git を使ったプロジェクトでリモートへの push 忘れが頻発するようになったので少しは作業環境を見直してみよう, ということで .zshrc とにらめっこしました。
何が問題なのか 改善前は zsh の RPROMPT (画面の右側) にカレントディレクトリの git のブランチ名を次のような形で表示していました。
(git)-(feature/current-branch) この表示でわかるのは git リポジトリで尚且つブランチが feature/current-branch にいるということだけでした。
結果何が起こるかというと「作業し終わって push したつもりで忘れて翌日気づく」といったトラブルです。場合によっては発注元から一切作業しているように見えないまま 1 日経過する, というなんとも芳しくない状態が生まれたりします。
zsh-git-prompt を使って状態を可視化する 1 から作るのは面倒なので zsh のプラグインか何かを探してみると zsh-git-prompt というのがありました。現在いるブランチから remote との差分まで表示してくれるようです。
olivierverdier/zsh-git-prompt
インストールは Mac の Homebrew で対応できました。
$ brew install zsh-git-prompt 設定を追加して RPROMPT に次のように表示されるようにしました。
zsh-git-prompt の設定方法 基本は README の Install の通りです。~/.zshrc に次の内容を追加しています。
source "/usr/local/opt/zsh-git-prompt/zshrc.sh" ZSH_THEME_GIT_PROMPT_PREFIX="[" ZSH_THEME_GIT_PROMPT_SUFFIX=" ]" ZSH_THEME_GIT_PROMPT_BRANCH="%{$fg[white]%}" ZSH_THEME_GIT_PROMPT_STAGED="%{$fg[green]%}%{ %G%}" ZSH_THEME_GIT_PROMPT_CONFLICTS="%{$fg[magenta]%}%{x%G%}" ZSH_THEME_GIT_PROMPT_CHANGED="%{$fg[red]%}%{+%G%}" ZSH_THEME_GIT_PROMPT_BEHIND="%{$fg[red]%}%{-%G%}" ZSH_THEME_GIT_PROMPT_AHEAD="%{$fg[green]%}%{+%G%}" ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%}%{✔%G%}" RPROMPT='$(git_super_status)' zshrc....