Help us understand the problem. What is going on with this article?

kubectl の current-context/namespace を zsh のプロンプトに出力する

More than 1 year has passed since last update.

zsh に git のブランチ名を出力しているのですが、kubectl の current-context や namespace も出力できると良いなと思ってやって見ました。

初めは kubectl コマンドを使ってやっていたのですが、やや遅くてコマンドを実行するたびにストレスを感じるようになったので、Go で ~/.kube/config を読み込んで出力するだけのコマンド kube_prompt_info を作ってやって見ました。

ちなみにこの名前は oh-my-zsh 付属の git_prompt_info が元になっており、kube-prompt とは関係ありません。

最終的にこんな感じになります。
image.png

kube_prompt_info のインストール

Go をインストールした状態で以下を実行します。

$ go get github.com/yuya-takeyama/kube_prompt_info

kube_prompt_info のセットアップ

zsh には $PROMPT という変数を書き換えることでプロンプトを書き換えられます。

~/.zshrc に以下のような行を書き加えます。

PROMPT='%m:%c $(kube_prompt_info) %(!.#.$) '

export KUBE_PROMPT_INFO_PREFIX="%{$fg[yellow]%}("
export KUBE_PROMPT_INFO_SUFFIX=")%{$reset_color%}"

この状態で source ~/.zshrc するなどすれば完了。

私は実際には oh-my-zsh 付属の daveverwer という theme をコピーして中身をいじって、以下のような感じのプロンプトになっています。
image.png

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした