zsh
設定をいじってみると、右側のこのシェルにあるコマンドラインを招待するための非常に興味深いソリューションに出会いました。 通常、そこに時計を置くのが慣習ですが、バッテリー充電通知機をそこに置くというアイデアもとても気に入りました。 充電レベルに応じて、通知機能は緑、黄色、または赤で表示されます。 何らかの理由で、アイデアの作者がpythonソリューションに引きずり込まれたので、ネイティブシェルですべてを書き直しました。
次のようになります。
以下のコードは、色(
%F{…}
)を除き、ubuntuでテストされました。すべてが
zsh
下のディストリビューションで動作する必要があります。 それでは始めましょう。
zsh
の正しいコマンドプロンプトは、
RPROMPT
環境
RPROMPT
によって設定され
RPROMPT
。
~/.zshrc
(または
~/.oh-my-zsh/themes/_
、 oh-my-zshについて既に知っている場合)に配置する意味のあるコードを
~/.oh-my-zsh/themes/_
ます。
function battery_charge { # Battery 0: Discharging, 94%, 03:46:34 remaining bat_percent=`acpi | awk -F ':' {'print $2;'} | awk -F ',' {'print $2;'} | sed -e "s/\s//" -e "s/%.*//"` if [ $bat_percent -lt 20 ]; then cl='%F{red}' elif [ $bat_percent -lt 50 ]; then cl='%F{yellow}' else cl='%F{green}' fi filled=${(l:`expr $bat_percent / 10`::▸:)} empty=${(l:`expr 10 - $bat_percent / 10`::▹:)} echo $cl$filled$empty'%F{default}' } RPROMPT='[%*] $(battery_charge)'
仕事のアルゴリズムは、結婚前の期間のアメーバのように簡単です。
acpi
からバッテリー充電を受け取って解析しました(
sudo apt-get install acpi
をインストールする必要があるかもしれません)。
-表示色を決定しました(赤、20%未満の場合、黄色-最大50%、それ以外-緑)。
-塗りつぶされた三角形がいくつ必要かを描画し、次に残り-塗りつぶされていない三角形を描画します。
-コマンドラインの右側のプロンプトに移動します。
このメモは、「3分を費やして、あなたの人生を永遠に便利にする」という原則の単なる例示です。 もちろん、あなたが私のような熟練したコンソールでない限り。 コードが「展示会に参加できる」状態になめられていないことは知っていますが、なぜそれが必要なのですか?
別の例として、前のコマンドのリターンコードを右側に表示します。
RPROMPT='%{$fg[red]%} ⏎ $? %{$reset_color%} '$RPROMPT