Oh My Zsh adalah kerangka kerja open source berbasis komunitas untuk mengelola konfigurasi zsh Anda.
Kedengarannya membosankan. Ayo coba lagi.
Oh My Zsh tidak akan menjadikan Anda pengembang 10x...tetapi Anda mungkin merasa seperti itu.
Setelah terinstal, shell terminal Anda akan menjadi bahan pembicaraan atau uang Anda kembali! Dengan setiap penekanan tombol pada prompt perintah, Anda akan memanfaatkan ratusan plugin canggih dan tema indah. Orang asing akan mendatangi Anda di kafe dan bertanya, "Itu luar biasa! apakah Anda jenius?"
Akhirnya, Anda akan mulai mendapatkan perhatian yang selama ini Anda rasa pantas Anda dapatkan. ...atau mungkin Anda akan menggunakan waktu yang Anda hemat untuk mulai lebih sering membersihkan gigi dengan benang. ?
Untuk mempelajari lebih lanjut, kunjungi ohmyz.sh, ikuti @ohmyzsh di X (sebelumnya Twitter), dan bergabunglah dengan kami di Discord.
HAI/S | Status |
---|---|
Android | ✅ |
freeBSD | ✅ |
LCARS | ? |
Linux | ✅ |
macOS | ✅ |
OS/2 Melengkung | |
jendela (WSL2) | ✅ |
zsh --version
untuk mengonfirmasi), periksa instruksi wiki berikut di sini: Menginstal ZSHcurl
atau wget
harus diinstalgit
harus diinstal (disarankan v2.4.11 atau lebih tinggi) Oh My Zsh diinstal dengan menjalankan salah satu perintah berikut di terminal Anda. Anda dapat menginstalnya melalui baris perintah dengan curl
, wget
atau alat serupa lainnya.
Metode | Memerintah |
---|---|
keriting | sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
wget | sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
mengambil | sh -c "$(fetch -o - https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
Alternatifnya, penginstal juga dicerminkan di luar GitHub. Penggunaan URL ini mungkin diperlukan jika Anda berada di negara seperti Tiongkok atau India (untuk ISP tertentu), yang memblokir raw.githubusercontent.com
:
Metode | Memerintah |
---|---|
keriting | sh -c "$(curl -fsSL https://install.ohmyz.sh/)" |
wget | sh -c "$(wget -O- https://install.ohmyz.sh/)" |
mengambil | sh -c "$(fetch -o - https://install.ohmyz.sh/)" |
Perhatikan bahwa .zshrc
sebelumnya akan diganti namanya menjadi .zshrc.pre-oh-my-zsh
. Setelah instalasi, Anda dapat memindahkan konfigurasi yang ingin Anda pertahankan ke .zshrc
yang baru.
Ada baiknya Anda memeriksa skrip instalasi dari proyek yang belum Anda ketahui. Anda dapat melakukannya dengan mengunduh skrip penginstalan terlebih dahulu, memeriksanya agar semuanya terlihat normal, lalu menjalankannya:
wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh
sh install.sh
Jika URL di atas habis atau gagal, Anda mungkin harus mengganti URL tersebut dengan https://install.ohmyz.sh
agar bisa mendapatkan skripnya.
Oh My Zsh hadir dengan banyak plugin untuk Anda manfaatkan. Anda dapat melihat di direktori plugin dan/atau wiki untuk melihat apa yang tersedia saat ini.
Setelah Anda menemukan sebuah plugin (atau beberapa) yang ingin Anda gunakan dengan Oh My Zsh, Anda harus mengaktifkannya di file .zshrc
. Anda akan menemukan file zshrc di direktori $HOME
Anda. Buka dengan editor teks favorit Anda dan Anda akan melihat tempat untuk mencantumkan semua plugin yang ingin Anda muat.
vi ~ /.zshrc
Misalnya, ini mungkin mulai terlihat seperti ini:
plugins=(
git
bundler
dotenv
macos
rake
rbenv
ruby
)
Perhatikan bahwa plugin dipisahkan oleh spasi (spasi, tab, baris baru...). Jangan gunakan koma di antara keduanya karena akan rusak.
Setiap plugin bawaan menyertakan README , yang mendokumentasikannya. README ini harus menampilkan alias (jika plugin menambahkannya) dan barang tambahan yang disertakan dalam plugin tersebut.
Kami akan mengakuinya. Di awal dunia Oh My Zsh, kita mungkin terlalu senang dengan temanya. Kami memiliki lebih dari seratus lima puluh tema yang kini dibundel. Kebanyakan dari mereka memiliki tangkapan layar di wiki (Kami sedang berupaya memperbaruinya!). Coba lihat!
Tema Robby adalah tema default. Itu bukan yang paling mewah. Ini bukan yang paling sederhana. Itu yang tepat (untuknya).
Setelah Anda menemukan tema yang ingin Anda gunakan, Anda perlu mengedit file ~/.zshrc
. Anda akan melihat variabel lingkungan (huruf besar semua) di sana yang terlihat seperti:
ZSH_THEME= " robbyrussell "
Untuk menggunakan tema lain, cukup ubah nilainya agar sesuai dengan nama tema yang Anda inginkan. Misalnya:
ZSH_THEME= " agnoster " # (this is one of the fancy ones)
# see https://github.com/ohmyzsh/ohmyzsh/wiki/Themes#agnoster
Catatan
Anda akan berkali-kali melihat tangkapan layar untuk tema zsh, dan mencobanya, dan ternyata tampilannya tidak sama untuk Anda.
Ini karena banyak tema memerlukan instalasi Powerline Font atau Nerd Font agar dapat dirender dengan benar. Tanpanya, tema ini akan menampilkan simbol prompt yang aneh. Lihat FAQ untuk informasi lebih lanjut.
Selain itu, berhati-hatilah karena tema hanya mengontrol tampilan prompt Anda. Ini adalah teks yang Anda lihat sebelum atau sesudah kursor, tempat Anda mengetikkan perintah. Tema tidak mengontrol hal-hal seperti warna jendela terminal Anda (dikenal sebagai skema warna ) atau font terminal Anda. Ini adalah pengaturan yang dapat Anda ubah di emulator terminal Anda. Untuk informasi lebih lanjut, lihat apa itu tema zsh.
Buka jendela terminal baru dan prompt Anda akan terlihat seperti ini:
Jika Anda tidak menemukan tema yang sesuai dengan kebutuhan Anda, silakan lihat wiki untuk mengetahui lebih banyak tentang tema tersebut.
Jika Anda merasa bersemangat, Anda dapat membiarkan komputer memilih satu secara acak untuk Anda setiap kali Anda membuka jendela terminal baru.
ZSH_THEME= " random " # (...please let it be pie... please be some pie..)
Dan jika Anda ingin memilih tema acak dari daftar tema favorit Anda:
ZSH_THEME_RANDOM_CANDIDATES=(
" robbyrussell "
" agnoster "
)
Jika Anda hanya mengetahui tema mana yang tidak Anda sukai, Anda dapat menambahkannya dengan cara yang sama ke daftar yang diabaikan:
ZSH_THEME_RANDOM_IGNORED=(pygmalion tjkirch_mod)
Jika Anda memiliki pertanyaan atau masalah lain, Anda mungkin menemukan solusinya di FAQ kami.
Jika Anda adalah tipe orang yang suka mengotori tangan, bagian ini mungkin cocok.
Beberapa pengguna mungkin ingin menginstal Oh My Zsh secara manual, atau mengubah jalur default atau pengaturan lain yang diterima penginstal (pengaturan ini juga didokumentasikan di bagian atas skrip instalasi).
Lokasi defaultnya adalah ~/.oh-my-zsh
(tersembunyi di direktori home Anda, Anda dapat mengaksesnya dengan cd ~/.oh-my-zsh
)
Jika Anda ingin mengubah direktori instalasi dengan variabel lingkungan ZSH
, baik dengan menjalankan export ZSH=/your/path
sebelum menginstal, atau dengan mengaturnya sebelum akhir pipa instalasi seperti ini:
ZSH= " $HOME /.dotfiles/oh-my-zsh " sh install.sh
Jika Anda menjalankan skrip instalasi Oh My Zsh sebagai bagian dari instalasi otomatis, Anda dapat meneruskan tanda --unattended
ke skrip install.sh
. Ini akan berdampak pada tidak mencoba mengubah shell default, dan juga tidak akan menjalankan zsh
ketika instalasi selesai.
sh -c " $( curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh ) " " " --unattended
Jika Anda berada di Tiongkok, India, atau negara lain yang memblokir raw.githubusercontent.com
, Anda mungkin harus mengganti URL dengan https://install.ohmyz.sh
agar dapat memasangnya.
Skrip instalasi juga menerima variabel-variabel ini untuk memungkinkan instalasi repositori yang berbeda:
REPO
(default: ohmyzsh/ohmyzsh
): ini berbentuk owner/repository
. Jika Anda menyetel variabel ini, penginstal akan mencari repositori di https://github.com/{owner}/{repository}
.
REMOTE
(default: https://github.com/${REPO}.git
): ini adalah URL lengkap klon repositori git. Anda dapat menggunakan pengaturan ini jika Anda ingin menginstal dari fork yang tidak ada di GitHub (GitLab, Bitbucket...) atau jika Anda ingin mengkloning dengan SSH alih-alih HTTPS ( [email protected]:user/project.git
) .
CATATAN: ini tidak kompatibel dengan pengaturan variabel REPO
. Pengaturan ini akan diutamakan.
BRANCH
(default: master
): Anda dapat menggunakan pengaturan ini jika Anda ingin mengubah cabang default yang akan diperiksa saat mengkloning repositori. Ini mungkin berguna untuk menguji Permintaan Tarik, atau jika Anda ingin menggunakan cabang selain master
.
Misalnya:
REPO=apjanke/oh-my-zsh BRANCH=edge sh install.sh
git clone https://github.com/ohmyzsh/ohmyzsh.git ~ /.oh-my-zsh
~/.zshrc
Anda yang Ada cp ~ /.zshrc ~ /.zshrc.orig
Anda dapat membuat file konfigurasi zsh baru dengan menyalin template yang telah kami sertakan untuk Anda.
cp ~ /.oh-my-zsh/templates/zshrc.zsh-template ~ /.zshrc
chsh -s $( which zsh )
Anda harus keluar dari sesi pengguna Anda dan masuk kembali untuk melihat perubahan ini.
Setelah Anda membuka jendela terminal baru, itu akan memuat zsh dengan konfigurasi Oh My Zsh.
Jika Anda mengalami masalah saat menginstal, berikut adalah beberapa perbaikan umum.
PATH
Anda di ~/.zshrc
jika Anda tidak dapat menemukan beberapa perintah setelah beralih ke oh-my-zsh
.ZSH
di ~/.zshrc
. Jika Anda ingin mengganti salah satu perilaku default, cukup tambahkan file baru (berakhiran .zsh
) di custom/
direktori.
Jika Anda memiliki banyak fungsi yang berjalan dengan baik, Anda dapat menempatkannya sebagai file XYZ.plugin.zsh
di direktori custom/plugins/
dan kemudian mengaktifkan plugin ini.
Jika Anda ingin mengganti fungsionalitas plugin yang didistribusikan dengan Oh My Zsh, buatlah plugin dengan nama yang sama di direktori custom/plugins/
dan plugin tersebut akan dimuat alih-alih yang ada di plugins/
.
Perilaku default di Oh My Zsh adalah menggunakan BSD ls
di sistem macOS dan FreeBSD. Jika GNU ls
diinstal (sebagai perintah gls
), Anda dapat memilih untuk menggunakannya. Untuk melakukannya, Anda dapat menggunakan konfigurasi berbasis zstyle sebelum mencari oh-my-zsh.sh
:
zstyle ' :omz:lib:theme-and-appearance ' gnu-ls yes
Catatan: ini tidak kompatibel dengan DISABLE_LS_COLORS=true
Jika Anda ingin melewatkan alias Oh My Zsh default (yang ditentukan dalam file lib/*
) atau alias plugin, Anda dapat menggunakan pengaturan di bawah ini pada file ~/.zshrc
Anda, sebelum Oh My Zsh dimuat . Perhatikan bahwa ada banyak cara berbeda untuk melewati alias, bergantung pada kebutuhan Anda.
# 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
Anda dapat menggabungkannya dengan cara lain dengan mempertimbangkan cakupan yang lebih spesifik yang diutamakan:
# Skip all plugin aliases, except for the git plugin
zstyle ' :omz:plugins:* ' aliases no
zstyle ' :omz:plugins:git ' aliases yes
Versi sebelumnya dari fitur ini menggunakan pengaturan di bawah ini, yang telah dihapus:
zstyle ' :omz:directories ' aliases no
Sebagai gantinya, Anda kini dapat menggunakan yang berikut ini:
zstyle ' :omz:lib:directories ' aliases no
Fitur ini sedang dalam tahap pengujian dan mungkin dapat berubah di masa mendatang. Saat ini juga tidak kompatibel dengan pengelola plugin seperti zpm atau zinit, yang tidak menggunakan skrip init (
oh-my-zsh.sh
) tempat fitur ini diterapkan.
Saat ini juga tidak mengetahui "alias" yang didefinisikan sebagai fungsi. Contohnya adalah fungsi
gccd
,ggf
, atauggl
dari plugin git.
Fungsi prompt asinkron adalah fitur eksperimental (disertakan pada 3 April 2024) yang memungkinkan Oh My Zsh merender informasi prompt secara asinkron. Hal ini dapat meningkatkan performa rendering cepat, namun mungkin tidak berfungsi dengan baik pada beberapa penyiapan. Kami berharap hal itu tidak menjadi masalah, namun jika Anda melihat masalah dengan fitur baru ini, Anda dapat mematikannya dengan mengatur yang berikut ini di file .zshrc Anda, sebelum Oh My Zsh bersumber:
zstyle ' :omz:alpha:lib:git ' async-prompt no
Jika masalah Anda adalah prompt git berhenti muncul, Anda dapat mencoba memaksanya menyetel konfigurasi berikut sebelum oh-my-zsh.sh
bersumber. Jika masih tidak berhasil, buka masalah dengan kasus Anda.
zstyle ' :omz:alpha:lib:git ' async-prompt force
Secara default, Anda akan diminta untuk memeriksa pembaruan setiap 2 minggu. Anda dapat memilih mode pembaruan lainnya dengan menambahkan baris ke file ~/.zshrc
Anda, sebelum Oh My Zsh dimuat :
Pembaruan otomatis tanpa konfirmasi konfirmasi:
zstyle ' :omz:update ' mode auto
Cukup berikan pengingat setiap beberapa hari, jika ada pembaruan yang tersedia:
zstyle ' :omz:update ' mode reminder
Untuk menonaktifkan pembaruan otomatis sepenuhnya:
zstyle ' :omz:update ' mode disabled
CATATAN: Anda dapat mengontrol seberapa sering Oh My Zsh memeriksa pembaruan dengan pengaturan berikut:
# 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
Anda juga dapat membatasi verbositas pembaruan dengan pengaturan berikut:
zstyle ' :omz:update ' verbose default # default update prompt
zstyle ' :omz:update ' verbose minimal # only few lines
zstyle ' :omz:update ' verbose silent # only errors
Jika Anda ingin memperbarui kapan saja (mungkin seseorang baru saja merilis plugin baru dan Anda tidak ingin menunggu seminggu?) Anda hanya perlu menjalankan:
omz update
Sihir! ?
Oh My Zsh bukan untuk semua orang. Kami akan merindukanmu, tapi kami ingin membuat perpisahan ini mudah.
Jika Anda ingin menghapus instalasi oh-my-zsh
, jalankan saja uninstall_oh_my_zsh
dari baris perintah. Ini akan menghapus dirinya sendiri dan mengembalikan konfigurasi bash
atau zsh
Anda sebelumnya.
Sebelum Anda berpartisipasi dalam komunitas kami yang menyenangkan, harap baca kode etik.
Saya masih jauh dari pakar Zsh dan menduga ada banyak cara untuk meningkatkannya – jika Anda punya ide tentang cara membuat konfigurasi lebih mudah dikelola (dan lebih cepat), jangan ragu untuk melakukan fork dan mengirimkan permintaan penarikan!
Kami juga membutuhkan orang untuk menguji permintaan tarik. Jadi lihatlah permasalahan yang ada dan bantulah semampu Anda.
Lihat Berkontribusi untuk rincian lebih lanjut.
Kami memiliki (lebih dari) cukup tema untuk saat ini. Silakan tambahkan tema Anda ke halaman wiki tema eksternal.
Oh My Zsh memiliki komunitas pengguna yang bahagia dan kontributor yang menyenangkan. Tanpa seluruh waktu dan bantuan dari kontributor kami, ini tidak akan luar biasa.
Terima kasih banyak!
Kami di media sosial:
Kami menyediakan stiker, kaos, dan cangkir kopi untuk menunjukkan kecintaan Anda pada Oh My Zsh. Sekali lagi, Anda akan menjadi bahan pembicaraan di kota!
Oh My Zsh dirilis di bawah lisensi MIT.
Oh My Zsh dimulai oleh tim di Planet Argon, sebuah agen pengembangan Ruby on Rails. Lihat proyek sumber terbuka kami yang lain.