Oh My Zsh を使用すると、端末の使用が 10 倍楽しくなり、仕事中でも非常に楽しくなります。
ただし、すぐに使える優れたデフォルト設定が提供されていますが、Zsh 環境をさらにカスタマイズして強化する方法はたくさんあります。
このチュートリアルでは、構文の強調表示やその他の生産性を向上させる機能に焦点を当てて、Oh My Zsh ユーザー向けの高度なヒントを検討します。
インストール
注: システムに Zsh がインストールされていることを確認してください。デフォルトのパッケージ マネージャーを使用して、マシン上でパッケージ マネージャーを構成できます。
次に、まだインストールしていない場合は、ターミナルで次のコマンドを実行して Oh My Zsh をインストールします。
sh -c '$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)'
基本構成
Oh My Zsh は、「~/.zshrc」にデフォルト設定を作成します。カスタマイズする必要がある場合は、テキスト エディタを使用してこのファイルを編集する必要があります。
構文の強調表示
Oh My Zsh の構文強調表示により、コマンドやファイルなどを視覚的に区別できます。また、実行したいコマンドが正しいかどうかを知ることもできます。
これを有効にするには、まずリポジトリのクローンを作成します。
$ git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-$ git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-構文の強調表示次に、「~/.zshrc」に次の行を追加または更新します。
plugins=(... zsh-syntax-highlighting)最後に、構成ファイルを再ロードして変更を適用します。
$ ソース ~/.zshrc
好みに合わせて強調表示の色をカスタマイズできます。これを行うには、「~/.zshrc」でカラー構成を定義します。
ZSH_HIGHLIGHT_HIGHLIGHTERS=(メイン括弧パターン)ZSH_HIGHLIGHT_COLORS[ 'パターン' ]= 'fg=青、太字'
この例では、パターン マッチングの色を青と太字に設定します。
Oh My Zsh では、エイリアスと関数の強調表示を有効にすることもできます。この機能を有効にするには、次のエントリを Zsh 構成ファイルに追加します。
ZSH_HIGHLIGHT_ENABLE_ALIASES=trueZSH_HIGHLIGHT_ENABLE_FUNCTIONS=true
また、特定のコマンドの構文の強調表示を無効にしたい場合もあります。これは、次の例に示すように、構成に例外を追加することで実現できます。
ZSH_HIGHLIGHT_IGNORE_COMMENTS=trueZSH_HIGHLIGHT_IGNORE_SELF=true
これらの行により、コメントや自己実行コマンドが強調表示されなくなります。
高度なプロンプトのカスタマイズ
Oh My Zsh フレームワークを使用した、より高度なプロンプトのカスタマイズに移りましょう。
Powerlevel10k テーマを使用すると、高度にカスタマイズ可能で機能豊富なプロンプトを取得できます。
次のコマンドを実行してインストールできます。
$ git clone -- Depth= 1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/主題/powerlevel10k次に、「~/.zshrc」ファイルを編集してテーマを設定します。次のようにエントリを追加します。
ZSH_THEME= 'パワーレベル10k/パワーレベル10k'テーマを起動すると、テーマのセットアップの基本を説明するセットアップ ウィザードが実行されます。
これに関する完全なガイドについては、Powerlevel10k のセットアップと構成方法に関する既存のチュートリアルがあります。
カスタム要素
Powerlevel10k を使用すると、カスタム プロンプト要素を追加できます。たとえば、現在の Git ブランチとステータスを表示するには、次のようにエントリを追加します。
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(ステータス git)プロンプトのテーマとスタイル
プロンプトの外観をさらにカスタマイズするには、「~/.zshrc」でカスタム スタイルを定義します。詳細については、ドキュメントを参照してください。
プラグインと自動提案
Oh My Zsh には、シェルのエクスペリエンスを強化するプラグインの膨大なコレクションが含まれています。プラグインを管理するには、プラグインを「~/.zshrc」のプラグイン配列に追加します。
たとえば、Git および Docker プラグインを有効にするには、次のコマンドを使用します。
plugins=(... git docker)カスタムプラグインの追加
特定のプラグインが見つからない場合は、独自のプラグインまたはクローンを作成できます。 1 つは Github リポジトリからのものです。プラグインスクリプトを「~/.oh-my-zsh/custom/plugins/plugin_name」に配置し、plugins 配列に追加します。
Zsh の自動提案
Zsh は、以前のコマンド履歴に基づいてコマンドを予測して完了する自動提案もサポートしています。有効にするには、「~/.zshrc」に次のエントリを追加します。
plugins=(... zsh-autosuggestions)エイリアスと関数
エイリアスは、長いコマンドの後続コマンドまたはショートカットとして機能するコマンドです。カスタム エイリアスを定義するには、Zsh 構成ファイルを編集し、指定された構文に従います。
エイリアス ll= 'ls -alF'エイリアス 更新= 'sudo apt-get update && sudo apt-get upgrade'
指定された例では、「ll」エイリアスは「ls –alF」コマンドを表し、「update」は完全な更新コマンドを表します。
Zsh 関数
Zsh で関数を定義する機能もあります。関数にはカスタム ロジックと実行が含まれるため、エイリアスよりも強力です。
次のように同じ構成ファイルでそれらを定義できます。
関数 show_datetime() {ローカルの現在の日付時刻
current_datetime=$(日付 '+%Y-%m-%d %H:%M:%S' )
エコー 「現在の日付と時刻: $current_datetime」
}
次に、前のコマンドを実行して、次のように日付と時刻を表示できます。
show_datetimeエイリアスと関数の整理
エイリアスと関数を整理しておくために、「~/.oh-my-zsh/custom/aliases」と「~/.oh-my-zsh/custom/functions」に別々のファイルを作成し、それらを「~/.zshrc」設定ファイル。
ソース ~/.oh-my-zsh/custom/aliases/*ソース ~/.oh-my-zsh/custom/functions/*
これにより、エイリアスと関数を別のサブディレクトリに保持しながら、ファイル システムのどの部分からでもアクセスできるようになります。
結論
このチュートリアルでは、マシンに Oh My Zsh をインストールして設定する基本について説明しました。次に、プロンプトカスタマイズ、テーマのインストール、プラグインの使用法、自動提案、エイリアスと関数など、より複雑で詳細な概念について説明します。