Oh My Zsh は、zsh 構成を管理するためのオープンソースのコミュニティ主導のフレームワークです。
退屈そう。もう一度試してみましょう。
Oh My Zsh を使用しても 10 倍の開発者になれるわけではありません...しかし、あなたはそう感じるかもしれません。
ターミナル シェルをインストールすると、その端末が話題になり、そうでなければ返金されます。コマンド プロンプトでキーを押すたびに、何百もの強力なプラグインと美しいテーマを利用できるようになります。カフェで見知らぬ人があなたのところにやって来て、 「すごいですね!あなたは天才ですか?」と尋ねます。
最後に、あなたはいつも自分に値すると感じていたような注目を集め始めるでしょう。 ...あるいは、節約した時間を使って、より頻繁にデンタルフロスを始めるかもしれません。 ?
詳細については、ohmyz.sh にアクセスし、X (旧 Twitter) で @ohmyzsh をフォローし、Discord に参加してください。
OS/S | 状態 |
---|---|
アンドロイド | ✅ |
無料BSD | ✅ |
LCAR | ? |
Linux | ✅ |
macOS | ✅ |
OS/2ワープ | |
Windows(WSL2) | ✅ |
zsh --version
を実行して確認する)、ここで次の wiki 手順を確認してください: ZSH のインストールcurl
またはwget
インストールする必要がありますgit
インストールされている必要があります (v2.4.11 以降を推奨)Oh My Zsh は、ターミナルで次のコマンドのいずれかを実行することでインストールされます。これは、 curl
、 wget
または別の同様のツールを使用してコマンドライン経由でインストールできます。
方法 | 指示 |
---|---|
カール | sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
ウィゲット | sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
フェッチ | sh -c "$(fetch -o - https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
あるいは、インストーラーは GitHub の外部にもミラーリングされます。中国やインド (特定の ISP の場合) など、 raw.githubusercontent.com
をブロックしている国にいる場合は、代わりにこの URL を使用する必要がある場合があります。
方法 | 指示 |
---|---|
カール | sh -c "$(curl -fsSL https://install.ohmyz.sh/)" |
ウィゲット | sh -c "$(wget -O- https://install.ohmyz.sh/)" |
フェッチ | sh -c "$(fetch -o - https://install.ohmyz.sh/)" |
以前の.zshrc
すべて.zshrc.pre-oh-my-zsh
に名前が変更されることに注意してください。インストール後、保存したい構成を新しい.zshrc
に移動できます。
まだ知らないプロジェクトのインストール スクリプトを検査することをお勧めします。これを行うには、まずインストール スクリプトをダウンロードし、すべてが正常に見えるように内容を確認してから実行します。
wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh
sh install.sh
上記の URL がタイムアウトするか失敗した場合は、スクリプトを取得できるようにhttps://install.ohmyz.sh
URL に置き換える必要がある場合があります。
Oh My Zsh には、活用できるプラグインが大量に付属しています。プラグイン ディレクトリや Wiki を参照して、現在利用可能なものを確認してください。
Oh My Zsh で使用したいプラグイン (または複数) を見つけたら、 .zshrc
ファイルでそれらを有効にする必要があります。 zshrc ファイルは$HOME
ディレクトリにあります。お気に入りのテキスト エディタで開くと、ロードするすべてのプラグインをリストする場所が表示されます。
vi ~ /.zshrc
たとえば、次のようになります。
plugins=(
git
bundler
dotenv
macos
rake
rbenv
ruby
)
プラグインは空白 (スペース、タブ、改行など) で区切られていることに注意してください。間にカンマを使用しないでください。カンマが壊れてしまいます。
各組み込みプラグインには、それを文書化したREADMEが含まれています。この README には、エイリアス (プラグインが追加する場合) と、その特定のプラグインに含まれる追加機能が表示されます。
それは認めます。 Oh My Zsh ワールドの初期段階では、テーマに少し満足しすぎていたかもしれません。現在、150 を超えるテーマがバンドルされています。ほとんどのスクリーンショットは Wiki にあります (更新に向けて取り組んでいます!)。ぜひチェックしてみてください!
ロビーのテーマはデフォルトのテーマです。それは最も空想的なものではありません。それは最も単純なものではありません。それは(彼にとって)まさに正しいものです。
使用したいテーマを見つけたら、 ~/.zshrc
ファイルを編集する必要があります。次のような環境変数 (すべて大文字) が表示されます。
ZSH_THEME= " robbyrussell "
別のテーマを使用するには、目的のテーマの名前と一致するように値を変更するだけです。例えば:
ZSH_THEME= " agnoster " # (this is one of the fancy ones)
# see https://github.com/ohmyzsh/ohmyzsh/wiki/Themes#agnoster
注記
zsh テーマのスクリーンショットを見て、それを試してみると、自分にとっては同じように見えないことに気づくことがよくあります。
これは、多くのテーマを適切にレンダリングするために Powerline Font または Nerd Font をインストールする必要があるためです。これらがないと、これらのテーマでは奇妙なプロンプト シンボルが表示されます。詳細については、よくある質問をご覧ください。
また、テーマはプロンプトの外観のみを制御することに注意してください。これは、コマンドを入力するカーソルの前後に表示されるテキストです。テーマは、ターミナル ウィンドウの色 (カラー スキームと呼ばれます) やターミナルのフォントなどを制御しません。これらは、ターミナル エミュレータで変更できる設定です。詳細については、「zsh テーマとは」を参照してください。
新しいターミナル ウィンドウを開くと、プロンプトは次のようになります。
ニーズに合った適切なテーマが見つからなかった場合は、Wiki でその他のテーマを参照してください。
元気があれば、新しいターミナル ウィンドウを開くたびにコンピュータにランダムにウィンドウを選択させることもできます。
ZSH_THEME= " random " # (...please let it be pie... please be some pie..)
お気に入りのテーマのリストからランダムなテーマを選択したい場合:
ZSH_THEME_RANDOM_CANDIDATES=(
" robbyrussell "
" agnoster "
)
気に入らないテーマだけがわかっている場合は、同様にそれらを無視リストに追加できます。
ZSH_THEME_RANDOM_IGNORED=(pygmalion tjkirch_mod)
さらに質問や問題がある場合は、FAQ で解決策が見つかる可能性があります。
あなたが自分の手を汚すのが好きなタイプなら、これらのセクションは共感を呼ぶかもしれません。
ユーザーによっては、Oh My Zsh を手動でインストールしたり、デフォルトのパスやインストーラーが受け入れるその他の設定を変更したい場合があります (これらの設定は、インストール スクリプトの先頭にも記載されています)。
デフォルトの場所は~/.oh-my-zsh
(ホーム ディレクトリに隠されており、 cd ~/.oh-my-zsh
でアクセスできます) です。
ZSH
環境変数を使用してインストール ディレクトリを変更する場合は、インストール前にexport ZSH=/your/path
を実行するか、次のようにインストール パイプラインの終了前に設定します。
ZSH= " $HOME /.dotfiles/oh-my-zsh " sh install.sh
自動インストールの一部として Oh My Zsh インストール スクリプトを実行している場合は、 --unattended
フラグをinstall.sh
スクリプトに渡すことができます。これにより、デフォルトのシェルを変更しようとしなくなります。また、インストールの完了時にzsh
が実行されなくなります。
sh -c " $( curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh ) " " " --unattended
中国、インド、またはraw.githubusercontent.com
をブロックする別の国にお住まいの場合は、インストールするためにhttps://install.ohmyz.sh
の URL を置き換える必要がある場合があります。
インストール スクリプトは次の変数も受け入れて、別のリポジトリのインストールを許可します。
REPO
(デフォルト: ohmyzsh/ohmyzsh
): これは、 owner/repository
の形式をとります。この変数を設定すると、インストーラーはhttps://github.com/{owner}/{repository}
でリポジトリを検索します。
REMOTE
(デフォルト: https://github.com/${REPO}.git
): これは、git リポジトリ クローンの完全な URL です。 GitHub 上にないフォーク (GitLab、Bitbucket...) からインストールする場合、または HTTPS ではなく SSH を使用してクローンを作成する場合 ( [email protected]:user/project.git
)、この設定を使用できます。 。
注: REPO
変数の設定とは互換性がありません。この設定が優先されます。
BRANCH
(デフォルト: master
): リポジトリのクローン作成時にチェックアウトするデフォルトのブランチを変更する場合は、この設定を使用できます。これは、プル リクエストをテストする場合、またはmaster
以外のブランチを使用する場合に便利です。
例えば:
REPO=apjanke/oh-my-zsh BRANCH=edge sh install.sh
git clone https://github.com/ohmyzsh/ohmyzsh.git ~ /.oh-my-zsh
~/.zshrc
ファイルをバックアップします。 cp ~ /.zshrc ~ /.zshrc.orig
付属のテンプレートをコピーして、新しい zsh 構成ファイルを作成できます。
cp ~ /.oh-my-zsh/templates/zshrc.zsh-template ~ /.zshrc
chsh -s $( which zsh )
この変更を確認するには、ユーザー セッションからログアウトし、再度ログインする必要があります。
新しいターミナル ウィンドウを開くと、Oh My Zsh の設定を含む zsh が読み込まれるはずです。
インストール中に問題が発生した場合は、一般的な修正方法をいくつか紹介します。
oh-my-zsh
に切り替えた後にいくつかのコマンドが見つからない場合は、 ~/.zshrc
のPATH
変更する必要がある場合があります。~/.zshrc
のZSH
環境変数を確認してください。デフォルトの動作をオーバーライドしたい場合は、新しいファイル (末尾が.zsh
) をcustom/
ディレクトリに追加するだけです。
適切に連携する機能が多数ある場合は、それらをXYZ.plugin.zsh
ファイルとしてcustom/plugins/
ディレクトリに配置し、このプラグインを有効にすることができます。
Oh My Zsh で配布されたプラグインの機能をオーバーライドしたい場合は、同じ名前のプラグインをcustom/plugins/
ディレクトリに作成すると、 plugins/
のプラグインの代わりにロードされます。
Oh My Zsh のデフォルトの動作は、macOS および FreeBSD システムで BSD ls
使用することです。 GNU ls
( gls
コマンドとして) インストールされている場合は、代わりにそれを使用することを選択できます。これを行うには、 oh-my-zsh.sh
ソースする前に zstyle ベースの構成を使用できます。
zstyle ' :omz:lib:theme-and-appearance ' gnu-ls yes
注: これはDISABLE_LS_COLORS=true
とは互換性がありません。
デフォルトの Oh My Zsh エイリアス ( lib/*
ファイルで定義されているもの) またはプラグイン エイリアスをスキップしたい場合は、 Oh My Zsh がロードされる前に~/.zshrc
ファイルで以下の設定を使用できます。必要に応じて、エイリアスをスキップするにはさまざまな方法があることに注意してください。
# Skip all aliases, in lib files and enabled plugins
zstyle ' :omz:* ' aliases no
# Skip all aliases in lib files
zstyle ' :omz:lib:* ' aliases no
# Skip only aliases defined in the directories.zsh lib file
zstyle ' :omz:lib:directories ' aliases no
# Skip all plugin aliases
zstyle ' :omz:plugins:* ' aliases no
# Skip only the aliases from the git plugin
zstyle ' :omz:plugins:git ' aliases no
より具体的なスコープが優先されることを考慮して、これらを他の方法で組み合わせることができます。
# Skip all plugin aliases, except for the git plugin
zstyle ' :omz:plugins:* ' aliases no
zstyle ' :omz:plugins:git ' aliases yes
この機能の以前のバージョンでは以下の設定が使用されていましたが、この設定は削除されました。
zstyle ' :omz:directories ' aliases no
代わりに、次のものを使用できるようになりました。
zstyle ' :omz:lib:directories ' aliases no
この機能は現在テスト段階にあり、将来変更される可能性があります。また、現時点では、この機能が実装されている init スクリプト (
oh-my-zsh.sh
) をソースとしていない zpm や zinit などのプラグイン マネージャーとも互換性がありません。
また、関数として定義されている「エイリアス」も現時点では認識されていません。その例としては、git プラグインの
gccd
、ggf
、またはggl
関数があります。
非同期プロンプト関数は、Oh My Zsh がプロンプト情報を非同期的に表示できるようにする実験的な機能 (2024 年 4 月 3 日に追加) です。これによりプロンプト レンダリングのパフォーマンスが向上しますが、一部の設定ではうまく機能しない可能性があります。それが問題にならないことを願っていますが、この新機能で問題が発生した場合は、Oh My Zsh がソースされる前に、.zshrc ファイルで次の設定を行うことで機能を無効にすることができます。
zstyle ' :omz:alpha:lib:git ' async-prompt no
git プロンプトが表示されなくなったことに問題がある場合は、 oh-my-zsh.sh
を取得する前に、次の構成を強制的に設定してみることができます。それでも問題が解決しない場合は、ケースについて問題を報告してください。
zstyle ' :omz:alpha:lib:git ' async-prompt force
デフォルトでは、2 週間ごとに更新を確認するように求められます。 Oh My Zsh がロードされる前に~/.zshrc
ファイルに行を追加することで、他の更新モードを選択できます。
確認プロンプトなしの自動更新:
zstyle ' :omz:update ' mode auto
利用可能なアップデートがある場合は、数日ごとにリマインダーを提供するだけです。
zstyle ' :omz:update ' mode reminder
自動更新を完全に無効にするには:
zstyle ' :omz:update ' mode disabled
注: 次の設定を使用して、Oh My Zsh が更新をチェックする頻度を制御できます。
# This will check for updates every 7 days
zstyle ' :omz:update ' frequency 7
# This will check for updates every time you open the terminal (not recommended)
zstyle ' :omz:update ' frequency 0
次の設定を使用して、更新の冗長性を制限することもできます。
zstyle ' :omz:update ' verbose default # default update prompt
zstyle ' :omz:update ' verbose minimal # only few lines
zstyle ' :omz:update ' verbose silent # only errors
いつでも更新したい場合 (誰かが新しいプラグインをリリースしたばかりで、1 週間も待ちたくない場合など)、次を実行するだけです。
omz update
魔法! ?
Oh My Zsh は万人向けではありません。あなたがいなくて寂しいですが、簡単な別れにしたいと思っています。
oh-my-zsh
をアンインストールする場合は、コマンドラインからuninstall_oh_my_zsh
を実行するだけです。それ自体が削除され、以前のbash
またはzsh
構成が元に戻ります。
私たちの楽しいコミュニティに参加する前に、行動規範をお読みください。
私は Zsh の専門家とは程遠いので、改善する方法はたくさんあると考えています。構成を維持しやすく (そして高速に) する方法に関するアイデアがある場合は、ためらわずにフォークしてプル リクエストを送信してください。
プルリクエストをテストしてくれる人も必要です。したがって、未解決の問題に目を通し、可能な限りサポートしてください。
詳細については、「貢献」を参照してください。
当面は十分なテーマが(十分以上に)あります。テーマを外部テーマ Wiki ページに追加してください。
Oh My Zsh には、幸せなユーザーと楽しい貢献者で構成される活気に満ちたコミュニティがあります。時間と貢献者の協力がなければ、これほど素晴らしいものにはならなかったでしょう。
どうもありがとうございます!
私たちはソーシャルメディアを利用しています:
Oh My Zsh への愛を誇示するためのステッカー、シャツ、コーヒーマグをご用意しています。またまた、あなたは町の話題になるでしょう!
Oh My Zsh は MIT ライセンスに基づいてリリースされています。
Oh My Zsh は、Ruby on Rails 開発機関である Planet Argon のチームによって開始されました。他のオープンソース プロジェクトもチェックしてください。