about_PSReadLine_Functions

Deskripsi Singkat

PSReadLine memberikan pengalaman pengeditan baris perintah yang ditingkatkan di konsol PowerShell.

Deskripsi Panjang

PowerShell 7.3 dikirim dengan PSReadLine 2.2.6. Versi saat ini adalah PSReadLine 2.3.4. Versi PSReadLine saat ini dapat diinstal dan digunakan pada Windows PowerShell 5.1 dan yang lebih baru. Untuk beberapa fitur, Anda harus menjalankan PowerShell 7.2 atau yang lebih tinggi.

Artikel ini mendokuensikan fungsi yang disediakan oleh PSReadLine 2.3.4. Fungsi-fungsi ini dapat terikat pada penekanan kunci untuk akses dan pemanggilan yang mudah.

Menggunakan kelas Microsoft.PowerShell.PSConsoleReadLine

Fungsi berikut tersedia di kelas Microsoft.PowerShell.PSConsoleReadLine.

Fungsi pengeditan dasar

Batalkan

Batalkan tindakan saat ini, misalnya: pencarian riwayat inkremental.

  • Mode emacs: Ctrl+g
  • Mode penyisipan vi: Ctrl+g
  • Mode perintah Vi: <Ctrl+g>

AcceptAndGetNext

Coba jalankan input saat ini. Jika dapat dijalankan (seperti AcceptLine), maka panggil kembali item berikutnya dari riwayat saat ReadLine dipanggil berikutnya.

  • Mode emacs: Ctrl+o

AcceptLine

Coba jalankan input saat ini. Jika input saat ini tidak lengkap (misalnya ada tanda kurung penutup, tanda kurung, atau kutipan yang hilang) maka perintah kelanjutan ditampilkan pada baris berikutnya dan PSReadLine menunggu kunci untuk mengedit input saat ini.

  • Mode Windows: Enter
  • Mode emacs: Enter
  • Mode penyisipan vi: Enter

TambahkanBaris

Perintah kelanjutan ditampilkan pada baris berikutnya dan PSReadLine menunggu kunci untuk mengedit input saat ini. Ini berguna untuk memasukkan input multibaris sebagai satu perintah bahkan ketika satu baris selesai input dengan sendirinya.

  • Mode Windows: Shift+Enter
  • Mode emacs: Shift+Enter
  • Mode penyisipan vi: Shift+Enter
  • Mode perintah Vi: <Shift+Enter>

BackwardDeleteChar

Hapus karakter sebelum kursor.

  • Mode Windows: Backspace, Ctrl+h
  • Mode emacs: Backspace, Ctrl+Backspace, Ctrl+h
  • Mode penyisipan vi: Backspace
  • Mode perintah Vi: <X>, <d,h>

BackwardDeleteInput

Seperti BackwardKillInput - menghapus teks dari titik ke awal input, tetapi tidak menempatkan teks yang dihapus di kill-ring.

  • Mode Windows: Ctrl+Home
  • Mode penyisipan vi: Ctrl+u, Ctrl+Home
  • Mode perintah Vi: <Ctrl+u>, <Ctrl+Home>

BackwardDeleteLine

Seperti BackwardKillLine - menghapus teks dari titik ke awal baris, tetapi tidak menempatkan teks yang dihapus di kill-ring.

  • Mode perintah Vi: <d,0>

BackwardDeleteWord

Menghapus kata sebelumnya.

  • Mode perintah Vi: <Ctrl+w>, <d,b>

BackwardKillInput

Bersihkan teks dari awal input ke kursor. Teks yang dibersihkan ditempatkan di kill-ring.

  • Mode Emacs: Ctrl+u, Ctrl+x,Backspace

BackwardKillLine

Kosongkan teks dari awal baris logis saat ini ke kursor. Teks yang dibersihkan ditempatkan di kill-ring.

  • Fungsi tidak terikat.

BackwardKillWord

Hapus input dari awal kata saat ini ke kursor. Jika kursor berada di antara kata, input dihapus dari awal kata sebelumnya ke kursor. Teks yang dibersihkan ditempatkan di kill-ring.

  • Mode Windows: Ctrl+Backspace, Ctrl+w
  • Mode Emacs: Alt+Backspace, Escape,Backspace
  • Mode penyisipan vi: Ctrl+Backspace
  • Mode perintah Vi: <Ctrl+Backspace>

BackwardReplaceChar

Mengganti karakter di depan kursor.

  • Mode perintah Vi: <c,h>

CancelLine

Batalkan input saat ini, biarkan input di layar, tetapi kembali ke host sehingga perintah dievaluasi lagi.

  • Mode penyisipan vi: Ctrl+c
  • Mode perintah Vi: <Ctrl+c>

CapitalizeWord

Ditambahkan dalam PSReadLine 2.3.0

Konversi karakter pertama dari kata berikutnya menjadi huruf besar dan karakter yang tersisa menjadi huruf kecil.

  • Mode Emacs: Alt+c, Escape,c

Menyalin

Salin wilayah terpilih ke papan klip sistem. Jika tidak ada wilayah yang dipilih, salin seluruh baris.

  • Mode Windows: Ctrl+C

CopyOrCancelLine

Jika teks dipilih, salin ke clipboard, jika tidak, batalkan baris.

  • Mode Windows: Ctrl+c
  • Mode emacs: Ctrl+c

Cut

Hapus wilayah terpilih yang menempatkan teks yang dihapus di clipboard sistem.

  • Mode Windows: Ctrl+x

DeleteChar

Hapus karakter di bawah kursor.

  • Mode Windows: Delete
  • Mode emacs: Delete
  • Mode penyisipan vi: Delete
  • Mode perintah Vi: <Delete>, <x>, <d,l>, <d,Spacebar>

DeleteCharOrExit

Hapus karakter di bawah kursor, atau jika baris kosong, keluar dari proses.

  • Mode emacs: Ctrl+d

DeleteEndOfBuffer

Menghapus ke akhir buffer multibaris.

  • Mode perintah Vi: <d,G>

DeleteEndOfWord

Hapus ke akhir kata.

  • Mode perintah Vi: <d,e>

DeleteLine

Menghapus baris logis buffer multibaris saat ini, memungkinkan pembatalan.

  • Mode perintah Vi: <d,d>, <d,_>

DeleteLineToFirstChar

Menghapus dari karakter pertama yang tidak kosong dari baris logis saat ini dalam buffer multibaris.

  • Mode perintah Vi: <d,^>

DeleteNextLines

Menghapus baris logis saat ini dan berikutnya dalam buffer multibaris.

  • Mode perintah Vi: <d,j>

DeletePreviousLines

Menghapus baris logis yang diminta sebelumnya dan baris logis saat ini dalam buffer multibaris.

  • Mode perintah Vi: <d,k>

DeleteRelativeLines

Menghapus dari awal buffer ke baris logis saat ini dalam buffer multibaris.

Sebagai perintah Vi kebanyakan, <d,g,g> perintah dapat diawali dengan argumen numerik yang menentukan nomor baris absolut, yang, bersama dengan nomor baris saat ini, membentuk rentang baris yang akan dihapus. Jika tidak ditentukan, argumen numerik default ke 1, yang mengacu pada baris logis pertama dalam buffer multibaris.

Jumlah aktual baris yang akan dihapus dari multibaris dihitung sebagai perbedaan antara nomor baris logis saat ini dan argumen numerik yang ditentukan, yang dengan demikian bisa negatif. Oleh karena itu bagian relatif dari nama metode.

  • Mode perintah Vi: <d,g,g>

DeleteToEnd

Hapus ke akhir baris.

  • Mode perintah Vi: <D>, <d,$>

DeleteWord

Hapus kata berikutnya.

  • Mode perintah Vi: <d,w>

DowncaseWord

Ditambahkan dalam PSReadLine 2.3.0

Konversi kata berikutnya ke huruf kecil.

  • Mode Emacs: Alt+l, Escape,l

ForwardDeleteInput

Seperti KillLine - menghapus teks dari titik ke akhir input, tetapi tidak meletakkan teks yang dihapus di kill-ring.

  • Mode Windows: Ctrl+End
  • Mode penyisipan vi: Ctrl+End
  • Mode perintah Vi: <Ctrl+End>

ForwardDeleteLine

Menghapus teks dari titik ke akhir baris logis saat ini, tetapi tidak meletakkan teks yang dihapus di kill-ring.

  • Fungsi tidak terikat

SisipkanLineAbove

Baris kosong baru dibuat di atas baris saat ini terlepas dari di mana kursor berada di baris saat ini. Kursor berpindah ke awal baris baru.

  • Mode Windows: Ctrl+Enter

InsertLineBelow

Baris kosong baru dibuat di bawah baris saat ini terlepas dari di mana kursor berada di baris saat ini. Kursor berpindah ke awal baris baru.

  • Mode Windows: Shift+Ctrl+Enter

InvertCase

Alihkan kasus karakter saat ini dan pindah ke karakter berikutnya.

  • Mode perintah Vi: <~>

KillLine

Hapus input dari kursor ke akhir input. Teks yang dibersihkan ditempatkan di kill-ring.

  • Mode emacs: Ctrl+k

KillRegion

Matikan teks antara kursor dan tanda.

  • Fungsi tidak terikat.

KillWord

Hapus input dari kursor ke akhir kata saat ini. Jika kursor berada di antara kata, input dibersihkan dari kursor ke akhir kata berikutnya. Teks yang dibersihkan ditempatkan di kill-ring.

  • Mode Windows: Alt+d, Ctrl+Delete
  • Mode Emacs: Alt+d, Escape,d
  • Mode penyisipan vi: Ctrl+Delete
  • Mode perintah Vi: <Ctrl+Delete>

Tempel

Tempelkan teks dari papan klip sistem.

  • Mode Windows: Ctrl+v, Shift+Insert
  • Mode penyisipan vi: Ctrl+v
  • Mode perintah Vi: <Ctrl+v>

Penting

Saat menggunakan fungsi Tempel , seluruh konten buffer clipboard ditempelkan ke buffer input PSReadLine. Buffer input kemudian diteruskan ke pengurai PowerShell. Input yang ditempelkan menggunakan metode tempel klik kanan aplikasi konsol disalin ke buffer input satu karakter pada satu waktu. Buffer input diteruskan ke pengurai saat karakter baris baru disalin. Oleh karena itu, input diurai satu baris pada satu waktu. Perbedaan antara metode tempel menghasilkan perilaku eksekusi yang berbeda.

PasteAfter

Tempel clipboard setelah kursor, pindahkan kursor ke akhir teks yang ditempelkan.

  • Mode perintah Vi: <p>

TempelBefore

Tempel clipboard sebelum kursor, pindahkan kursor ke akhir teks yang ditempelkan.

  • Mode perintah Vi: <P>

PrependAndAccept

Tambahkan awalan '#' dan terima baris.

  • Mode perintah Vi: <#>

Mengulangi

Urungkan urungkan.

  • Mode Windows: Ctrl+y
  • Mode penyisipan vi: Ctrl+y
  • Mode perintah Vi: <Ctrl+y>

RepeatLastCommand

Ulangi modifikasi teks terakhir.

  • Mode perintah Vi: <.>

ReplaceChar

Ganti karakter saat ini dengan sekumpulan karakter berikutnya yang dititik.

  • Mode perintah Vi: <c,l>, <c,Spacebar>

ReplaceCharInPlace

Ganti karakter saat ini hanya dengan satu karakter.

  • Mode perintah Vi: <r>

Kembalikan Garis

Mengembalikan semua input ke input saat ini.

  • Mode Windows: Escape
  • Mode Emacs: Alt+r, Escape,r

ShellBackwardKillWord

Hapus input dari awal kata saat ini ke kursor. Jika kursor berada di antara kata, input dihapus dari awal kata sebelumnya ke kursor. Teks yang dibersihkan ditempatkan di kill-ring.

Fungsi tidak terikat.

ShellKillWord

Hapus input dari kursor ke akhir kata saat ini. Jika kursor berada di antara kata, input dibersihkan dari kursor ke akhir kata berikutnya. Teks yang dibersihkan ditempatkan di kill-ring.

Fungsi tidak terikat.

SwapCharacters

Tukar karakter saat ini dan karakter sebelumnya.

  • Mode emacs: Ctrl+t
  • Mode penyisipan vi: Ctrl+t
  • Mode perintah Vi: <Ctrl+t>

Undo

Urungkan pengeditan sebelumnya.

  • Mode Windows: Ctrl+z
  • Mode Emacs: Ctrl+_, Ctrl+x,Ctrl+u
  • Mode penyisipan vi: Ctrl+z
  • Mode perintah Vi: <Ctrl+z>, <u>

BatalkanSemua

Urungkan semua pengeditan sebelumnya untuk baris.

  • Mode perintah Vi: <U>

UnixWordRubout

Hapus input dari awal kata saat ini ke kursor. Jika kursor berada di antara kata, input dihapus dari awal kata sebelumnya ke kursor. Teks yang dibersihkan ditempatkan di kill-ring.

  • Mode emacs: Ctrl+w

UpcaseWord

Ditambahkan dalam PSReadLine 2.3.0

Mengonversi kata berikutnya menjadi huruf besar.

  • Mode Emacs: Alt+u, Escape,u

ValidateAndAcceptLine

Coba jalankan input saat ini. Jika input saat ini tidak lengkap (misalnya ada tanda kurung penutup, tanda kurung, atau kutipan yang hilang) maka perintah kelanjutan ditampilkan pada baris berikutnya dan PSReadLine menunggu kunci untuk mengedit input saat ini.

  • Mode emacs: Ctrl+m

ViAcceptLine

Terima baris dan beralih ke mode Sisipkan.

  • Mode perintah Vi: <Enter>

ViAcceptLineOrExit

Seperti DeleteCharOrExit dalam mode Emacs, tetapi menerima baris alih-alih menghapus karakter.

  • Mode penyisipan vi: Ctrl+d
  • Mode perintah Vi: <Ctrl+d>

ViAppendLine

Baris baru disisipkan di bawah baris saat ini.

  • Mode perintah Vi: <o>

ViBackwardDeleteGlob

Menghapus kata sebelumnya, hanya menggunakan spasi kosong sebagai pemisah kata.

  • Mode perintah Vi: <d,B>

ViBackwardGlob

Memindahkan kursor kembali ke awal kata sebelumnya, hanya menggunakan spasi kosong sebagai pemisah.

  • Mode perintah Vi: <B>

ViBackwardReplaceGlob

Hapus mundur ke awal kata sebelumnya, seperti yang dibatasi oleh spasi kosong, dan masukkan mode sisipkan.

  • Mode perintah Vi: <c,B>

ViBackwardReplaceLine

Mengganti garis kiri kursor dan semua jalan ke awal.

  • Mode perintah Vi: <c,0>

ViBackwardReplaceLineToFirstChar

Mengganti garis kiri kursor dan semua kecuali satu karakter ke awal baris.

  • Mode perintah Vi: <c,^>

ViBackwardReplaceWord

Ganti kata sebelumnya.

  • Mode perintah Vi: <c,B>

ViDeleteBrace

Temukan kurung kurawal, tanda kurung siku, atau kurung siku yang cocok dan hapus semua konten di dalamnya, termasuk kurung kurawal.

  • Mode perintah Vi: <d,%>

ViDeleteEndOfGlob

Hapus ke akhir kata.

  • Mode perintah Vi: <d,E>

ViDeleteGlob

Hapus glob berikutnya (kata yang dibatasi spasi putih).

  • Mode perintah Vi: <d,W>

ViDeleteToBeforeChar

Menghapus hingga karakter yang diberikan.

  • Mode perintah Vi: <d,t>

ViDeleteToBeforeCharBackward

Menghapus hingga karakter yang diberikan.

  • Mode perintah Vi: <d,T>

ViDeleteToChar

Menghapus hingga karakter yang diberikan.

  • Mode perintah Vi: <d,f>

ViDeleteToCharBackward

Menghapus ke belakang hingga karakter yang diberikan.

  • Mode perintah Vi: <d,F>

ViInsertAtBegining

Beralih ke mode Sisipkan dan posisikan kursor di awal baris.

  • Mode perintah Vi: <I>

ViInsertAtEnd

Beralih ke mode Sisipkan dan posisikan kursor di akhir baris.

  • Mode perintah Vi: <A>

ViInsertLine

Baris baru disisipkan di atas baris saat ini.

  • Mode perintah Vi: <O>

ViInsertWithAppend

Tambahkan dari posisi baris saat ini.

  • Mode perintah Vi: <a>

ViInsertWithDelete

Hapus karakter saat ini dan beralih ke mode Sisipkan.

  • Mode perintah Vi: <s>

ViJoinLines

Menggabungkan baris saat ini dan baris berikutnya.

  • Mode perintah Vi: <J>

ViReplaceBrace

Ganti semua karakter antara karakter kurung kurawal saat ini dan mitra yang cocok.

  • Mode perintah Vi: <c,%>

ViReplaceEndOfGlob

Hapus ke akhir kata, seperti yang dibatasi oleh spasi kosong, dan masukkan mode sisipkan.

  • Mode perintah Vi: <c,E>

ViReplaceEndOfWord

Hapus ke akhir kata, seperti yang dibatasi oleh spasi kosong dan pemisah umum, dan masukkan mode sisipkan.

  • Mode perintah Vi: <c,E>

ViReplaceGlob

Hapus ke awal kata berikutnya, seperti yang dibatasi oleh spasi kosong, dan masukkan mode sisipkan.

  • Mode perintah Vi: <c,W>

ViReplaceLine

Hapus seluruh baris perintah.

  • Mode perintah Vi: <S>, <c,c>

ViReplaceToBeforeChar

Mengganti hingga karakter yang diberikan.

  • Mode perintah Vi: <c,t>

ViReplaceToBeforeCharBackward

Mengganti hingga karakter yang diberikan.

  • Mode perintah Vi: <c,T>

ViReplaceToChar

Menghapus hingga karakter yang diberikan.

  • Mode perintah Vi: <c,f>

ViReplaceToCharBackward

Mengganti hingga karakter yang diberikan.

  • Mode perintah Vi: <c,F>

ViReplaceToEnd

Ganti karakter dari posisi kursor ke akhir baris.

  • Mode perintah Vi: <c,$>, <C>

ViReplaceUntilEsc

Ganti karakter saat ini hingga escape dimasukkan atau baris diterima.

  • Mode perintah Vi: <r>

ViReplaceWord

Ganti kata saat ini.

  • Mode perintah Vi: <c,W>

ViYankBeginningOfLine

Yank dari awal buffer ke kursor.

  • Mode perintah Vi: <y,0>

ViYankEndOfGlob

Yank dari kursor ke akhir WORD.

  • Mode perintah Vi: <y,E>

ViYankEndOfWord

Yank dari kursor ke akhir kata.

  • Mode perintah Vi: <y,e>

ViYankLeft

Karakter Yank di sebelah kiri kursor.

  • Mode perintah Vi: <y,h>

ViYankLine

Matikan seluruh buffer.

  • Mode perintah Vi: <y,y>

ViYankNextGlob

Yank dari kursor ke awal WORD berikutnya.

  • Mode perintah Vi: <y,W>

ViYankNextWord

Yank kata setelah kursor.

  • Mode perintah Vi: <y,w>

ViYankPercent

Yank ke/dari penjepit yang cocok.

  • Mode perintah Vi: <y,%>

ViYankPreviousGlob

Yank dari awal WORD ke kursor.

  • Mode perintah Vi: <y,B>

ViYankPreviousWord

Yank kata sebelum kursor.

  • Mode perintah Vi: <y,b>

ViYankRight

Karakter Yank di bawah dan di sebelah kanan kursor.

  • Mode perintah Vi: <y,l>, <y,Spacebar>

ViYankToEndOfLine

Yank dari kursor ke akhir buffer.

  • Mode perintah Vi: <y,$>

ViYankToFirstChar

Yank dari karakter non-spasi pertama ke kursor.

  • Mode perintah Vi: <y,^>

Yank

Tambahkan teks yang terakhir dimatikan ke input.

  • Mode emacs: Ctrl+y

YankLastArg

Yank argumen terakhir dari baris riwayat sebelumnya. Dengan argumen, pertama kali dipanggil, bertingkah seperti YankNthArg. Jika dipanggil beberapa kali, sebaliknya berulang melalui riwayat dan arg mengatur arah (negatif membalikkan arah.)

  • Mode Windows: Alt+.
  • Mode emacs: Alt+., Alt+_, Escape,., Escape,_

YankNthArg

Yank argumen pertama (setelah perintah) dari baris riwayat sebelumnya. Dengan argumen, yank argumen nth (mulai dari 0), jika argumen negatif, mulai dari argumen terakhir.

  • Mode Emacs: Ctrl+Alt+y, Escape,Ctrl+y

YankPop

Jika operasi sebelumnya adalah Yank atau YankPop, ganti teks yang sebelumnya di-yank dengan teks mati berikutnya dari kill-ring.

  • Mode Emacs: Alt+y, Escape,y

Fungsi penyelesaian

Selesai

Coba lakukan penyelesaian pada teks yang mengelilingi kursor. Jika ada beberapa kemungkinan penyelesaian, awalan terpanjang yang tidak ambigu digunakan untuk penyelesaian. Jika mencoba menyelesaikan penyelesaian terpanjang yang tidak ambigu, daftar kemungkinan penyelesaian akan ditampilkan.

  • Mode emacs: Tab

Coba lakukan penyelesaian pada teks yang mengelilingi kursor. Jika ada beberapa kemungkinan penyelesaian, awalan terpanjang yang tidak ambigu digunakan untuk penyelesaian. Jika mencoba menyelesaikan penyelesaian terpanjang yang tidak ambigu, daftar kemungkinan penyelesaian akan ditampilkan.

  • Mode Windows: Ctrl+@, Ctrl+Spacebar
  • Mode emacs: Ctrl+Spacebar

PossibleCompletions

Tampilkan daftar kemungkinan penyelesaian.

  • Mode emacs: Alt+=
  • Mode penyisipan vi: Ctrl+Spacebar
  • Mode perintah Vi: <Ctrl+Spacebar>

TabCompleteNext

Coba selesaikan teks yang mengelilingi kursor dengan penyelesaian berikutnya yang tersedia.

  • Mode Windows: Tab
  • Mode perintah Vi: <Tab>

TabCompletePrevious

Coba selesaikan teks yang mengelilingi kursor dengan penyelesaian yang tersedia sebelumnya.

  • Mode Windows: Shift+Tab
  • Mode perintah Vi: <Shift+Tab>

ViTabCompleteNext

Mengakhiri grup edit saat ini, jika diperlukan, dan memanggil TabCompleteNext.

  • Mode penyisipan vi: Tab

ViTabCompletePrevious

Mengakhiri grup edit saat ini, jika diperlukan, dan memanggil TabCompletePrevious.

  • Mode penyisipan vi: Shift+Tab

Fungsi gerakan kursor

BackwardChar

Pindahkan kursor satu karakter ke kiri. Ini dapat memindahkan kursor ke baris sebelumnya dari input multibaris.

  • Mode Windows: LeftArrow
  • Mode Emacs: LeftArrow, Ctrl+b

Kata Mundur

Pindahkan kursor kembali ke awal kata saat ini, atau jika di antara kata, awal kata sebelumnya. Batas kata didefinisikan oleh sekumpulan karakter yang dapat dikonfigurasi.

  • Mode Windows: Ctrl+LeftArrow
  • Mode Emacs: Alt+b, Escape,b
  • Mode penyisipan vi: Ctrl+LeftArrow
  • Mode perintah Vi: <Ctrl+LeftArrow>

Karakter yang menentukan batas kata dikonfigurasi di properti WordDelimiters objek PSConsoleReadLineOptions . Untuk menampilkan atau mengubah properti WordDelimiters , lihat Get-PSReadLineOption dan Set-PSReadLineOption.

BeginningOfLine

Jika input memiliki beberapa baris, pindahkan ke awal baris saat ini, atau jika sudah di awal baris, pindah ke awal input. Jika input memiliki satu baris, pindahkan ke awal input.

  • Mode Windows: Home
  • Mode Emacs: Home, Ctrl+a
  • Mode penyisipan vi: Home
  • Mode perintah Vi: <Home>

EndOfLine

Jika input memiliki beberapa baris, pindahkan ke akhir baris saat ini, atau jika sudah di akhir baris, pindahkan ke akhir input. Jika input memiliki satu baris, pindahkan ke akhir input.

  • Mode Windows: End
  • Mode Emacs: End, Ctrl+e
  • Mode penyisipan vi: End

ForwardChar

Pindahkan kursor satu karakter ke kanan. Ini dapat memindahkan kursor ke baris berikutnya dari input multibaris.

  • Mode Windows: RightArrow
  • Mode Emacs: RightArrow, Ctrl+f

ForwardWord

Pindahkan kursor ke depan ke akhir kata saat ini, atau jika di antara kata, ke akhir kata berikutnya. Batas kata didefinisikan oleh sekumpulan karakter yang dapat dikonfigurasi.

  • Mode Emacs: Alt+f, Escape,f

Karakter yang menentukan batas kata dikonfigurasi di properti WordDelimiters objek PSConsoleReadLineOptions . Untuk menampilkan atau mengubah properti WordDelimiters , lihat Get-PSReadLineOption dan Set-PSReadLineOption.

GotoBrace

Buka kurung kurung, tanda kurung, atau kurung siku yang cocok.

  • Mode Windows: Ctrl+]
  • Mode penyisipan vi: Ctrl+]
  • Mode perintah Vi: <Ctrl+]>

GotoColumn

Pindah ke kolom yang ditunjukkan oleh arg.

  • Mode perintah Vi: <|>

GotoFirstNonBlankOfLine

Pindahkan kursor ke karakter pertama yang tidak kosong dalam baris.

  • Mode perintah Vi: <^>, <_>

MoveToEndOfLine

Pindahkan kursor ke akhir input.

  • Mode perintah Vi: <End>, <$>

MoveToFirstLine

Buka baris pertama dalam perintah multibaris.

  • Mode perintah Vi: <g,g>

MoveToLastLine

Buka baris terakhir dalam perintah multibaris.

  • Mode perintah Vi: <G>

NextLine

Pindahkan kursor ke baris berikutnya.

  • Fungsi tidak terikat.

NextWord

Pindahkan kursor ke depan ke awal kata berikutnya. Batas kata didefinisikan oleh sekumpulan karakter yang dapat dikonfigurasi.

  • Mode Windows: Ctrl+RightArrow
  • Mode penyisipan vi: Ctrl+RightArrow
  • Mode perintah Vi: <Ctrl+RightArrow>

Karakter yang menentukan batas kata dikonfigurasi di properti WordDelimiters objek PSConsoleReadLineOptions . Untuk menampilkan atau mengubah properti WordDelimiters , lihat Get-PSReadLineOption dan Set-PSReadLineOption.

NextWordEnd

Pindahkan kursor ke depan ke akhir kata saat ini, atau jika di antara kata, ke akhir kata berikutnya. Batas kata didefinisikan oleh sekumpulan karakter yang dapat dikonfigurasi.

  • Mode perintah Vi: <e>

Karakter yang menentukan batas kata dikonfigurasi di properti WordDelimiters objek PSConsoleReadLineOptions . Untuk menampilkan atau mengubah properti WordDelimiters , lihat Get-PSReadLineOption dan Set-PSReadLineOption.

PreviousLine

Pindahkan kursor ke baris sebelumnya.

  • Fungsi tidak terikat.

ShellBackwardWord

Pindahkan kursor kembali ke awal kata saat ini, atau jika di antara kata, awal kata sebelumnya. Batas kata ditentukan oleh token PowerShell.

  • Fungsi tidak terikat.

ShellForwardWord

Pindahkan kursor ke depan ke awal kata berikutnya. Batas kata ditentukan oleh token PowerShell.

  • Fungsi tidak terikat.

ShellNextWord

Pindahkan kursor ke depan ke akhir kata saat ini, atau jika di antara kata, ke akhir kata berikutnya. Batas kata ditentukan oleh token PowerShell.

  • Fungsi tidak terikat.

ViBackwardChar

Pindahkan kursor satu karakter ke kiri dalam mode edit Vi. Ini dapat memindahkan kursor ke baris sebelumnya dari input multibaris.

  • Mode penyisipan vi: LeftArrow
  • Mode perintah Vi: <LeftArrow>, <Backspace>, <h>

ViBackwardWord

Pindahkan kursor kembali ke awal kata saat ini, atau jika di antara kata, awal kata sebelumnya. Batas kata didefinisikan oleh sekumpulan karakter yang dapat dikonfigurasi.

  • Mode perintah Vi: <b>

Karakter yang menentukan batas kata dikonfigurasi di properti WordDelimiters objek PSConsoleReadLineOptions . Untuk menampilkan atau mengubah properti WordDelimiters , lihat Get-PSReadLineOption dan Set-PSReadLineOption.

ViEndOfGlob

Pindahkan kursor ke akhir kata ini, seperti yang dibatasi oleh spasi kosong.

  • Mode perintah Vi: <E>

ViEndOfPreviousGlob

Berpindah ke akhir kata sebelumnya, hanya menggunakan spasi kosong sebagai pemisah kata.

  • Fungsi tidak terikat.

ViForwardChar

Pindahkan kursor satu karakter ke kanan dalam mode edit Vi. Ini dapat memindahkan kursor ke baris berikutnya dari input multibaris.

  • Mode penyisipan vi: RightArrow
  • Mode perintah Vi: <RightArrow>, <Spacebar>, <l>

ViGotoBrace

Mirip dengan GotoBrace, tetapi berbasis karakter alih-alih berbasis token.

  • Mode perintah Vi: <%>

ViNextGlob

Berpindah ke kata berikutnya, hanya menggunakan spasi kosong sebagai pemisah kata.

  • Mode perintah Vi: <W>

ViNextWord

Pindahkan kursor ke depan ke awal kata berikutnya. Batas kata didefinisikan oleh sekumpulan karakter yang dapat dikonfigurasi.

  • Mode perintah Vi: <w>

Karakter yang menentukan batas kata dikonfigurasi di properti WordDelimiters objek PSConsoleReadLineOptions . Untuk menampilkan atau mengubah properti WordDelimiters , lihat Get-PSReadLineOption dan Set-PSReadLineOption.

Fungsi riwayat

BeginningOfHistory

Pindah ke item pertama dalam riwayat.

  • Mode emacs: Alt+<

ClearHistory

Menghapus riwayat di PSReadLine. Ini tidak memengaruhi riwayat PowerShell.

  • Mode Windows: Alt+F7

EndOfHistory

Pindah ke item terakhir (input saat ini) dalam riwayat.

  • Mode emacs: Alt+>

ForwardSearchHistory

Lakukan pencarian penerusan inkremental melalui riwayat.

  • Mode Windows: Ctrl+s
  • Mode emacs: Ctrl+s
  • Mode penyisipan vi: Ctrl+s
  • Mode perintah Vi: <Ctrl+s>

HistorySearchBackward

Ganti input saat ini dengan item 'sebelumnya' dari riwayat PSReadLine yang cocok dengan karakter antara awal dan input dan kursor.

  • Mode Windows: F8

HistorySearchForward

Ganti input saat ini dengan item 'berikutnya' dari riwayat PSReadLine yang cocok dengan karakter antara awal dan input dan kursor.

  • Mode Windows: Shift+F8

NextHistory

Ganti input saat ini dengan item 'berikutnya' dari riwayat PSReadLine.

  • Mode Windows: DownArrow
  • Mode Emacs: DownArrow, Ctrl+n
  • Mode penyisipan vi: DownArrow
  • Mode perintah Vi: <DownArrow>, <j>, <+>

PreviousHistory

Ganti input saat ini dengan item 'sebelumnya' dari riwayat PSReadLine.

  • Mode Windows: UpArrow
  • Mode Emacs: UpArrow, Ctrl+p
  • Mode penyisipan vi: UpArrow
  • Mode perintah Vi: <UpArrow>, <k>, <->

ReverseSearchHistory

Lakukan pencarian mundur inkremental melalui riwayat.

  • Mode Windows: Ctrl+r
  • Mode emacs: Ctrl+r
  • Mode penyisipan vi: Ctrl+r
  • Mode perintah Vi: <Ctrl+r>

ViSearchHistoryBackward

Meminta string pencarian dan memulai pencarian pada AcceptLine.

  • Mode perintah Vi: </>

Fungsi lain

Capturescreen

Mulai tangkapan layar interaktif - panah atas/bawah pilih baris, masukkan salinan teks yang dipilih ke clipboard sebagai teks dan HTML.

  • Fungsi tidak terikat.

ClearScreen

Bersihkan layar dan gambar garis saat ini di bagian atas layar.

  • Mode Windows: Ctrl+l
  • Mode emacs: Ctrl+l
  • Mode penyisipan vi: Ctrl+l
  • Mode perintah Vi: <Ctrl+l>

DigitArgument

Mulai argumen digit baru untuk meneruskan ke fungsi lain. Anda dapat menggunakan ini sebagai pengali untuk fungsi berikutnya yang dipanggil oleh keypress. Misalnya, menekan <Alt+1><Alt+0> set nilai digit-argumen ke 10. Kemudian, menekan tombol # akan mengirim 10 # karakter (##########) ke baris input. Demikian pula, Anda dapat menggunakan ini dengan operasi lain, seperti <Delete> atau Left-Arrow.

  • Mode Windows: Alt+0, , Alt+1, Alt+3Alt+2, Alt+4, Alt+5, Alt+6, Alt+7, Alt+8, , Alt+9,Alt+-
  • Mode Emacs: Alt+0, , Alt+1, Alt+2, Alt+3, Alt+5Alt+4, Alt+6, Alt+7, Alt+8, , Alt+9,Alt+-
  • Mode perintah Vi: <0>, , <1>, <3><2>, <4>, <5>, <6>, <7>, , <8>,<9>

InvokePrompt

Menghapus perintah saat ini dan memanggil fungsi prompt untuk memutar ulang perintah. Berguna untuk penangan kunci kustom yang mengubah status. Misalnya, ubah direktori saat ini.

  • Fungsi tidak terikat.

ScrollDisplayDown

Gulir tampilan ke bawah satu layar.

  • Mode Windows: PageDown
  • Mode emacs: PageDown

ScrollDisplayDownLine

Gulir tampilan ke bawah satu baris.

  • Mode Windows: Ctrl+PageDown
  • Mode emacs: Ctrl+PageDown

ScrollDisplayToCursor

Gulir tampilan ke kursor.

  • Mode emacs: Ctrl+End

ScrollDisplayTop

Gulir tampilan ke bagian atas.

  • Mode emacs: Ctrl+Home

ScrollDisplayUp

Gulir tampilan ke atas satu layar.

  • Mode Windows: PageUp
  • Mode emacs: PageUp

ScrollDisplayUpLine

Gulir tampilan ke atas satu baris.

  • Mode Windows: Ctrl+PageUp
  • Mode emacs: Ctrl+PageUp

TampilkanCommandHelp

Menyediakan tampilan bantuan cmdlet penuh. Ketika kursor berada di akhir parameter yang diperluas sepenuhnya, menekan <F1> posisi kunci tampilan bantuan di lokasi parameter tersebut.

Bantuan ditampilkan pada buffer layar alternatif menggunakan Pager dari Microsoft.PowerShell.Pager. Saat Anda keluar dari pager, Anda dikembalikan ke posisi kursor asli di layar asli. Pager ini hanya berfungsi di aplikasi terminal modern seperti Terminal Windows.

  • Mode Windows: F1
  • Mode emacs: F1
  • Mode penyisipan vi: F1
  • Mode perintah Vi: <F1>

TampilkanKeyBindings

Tampilkan semua kunci terikat.

  • Mode Windows: Ctrl+Alt+?
  • Mode emacs: Ctrl+Alt+?
  • Mode penyisipan vi: Ctrl+Alt+?

ShowParameterHelp

Menyediakan bantuan dinamis untuk parameter dengan menunjukkannya di bawah baris perintah saat ini seperti MenuComplete. Kursor harus berada di akhir nama parameter yang diperluas sepenuhnya saat Anda menekan tombol <Alt+h> .

  • Mode Windows: Alt+h
  • Mode emacs: Alt+h
  • Mode penyisipan vi: Alt+h
  • Mode perintah Vi: <Alt+h>

ViCommandMode

Alihkan mode operasi saat ini dari Vi-Insert ke Vi-Command.

  • Mode penyisipan vi: Escape

ViDigitArgumentInChord

Mulai argumen digit baru untuk meneruskan ke fungsi lain saat berada di salah satu akord vi.

  • Fungsi tidak terikat.

ViEditVisually

Edit baris perintah di editor teks yang ditentukan oleh $env:EDITOR atau $env:VISUAL.

  • Mode emacs: Ctrl+x,Ctrl+e
  • Mode perintah Vi: <v>

ViExit

Keluar dari shell.

  • Fungsi tidak terikat.

ViInsertMode

Beralih ke mode Sisipkan.

  • Mode perintah Vi: <i>

WhatIsKey

Baca kunci dan beri tahu saya apa kunci terikat.

  • Mode Windows: Alt+?
  • Mode emacs: Alt+?

Fungsi prediksi

AcceptNextSuggestionWord

Terima kata berikutnya dari saran sebaris atau yang dipilih

  • Fungsi tidak terikat.

AcceptSuggestion

Saat menggunakan InlineView sebagai gaya tampilan untuk prediksi, terima saran sebaris saat ini.

  • Fungsi tidak terikat.

NextSuggestion

Saat menggunakan ListView sebagai gaya tampilan untuk prediksi, navigasikan ke saran berikutnya dalam daftar.

  • Fungsi tidak terikat.

PreviousSuggestion

Saat menggunakan ListView sebagai gaya tampilan untuk prediksi, navigasikan ke saran sebelumnya dalam daftar.

  • Fungsi tidak terikat.

ShowFullPredictionTooltip

Perlihatkan tipsalat item daftar yang saat ini dipilih dalam tampilan lengkap.

  • Mode Windows: F4
  • Mode emacs: F4
  • Mode penyisipan vi: F4

SwitchPredictionView

Alihkan gaya tampilan untuk prediksi antara InlineView dan ListView.

  • Mode Windows: F2
  • Mode emacs: F2
  • Mode penyisipan vi: F2

Fungsi pencarian

CharacterSearch

Baca karakter dan cari ke depan untuk kemunculan karakter tersebut berikutnya. Jika argumen ditentukan, cari maju (atau mundur jika negatif) untuk kemunculan ke-n.

  • Mode Windows: F3
  • Mode emacs: Ctrl+]
  • Mode penyisipan vi: F3
  • Mode perintah Vi: <F3>

CharacterSearchBackward

Baca karakter dan cari mundur untuk kemunculan karakter tersebut berikutnya. Jika argumen ditentukan, cari mundur (atau teruskan jika negatif) untuk kemunculan ke-n.

  • Mode Windows: Shift+F3
  • Mode emacs: Ctrl+Alt+]
  • Mode penyisipan vi: Shift+F3
  • Mode perintah Vi: <Shift+F3>

RepeatLastCharSearch

Ulangi pencarian karakter terakhir yang direkam.

  • Mode perintah Vi: <;>

RepeatLastCharSearchBackwards

Ulangi pencarian karakter terakhir yang direkam, tetapi ke arah yang berlawanan.

  • Mode perintah Vi: <,>

RepeatSearch

Ulangi pencarian terakhir ke arah yang sama seperti sebelumnya.

  • Mode perintah Vi: <n>

RepeatSearchBackward

Ulangi pencarian terakhir ke arah yang sama seperti sebelumnya.

  • Mode perintah Vi: <N>

SearchChar

Baca karakter berikutnya lalu temukan, ke depannya.

  • Mode perintah Vi: <f>

SearchCharBackward

Baca karakter berikutnya lalu temukan, mundur.

  • Mode perintah Vi: <F>

SearchCharBackwardWithBackoff

Baca karakter berikutnya lalu temukan, mundur, lalu mundur dari karakter.

  • Mode perintah Vi: <T>

SearchCharWithBackoff

Baca karakter berikutnya lalu temukan, ke depan, lalu mundur dari karakter.

  • Mode perintah Vi: <t>

SearchForward

Meminta string pencarian dan memulai pencarian pada AcceptLine.

  • Mode perintah Vi: <?>

Fungsi pilihan

ExchangePointAndMark

Kursor ditempatkan di lokasi tanda dan tanda dipindahkan ke lokasi kursor.

  • Mode emacs: Ctrl+x,Ctrl+x

PilihSemua

Pilih seluruh baris.

  • Mode Windows: Ctrl+a

PilihBackwardChar

Sesuaikan pilihan saat ini untuk menyertakan karakter sebelumnya.

  • Mode Windows: Shift+LeftArrow
  • Mode emacs: Shift+LeftArrow

SelectBackwardsLine

Sesuaikan pilihan saat ini untuk disertakan dari kursor ke awal baris.

  • Mode Windows: Shift+Home
  • Mode emacs: Shift+Home

PilihBackwardWord

Sesuaikan pilihan saat ini untuk menyertakan kata sebelumnya.

  • Mode Windows: Shift+Ctrl+LeftArrow
  • Mode emacs: Alt+B

PilihCommandArgument

Buat pemilihan visual argumen perintah. Pilihan argumen dilingkup dalam blok skrip. Berdasarkan posisi kursor, ia mencari dari blok skrip paling dalam ke blok skrip terluar, dan berhenti ketika menemukan argumen apa pun dalam cakupan blok skrip.

Fungsi ini menghormati DigitArgument. Ini memperlakukan nilai argumen positif atau negatif sebagai offset maju atau mundur dari argumen yang saat ini dipilih, atau dari posisi kursor saat ini ketika tidak ada argumen yang dipilih.

  • Mode Windows: Alt+a
  • Mode emacs: Alt+a

PilihForwardChar

Sesuaikan pilihan saat ini untuk menyertakan karakter berikutnya.

  • Mode Windows: Shift+RightArrow
  • Mode emacs: Shift+RightArrow

SelectForwardWord

Sesuaikan pilihan saat ini untuk menyertakan kata berikutnya menggunakan ForwardWord.

  • Mode emacs: Alt+F

Pilih Garis

Sesuaikan pilihan saat ini untuk disertakan dari kursor ke akhir baris.

  • Mode Windows: Shift+End
  • Mode emacs: Shift+End

PilihNextWord

Sesuaikan pilihan saat ini untuk menyertakan kata berikutnya.

  • Mode Windows: Shift+Ctrl+RightArrow

PilihShellBackwardWord

Sesuaikan pilihan saat ini untuk menyertakan kata sebelumnya menggunakan ShellBackwardWord.

  • Fungsi tidak terikat.

PilihShellForwardWord

Sesuaikan pilihan saat ini untuk menyertakan kata berikutnya menggunakan ShellForwardWord.

  • Fungsi tidak terikat.

PilihShellNextWord

Sesuaikan pilihan saat ini untuk menyertakan kata berikutnya menggunakan ShellNextWord.

  • Fungsi tidak terikat.

SetMark

Tandai lokasi kursor saat ini untuk digunakan dalam perintah pengeditan berikutnya.

  • Mode emacs: Ctrl+@

API Dukungan Pengikatan Kunci Kustom

Fungsi berikut bersifat publik di Microsoft.PowerShell.PSConsoleReadLine, tetapi tidak dapat langsung terikat ke kunci. Sebagian besar berguna dalam pengikatan kunci kustom.

void AddToHistory(string command)

Tambahkan baris perintah ke riwayat tanpa mengeksekusinya.

void ClearKillRing()

Bersihkan cincinnya. Ini sebagian besar digunakan untuk pengujian.

void Delete(int start, int length)

Hapus karakter panjang dari awal. Operasi ini mendukung urungkan/ulangi.

void Ding()

Lakukan tindakan Ding berdasarkan preferensi pengguna.

void GetBufferState([ref] string input, [ref] int cursor)
void GetBufferState([ref] Ast ast, [ref] Token[] tokens,
  [ref] ParseError[] parseErrors, [ref] int cursor)

Kedua fungsi ini mengambil informasi yang berguna tentang status buffer input saat ini. Yang pertama lebih umum digunakan untuk kasus sederhana. Yang kedua digunakan jika pengikatan Anda melakukan sesuatu yang lebih canggih dengan Ast.

IEnumerable[Microsoft.PowerShell.KeyHandler]
  GetKeyHandlers(bool includeBound, bool includeUnbound)

IEnumerable[Microsoft.PowerShell.KeyHandler]
  GetKeyHandlers(string[] Chord)

Kedua fungsi ini digunakan oleh Get-PSReadLineKeyHandler. Yang pertama digunakan untuk mendapatkan semua pengikatan kunci. Yang kedua digunakan untuk mendapatkan pengikatan kunci tertentu.

Microsoft.PowerShell.PSConsoleReadLineOptions GetOptions()

Fungsi ini digunakan oleh Get-PSReadLineOption dan mungkin tidak terlalu berguna dalam pengikatan kunci kustom.

void GetSelectionState([ref] int start, [ref] int length)

Jika tidak ada pilihan pada baris perintah, fungsi mengembalikan -1 dalam awal dan panjang. Jika ada pilihan pada baris perintah, awal dan panjang pilihan dikembalikan.

void Insert(char c)
void Insert(string s)

Sisipkan karakter atau string di kursor. Operasi ini mendukung urungkan/ulangi.

string ReadLine(runspace remoteRunspace,
  System.Management.Automation.EngineIntrinsics engineIntrinsics)

Ini adalah titik masuk utama ke PSReadLine. Ini tidak mendukung rekursi, jadi tidak berguna dalam pengikatan kunci kustom.

void RemoveKeyHandler(string[] key)

Fungsi ini digunakan oleh Remove-PSReadLineKeyHandler dan mungkin tidak terlalu berguna dalam pengikatan kunci kustom.

void Replace(int start, int length, string replacement)

Ganti beberapa input. Operasi ini mendukung urungkan/ulangi. Ini lebih disukai daripada Hapus diikuti oleh Sisipkan karena diperlakukan sebagai tindakan tunggal untuk membatalkan.

void SetCursorPosition(int cursor)

Pindahkan kursor ke offset yang diberikan. Gerakan kursor tidak dilacak untuk membatalkan.

void SetOptions(Microsoft.PowerShell.SetPSReadLineOption options)

Fungsi ini adalah metode pembantu yang digunakan oleh cmdlet Set-PSReadLineOption, tetapi mungkin berguna untuk pengikatan kunci kustom yang ingin mengubah pengaturan untuk sementara waktu.

bool TryGetArgAsInt(System.Object arg, [ref] int numericArg,
  int defaultNumericArg)

Metode pembantu ini digunakan untuk pengikatan kustom yang menghormati DigitArgument. Panggilan umum terlihat seperti

[int]$numericArg = 0
[Microsoft.PowerShell.PSConsoleReadLine]::TryGetArgAsInt($arg,
  [ref]$numericArg, 1)

Catatan

Perilaku peristiwa OnIdle

  • Ketika PSReadLine digunakan, peristiwa OnIdle diaktifkan ketika ReadKey() waktu habis (tidak ada pengetikan dalam 300ms). Peristiwa dapat disinyalir saat pengguna berada di tengah-tengah pengeditan baris perintah, misalnya, pengguna membaca bantuan untuk memutuskan parameter mana yang akan digunakan.

    Dimulai di PSReadLine 2.2.0-beta4, perilaku OnIdle berubah untuk memberi sinyal peristiwa hanya jika ada ReadKey() batas waktu dan buffer pengeditan saat ini kosong.

Lihat Juga