1. HOME
  2. »
  3. プログラミング・Web
  4. »
  5. ターミナル
  6. »
  7. .zshrc で zsh をカスタマイズしてみよう。(プラグイン無し)

.zshrc で zsh をカスタマイズしてみよう。(プラグイン無し)

昔、車に幽霊が乗っていたので、じっと目を凝らして見ていたら、ただの人だったことがあります。@It_is_Rです。
あの時は気まずかった。。。女性の方でした。

さて、今回はターミナルをかっこよくするシリーズ、第二弾です。

この記事は、前回からのつづきとなっております。
前回の記事はこちらです。
zsh のインストール方法と、うまく起動しない時の対処法。

目次
  1. 補完機能について
  2. 入力をミスった時に、似たコマンドを表示
  3. プロンプトの変更
  4. 直前に入力したコマンドと同じ場合、履歴に残さない
  5. まとめ

補完機能について

まず、補完機能について見てみましょう。

なんでもいいので、アルファベットのキーを押してみてください。
私はyを押してみました。そのままtabを押します。
すると次のように、入力候補が表示されます。
zsh

そのままtabを連打することで、選ぶことができます。

……不便ですね。

選択中の候補を塗りつぶす

ではまず、選択中の候補を塗りつぶしてみましょう。
こうすることで、今どれを選んでいるのか、視覚的に分かりやすくなります。

まず、 .zshrc を開きます。

$ vim ~/.zshrc

では .zshrc に以下を入力しましょう。

autoload -Uz compinit
compinit

zstyle ':completion:*' menu select

その後、以下のコマンドを実行します。

$ source ~/.zshrc

すると、このように選択中の候補を塗りつぶすことができます。
zsh

入力をミスった時に、似たコマンドを表示

入力をミスった時に、それに似たコマンドを表示してくれる機能もあります。

.zshrc に以下を入力します。

setopt correct

忘れずに、以下のコマンドを実行しておきます。

$ source ~/.zshrc

以下は clear と入力したいのを、 cleat と入力してしまった場合の画像です。
“zsh: correct ‘cleat’ to ‘clear’ [nyae]?” と訊かれます。
cleat を clear に直していいですか? って意味です。

yは、「はい」。つまり clear が実行されます。
nは、「いいえ」です。つまり cleat が実行されます。
aは、実行せずに中止します。
eは、コマンドを変更することができます。

zsh

プロンプトの変更

プロンプトを変更することもできます。

基本的なこと

基本はこのようにします。
.zshrc に以下を入力します。

PROMPT='コマンドを入力してください。%% '

%% と入力することで % と表示されます。

くどいようですが、こちらも実行します。

$ source ~/.zshrc

zsh

では、もう少し詳しく見ていきましょう。
以下のように設定することも可能です。 ” の中は、好きなように変更してください。
.zshrc に以下を入力します。

PROMPT='左側に表示%% '
PROMPT2='複数行の場合%% '
RPROMPT='右側に表示されます。'

こちらも実行します。

$ source ~/.zshrc

zsh

特殊文字を使う

特殊文字を使うことも可能です。

%D 年-月-日 の形で、日付を表示
%T 時刻を24時間形式で表示
%t 時刻を12時間形式で表示
%* 時刻を24時間形式(秒単位)で表示
%w 曜日、日にちを表示
%W 月/日/年 の形で、日付を表示
%M ホスト名
%m ホスト名
%n ユーザー名

例えば、 .zshrc に以下を入力します。

PROMPT='%D %m %n%% '

こちらも実行します。

$ source ~/.zshrc

zsh

直前に入力したコマンドと同じ場合、履歴に残さない

履歴については、で選択することができます。
しかし、続けて同じコマンドを入力したとき、「あれ? 選択できない!?」ってなります。

要するに、同じコマンドが連続で記録されてしまってるわけです。

そこで、以下も .zshrc に追加しておきましょう。

setopt HIST_IGNORE_DUPS

こちらも実行します。

$ source ~/.zshrc

まとめ

では、最後に今回設定した .zshrc ファイルを見てみましょう。

#補完機能を有効にする
autoload -Uz compinit
compinit

#補完のリストの、選択している部分を塗りつぶす
zstyle ':completion:*' menu select

#入力ミスに対応する。
setopt correct

#直前のコマンドと同じなら、履歴に残さない
setopt HIST_IGNORE_DUPS

#プロンプトの文字列を変更
PROMPT='%m %n%% '
#複数行の時
PROMPT2='%% '
#右側に表示する文字列
RPROMPT='%*'

では、また次回に続きます。

この企画の一覧はこちら

  1. zsh のインストール方法と、うまく起動しない時の対処法。
  2. .zshrc で zsh をカスタマイズしてみよう。(プラグイン無し)
  3. zplug を使ってプラグインをインストール、管理する。
  4. enhancd で cd コマンドを超便利に! インストールと使い方。

スポンサードリンク

関連コンテンツ

オススメ記事

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。背景を変更する。

三度の飯よりも好きなものが多すぎて比較にならない@It_is_Rです。 FC2ブログ"最強"カスタマイズ入門講座の続きですね。最強にカスタマイズしていきましょう。 今回は背景色の変更をメインに

WordPressカスタムヘッダーを完璧に使いこなしたい人へ告ぐ!

森の中に昔から住んでる@It_is_Rです。 WordPressのカスタマイズをする上で、カスタムヘッダーを使うと、色やヘッダー画像をWordPressの管理画面から操作できるようになり便利です

HTML CSS

CSSでの円の作り方と、その上下左右中央に文字を表示する方法

サイトを作る時、円形のパーツを作りたい時ってよくありますよね。 円はCSSで簡単に作ることができます。 さらに今回はCSSで作成した円の中央に文字を置く方法も紹介します。 CSSでの

画像を動かすよ!

JavaScriptで画像を移動してみよう! 小学生からのプログラミング入門

みなさんこんにちは。今回も、プログラミングの勉強《べんきょう》をはじめていきましょう! 前回、「JavaScriptで画像を表示してみよう! 小学生からのプログラミング入門」では、JavaSc

【Gulp4】gulpfile.jsを複数ファイルに分割して、作業効率を上げよう!

Gulpを使って開発を進めているいると、だんだんとgulpfile.jsが複雑になり、どこになにが書いてあったか分からなくなることがあります。そんなときは、gulpfile.jsを分割して管理すると

【Bootstrap 4】badgeを使ってテキスト横に小さな文字を入れる方法

前にBootStrap4の記事を書いていましたが、日にちが空いてしまいましたね。@It_is_Rです。 前回は全体的な機能とアラートの使い方を紹介しました。 今回はバッジの使い方を紹介していき

【Git】ブランチを使って履歴を分岐させる方法

こんにちは、@It_is_Rです。 前回「Gitの使い方。バージョン管理する流れを、実際にやってみよう」では、 実際にGitを使ってバージョン管理する流れを学びました。 さて、

【Android Studio】TextView を使ってテキストを変更、追加する方法。

TextViewの文字列を変更するより、これまでの人生を変更したい@It_is_Rです。 Android Studioを使ったアプリ開発講座6回目です。 今回はアプリに表示されたテキストを変更

【Unity】開発したゲームをAndroidで実機テストする方法

こんにちは。現在、最新ゲーム熱意製作中の@It_is_Rです。 さて、今回はUnityで開発したゲームをAndroidで実機テストする方法です。Unity上で再生したときは動いていたゲームも、

Windows10にPythonをインストールする方法

みなさんこんにちは。@It_is_Rです。今回はWindows10にPythonをインストールする方法を紹介します。 Pythonのインストーラをダウンロード では、Python

コメントをどうぞ!(コメントは承認後に反映されます)

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です