Ini adalah perintah zshcompctl yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa stasiun kerja online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
zshcompctl - penyelesaian yang dapat diprogram zsh
DESKRIPSI
Versi zsh ini memiliki dua cara untuk melakukan penyelesaian kata pada baris perintah.
Pengguna baru shell mungkin lebih suka menggunakan sistem yang lebih baru dan lebih kuat berdasarkan shell
fungsi; ini dijelaskan dalam zshcompsys(1), dan mekanisme shell dasar yang
mendukungnya dijelaskan dalam zshcompwid(1). Entri manual ini menjelaskan yang lebih tua kompak
perintah.
kompak [ -CDT ] Pilihan [ Command ... ]
kompak [ -CDT ] Pilihan [ -x belt hold Pilihan - ... -- ]
[ + Pilihan [ -x ... -- ] ... [+] ] [ Command ... ]
kompak -M spesifikasi pertandingan ...
kompak -L [ -CDTM ] [ Command ... ]
kompak + Command ...
Kontrol perilaku penyelesaian editor sesuai dengan set yang disediakan Pilihan.
Berbagai perintah pengeditan, terutama memperluas-atau-lengkap-kata, biasanya terikat pada tab, akan
mencoba menyelesaikan kata yang diketik oleh pengguna, sementara yang lain, terutama hapus-char-atau-daftar,
biasanya terikat ke ^D dalam mode pengeditan EMACS, buat daftar kemungkinannya; kompak mengontrol apa
kemungkinan itu adalah. Mereka mungkin misalnya nama file (kasus paling umum, dan
maka default), variabel shell, atau kata-kata dari daftar yang ditentukan pengguna.
COMMAND BENDERA
Penyelesaian argumen dari suatu perintah mungkin berbeda untuk setiap perintah atau dapat menggunakan
bawaan. Perilaku saat menyelesaikan kata perintah itu sendiri mungkin juga terpisah
ditentukan. Ini sesuai dengan flag dan argumen berikut, yang semuanya (kecuali
untuk -L) dapat dikombinasikan dengan kombinasi apa pun dari Pilihan dijelaskan selanjutnya dalam
bagian 'Bendera Opsi':
Command ...
mengontrol penyelesaian untuk perintah yang disebutkan, yang harus dicantumkan terakhir di
garis komando. Jika penyelesaian dicoba untuk perintah dengan nama path yang mengandung
garis miring dan tidak ada definisi penyelesaian yang ditemukan, pencarian dicoba ulang dengan yang terakhir
komponen nama jalur. Jika perintah dimulai dengan a =, penyelesaian dicoba dengan
nama path dari perintah.
Salah satu Command string mungkin pola dari bentuk yang biasanya digunakan untuk nama file
generasi. Ini harus dikutip untuk melindungi mereka dari ekspansi langsung; untuk
contoh string perintah 'foo*' mengatur untuk menyelesaikan kata-kata apa pun
perintah dimulai dengan foo. Saat penyelesaian dicoba, semua penyelesaian pola
diadili dalam urutan terbalik dari definisinya sampai ada yang cocok. Secara default,
penyelesaian kemudian berjalan seperti biasa, yaitu shell akan mencoba menghasilkan lebih banyak
cocok untuk perintah tertentu pada baris perintah; ini dapat ditimpa oleh
termasuk -tn di flag untuk penyelesaian pola.
Perhatikan bahwa alias diperluas sebelum nama perintah ditentukan kecuali jika
LENGKAP_ALIASES pilihan diatur. Perintah tidak boleh digabungkan dengan -C, -D or -T
bendera.
-C mengontrol penyelesaian ketika kata perintah itu sendiri sedang diselesaikan. Jika tidak kompak
-C perintah telah dikeluarkan, nama-nama perintah yang dapat dieksekusi (baik dalam
path atau khusus untuk shell, seperti alias atau fungsi) selesai.
-D mengontrol perilaku penyelesaian default untuk argumen perintah yang tidak ditetapkan apa pun
perilaku khusus. Jika tidak kompak -D perintah telah dikeluarkan, nama file adalah
lengkap.
-T memasok bendera penyelesaian untuk digunakan sebelum pemrosesan lainnya dilakukan, bahkan
sebelum diproses untuk kompaks didefinisikan untuk perintah tertentu. Ini terutama
berguna bila dikombinasikan dengan penyelesaian yang diperpanjang ( -x bendera, lihat bagian
`Penyelesaian Diperpanjang' di bawah). Dengan menggunakan tanda ini, Anda dapat menentukan perilaku default
yang akan berlaku untuk semua perintah tanpa kecuali, atau Anda dapat mengubah standar
perilaku untuk semua perintah. Misalnya, jika akses Anda ke database pengguna terlalu
lambat dan/atau berisi terlalu banyak pengguna (sehingga selesai setelah `~' terlalu lambat untuk
dapat digunakan), Anda dapat menggunakan
kompak -T -x ini[~] C[0,[^/]#]' -k teman -S/ -tn
untuk melengkapi string dalam array teman setelah `~' Itu C[...] argumen adalah
diperlukan agar bentuk ini ~-penyelesaian tidak dicoba setelah nama direktori
selesai.
-L daftar perilaku penyelesaian yang ada dengan cara yang cocok untuk dimasukkan ke dalam a
skrip awal; perilaku yang ada tidak berubah. Setiap kombinasi dari
formulir di atas, atau -M bendera (yang harus mengikuti -L bendera), dapat ditentukan,
jika tidak, semua penyelesaian yang ditentukan akan dicantumkan. Bendera lain yang disediakan adalah
diabaikan.
tidak argumen
Jika tidak ada argumen yang diberikan, kompak daftar semua penyelesaian yang ditentukan dalam singkatan
membentuk; dengan daftar Pilihan, semua penyelesaian dengan flag-flag tersebut (tidak termasuk
penyelesaian diperpanjang) terdaftar.
Jika + bendera sendirian dan segera diikuti oleh Command daftar, penyelesaian
perilaku untuk semua perintah dalam daftar diatur ulang ke default. Dengan kata lain,
penyelesaian selanjutnya akan menggunakan opsi yang ditentukan oleh -D bendera.
Bentuk dengan -M sebagai opsi pertama dan satu-satunya mendefinisikan spesifikasi pencocokan global (lihat
zshcompwid). Spesifikasi pertandingan yang diberikan akan digunakan untuk setiap upaya penyelesaian
(hanya saat menggunakan kompak, bukan dengan sistem penyelesaian baru) dan dicoba dalam urutan
di mana mereka didefinisikan sampai satu menghasilkan setidaknya satu kecocokan. Misalnya:
kompak -M '' 'm:{a-zA-Z}={A-Za-z}'
Ini pertama-tama akan mencoba penyelesaian tanpa spesifikasi kecocokan global (string kosong)
dan, jika itu tidak menghasilkan kecocokan, akan mencoba penyelesaian case-sensitive.
PILIHAN BENDERA
[ -fcFBdeaRGovNAIOPZEnbjrzu/12 ]
[ -k susunan ] [ -g globstring ] [ -s substring ]
[ -K fungsi ]
[ -Q ] [ -P awalan ] [ -S akhiran ]
[ -W file-awalan ] [ -H num belt hold ]
[ -q ] [ -X penjelasan ] [ -Y penjelasan ]
[ -y func-atau-var ] [ -l cmd ] [ -h cmd ] [ -U ]
[ -t terus ] [ -J nama ] [ -V nama ]
[ -M spesifikasi pertandingan ]
Yang tersisa Pilihan tentukan jenis argumen perintah yang harus dicari selama penyelesaian.
Setiap kombinasi dari tanda-tanda ini dapat ditentukan; hasilnya adalah daftar yang diurutkan dari semua
kemungkinan. Pilihannya adalah sebagai berikut.
Sederhana Flags
Ini menghasilkan daftar penyelesaian yang dibuat oleh shell itu sendiri:
-f Nama file dan jalur sistem file.
-/ Hanya jalur sistem file.
-c Nama perintah, termasuk alias, fungsi shell, bawaan, dan kata-kata yang dicadangkan.
-F Nama-nama fungsi.
-B Nama-nama perintah bawaan.
-m Nama-nama perintah eksternal.
-w Kata-kata yang dicadangkan.
-a Nama-nama alias.
-R Nama alias reguler (non-global).
-G Nama alias global.
-d Ini dapat dikombinasikan dengan -F, -B, -w, -a, -R dan -G untuk mendapatkan nama penyandang disabilitas
fungsi, bawaan, kata-kata yang dicadangkan atau alias.
-e Opsi ini (untuk menampilkan perintah yang diaktifkan) berlaku secara default, tetapi dapat digabungkan
dengan -d; -dari dalam kombinasi dengan -F, -B, -w, -a, -R dan -G akan melengkapi nama
fungsi, bawaan, kata yang dicadangkan atau alias apakah dinonaktifkan atau tidak.
-o Nama opsi shell (lihat tokopedia(1)).
-v Nama variabel apa pun yang ditentukan dalam shell.
-N Nama parameter skalar (non-array).
-A Nama-nama array.
-I Nama-nama variabel integer.
-O Nama variabel read-only.
-p Nama parameter yang digunakan oleh shell (termasuk parameter khusus).
-Z Nama parameter khusus shell.
-E Nama variabel lingkungan.
-n Direktori bernama.
-b Nama-nama pengikat kunci.
-j Nama pekerjaan: kata pertama dari baris perintah pemimpin pekerjaan. Ini berguna dengan
itu membunuh bawaan
-r Nama-nama pekerjaan yang sedang berjalan.
-z Nama-nama pekerjaan yang ditangguhkan.
-u Nama pengguna.
Flags dengan kasus
Ini memiliki argumen yang disediakan pengguna untuk menentukan bagaimana daftar penyelesaian dibuat
naik:
-k susunan
Nama diambil dari unsur $susunan (perhatikan bahwa `$' tidak muncul di
garis komando). Atau, argumen susunan itu sendiri mungkin satu set ruang- atau
nilai yang dipisahkan koma dalam tanda kurung, di mana setiap pembatas dapat diloloskan dengan a
garis miring terbalik; dalam hal ini argumen harus dikutip. Sebagai contoh,
kompak -k "(waktu cpu ukuran file ukuran data ukuran tumpukan
com.coredumpsize penduduk deskriptor)" membatasi
-g globstring
The globstring diperluas menggunakan globbing nama file; itu harus dikutip untuk melindungi
itu dari ekspansi langsung. Nama file yang dihasilkan diambil sebaik mungkin
penyelesaian. Gunakan `*(/)' bukannya `*/' untuk direktori. NS mengabaikan khusus
parameter tidak diterapkan ke file yang dihasilkan. Lebih dari satu pola mungkin
diberikan dipisahkan oleh blanko. (Perhatikan bahwa ekspansi brace adalah tidak bagian dari globbing. Menggunakan
sintaks `(salah satu|atau)' untuk mencocokkan alternatif.)
-s substring
The substring dipecah menjadi kata-kata dan kata-kata ini kemudian diperluas menggunakan semua
mekanisme ekspansi shell (lihat zshexpn(1)). Kata-kata yang dihasilkan diambil sebagai
kemungkinan penyelesaian. NS mengabaikan parameter khusus tidak diterapkan ke
file yang dihasilkan. Perhatikan bahwa -g lebih cepat untuk nama file.
-K fungsi
Panggil fungsi yang diberikan untuk mendapatkan penyelesaian. Kecuali jika namanya dimulai dengan
garis bawah, fungsi dilewatkan dua argumen: awalan dan akhiran dari
kata yang penyelesaiannya harus dicoba, dengan kata lain karakter-karakter itu sebelumnya
posisi kursor, dan dari posisi kursor dan seterusnya. Seluruh perintah
jalur dapat diakses dengan -c dan -l bendera Baca baca bawaan Fungsinya
harus mengatur variabel balasan ke array yang berisi penyelesaian (satu
penyelesaian per elemen); perhatikan itu balasan tidak boleh dibuat lokal untuk fungsi tersebut.
Dari fungsi seperti itu baris perintah dapat diakses dengan -c dan -l bendera ke
itu Baca baca bawaan Sebagai contoh,
fungsi siapa? { balasan=(`pengguna`); }
kompak -K siapa? berbicara
hanya menyelesaikan pengguna yang masuk setelah `berbicara'. Perhatikan bahwa `siapa?' harus kembali dan
larik, jadi `balasan=`pengguna`' akan salah.
-H num belt hold
Kemungkinan penyelesaian diambil dari yang terakhir num garis sejarah. Hanya kata-kata
sesuai belt hold diambil. Jika num adalah nol atau negatif seluruh sejarah adalah
dicari dan jika belt hold adalah string kosong semua kata diambil (seperti `*'). A
penggunaan tipikal adalah
kompak -D -f + -H 0 ''
yang memaksa penyelesaian untuk melihat kembali daftar riwayat untuk sebuah kata jika tidak ada nama file
pertandingan.
kontrol Flags
Ini tidak secara langsung menentukan jenis nama yang akan diselesaikan, tetapi memanipulasi opsi
yang melakukan:
-Q Ini menginstruksikan Shell untuk tidak mengutip metakarakter apa pun dalam kemungkinan
penyelesaian. Biasanya hasil penyelesaian dimasukkan ke dalam perintah
sejalan dengan metakarakter yang dikutip sehingga ditafsirkan sebagai normal
karakter. Ini sesuai untuk nama file dan string biasa. Namun, untuk
efek khusus, seperti memasukkan ekspresi backquoted dari array penyelesaian
(-k) sehingga ekspresi tidak akan dievaluasi sampai baris lengkapnya adalah
dieksekusi, opsi ini harus digunakan.
-P awalan
The awalan dimasukkan tepat sebelum string selesai; sudah ada bagian awal
diketik akan selesai dan keseluruhan awalan diabaikan untuk tujuan penyelesaian. Untuk
contoh,
kompak -j -P "%" membunuh
menyisipkan `%' setelah perintah kill dan kemudian melengkapi nama pekerjaan.
-S akhiran
Ketika penyelesaian ditemukan, akhiran dimasukkan setelah string selesai. Di dalam
kasus penyelesaian menu, sufiks segera dimasukkan, tetapi masih
mungkin untuk menelusuri daftar penyelesaian dengan berulang kali memukul yang sama
kunci.
-W file-awalan
Dengan direktori file-awalan: untuk perintah, file, direktori dan penyelesaian globbing
(pilihan -c, -f, -/, -g), awalan file secara implisit ditambahkan di depan
penyelesaian. Sebagai contoh,
kompak -/ -W ~/Surat maildir
menyelesaikan subdirektori apa pun hingga kedalaman apa pun di bawah direktori ~/Surat, Meskipun
awalan itu tidak muncul di baris perintah. NS file-awalan mungkin juga dari
formulir yang diterima oleh -k flag, yaitu nama array atau daftar literal di
kurung. Dalam hal ini semua direktori dalam daftar akan dicari
kemungkinan penyelesaian.
-q Jika digunakan dengan akhiran seperti yang ditentukan oleh -S opsi, ini menyebabkan sufiks menjadi
dihapus jika karakter berikutnya yang diketik kosong atau tidak menyisipkan apa pun atau jika
akhiran hanya terdiri dari satu karakter dan karakter berikutnya yang diketik adalah sama
karakter; ini aturan yang sama digunakan untuk AUTO_REMOVE_SLASH pilihan. Pilihannya adalah
paling berguna untuk pemisah daftar (koma, titik dua, dll.).
-l cmd Opsi ini membatasi jangkauan kata-kata baris perintah yang dianggap sebagai
argumen. Jika dikombinasikan dengan salah satu pola penyelesaian diperpanjang `p[...]',
`r[...]', atau `R[...]' (lihat bagian `Penyelesaian yang Diperpanjang' di bawah) kisarannya adalah
terbatas pada rentang argumen yang ditentukan dalam tanda kurung. Penyelesaiannya kemudian
dilakukan seolah-olah ini telah diberikan sebagai argumen untuk cmd disertakan dengan
pilihan. jika cmd string kosong, kata pertama dalam rentang diambil sebagai
nama perintah, dan penyelesaian nama perintah dilakukan pada kata pertama di
jangkauan. Sebagai contoh,
kompak -x 'r[-exec,;]' -l '' -- menemukan
menyelesaikan argumen antara `-Exec' dan berikut `;' (atau akhir dari
baris perintah jika tidak ada string seperti itu) seolah-olah mereka adalah baris perintah yang terpisah.
-h cmd Biasanya zsh menyelesaikan string yang dikutip secara keseluruhan. Dengan opsi ini, penyelesaian dapat
dilakukan secara terpisah pada bagian yang berbeda dari string tersebut. Ini bekerja seperti -l Option
tetapi membuat kode penyelesaian berfungsi pada bagian kata saat ini yaitu
dipisahkan oleh spasi. Bagian-bagian ini dilengkapi seolah-olah mereka adalah argumen untuk
diberikan cmd. Jika cmd adalah string kosong, bagian pertama selesai sebagai perintah
nama, seperti -l.
-U Gunakan seluruh daftar kemungkinan penyelesaian, apakah itu benar-benar cocok dengan
kata pada baris perintah. Kata yang diketik sejauh ini akan dihapus. Ini paling
berguna dengan fungsi (diberikan oleh -K pilihan) yang dapat memeriksa kata
komponen yang diteruskan ke sana (atau melalui Baca baca bawaan -c dan -l bendera) dan gunakan sendiri
kriteria untuk memutuskan apa yang cocok. Jika tidak ada penyelesaian, kata aslinya adalah
dipertahankan. Karena kemungkinan penyelesaian yang dihasilkan jarang memiliki kesamaan yang menarik
awalan dan akhiran, penyelesaian menu segera dimulai jika AUTO_MENU diatur
dan bendera ini digunakan.
-y func-atau-var
Daftar yang disediakan oleh func-atau-var ditampilkan alih-alih daftar penyelesaian
setiap kali daftar diperlukan; penyelesaian sebenarnya yang akan dimasukkan tidak
terpengaruh. Itu dapat diberikan dengan dua cara. Pertama, jika func-atau-var dimulai dengan a $
itu mendefinisikan variabel, atau jika dimulai dengan tanda kurung kiri array literal,
yang berisi daftar. Variabel mungkin telah disetel oleh panggilan ke suatu fungsi
menggunakan -K pilihan. Kalau tidak, itu berisi nama fungsi yang akan menjadi
dieksekusi untuk membuat daftar. Fungsi akan diteruskan sebagai daftar argumen semua
penyelesaian yang cocok, termasuk awalan dan akhiran yang diperluas secara penuh, dan harus
mengatur array balasan untuk hasil. Dalam kedua kasus, daftar tampilan hanya akan
diambil setelah daftar lengkap kecocokan telah dibuat.
Perhatikan bahwa daftar yang dikembalikan tidak harus sesuai, bahkan panjangnya, dengan
set kecocokan asli, dan dapat diteruskan sebagai skalar alih-alih array. Tidak
pemformatan karakter khusus dilakukan pada output dalam kasus ini; di dalam
khusus, baris baru dicetak secara harfiah dan jika muncul output dalam kolom adalah
tertindas.
-X penjelasan
Mencetak penjelasan saat mencoba penyelesaian pada rangkaian opsi saat ini. Sebuah `%n' di dalam
string ini diganti dengan jumlah kecocokan yang ditambahkan untuk ini
rangkaian penjelasan. Penjelasannya hanya muncul jika penyelesaian sudah dicoba dan ada
tidak ada kecocokan unik, atau saat daftar selesai. String penjelasan akan menjadi
terdaftar bersama-sama dengan kecocokan grup yang ditentukan bersama dengan -X Option
(menggunakan -J or -V pilihan). Jika string penjelasan yang sama diberikan ke beberapa -X
pilihan, string hanya muncul sekali (untuk setiap grup) dan jumlah kecocokan
ditampilkan untuk `%n' adalah jumlah total semua kecocokan untuk masing-masing penggunaan ini. Di dalam
Bagaimanapun, string penjelasan hanya akan ditampilkan jika ada setidaknya satu kecocokan
ditambahkan untuk string penjelasan.
Urutannya %B, %b, %S, %s, %U, dan %u tentukan atribut keluaran (tebal, menonjol,
dan garis bawahi), %F, %f, %K, %k tentukan warna latar depan dan latar belakang, dan
%{...%} dapat digunakan untuk memasukkan urutan pelarian literal seperti pada prompt.
-Y penjelasan
Sama dengan -X, kecuali bahwa penjelasan pertama mengalami ekspansi berikut
aturan biasa untuk string dalam tanda kutip ganda. Perluasan akan dilakukan
setelah fungsi apa pun dipanggil untuk -K or -y pilihan, memungkinkan mereka untuk mengatur
variabel.
-t terus
The terus-string berisi karakter yang menentukan set penyelesaian mana
bendera harus digunakan selanjutnya. Ini berguna:
(saya dengan -T, atau ketika mencoba daftar penyelesaian pola, ketika kompak akan
biasanya dilanjutkan dengan pemrosesan biasa setelah menemukan kecocokan; ini bisa jadi
ditekan dengan `-tn'.
(ii) Dengan daftar alternatif yang dipisahkan oleh +, Saat kompak biasanya akan berhenti
ketika salah satu alternatif menghasilkan kecocokan. Hal ini dapat dipaksa untuk mempertimbangkan
set penyelesaian berikutnya dengan menambahkan `-t+' ke bendera alternatif sebelum
`+'.
(iii) Dalam daftar penyelesaian yang diperpanjang (lihat di bawah), ketika kompak biasanya
lanjutkan hingga serangkaian kondisi berhasil, lalu gunakan hanya yang segera
bendera berikut. Dengan `-T-', kompak akan terus mencoba penyelesaian yang diperpanjang
setelah ` . berikutnya-'; dengan `-tx' itu akan mencoba menyelesaikan dengan bendera default,
dengan kata lain sebelum `-x'.
-J nama
Ini memberikan nama grup tempat pertandingan harus ditempatkan. Grup terdaftar
dan diurutkan secara terpisah; juga, penyelesaian menu akan menawarkan kecocokan di
kelompok dalam urutan di mana kelompok didefinisikan. Jika tidak ada nama grup adalah
diberikan secara eksplisit, kecocokan disimpan dalam grup bernama kegagalan. Pertama kali
nama grup ditemukan, grup dengan nama itu dibuat. Setelah itu semua
kecocokan dengan nama grup yang sama disimpan dalam grup itu.
Ini dapat berguna dengan penyelesaian alternatif non-eksklusif. Misalnya, di
kompak -f -J arsip -t+ + -v -J variabel foo
baik file dan variabel adalah kemungkinan penyelesaian, karena -t+ memaksa kedua set
alternatif sebelum dan sesudah + untuk dipertimbangkan sekaligus. Karena itu -J
pilihan, bagaimanapun, semua file terdaftar sebelum semua variabel.
-V nama
Seperti -J, tetapi kecocokan dalam grup tidak akan diurutkan dalam daftar atau di menu
penyelesaian. Grup yang tidak disortir ini berada di ruang nama yang berbeda dari yang diurutkan
satu, jadi grup didefinisikan sebagai -J arsip dan -V arsip berbeda.
-1 Jika diberikan bersama dengan -V opsi, hanya membuat duplikat berturut-turut di
kelompok dihapus. Perhatikan bahwa grup dengan dan tanpa bendera ini memiliki nama yang berbeda
spasi.
-2 Jika diberikan bersama dengan -J or -V pilihan, membuat semua duplikat disimpan. Lagi,
grup dengan dan tanpa flag ini berada di ruang nama yang berbeda.
-M spesifikasi pertandingan
Ini mendefinisikan spesifikasi kontrol pencocokan tambahan yang hanya boleh digunakan
saat menguji kata-kata untuk daftar bendera bendera ini muncul. Format dari
spesifikasi pertandingan string dijelaskan dalam zshcompwid.
ALTERNATIF PENYELESAIAN
kompak [ -CDT ] Pilihan + Pilihan [ + ... ] [ + ] Command ...
Formulir dengan `+' menentukan opsi alternatif. Penyelesaian dicoba dengan opsi
sebelum ` . pertama+'. Jika ini tidak menghasilkan kecocokan, penyelesaian dicoba dengan flag setelahnya
`+' dan seterusnya. Jika tidak ada bendera setelah ` . terakhir+' dan kecocokan belum ditemukan
sampai saat itu, penyelesaian default dicoba. Jika daftar bendera berisi -t dengan
+ karakter, daftar bendera berikutnya digunakan bahkan jika daftar saat ini yang dihasilkan cocok.
Opsi tambahan tersedia yang membatasi penyelesaian untuk beberapa bagian dari perintah
garis; ini disebut sebagai 'penyelesaian yang diperpanjang'.
DITERIMA PENYELESAIAN
kompak [ -CDT ] Pilihan -x belt hold Pilihan - ... --
[ Command ... ]
kompak [ -CDT ] Pilihan [ -x belt hold Pilihan - ... -- ]
[ + Pilihan [ -x ... -- ] ... [+] ] [ Command ... ]
Formulir dengan `-x' menentukan penyelesaian yang diperpanjang untuk perintah yang diberikan; seperti yang ditunjukkan, mungkin
digabungkan dengan penyelesaian alternatif menggunakan `+'. Setiap belt hold diperiksa secara bergantian; Kapan
kecocokan ditemukan, yang sesuai Pilihan, seperti yang dijelaskan di bagian `Bendera Opsi'
di atas, digunakan untuk menghasilkan kemungkinan penyelesaian. Jika tidak belt hold pertandingan, Pilihan
diberikan sebelum -x digunakan
Perhatikan bahwa setiap pola harus diberikan sebagai argumen tunggal dan harus dikutip ke
mencegah ekspansi karakter meta oleh shell.
A belt hold dibangun dari sub-pola yang dipisahkan oleh koma; cocok jika setidaknya salah satu dari
sub-pola ini cocok (mereka `atau'). Sub-pola ini pada gilirannya terdiri dari
sub-pola lain dipisahkan oleh spasi putih yang cocok jika semua sub-pola cocok
(mereka adalah `dan'ed). Sebuah elemen dari sub-pola berbentuk `c[...][...]', di mana
pasangan tanda kurung dapat diulang sesering yang diperlukan, dan cocok jika salah satu dari
set tanda kurung cocok (sebuah `atau'). Contoh di bawah ini membuatnya lebih jelas.
Elemen-elemen tersebut dapat berupa salah satu dari berikut ini:
s[string]...
Cocok jika kata saat ini pada baris perintah dimulai dengan salah satu string
diberikan dalam tanda kurung. NS string tidak dihapus dan bukan merupakan bagian dari penyelesaian.
S[string]...
Seperti s[string] kecuali bahwa string merupakan bagian dari penyelesaian.
p[dari,untuk]...
Cocok jika jumlah kata saat ini berada di antara salah satu dari dari dan untuk pasang
inklusif. koma dan untuk adalah opsional; untuk default ke nilai yang sama dengan dari.
Angkanya mungkin negatif: -n ke n'th kata terakhir di telepon.
c[mengimbangi,string]...
Cocok jika string cocok dengan kata diimbangi oleh mengimbangi dari kata saat ini
posisi. Biasanya mengimbangi akan negatif.
C[mengimbangi,belt hold]...
Seperti c tetapi menggunakan pencocokan pola sebagai gantinya.
w[indeks,string]...
Cocok jika kata dalam posisi indeks sama dengan yang sesuai string. Catatan
bahwa jumlah kata dibuat setelah ekspansi alias apa pun.
W[indeks,belt hold]...
Seperti w tetapi menggunakan pencocokan pola sebagai gantinya.
n[indeks,string]...
Cocok jika kata saat ini mengandung string. Apa pun hingga dan termasuk
indekskemunculan string ini tidak akan dianggap sebagai bagian dari penyelesaian,
tapi sisanya akan. indeks mungkin negatif untuk dihitung dari akhir: dalam banyak kasus,
indeks akan menjadi 1 atau -1. Sebagai contoh,
kompak -s ''pengguna`' -x 'n[1,@]' -k host -- berbicara
biasanya akan melengkapi nama pengguna, tetapi jika Anda memasukkan @ setelah nama, nama dari
susunannya host (diasumsikan berisi nama host, meskipun Anda harus membuat array
sendiri) akan selesai. Perintah lain seperti rcp dapat ditangani dengan cara yang sama.
N[indeks,string]...
Seperti n kecuali bahwa string akan diambil sebagai kelas karakter. Apa saja sampai
dan termasuk indekskemunculan salah satu karakter dalam string tidak akan
dianggap sebagai bagian dari penyelesaian.
m[menit,max]...
Cocok jika jumlah total kata terletak di antara menit dan max inklusif.
r[str1,str2]...
Cocok jika kursor berada setelah kata dengan awalan str1. Jika ada juga kata
dengan awalan str2 di baris perintah setelah yang cocok dengan str1 itu hanya cocok
jika kursor berada sebelum kata ini. Jika koma dan str2 dihilangkan, cocok jika
kursor berada setelah kata dengan awalan str1.
R[str1,str2]...
Seperti r tetapi menggunakan pencocokan pola sebagai gantinya.
q[str]...
Cocok dengan kata yang sedang diselesaikan dalam tanda kutip tunggal dan str dimulai
dengan huruf `s', atau jika penyelesaiannya dilakukan dalam tanda kutip ganda dan str dimulai dengan
huruf `d', atau jika penyelesaiannya dilakukan secara backticks dan str dimulai dengan `b'.
CONTOH
kompak -u -x ini[+] c[-1,-f],s[-f+]' \
-g '~/Surat/*(:T)' - 's[-f],c[-1,-f]' -f -- surat
Ini harus ditafsirkan sebagai berikut:
Jika perintah saat ini adalah surat, kemudian
if ((kata saat ini dimulai dengan + dan kata sebelumnya adalah -f)
atau (kata saat ini dimulai dengan -f+)), lalu selesaikan
bagian non-direktori (`:t' pengubah glob) dari file dalam direktori
~/Surat; lain
jika kata saat ini dimulai dengan -f atau kata sebelumnya adalah -f, kemudian
menyelesaikan file apa pun; lain
nama pengguna lengkap.
Gunakan zshcompctl online menggunakan layanan onworks.net