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

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

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

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

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

補完機能について

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

なんでもいいので、アルファベットのキーを押してみてください。
私は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 コマンドを超便利に! インストールと使い方。

スポンサードリンク

関連コンテンツ

オススメ記事

enchant.js

enchant.js でキャラクターのアニメーションを作ってみよう

前回の記事では、キャラが移動する時のアニメーションがありませんでした。 突っ立ったまま進んで行く、まるで幽霊の様な状態です。 これでは、キャラが生きてるのか死んでるのか分からない! というこ

JavaScriptマンガ講座。条件分岐(if文)の真偽値による使い方。(実践編)

生まれも育ちもド田舎、@It_is_Rです。 JavaScriptマンガ講座、第3回目です。 笑いあり、涙あり(?)のマンガで、JavaScriptを覚えようというものです。 今回は条件

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

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

wordpress

WordPress管理画面のテーマカスタマイザーに独自の項目を追加。

WordPressみたいに私自身の人生もカスタムできたらいいのに。@It_is_Rです。 WordPressのカスタマイズは、公開しているサイトだけではありません。 管理画面をカスタマイズする

Swift

【Xcode7】Storyboardを使ってMacアプリ開発に挑戦。

何だか今日はトイレが近い。@It_is_Rでございます。 現在開発中の人魚のゲームは今ストーリーを練っている所です。まだまだ時間がかかりそうです。 さて、Rは今、Macアプリ開発を勉強中なので

FC2でブログを始めよう!誰でも簡単にできるブログの作り方

FC2ブログは、FC2が運営する無料でブログを開設できるサービスです。(有料版もあります) また、FC2のサービスには、動画、ライブ配信、アフィリエイト、小説など、様々なものがあります。 今回

HTML5とCanvasを使うべ!

小学生からのJavaScript。HTML5とCanvasを使ってみよう!

小学生からのプログラミング講座(こうざ)、第9弾です。 これまでの講座(こうざ)では、JavScriptの基本(きほん)について学び、キャラクターの操作(そうさ)ができるようになりました。 こ

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。【準備編】

いつもどうもです。@It_is_Rです。 少し前まで、私は FC2ブログ を使っていました。 やはり個性を大切にしたい私にとって、用意されたテンプレートを使うことに抵抗がありました。 「

【Android Studio】 GridLayout の使い方。複雑なレイアウトを表現する方法

スマホの充電がいつの間にか無くなっている@It_is_Rです。 Androidアプリ開発、10回目となりました。 前回、様々なレイアウトの使い方を紹介しましたが、今回はその中でもちょっと難しい

Ameba customize

アメーバのOwndで、無料で超簡単にホームページ作ってやろうぜ!!

どうも、@It_is_Rです。 ホームページを作成するには、まずHTMLを使う能力、若しくはソフトが必要になります。 さらにサーバーを借りなくてはなりません。するとお金がかかったりします。 では

コメントをどうぞ!

メールアドレスが公開されることはありません。