Ini ialah arahan zshcompctl yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.
JADUAL:
NAMA
zshcompctl - zsh penyiapan boleh atur cara
DESCRIPTION
Versi zsh ini mempunyai dua cara untuk melaksanakan penyiapan perkataan pada baris arahan.
Pengguna baharu shell mungkin lebih suka menggunakan sistem yang lebih baharu dan lebih berkuasa berdasarkan shell
fungsi; ini diterangkan dalam zshcompsys(1), dan mekanisme cengkerang asas yang
menyokongnya diterangkan dalam zshcompwid(1). Entri manual ini menerangkan yang lebih lama compctl
perintah.
compctl [ -CDT ] pilihan [ arahan ... ]
compctl [ -CDT ] pilihan [ -x pola pilihan - ... -- ]
[ + pilihan [ -x ... -- ] ... [+] ] [ arahan ... ]
compctl -M padanan-spesifikasi ...
compctl -L [ -CDTM ] [ arahan ... ]
compctl + arahan ...
Kawal tingkah laku penyiapan editor mengikut set yang dibekalkan pilihan.
Pelbagai arahan penyuntingan, terutamanya kembangkan-atau-lengkap-perkataan, biasanya terikat pada tab, akan
cuba melengkapkan perkataan yang ditaip oleh pengguna, manakala yang lain, terutamanya delete-char-or-list,
biasanya terikat kepada ^D dalam mod penyuntingan EMACS, senaraikan kemungkinan; compctl mengawal apa
kemungkinan itu adalah. Contohnya mungkin nama fail (kes yang paling biasa, dan
oleh itu lalai), pembolehubah shell, atau perkataan daripada senarai yang ditentukan pengguna.
COMMAND BENTUK
Penyiapan hujah perintah mungkin berbeza untuk setiap arahan atau mungkin menggunakan
lalai. Tingkah laku semasa melengkapkan kata perintah itu sendiri mungkin juga berasingan
ditentukan. Ini sepadan dengan bendera dan hujah berikut, yang kesemuanya (kecuali
khususnya -L) boleh digabungkan dengan mana-mana gabungan pilihan diterangkan seterusnya dalam
bahagian `Bendera Pilihan':
arahan ...
mengawal penyiapan untuk arahan yang dinamakan, yang mesti disenaraikan terakhir pada
baris arahan. Jika penyelesaian cuba untuk arahan dengan nama laluan yang mengandungi
garis miring dan tiada definisi lengkap ditemui, carian dicuba semula dengan yang terakhir
komponen nama laluan. Jika arahan dimulakan dengan a =, penyiapan dicuba dengan
nama laluan arahan.
Mana-mana arahan rentetan mungkin corak bentuk yang biasa digunakan untuk nama fail
generasi. Ini harus dipetik untuk melindungi mereka daripada pengembangan segera; untuk
contoh rentetan arahan 'foo*' mengatur untuk melengkapkan perkataan mana-mana
perintah bermula dengan foo. Apabila penyiapan cuba, semua pelengkapan corak
dicuba dalam susunan terbalik definisi mereka sehingga satu sepadan. Secara lalai,
penyiapan kemudian berjalan seperti biasa, iaitu shell akan cuba menjana lebih banyak
padanan untuk arahan khusus pada baris arahan; ini boleh ditindih oleh
termasuk -tn dalam bendera untuk pelengkapan corak.
Ambil perhatian bahawa alias dikembangkan sebelum nama arahan ditentukan melainkan
COMPLETE_ALIASES pilihan ditetapkan. Perintah tidak boleh digabungkan dengan -C, -D or -T
bendera.
-C mengawal penyiapan apabila kata perintah itu sendiri sedang dilengkapkan. Jika tidak compctl
-C arahan telah dikeluarkan, nama mana-mana arahan boleh laku (sama ada dalam
laluan atau khusus untuk shell, seperti alias atau fungsi) telah selesai.
-D mengawal tingkah laku penyiapan lalai untuk hujah arahan yang tidak diberikan apa-apa
tingkah laku istimewa. Jika tidak compctl -D arahan telah dikeluarkan, nama fail adalah
selesai.
-T membekalkan bendera siap untuk digunakan sebelum sebarang pemprosesan lain dilakukan, malah
sebelum diproses untuk compctls ditakrifkan untuk arahan tertentu. Ini terutamanya
berguna apabila digabungkan dengan penyiapan lanjutan (the -x bendera, lihat bahagian
`Penyiapan Lanjutan' di bawah). Menggunakan bendera ini, anda boleh menentukan tingkah laku lalai
yang akan digunakan untuk semua arahan tanpa pengecualian, atau anda boleh mengubah standard
tingkah laku untuk semua arahan. Sebagai contoh, jika akses anda kepada pangkalan data pengguna juga
perlahan dan/atau ia mengandungi terlalu ramai pengguna (supaya selesai selepas `~' terlalu lambat untuk
boleh digunakan), anda boleh gunakan
compctl -T -x 's [~] C[0,[^/]#]' -k kawan -S/ -tn
untuk melengkapkan rentetan dalam tatasusunan kawan selepas `~'. The C[...] hujah ialah
perlu supaya bentuk ini ~-penyelesaian tidak dicuba selepas nama direktori
sudah tamat.
-L menyenaraikan tingkah laku siap sedia ada dengan cara yang sesuai untuk dimasukkan ke dalam a
skrip permulaan; tingkah laku sedia ada tidak berubah. Mana-mana gabungan daripada
borang di atas, atau -M bendera (yang mesti mengikut -L bendera), boleh ditentukan,
jika tidak semua penyelesaian yang ditentukan disenaraikan. Sebarang bendera lain yang dibekalkan adalah
diabaikan.
tidak hujah
Jika tiada hujah diberikan, compctl menyenaraikan semua penyiapan yang ditakrifkan secara ringkas
bentuk; dengan senarai pilihan, semua penyiapan dengan set bendera tersebut (tidak dikira
penyiapan lanjutan) disenaraikan.
Jika + bendera bersendirian dan diikuti serta-merta oleh arahan senarai, penyiapan
tingkah laku untuk semua arahan dalam senarai ditetapkan semula kepada lalai. Dalam kata lain,
penyiapan kemudiannya akan menggunakan pilihan yang ditentukan oleh -D bendera.
Borang dengan -M sebagai pilihan pertama dan satu-satunya mentakrifkan spesifikasi padanan global (lihat
zshcompwid). Spesifikasi perlawanan yang diberikan akan digunakan untuk setiap percubaan penyiapan
(hanya apabila menggunakan compctl, bukan dengan sistem penyiapan baharu) dan dicuba mengikut susunan
di mana ia ditakrifkan sehingga seseorang menjana sekurang-kurangnya satu padanan. Cth:
compctl -M '' 'm:{a-zA-Z}={A-Za-z}'
Ini mula-mula akan mencuba penyelesaian tanpa sebarang spesifikasi padanan global (rentetan kosong)
dan, jika itu tidak menghasilkan padanan, akan mencuba penyiapan tidak sensitif huruf besar-besaran.
OPTION BENTUK
[ -fcFBdeaRGovNAIOPZEnbjrzu/12 ]
[ -k pelbagai ] [ -g rentetan glob ] [ -s substring ]
[ -K fungsi ]
[ -Q ] [ -P awalan ] [ -S akhiran ]
[ -W awalan fail ] [ -H num pola ]
[ -q ] [ -X penerangan ] [ -Y penerangan ]
[ -y func-or-var ] [ -l cmd ] [ -h cmd ] [ -U ]
[ -t terus ] [ -J nama ] [ -V nama ]
[ -M spesifikasi perlawanan ]
Baki pilihan nyatakan jenis hujah arahan untuk dicari semasa selesai.
Mana-mana gabungan bendera ini boleh ditentukan; hasilnya ialah senarai diisih semua
kemungkinan. Pilihannya adalah seperti berikut.
Mudah Flags
Ini menghasilkan senarai penyiapan yang dibuat oleh shell itu sendiri:
-f Nama fail dan laluan sistem fail.
-/ Hanya laluan sistem fail.
-c Nama perintah, termasuk alias, fungsi shell, binaan dan perkataan terpelihara.
-F Nama fungsi.
-B Nama arahan terbina.
-m Nama arahan luaran.
-w Perkataan terpelihara.
-a Nama alias.
-R Nama alias biasa (bukan global).
-G Nama alias global.
-d Ini boleh digabungkan dengan -F, -B, -w, -a, -R and -G untuk mendapatkan nama orang kurang upaya
fungsi, binaan, perkataan terpelihara atau alias.
-e Pilihan ini (untuk menunjukkan arahan yang didayakan) berkuat kuasa secara lalai, tetapi boleh digabungkan
bersama -d; -daripada dalam kombinasi dengan -F, -B, -w, -a, -R and -G akan melengkapkan nama bagi
fungsi, binaan, perkataan terpelihara atau alias sama ada ia dilumpuhkan atau tidak.
-o Nama pilihan shell (lihat zshoptions(1)).
-v Nama mana-mana pembolehubah yang ditakrifkan dalam shell.
-N Nama parameter skalar (bukan tatasusunan).
-A Nama susunan.
-I Nama pembolehubah integer.
-O Nama pembolehubah baca sahaja.
-p Nama parameter yang digunakan oleh shell (termasuk parameter khas).
-Z Nama parameter khas shell.
-E Nama pembolehubah persekitaran.
-n Direktori bernama.
-b Nama pengikat kunci.
-j Nama kerja: perkataan pertama baris arahan ketua kerja. Ini berguna dengan
yang membunuh terbina dalam.
-r Nama-nama pekerjaan yang dijalankan.
-z Nama pekerjaan yang digantung.
-u Nama pengguna.
Flags bersama Argumen
Ini mempunyai hujah yang dibekalkan pengguna untuk menentukan cara senarai penyiapan dibuat
up:
-k pelbagai
Nama yang diambil daripada unsur-unsur $pelbagai (perhatikan bahawa `$' tidak muncul pada
baris arahan). Sebagai alternatif, hujah pelbagai itu sendiri mungkin satu set ruang- atau
nilai dipisahkan koma dalam kurungan, di mana sebarang pembatas boleh dilepaskan dengan
garis miring ke belakang; dalam hal ini hujah harus dipetik. Sebagai contoh,
compctl -k "(cputime saiz fail saiz data bertindan
coredumpsize pemastautin deskriptor)" menghadkan
-g rentetan glob
. rentetan glob dikembangkan menggunakan nama fail globbing; ia harus dipetik untuk melindungi
ia daripada pengembangan segera. Nama fail yang terhasil diambil sebagai yang mungkin
penyiapan. Gunakan `*(/)' bukannya `*/' untuk direktori. The anggap khas
parameter tidak digunakan pada fail yang terhasil. Lebih daripada satu corak mungkin
diberi dipisahkan oleh tempat kosong. (Perhatikan bahawa pengembangan pendakap adalah tidak sebahagian daripada globbing. guna
sintaks `(sama ada|atau)' untuk memadankan alternatif.)
-s substring
. substring dibahagikan kepada perkataan dan perkataan ini dikembangkan menggunakan semua
mekanisme pengembangan cangkerang (lihat zshexpn(1)). Perkataan yang terhasil diambil sebagai
kemungkinan siap. The anggap parameter khas tidak digunakan pada
fail yang terhasil. Perhatikan bahawa -g adalah lebih pantas untuk nama fail.
-K fungsi
Panggil fungsi yang diberikan untuk mendapatkan penyiapan. Melainkan nama bermula dengan an
garis bawah, fungsi itu diluluskan dua hujah: awalan dan akhiran
perkataan yang mana penyiapan perlu dicuba, dengan kata lain watak-watak tersebut sebelum ini
kedudukan kursor, dan kedudukan kursor dan seterusnya. Seluruh perintah
talian boleh diakses dengan -c and -l bendera membaca terbina. Fungsinya
harus menetapkan pembolehubah membalas kepada tatasusunan yang mengandungi penyiapan (one
penyiapan setiap elemen); ambil perhatian bahawa membalas tidak seharusnya dibuat setempat kepada fungsi tersebut.
Daripada fungsi sedemikian baris arahan boleh diakses dengan -c and -l bendera ke
yang membaca terbina. Sebagai contoh,
fungsi siapa { reply=(`pengguna`); }
compctl -K siapa bercakap
melengkapkan hanya pengguna log masuk selepas `bercakap'. Perhatikan bahawa `siapa' mesti pulangkan an
tatasusunan, jadi `reply=`pengguna`' akan menjadi tidak betul.
-H num pola
Penyiapan yang mungkin diambil dari yang terakhir num garis sejarah. Hanya kata-kata
sepadan pola telah diambil. Jika num adalah sifar atau negatif sepanjang sejarah
dicari dan jika pola ialah rentetan kosong semua perkataan diambil (seperti `*'). A
kegunaan biasa ialah
compctl -D -f + -H 0 ''
yang memaksa penyelesaian untuk melihat kembali dalam senarai sejarah untuk perkataan jika tiada nama fail
perlawanan.
Mengawal Flags
Ini tidak secara langsung menentukan jenis nama yang akan dilengkapkan, tetapi memanipulasi pilihan
yang melakukan:
-Q Ini mengarahkan shell untuk tidak memetik sebarang metacharacter dalam kemungkinan
penyiapan. Biasanya hasil penyiapan dimasukkan ke dalam arahan
selaras dengan mana-mana metacharacter yang dipetik supaya ia ditafsirkan sebagai biasa
watak. Ini sesuai untuk nama fail dan rentetan biasa. Walau bagaimanapun, untuk
kesan khas, seperti memasukkan ungkapan petikan belakang daripada tatasusunan penyiapan
(-k) supaya ungkapan tidak akan dinilai sehingga baris lengkap adalah
dilaksanakan, pilihan ini mesti digunakan.
-P awalan
. awalan dimasukkan sejurus sebelum rentetan lengkap; mana-mana bahagian awal sudah
ditaip akan selesai dan keseluruhannya awalan diabaikan untuk tujuan penyiapan. Untuk
contohnya,
compctl -j -P "%" membunuh
memasukkan `%' selepas arahan bunuh dan kemudian melengkapkan nama kerja.
-S akhiran
Apabila penyiapan didapati akhiran dimasukkan selepas rentetan selesai. Dalam
kes penyiapan menu akhiran dimasukkan serta-merta, tetapi ia masih
mungkin untuk mengitar senarai penyiapan dengan berulang kali menekan yang sama
utama.
-W awalan fail
Dengan direktori awalan fail: untuk arahan, fail, direktori dan penyelesaian globbing
(pilihan -c, -f, -/, -g), awalan fail ditambah secara tersirat di hadapan fail
selesai. Sebagai contoh,
compctl -/ -W ~/Mel maildirs
melengkapkan mana-mana subdirektori ke mana-mana kedalaman di bawah direktori ~/Mel, walaupun
awalan itu tidak muncul pada baris arahan. The awalan fail mungkin juga daripada
borang yang diterima oleh -k bendera, iaitu nama tatasusunan atau senarai literal dalam
kurungan. Dalam kes ini semua direktori dalam senarai akan dicari
kemungkinan siap.
-q Jika digunakan dengan akhiran seperti yang ditentukan oleh -S pilihan, ini menyebabkan akhiran menjadi
dialih keluar jika aksara seterusnya yang ditaip adalah kosong atau tidak memasukkan apa-apa atau jika
akhiran hanya terdiri daripada satu aksara dan aksara seterusnya yang ditaip adalah sama
watak; ini peraturan yang sama digunakan untuk AUTO_REMOVE_SLASH pilihan. Pilihannya ialah
paling berguna untuk pemisah senarai (koma, bertindih, dsb.).
-l cmd Pilihan ini mengehadkan julat perkataan baris arahan yang dianggap sebagai
hujah. Jika digabungkan dengan salah satu corak penyiapan lanjutan `p[...]',
`r[...]', atau `R[...]' (lihat bahagian `Penyiapan Lanjutan' di bawah) julatnya ialah
terhad kepada julat hujah yang dinyatakan dalam kurungan. Selesai kemudian
dilakukan seolah-olah ini telah diberikan sebagai hujah kepada cmd dibekalkan dengan
pilihan. Sekiranya cmd rentetan kosong perkataan pertama dalam julat sebaliknya diambil sebagai
nama arahan, dan penyempurnaan nama perintah dilakukan pada perkataan pertama dalam
julat. Sebagai contoh,
compctl -x 'r[-exec,;]' -l '' -- mencari
melengkapkan hujah antara `-eksk' dan yang berikut `;' (atau penghujung
baris arahan jika tiada rentetan sedemikian) seolah-olah ia adalah baris arahan yang berasingan.
-h cmd Biasanya zsh melengkapkan rentetan yang dipetik secara keseluruhan. Dengan pilihan ini, penyiapan boleh
dilakukan secara berasingan pada bahagian berlainan rentetan tersebut. Ia berfungsi seperti -l pilihan
tetapi menjadikan kod pelengkapan berfungsi pada bahagian perkataan semasa iaitu
dipisahkan oleh ruang. Bahagian-bahagian ini dilengkapkan seolah-olah ia adalah hujah kepada
diberikan cmd. Jika cmd ialah rentetan kosong, bahagian pertama dilengkapkan sebagai arahan
nama, seperti dengan -l.
-U Gunakan keseluruhan senarai kemungkinan penyiapan, sama ada ia benar-benar sepadan atau tidak
perkataan pada baris arahan. Perkataan yang ditaip setakat ini akan dipadamkan. Ini paling banyak
berguna dengan fungsi (diberikan oleh -K pilihan) yang boleh meneliti perkataan
komponen yang dihantar kepadanya (atau melalui membaca terbina -c and -l bendera) dan gunakan sendiri
kriteria untuk menentukan apa yang sepadan. Jika tidak lengkap, perkataan asalnya ialah
dikekalkan. Oleh kerana kemungkinan penyiapan yang dihasilkan jarang mempunyai perkara biasa yang menarik
awalan dan akhiran, penyiapan menu dimulakan serta-merta jika AUTO_MENU ditetapkan
dan bendera ini digunakan.
-y func-or-var
Senarai yang disediakan oleh func-or-var dipaparkan dan bukannya senarai penyiapan
bila-bila masa penyenaraian diperlukan; penyiapan sebenar yang akan dimasukkan tidak
terjejas. Ia boleh disediakan dalam dua cara. Pertama, jika func-or-var bermula dengan a $
ia mentakrifkan pembolehubah, atau jika ia bermula dengan kurungan kiri tatasusunan literal,
yang mengandungi senarai. Pembolehubah mungkin telah ditetapkan oleh panggilan ke fungsi
menggunakan -K pilihan. Jika tidak, ia mengandungi nama fungsi yang akan
dilaksanakan untuk membuat senarai. Fungsi akan diluluskan sebagai senarai argumen semua
penyempurnaan padanan, termasuk awalan dan akhiran dikembangkan sepenuhnya, dan seharusnya
tetapkan tatasusunan membalas kepada hasilnya. Dalam kedua-dua kes, senarai paparan hanya akan
diperoleh semula selepas senarai lengkap padanan telah dibuat.
Ambil perhatian bahawa senarai yang dikembalikan tidak perlu sepadan, walaupun panjangnya, dengan
set padanan asal, dan boleh dihantar sebagai skalar dan bukannya tatasusunan. Tidak
pemformatan khas aksara dilakukan pada output dalam kes ini; dalam
khususnya, baris baharu dicetak secara literal dan jika ia muncul output dalam lajur adalah
ditindas.
-X penerangan
Cetak penerangan apabila cuba menyelesaikan set pilihan semasa. A `%n' dalam
rentetan ini digantikan dengan bilangan padanan yang ditambahkan untuk ini
rentetan penjelasan. Penjelasan hanya muncul jika penyiapan telah dicuba dan ada
bukan padanan unik atau apabila penyenaraian selesai. Rentetan penjelasan akan menjadi
disenaraikan bersama-sama perlawanan kumpulan yang ditentukan bersama-sama dengan -X pilihan
(menggunakan -J or -V pilihan). Jika rentetan penjelasan yang sama diberikan kepada berbilang -X
pilihan, rentetan muncul sekali sahaja (untuk setiap kumpulan) dan bilangan padanan
ditunjukkan untuk `%n' ialah jumlah bilangan semua padanan untuk setiap kegunaan ini. Dalam
Walau apa pun, rentetan penjelasan hanya akan ditunjukkan jika terdapat sekurang-kurangnya satu perlawanan
ditambah untuk rentetan penjelasan.
Urutan %B, %b, %S, %s, %U, dan %u nyatakan atribut keluaran (tebal, menonjol,
dan garis bawah), %F, %f, %K, %k nyatakan warna latar depan dan latar belakang, dan
%{...%} boleh digunakan untuk memasukkan urutan pelarian literal seperti dalam gesaan.
-Y penerangan
Sama dengan -X, kecuali bahawa penerangan mula-mula mengalami pengembangan berikutan
peraturan biasa untuk rentetan dalam petikan berganda. Pembesaran akan dijalankan
selepas sebarang fungsi dipanggil untuk -K or -y pilihan, membolehkan mereka menetapkan
pembolehubah.
-t terus
. terus-rentetan mengandungi aksara yang menentukan set penyelesaian
bendera hendaklah digunakan seterusnya. Ianya berguna:
(i) Dengan -T, atau apabila mencuba senarai pelengkapan corak, apabila compctl akan
biasanya meneruskan pemprosesan biasa selepas mencari padanan; ini boleh jadi
ditindas dengan `-tn'.
(ii) Dengan senarai alternatif yang dipisahkan oleh +, Apabila compctl biasanya akan berhenti
apabila salah satu alternatif menjana padanan. Ia boleh dipaksa untuk mempertimbangkan
set penyiapan seterusnya dengan menambah `-t+' kepada bendera alternatif sebelum
`+'.
(iii) Dalam senarai penyiapan lanjutan (lihat di bawah), bila compctl akan biasa
teruskan sehingga satu set syarat berjaya, kemudian gunakan hanya dengan segera
mengikuti bendera. Dengan `-t-', compctl akan terus mencuba penyiapan lanjutan
selepas seterusnya `-'; dengan `-tx' ia akan cuba menyelesaikan dengan bendera lalai,
dengan kata lain mereka sebelum `-x'.
-J nama
Ini memberikan nama kumpulan tempat perlawanan harus diletakkan. Kumpulan disenaraikan
dan diisih secara berasingan; begitu juga, penyiapan menu akan menawarkan padanan dalam
kumpulan mengikut susunan kumpulan ditakrifkan. Jika tiada nama kumpulan
diberikan secara jelas, padanan disimpan dalam kumpulan yang dinamakan lalai. Kali pertama a
nama kumpulan ditemui, kumpulan dengan nama itu dicipta. Selepas itu semua
padanan dengan nama kumpulan yang sama disimpan dalam kumpulan itu.
Ini boleh berguna dengan penyelesaian alternatif bukan eksklusif. Contohnya, dalam
compctl -f -J fail -t+ + -v -J pembolehubah foo
kedua-dua fail dan pembolehubah mungkin selesai, kerana -t+ memaksa kedua-dua set
alternatif sebelum dan selepas + untuk dipertimbangkan sekali gus. Kerana -J
pilihan, bagaimanapun, semua fail disenaraikan sebelum semua pembolehubah.
-V nama
suka -J, tetapi padanan dalam kumpulan tidak akan diisih dalam penyenaraian mahupun dalam menu
selesai. Kumpulan yang tidak diisih ini berada dalam ruang nama yang berbeza daripada yang diisih
satu, jadi kumpulan ditakrifkan sebagai -J fail and -V fail adalah berbeza.
-1 Jika diberikan bersama-sama dengan -V pilihan, hanya membuat pendua berturut-turut dalam
kumpulan dikeluarkan. Ambil perhatian bahawa kumpulan dengan dan tanpa bendera ini adalah dalam nama yang berbeza
ruang.
-2 Jika diberikan bersama-sama dengan -J or -V pilihan, menjadikan semua pendua disimpan. sekali lagi,
kumpulan dengan dan tanpa bendera ini berada dalam ruang nama yang berbeza.
-M spesifikasi perlawanan
Ini mentakrifkan spesifikasi kawalan padanan tambahan yang harus digunakan sahaja
apabila menguji perkataan untuk senarai bendera bendera ini muncul dalam format
spesifikasi perlawanan rentetan diterangkan dalam zshcompwid.
ALTERNATIF SELESAI
compctl [ -CDT ] pilihan + pilihan [ + ... ] [ + ] arahan ...
Borang dengan `+' menentukan pilihan alternatif. Penyelesaian dicuba dengan pilihan
sebelum yang pertama `+'. Jika ini tidak menghasilkan penyiapan perlawanan dicuba dengan bendera selepas itu
yang `+' dan sebagainya. Jika tiada bendera selepas ` yang terakhir+' dan padanan tidak ditemui
sehingga tahap itu, penyelesaian lalai dicuba. Jika senarai bendera mengandungi a -t dengan
+ aksara, senarai bendera seterusnya digunakan walaupun senarai semasa yang dihasilkan sepadan.
Pilihan tambahan tersedia yang mengehadkan penyiapan kepada beberapa bahagian arahan
garisan; ini dirujuk sebagai `penyiapan lanjutan'.
EXTENDED SELESAI
compctl [ -CDT ] pilihan -x pola pilihan - ... --
[ arahan ... ]
compctl [ -CDT ] pilihan [ -x pola pilihan - ... -- ]
[ + pilihan [ -x ... -- ] ... [+] ] [ arahan ... ]
Borang dengan `-x' menentukan penyiapan lanjutan untuk arahan yang diberikan; seperti yang ditunjukkan, ia mungkin
digabungkan dengan penyelesaian alternatif menggunakan `+'. setiap satu pola diperiksa secara bergilir; bila
padanan ditemui, sepadan pilihan, seperti yang diterangkan dalam bahagian `Bendera Pilihan'
di atas, digunakan untuk menjana kemungkinan penyiapan. Jika tidak pola perlawanan, yang pilihan
diberikan sebelum -x digunakan.
Ambil perhatian bahawa setiap corak hendaklah dibekalkan sebagai satu hujah dan hendaklah dipetik
menghalang pengembangan metakarakter oleh cangkerang.
A pola dibina daripada sub-corak yang dipisahkan dengan koma; ia sepadan jika sekurang-kurangnya satu daripada
sub-corak ini sepadan (ia `atau'ed). Sub-corak ini pula terdiri daripada
sub-corak lain yang dipisahkan oleh ruang putih yang sepadan jika semua sub-corak sepadan
(mereka `dan'ed). Unsur sub-corak adalah dalam bentuk `c[...][...]', di mana
pasangan kurungan boleh diulang sekerap yang perlu, dan padankan jika ada
set kurungan sepadan (`atau'). Contoh di bawah menjadikannya lebih jelas.
Unsur-unsur tersebut mungkin salah satu daripada yang berikut:
s[rentetan]...
Padan jika perkataan semasa pada baris arahan bermula dengan salah satu rentetan
diberikan dalam kurungan. The rentetan tidak dialih keluar dan bukan sebahagian daripada penyiapan.
S[rentetan]...
suka s[rentetan] kecuali bahawa rentetan adalah sebahagian daripada penyiapan.
p[dari,kepada]...
Padanan jika bilangan perkataan semasa adalah antara salah satu daripada dari and kepada pasangan
inklusif. Koma dan kepada adalah pilihan; kepada lalai kepada nilai yang sama seperti dari.
Nombor mungkin negatif: -n kepada n'perkataan terakhir di talian.
c[mengimbangi,rentetan]...
Padan jika rentetan sepadan dengan perkataan yang diimbangi oleh mengimbangi daripada perkataan semasa
kedudukan. Biasanya mengimbangi akan menjadi negatif.
C[mengimbangi,pola]...
suka c tetapi sebaliknya menggunakan padanan corak.
w[indeks,rentetan]...
Padan jika perkataan dalam kedudukan indeks adalah sama dengan yang sepadan rentetan. Catatan
bahawa bilangan perkataan dibuat selepas sebarang pengembangan alias.
W[indeks,pola]...
suka w tetapi sebaliknya menggunakan padanan corak.
n[indeks,rentetan]...
Padan jika perkataan semasa mengandungi rentetan. Apa-apa sahaja sehingga dan termasuk
indekskemunculan rentetan ini tidak akan dianggap sebagai sebahagian daripada penyiapan,
tetapi selebihnya akan. indeks mungkin negatif untuk dikira dari akhir: dalam kebanyakan kes,
indeks akan menjadi 1 atau -1. Sebagai contoh,
compctl -s ''pengguna'' -x 'n[1,@]' -k tuan rumah -- bercakap
biasanya akan melengkapkan nama pengguna, tetapi jika anda memasukkan satu @ selepas nama, nama dari
tatasusunan tuan rumah (diandaikan mengandungi nama hos, walaupun anda mesti membuat array
sendiri) akan selesai. Perintah lain seperti cpr boleh dikendalikan dengan cara yang sama.
N[indeks,rentetan]...
suka n kecuali rentetan itu akan diambil sebagai kelas aksara. Apa-apa sahaja terpulang
dan termasuk indekskemunculan mana-mana watak dalam rentetan tidak akan
dianggap sebagai sebahagian daripada penyiapan.
m[minit,maks]...
Padanan jika jumlah bilangan perkataan terletak di antara minit and maks termasuk.
r[str1,str2]...
Padan jika kursor selepas perkataan dengan awalan str1. Jika ada juga kata
dengan awalan str2 pada baris arahan selepas yang dipadankan oleh str1 ia sepadan sahaja
jika kursor berada sebelum perkataan ini. Jika koma dan str2 diketepikan, ia sepadan jika
kursor adalah selepas perkataan dengan awalan str1.
R[str1,str2]...
suka r tetapi sebaliknya menggunakan padanan corak.
q[str]...
Padanan perkataan yang sedang dilengkapkan adalah dalam petikan tunggal dan str bermula
dengan huruf `s', atau jika penyempurnaan dilakukan dalam petikan berganda dan str bermula dengan
huruf `d', atau jika penyempurnaan dilakukan dalam tanda belakang dan str bermula dengan `b'.
CONTOH
compctl -u -x 's[+] c[-1,-f],s[-f+]' \
-g '~/Mel/*(:t)' - 's[-f],c[-1,-f]' -f -- mel
Ini perlu ditafsirkan seperti berikut:
Jika arahan semasa ialah mel, Maka
jika ((perkataan semasa bermula dengan + dan perkataan sebelumnya ialah -f)
atau (perkataan semasa bermula dengan -f+)), kemudian lengkapkan
bahagian bukan direktori (the `:t' glob modifier) fail dalam direktori
~/Mel; lain
jika perkataan semasa bermula dengan -f atau perkataan sebelumnya ialah -f, Maka
lengkapkan mana-mana fail; lain
nama pengguna lengkap.
Gunakan zshcompctl dalam talian menggunakan perkhidmatan onworks.net