Compartilhar via


about_PSReadLine_Functions

Descrição curta

O PSReadLine fornece uma experiência aprimorada de edição de linha de comando no console do PowerShell.

Descrição longa

O PowerShell 7.3 é fornecido com o PSReadLine 2.2.6. A versão atual é PSReadLine 2.3.4. A versão atual do PSReadLine pode ser instalada e usada no Windows PowerShell 5.1 e mais recente. Para alguns recursos, você precisa estar executando o PowerShell 7.2 ou superior.

Este artigo documenta as funções fornecidas pelo PSReadLine 2.3.4. Essas funções podem ser associadas a pressionamentos de teclas para facilitar o acesso e a invocação.

Usando a classe Microsoft.PowerShell.PSConsoleReadLine

As funções a seguir estão disponíveis na classe Microsoft.PowerShell.PSConsoleReadLine.

Funções básicas de edição

Abortar

Anulação da ação atual, por exemplo: pesquisa de histórico incremental.

  • Modo Emacs: Ctrl+g
  • Modo de inserção vi: Ctrl+g
  • Modo de comando vi: <Ctrl+g>

AcceptAndGetNext

Tente executar a entrada atual. Se ele puder ser executado (como AcceptLine), lembre-se do próximo item do histórico na próxima vez em que ReadLine for chamado.

  • Modo Emacs: Ctrl+o

AcceptLine

Tente executar a entrada atual. Se a entrada atual estiver incompleta (por exemplo, há um parêntese de fechamento ausente, colchete ou aspas), o prompt de continuação será exibido na próxima linha e o PSReadLine aguardará as chaves editarem a entrada atual.

  • Modo windows: Enter
  • Modo Emacs: Enter
  • Modo de inserção vi: Enter

AddLine

O prompt de continuação é exibido na próxima linha e o PSReadLine aguarda chaves para editar a entrada atual. Isso é útil para inserir a entrada de várias linhas como um único comando, mesmo quando uma única linha é a entrada completa por si só.

  • Modo windows: Shift+Enter
  • Modo Emacs: Shift+Enter
  • Modo de inserção vi: Shift+Enter
  • Modo de comando vi: <Shift+Enter>

BackwardDeleteChar

Exclua o caractere antes do cursor.

  • Modo windows: Backspace, Ctrl+h
  • Modo Emacs: Backspace, Ctrl+Backspace, Ctrl+h
  • Modo de inserção vi: Backspace
  • Modo de comando Vi: <X>, <d,h>

BackwardDeleteInput

Assim como BackwardKillInput - exclui o texto do ponto até o início da entrada, mas não coloca o texto excluído no anel de exclusão.

  • Modo windows: Ctrl+Home
  • Modo de inserção vi: Ctrl+u, Ctrl+Home
  • Modo de comando Vi: <Ctrl+u>, <Ctrl+Home>

BackwardDeleteLine

Assim como o BackwardKillLine – exclui o texto do ponto até o início da linha, mas não coloca o texto excluído no kill-ring.

  • Modo de comando vi: <d,0>

BackwardDeleteWord

Exclui a palavra anterior.

  • Modo de comando Vi: <Ctrl+w>, <d,b>

BackwardKillInput

Desmarque o texto do início da entrada para o cursor. O texto desmarcado é colocado no anel de eliminação.

  • Modo emacs: Ctrl+u, Ctrl+x,Backspace

BackwardKillLine

Desmarque o texto do início da linha lógica atual para o cursor. O texto desmarcado é colocado no anel de eliminação.

  • A função não está relacionada.

BackwardKillWord

Desmarque a entrada do início da palavra atual para o cursor. Se o cursor estiver entre palavras, a entrada será desmarcada do início da palavra anterior para o cursor. O texto desmarcado é colocado no anel de eliminação.

  • Modo windows: Ctrl+Backspace, Ctrl+w
  • Modo emacs: Alt+Backspace, Escape,Backspace
  • Modo de inserção vi: Ctrl+Backspace
  • Modo de comando vi: <Ctrl+Backspace>

BackwardReplaceChar

Substitui o caractere na frente do cursor.

  • Modo de comando vi: <c,h>

CancelLine

Cancele a entrada atual, deixando a entrada na tela, mas retorne ao host para que o prompt seja avaliado novamente.

  • Modo de inserção vi: Ctrl+c
  • Modo de comando vi: <Ctrl+c>

CapitalizeWord

Adicionado no PSReadLine 2.3.0

Converta o primeiro caractere da próxima palavra em maiúsculas e minúsculas e os caracteres restantes em letras minúsculas.

  • Modo emacs: Alt+c, Escape,c

Copiar

Copie a região selecionada para a área de transferência do sistema. Se nenhuma região estiver selecionada, copie a linha inteira.

  • Modo windows: Ctrl+C

CopyOrCancelLine

Se o texto estiver selecionado, copie para a área de transferência, caso contrário, cancele a linha.

  • Modo windows: Ctrl+c
  • Modo Emacs: Ctrl+c

Cortar

Exclua a região selecionada colocando o texto excluído na área de transferência do sistema.

  • Modo windows: Ctrl+x

DeleteChar

Exclua o caractere sob o cursor.

  • Modo windows: Delete
  • Modo Emacs: Delete
  • Modo de inserção vi: Delete
  • Modo de comando Vi: <Delete>, <x>, <d,l>, <d,Spacebar>

DeleteCharOrExit

Exclua o caractere sob o cursor ou, se a linha estiver vazia, saia do processo.

  • Modo Emacs: Ctrl+d

DeleteEndOfBuffer

Exclui até o final do buffer de várias linhas.

  • Modo de comando vi: <d,G>

DeleteEndOfWord

Excluir até o final da palavra.

  • Modo de comando vi: <d,e>

DeleteLine

Exclui a linha lógica atual de um buffer multilinha, permitindo desfazer.

  • Modo de comando Vi: <d,d>, <d,_>

DeleteLineToFirstChar

Exclui do primeiro caractere não em branco da linha lógica atual em um buffer de várias linhas.

  • Modo de comando vi: <d,^>

DeleteNextLines

Exclui as linhas lógicas atuais e seguintes em um buffer de várias linhas.

  • Modo de comando vi: <d,j>

DeletePreviousLines

Exclui as linhas lógicas solicitadas anteriormente e a linha lógica atual em um buffer de várias linhas.

  • Modo de comando vi: <d,k>

DeleteRelativeLines

Exclui do início do buffer para a linha lógica atual em um buffer de várias linhas.

Como a maioria dos comandos Vi, o comando <d,g,g> pode ser acrescentado com um argumento numérico que especifica um número de linha absoluto, que, juntamente com o número de linha atual, compõem um intervalo de linhas a serem excluídas. Se não for especificado, o argumento numérico padrão será 1, que se refere à primeira linha lógica em um buffer multilinha.

O número real de linhas a serem excluídas da multilinha é computado como a diferença entre o número de linha lógica atual e o argumento numérico especificado, que pode, portanto, ser negativo. Portanto, o relativo parte do nome do método.

  • Modo de comando vi: <d,g,g>

DeleteToEnd

Excluir até o final da linha.

  • Modo de comando Vi: <D>, <d,$>

DeleteWord

Exclua a próxima palavra.

  • Modo de comando vi: <d,w>

DowncaseWord

Adicionado no PSReadLine 2.3.0

Converta a próxima palavra em letras minúsculas.

  • Modo emacs: Alt+l, Escape,l

ForwardDeleteInput

Assim como KillLine - exclui o texto do ponto até o final da entrada, mas não coloca o texto excluído no anel de exclusão.

  • Modo windows: Ctrl+End
  • Modo de inserção vi: Ctrl+End
  • Modo de comando vi: <Ctrl+End>

ForwardDeleteLine

Exclui o texto do ponto até o final da linha lógica atual, mas não coloca o texto excluído no anel de exclusão.

  • A função é desvinculada

InsertLineAbove

Uma nova linha vazia é criada acima da linha atual, independentemente de onde o cursor esteja na linha atual. O cursor passa para o início da nova linha.

  • Modo windows: Ctrl+Enter

InsertLineBelow

Uma nova linha vazia é criada abaixo da linha atual, independentemente de onde o cursor esteja na linha atual. O cursor passa para o início da nova linha.

  • Modo windows: Shift+Ctrl+Enter

InvertCase

Inverta o caso do caractere atual e vá para o próximo.

  • Modo de comando vi: <~>

KillLine

Desmarque a entrada do cursor até o final da entrada. O texto desmarcado é colocado no anel de eliminação.

  • Modo Emacs: Ctrl+k

KillRegion

Mate o texto entre o cursor e a marca.

  • A função não está relacionada.

KillWord

Desmarque a entrada do cursor até o final da palavra atual. Se o cursor estiver entre palavras, a entrada será desmarcada do cursor até o final da próxima palavra. O texto desmarcado é colocado no anel de eliminação.

  • Modo windows: Alt+d, Ctrl+Delete
  • Modo emacs: Alt+d, Escape,d
  • Modo de inserção vi: Ctrl+Delete
  • Modo de comando vi: <Ctrl+Delete>

Colar

Cole o texto da área de transferência do sistema.

  • Modo windows: Ctrl+v, Shift+Insert
  • Modo de inserção vi: Ctrl+v
  • Modo de comando vi: <Ctrl+v>

Importante

Ao usar a função Colar, todo o conteúdo do buffer da área de transferência é colado no buffer de entrada do PSReadLine. Em seguida, o buffer de entrada é passado para o analisador do PowerShell. A entrada colada usando o aplicativo de console clique com o botão direito do mouse método de colagem é copiada para o buffer de entrada um caractere de cada vez. O buffer de entrada é passado para o analisador quando um caractere de nova linha é copiado. Portanto, a entrada é analisada uma linha de cada vez. A diferença entre métodos de colagem resulta em um comportamento de execução diferente.

PasteAfter

Cole a área de transferência após o cursor, movendo o cursor para o final do texto colado.

  • Modo de comando vi: <p>

PasteBefore

Cole a área de transferência antes do cursor, movendo o cursor para o final do texto colado.

  • Modo de comando vi: <P>

PrependAndAccept

Prepare um '#' e aceite a linha.

  • Modo de comando vi: <#>

Refazer

Desfazer uma desfazer.

  • Modo windows: Ctrl+y
  • Modo de inserção vi: Ctrl+y
  • Modo de comando vi: <Ctrl+y>

RepeatLastCommand

Repita a última modificação de texto.

  • Modo de comando vi: <.>

ReplaceChar

Substitua o caractere atual pelo próximo conjunto de caracteres digitado.

  • Modo de comando Vi: <c,l>, <c,Spacebar>

ReplaceCharInPlace

Substitua o caractere atual por apenas um caractere.

  • Modo de comando vi: <r>

RevertLine

Reverte toda a entrada para a entrada atual.

  • Modo windows: Escape
  • Modo emacs: Alt+r, Escape,r

ShellBackwardKillWord

Desmarque a entrada do início da palavra atual para o cursor. Se o cursor estiver entre palavras, a entrada será desmarcada do início da palavra anterior para o cursor. O texto desmarcado é colocado no anel de eliminação.

A função não está relacionada.

ShellKillWord

Desmarque a entrada do cursor até o final da palavra atual. Se o cursor estiver entre palavras, a entrada será desmarcada do cursor até o final da próxima palavra. O texto desmarcado é colocado no anel de eliminação.

A função não está relacionada.

SwapCharacters

Troque o caractere atual e o anterior.

  • Modo Emacs: Ctrl+t
  • Modo de inserção vi: Ctrl+t
  • Modo de comando vi: <Ctrl+t>

Desfazer

Desfazer uma edição anterior.

  • Modo windows: Ctrl+z
  • Modo emacs: Ctrl+_, Ctrl+x,Ctrl+u
  • Modo de inserção vi: Ctrl+z
  • Modo de comando Vi: <Ctrl+z>, <u>

UndoAll

Desfazer todas as edições anteriores para linha.

  • Modo de comando vi: <U>

UnixWordRubout

Desmarque a entrada do início da palavra atual para o cursor. Se o cursor estiver entre palavras, a entrada será desmarcada do início da palavra anterior para o cursor. O texto desmarcado é colocado no anel de eliminação.

  • Modo Emacs: Ctrl+w

UpcaseWord

Adicionado no PSReadLine 2.3.0

Converta a próxima palavra em maiúsculas e minúsculas.

  • Modo emacs: Alt+u, Escape,u

ValidateAndAcceptLine

Tente executar a entrada atual. Se a entrada atual estiver incompleta (por exemplo, há um parêntese de fechamento ausente, colchete ou aspas), o prompt de continuação será exibido na próxima linha e o PSReadLine aguardará as chaves editarem a entrada atual.

  • Modo Emacs: Ctrl+m

ViAcceptLine

Aceite a linha e alterne para o modo Inserir.

  • Modo de comando vi: <Enter>

ViAcceptLineOrExit

Como DeleteCharOrExit no modo Emacs, mas aceita a linha em vez de excluir um caractere.

  • Modo de inserção vi: Ctrl+d
  • Modo de comando vi: <Ctrl+d>

ViAppendLine

Uma nova linha é inserida abaixo da linha atual.

  • Modo de comando vi: <o>

ViBackwardDeleteGlob

Exclui a palavra anterior, usando apenas o espaço em branco como delimitador de palavras.

  • Modo de comando vi: <d,B>

ViBackwardGlob

Move o cursor de volta para o início da palavra anterior, usando apenas o espaço em branco como delimitadores.

  • Modo de comando vi: <B>

ViBackwardReplaceGlob

Exclua para trás até o início da palavra anterior, como delimitado pelo espaço em branco, e insira o modo de inserção.

  • Modo de comando vi: <c,B>

ViBackwardReplaceLine

Substitui a linha esquerda do cursor e todo o caminho até o início.

  • Modo de comando vi: <c,0>

ViBackwardReplaceLineToFirstChar

Substitui a linha esquerda do cursor e todos, exceto um caractere, para o início da linha.

  • Modo de comando vi: <c,^>

ViBackwardReplaceWord

Substitua a palavra anterior.

  • Modo de comando vi: <c,B>

ViDeleteBrace

Localize a chave correspondente, parênteses ou colchete e exclua todo o conteúdo dentro, incluindo a chave.

  • Modo de comando vi: <d,%>

ViDeleteEndOfGlob

Excluir até o final da palavra.

  • Modo de comando vi: <d,E>

ViDeleteGlob

Exclua o próximo glob (palavra delimitada por espaço em branco).

  • Modo de comando vi: <d,W>

ViDeleteToBeforeChar

Exclui até determinado caractere.

  • Modo de comando vi: <d,t>

ViDeleteToBeforeCharBackward

Exclui até determinado caractere.

  • Modo de comando vi: <d,T>

ViDeleteToChar

Exclui até determinado caractere.

  • Modo de comando vi: <d,f>

ViDeleteToCharBackward

Exclui para trás até determinado caractere.

  • Modo de comando vi: <d,F>

ViInsertAtBegining

Alterne para o modo Inserir e posicione o cursor no início da linha.

  • Modo de comando vi: <I>

ViInsertAtEnd

Alterne para o modo Inserir e posicione o cursor no final da linha.

  • Modo de comando vi: <A>

ViInsertLine

Uma nova linha é inserida acima da linha atual.

  • Modo de comando vi: <O>

ViInsertWithAppend

Acrescente da posição da linha atual.

  • Modo de comando vi: <a>

ViInsertWithDelete

Exclua o caractere atual e alterne para o modo Inserir.

  • Modo de comando vi: <s>

ViJoinLines

Une a linha atual e a próxima linha.

  • Modo de comando vi: <J>

ViReplaceBrace

Substitua todos os caracteres entre o caractere de chave atual e o parceiro correspondente.

  • Modo de comando vi: <c,%>

ViReplaceEndOfGlob

Exclua até o final da palavra, como delimitado por espaço em branco, e insira o modo de inserção.

  • Modo de comando vi: <c,E>

ViReplaceEndOfWord

Exclua até o final da palavra, como delimitado por espaço em branco e delimitadores comuns, e insira o modo de inserção.

  • Modo de comando vi: <c,E>

ViReplaceGlob

Exclua para o início da próxima palavra, como delimitado por espaço em branco, e insira o modo de inserção.

  • Modo de comando vi: <c,W>

ViReplaceLine

Apago toda a linha de comando.

  • Modo de comando Vi: <S>, <c,c>

ViReplaceToBeforeChar

Substitui até determinado caractere.

  • Modo de comando vi: <c,t>

ViReplaceToBeforeCharBackward

Substitui até determinado caractere.

  • Modo de comando vi: <c,T>

ViReplaceToChar

Exclui até determinado caractere.

  • Modo de comando vi: <c,f>

ViReplaceToCharBackward

Substitui até determinado caractere.

  • Modo de comando vi: <c,F>

ViReplaceToEnd

Substitua os caracteres da posição do cursor até o final da linha.

  • Modo de comando Vi: <c,$>, <C>

ViReplaceUntilEsc

Substitua o caractere atual até que uma escape seja inserida ou a linha seja aceita.

  • Modo de comando vi: <r>

ViReplaceWord

Substitua a palavra atual.

  • Modo de comando vi: <c,W>

ViYankBeginningOfLine

Puxe do início do buffer para o cursor.

  • Modo de comando vi: <y,0>

ViYankEndOfGlob

Puxe do cursor até o final do WORD(s).

  • Modo de comando vi: <y,E>

ViYankEndOfWord

Puxe do cursor até o final da(s) palavra(s).

  • Modo de comando vi: <y,e>

ViYankLeft

Puxe caracteres à esquerda do cursor.

  • Modo de comando vi: <y,h>

ViYankLine

Puxe todo o buffer.

  • Modo de comando vi: <y,y>

ViYankNextGlob

Puxe do cursor para o início do próximo WORD(s).

  • Modo de comando vi: <y,W>

ViYankNextWord

Puxe a palavra após o cursor.

  • Modo de comando vi: <y,w>

ViYankPercent

Puxe de/para a chave correspondente.

  • Modo de comando vi: <y,%>

ViYankPreviousGlob

Puxe do início do WORD(s) para o cursor.

  • Modo de comando vi: <y,B>

ViYankPreviousWord

Puxe a(s) palavra(s) antes do cursor.

  • Modo de comando vi: <y,b>

ViYankRight

Puxe caracteres para baixo e à direita do cursor.

  • Modo de comando Vi: <y,l>, <y,Spacebar>

ViYankToEndOfLine

Puxe do cursor até o final do buffer.

  • Modo de comando vi: <y,$>

ViYankToFirstChar

Puxe do primeiro caractere não whitespace para o cursor.

  • Modo de comando vi: <y,^>

Ianque

Adicione o texto morto mais recentemente à entrada.

  • Modo Emacs: Ctrl+y

YankLastArg

Puxe o último argumento da linha de histórico anterior. Com um argumento, a primeira vez que é invocado, comporta-se como YankNthArg. Se invocado várias vezes, em vez disso, itera por meio do histórico e o arg define a direção (negativo inverte a direção).)

  • Modo windows: Alt+.
  • Modo emacs: Alt+., Alt+_, Escape,., Escape,_

YankNthArg

Puxe o primeiro argumento (após o comando) da linha de histórico anterior. Com um argumento, remova o nth argumento (a partir de 0), se o argumento for negativo, comece do último argumento.

  • Modo emacs: Ctrl+Alt+y, Escape,Ctrl+y

YankPop

Se a operação anterior fosse Yank ou YankPop, substitua o texto anteriormente arrancado pelo texto morto seguinte do anel de eliminação.

  • Modo emacs: Alt+y, Escape,y

Funções de conclusão

Completar

Tente executar a conclusão no texto ao redor do cursor. Se houver várias conclusões possíveis, o prefixo inequívoca mais longo será usado para conclusão. Se estiver tentando concluir a conclusão inequívoca mais longa, uma lista de conclusões possíveis será exibida.

  • Modo Emacs: Tab

Tente executar a conclusão no texto ao redor do cursor. Se houver várias conclusões possíveis, o prefixo inequívoca mais longo será usado para conclusão. Se estiver tentando concluir a conclusão inequívoca mais longa, uma lista de conclusões possíveis será exibida.

  • Modo windows: Ctrl+@, Ctrl+Spacebar
  • Modo Emacs: Ctrl+Spacebar

PossibleCompletions

Exiba a lista de conclusões possíveis.

  • Modo Emacs: Alt+=
  • Modo de inserção vi: Ctrl+Spacebar
  • Modo de comando vi: <Ctrl+Spacebar>

TabCompleteNext

Tente concluir o texto em torno do cursor com a próxima conclusão disponível.

  • Modo windows: Tab
  • Modo de comando vi: <Tab>

TabCompletePrevious

Tente concluir o texto em torno do cursor com a conclusão disponível anterior.

  • Modo windows: Shift+Tab
  • Modo de comando vi: <Shift+Tab>

ViTabCompleteNext

Termina o grupo de edição atual, se necessário, e invoca TabCompleteNext.

  • Modo de inserção vi: Tab

ViTabCompletePrevious

Termina o grupo de edição atual, se necessário, e invoca TabCompletePrevious.

  • Modo de inserção vi: Shift+Tab

Funções de movimento do cursor

BackwardChar

Mova o cursor um caractere para a esquerda. Isso pode mover o cursor para a linha anterior de entrada de várias linhas.

  • Modo windows: LeftArrow
  • Modo emacs: LeftArrow, Ctrl+b

Palavra anterior

Mova o cursor de volta para o início da palavra atual ou, se entre palavras, o início da palavra anterior. Os limites do Word são definidos por um conjunto configurável de caracteres.

  • Modo windows: Ctrl+LeftArrow
  • Modo emacs: Alt+b, Escape,b
  • Modo de inserção vi: Ctrl+LeftArrow
  • Modo de comando vi: <Ctrl+LeftArrow>

Os caracteres que definem limites de palavra são configurados na propriedade WordDelimiters do objeto PSConsoleReadLineOptions . Para exibir ou alterar a propriedade WordDelimiters, consulte Get-PSReadLineOption e Set-PSReadLineOption.

BeginningOfLine

Se a entrada tiver várias linhas, vá para o início da linha atual ou, se já estiver no início da linha, vá para o início da entrada. Se a entrada tiver uma única linha, vá para o início da entrada.

  • Modo windows: Home
  • Modo emacs: Home, Ctrl+a
  • Modo de inserção vi: Home
  • Modo de comando vi: <Home>

EndOfLine

Se a entrada tiver várias linhas, vá para o final da linha atual ou, se já estiver no final da linha, vá para o final da entrada. Se a entrada tiver uma única linha, vá para o final da entrada.

  • Modo windows: End
  • Modo emacs: End, Ctrl+e
  • Modo de inserção vi: End

ForwardChar

Mova o cursor um caractere para a direita. Isso pode mover o cursor para a próxima linha de entrada de várias linhas.

  • Modo windows: RightArrow
  • Modo emacs: RightArrow, Ctrl+f

ForwardWord

Mova o cursor para a frente até o final da palavra atual, ou se entre palavras, para o final da próxima palavra. Os limites do Word são definidos por um conjunto configurável de caracteres.

  • Modo emacs: Alt+f, Escape,f

Os caracteres que definem limites de palavra são configurados na propriedade WordDelimiters do objeto PSConsoleReadLineOptions . Para exibir ou alterar a propriedade WordDelimiters, consulte Get-PSReadLineOption e Set-PSReadLineOption.

GotoBrace

Vá para a chave correspondente, parêntese ou colchete.

  • Modo windows: Ctrl+]
  • Modo de inserção vi: Ctrl+]
  • Modo de comando vi: <Ctrl+]>

GotoColumn

Mova para a coluna indicada por arg.

  • Modo de comando vi: <|>

GotoFirstNonBlankOfLine

Mova o cursor para o primeiro caractere não em branco na linha.

  • Modo de comando Vi: <^>, <_>

MoveToEndOfLine

Mova o cursor para o final da entrada.

  • Modo de comando Vi: <End>, <$>

MoveToFirstLine

Vá para a primeira linha em um comando multilinha.

  • Modo de comando vi: <g,g>

MoveToLastLine

Vá para a última linha em um comando de várias linhas.

  • Modo de comando vi: <G>

NextLine

Mova o cursor para a próxima linha.

  • A função não está relacionada.

NextWord

Mova o cursor para a frente até o início da próxima palavra. Os limites do Word são definidos por um conjunto configurável de caracteres.

  • Modo windows: Ctrl+RightArrow
  • Modo de inserção vi: Ctrl+RightArrow
  • Modo de comando vi: <Ctrl+RightArrow>

Os caracteres que definem limites de palavra são configurados na propriedade WordDelimiters do objeto PSConsoleReadLineOptions . Para exibir ou alterar a propriedade WordDelimiters, consulte Get-PSReadLineOption e Set-PSReadLineOption.

NextWordEnd

Mova o cursor para a frente até o final da palavra atual, ou se entre palavras, para o final da próxima palavra. Os limites do Word são definidos por um conjunto configurável de caracteres.

  • Modo de comando vi: <e>

Os caracteres que definem limites de palavra são configurados na propriedade WordDelimiters do objeto PSConsoleReadLineOptions . Para exibir ou alterar a propriedade WordDelimiters, consulte Get-PSReadLineOption e Set-PSReadLineOption.

PreviousLine

Mova o cursor para a linha anterior.

  • A função não está relacionada.

ShellBackwardWord

Mova o cursor de volta para o início da palavra atual ou, se entre palavras, o início da palavra anterior. Os limites do Word são definidos por tokens do PowerShell.

  • A função não está relacionada.

ShellForwardWord

Mova o cursor para a frente até o início da próxima palavra. Os limites do Word são definidos por tokens do PowerShell.

  • A função não está relacionada.

ShellNextWord

Mova o cursor para a frente até o final da palavra atual, ou se entre palavras, para o final da próxima palavra. Os limites do Word são definidos por tokens do PowerShell.

  • A função não está relacionada.

ViBackwardChar

Mova o cursor um caractere para a esquerda no modo de edição do Vi. Isso pode mover o cursor para a linha anterior de entrada de várias linhas.

  • Modo de inserção vi: LeftArrow
  • Modo de comando Vi: <LeftArrow>, <Backspace>, <h>

ViBackwardWord

Mova o cursor de volta para o início da palavra atual ou, se entre palavras, o início da palavra anterior. Os limites do Word são definidos por um conjunto configurável de caracteres.

  • Modo de comando vi: <b>

Os caracteres que definem limites de palavra são configurados na propriedade WordDelimiters do objeto PSConsoleReadLineOptions . Para exibir ou alterar a propriedade WordDelimiters, consulte Get-PSReadLineOption e Set-PSReadLineOption.

ViEndOfGlob

Mova o cursor para o final desta palavra, como delimitado pelo espaço em branco.

  • Modo de comando vi: <E>

ViEndOfPreviousGlob

Move-se para o final da palavra anterior, usando apenas o espaço em branco como delimitador de palavras.

  • A função não está relacionada.

ViForwardChar

Mova o cursor um caractere para a direita no modo de edição do Vi. Isso pode mover o cursor para a próxima linha de entrada de várias linhas.

  • Modo de inserção vi: RightArrow
  • Modo de comando Vi: <RightArrow>, <Spacebar>, <l>

ViGotoBrace

Semelhante a GotoBrace, mas é baseado em caractere em vez de baseado em token.

  • Modo de comando vi: <%>

ViNextGlob

Move para a próxima palavra, usando apenas o espaço em branco como delimitador de palavras.

  • Modo de comando vi: <W>

ViNextWord

Mova o cursor para a frente até o início da próxima palavra. Os limites do Word são definidos por um conjunto configurável de caracteres.

  • Modo de comando vi: <w>

Os caracteres que definem limites de palavra são configurados na propriedade WordDelimiters do objeto PSConsoleReadLineOptions . Para exibir ou alterar a propriedade WordDelimiters, consulte Get-PSReadLineOption e Set-PSReadLineOption.

Funções de histórico

BeginningOfHistory

Mova para o primeiro item do histórico.

  • Modo Emacs: Alt+<

ClearHistory

Limpa o histórico no PSReadLine. Isso não afeta o histórico do PowerShell.

  • Modo windows: Alt+F7

EndOfHistory

Mova para o último item (a entrada atual) no histórico.

  • Modo Emacs: Alt+>

ForwardSearchHistory

Execute uma pesquisa incremental por meio do histórico.

  • Modo windows: Ctrl+s
  • Modo Emacs: Ctrl+s
  • Modo de inserção vi: Ctrl+s
  • Modo de comando vi: <Ctrl+s>

HistorySearchBackward

Substitua a entrada atual pelo item 'anterior' do histórico PSReadLine que corresponde aos caracteres entre o início e a entrada e o cursor.

  • Modo windows: F8

HistorySearchForward

Substitua a entrada atual pelo item 'next' do histórico PSReadLine que corresponde aos caracteres entre o início e a entrada e o cursor.

  • Modo windows: Shift+F8

NextHistory

Substitua a entrada atual pelo item 'next' do histórico PSReadLine.

  • Modo windows: DownArrow
  • Modo emacs: DownArrow, Ctrl+n
  • Modo de inserção vi: DownArrow
  • Modo de comando Vi: <DownArrow>, <j>, <+>

PreviousHistory

Substitua a entrada atual pelo item 'anterior' do histórico PSReadLine.

  • Modo windows: UpArrow
  • Modo emacs: UpArrow, Ctrl+p
  • Modo de inserção vi: UpArrow
  • Modo de comando Vi: <UpArrow>, <k>, <->

ReverseSearchHistory

Execute uma pesquisa incremental com versões anteriores por meio do histórico.

  • Modo windows: Ctrl+r
  • Modo Emacs: Ctrl+r
  • Modo de inserção vi: Ctrl+r
  • Modo de comando vi: <Ctrl+r>

ViSearchHistoryBackward

Solicita uma cadeia de caracteres de pesquisa e inicia a pesquisa em AcceptLine.

  • Modo de comando vi: </>

Funções diversas

CaptureScreen

Inicie a captura de tela interativa – setas para cima/para baixo selecionem linhas, insira cópias de texto selecionado para área de transferência como texto e HTML.

  • A função não está relacionada.

ClearScreen

Desmarque a tela e desenhe a linha atual na parte superior da tela.

  • Modo windows: Ctrl+l
  • Modo Emacs: Ctrl+l
  • Modo de inserção vi: Ctrl+l
  • Modo de comando vi: <Ctrl+l>

DigitArgument

Inicie um novo argumento de dígito para passar para outras funções. Você pode usá-lo como um multiplicador para a próxima função que é invocada por uma tecla. Por exemplo, pressionar define o valor de argumento de dígito como 10. Em seguida, pressionar a tecla # envia 10 # caracteres (##########) para a linha de entrada. Da mesma forma, você pode usá-lo com outras operações, como <Delete> ou Left-Arrow.

  • Modo windows: Alt+0, Alt+1, Alt+2, Alt+3, Alt+4, Alt+5, Alt+6, Alt+7, Alt+8, Alt+9, Alt+-
  • Modo emacs: Alt+0, Alt+1, Alt+2, Alt+3, Alt+4, Alt+5, Alt+6, Alt+7, Alt+8, Alt+9, Alt+-
  • Modo de comando Vi: <0>, <1>, <2>, <3>, <4>, <5>, <6>, <7>, <8>, <9>

InvokePrompt

Apaga o prompt atual e chama a função de prompt para redisplay do prompt. Útil para manipuladores de chaves personalizados que alteram o estado. Por exemplo, altere o diretório atual.

  • A função não está relacionada.

ScrollDisplayDown

Role a exibição para baixo em uma tela.

  • Modo windows: PageDown
  • Modo Emacs: PageDown

ScrollDisplayDownLine

Role a exibição para baixo em uma linha.

  • Modo windows: Ctrl+PageDown
  • Modo Emacs: Ctrl+PageDown

ScrollDisplayToCursor

Role a exibição até o cursor.

  • Modo Emacs: Ctrl+End

ScrollDisplayTop

Role a exibição até a parte superior.

  • Modo Emacs: Ctrl+Home

ScrollDisplayUp

Role a tela para cima em uma tela.

  • Modo windows: PageUp
  • Modo Emacs: PageUp

ScrollDisplayUpLine

Role a tela para cima em uma linha.

  • Modo windows: Ctrl+PageUp
  • Modo Emacs: Ctrl+PageUp

ShowCommandHelp

Fornece uma exibição da ajuda completa do cmdlet. Quando o cursor está no final de um parâmetro totalmente expandido, atingir o <F1> chave posiciona a exibição de ajuda no local desse parâmetro.

A ajuda é exibida em um buffer de tela alternativo usando um Pager de Microsoft.PowerShell.Pager. Ao sair do pager, você é retornado para a posição original do cursor na tela original. Esse pager só funciona em aplicativos de terminal modernos, como do Terminal do Windows.

  • Modo windows: F1
  • Modo Emacs: F1
  • Modo de inserção vi: F1
  • Modo de comando vi: <F1>

ShowKeyBindings

Mostrar todas as chaves associadas.

  • Modo windows: Ctrl+Alt+?
  • Modo Emacs: Ctrl+Alt+?
  • Modo de inserção vi: Ctrl+Alt+?

ShowParameterHelp

Fornece ajuda dinâmica para parâmetros mostrando-o abaixo da linha de comando atual, como MenuComplete. O cursor deve estar no final do nome do parâmetro totalmente expandido quando você pressionar a tecla <Alt+h>.

  • Modo windows: Alt+h
  • Modo Emacs: Alt+h
  • Modo de inserção vi: Alt+h
  • Modo de comando vi: <Alt+h>

ViCommandMode

Alterne o modo operacional atual de Vi-Insert para Vi-Command.

  • Modo de inserção vi: Escape

ViDigitArgumentInChord

Inicie um novo argumento de dígito para passar para outras funções enquanto estiver em um dos acordes de vi.

  • A função não está relacionada.

ViEditVisually

Edite a linha de comando em um editor de texto especificado por $env:EDITOR ou $env:VISUAL.

  • Modo Emacs: Ctrl+x,Ctrl+e
  • Modo de comando vi: <v>

ViExit

Sai do shell.

  • A função não está relacionada.

ViInsertMode

Alterne para o modo Inserir.

  • Modo de comando vi: <i>

WhatIsKey

Leia uma chave e me diga ao que a chave está associada.

  • Modo windows: Alt+?
  • Modo Emacs: Alt+?

Funções de previsão

AcceptNextSuggestionWord

Aceitar a próxima palavra da sugestão embutida ou selecionada

  • A função não está relacionada.

AcceptSuggestion

Ao usar InlineView como o estilo de exibição para previsão, aceite a sugestão embutida atual.

  • A função não está relacionada.

NextSuggestion

Ao usar ListView como o estilo de exibição para previsão, navegue até a próxima sugestão na lista.

  • A função não está relacionada.

PreviousSuggestion

Ao usar ListView como o estilo de exibição para previsão, navegue até a sugestão anterior na lista.

  • A função não está relacionada.

ShowFullPredictionTooltip

Mostrar a dica de ferramenta do item de lista atualmente selecionado na exibição completa.

  • Modo windows: F4
  • Modo Emacs: F4
  • Modo de inserção vi: F4

SwitchPredictionView

Alterne o estilo de exibição para previsão entre InlineView e ListView.

  • Modo windows: F2
  • Modo Emacs: F2
  • Modo de inserção vi: F2

Funções de pesquisa

CharacterSearch

Leia um caractere e pesquise a próxima ocorrência desse caractere. Se um argumento for especificado, pesquise para frente (ou para trás, se negativo) para a nª ocorrência.

  • Modo windows: F3
  • Modo Emacs: Ctrl+]
  • Modo de inserção vi: F3
  • Modo de comando vi: <F3>

CharacterSearchBackward

Leia um caractere e pesquise para trás a próxima ocorrência desse caractere. Se um argumento for especificado, pesquise para trás (ou para frente, se negativo) para a nª ocorrência.

  • Modo windows: Shift+F3
  • Modo Emacs: Ctrl+Alt+]
  • Modo de inserção vi: Shift+F3
  • Modo de comando vi: <Shift+F3>

RepeatLastCharSearch

Repita a última pesquisa de caracteres gravada.

  • Modo de comando vi: <;>

RepeatLastCharSearchBackwards

Repita a última pesquisa de caracteres gravada, mas na direção oposta.

  • Modo de comando vi: <,>

RepeatSearch

Repita a última pesquisa na mesma direção de antes.

  • Modo de comando vi: <n>

RepeatSearchBackward

Repita a última pesquisa na mesma direção de antes.

  • Modo de comando vi: <N>

SearchChar

Leia o próximo caractere e, em seguida, localize-o, daqui para frente.

  • Modo de comando vi: <f>

SearchCharBackward

Leia o próximo caractere e, em seguida, localize-o, indo para trás.

  • Modo de comando vi: <F>

SearchCharBackwardWithBackoff

Leia o próximo caractere e, em seguida, localize-o, indo para trás e, em seguida, desative um caractere.

  • Modo de comando vi: <T>

SearchCharWithBackoff

Leia o próximo caractere e, em seguida, encontre-o, daqui para frente e, em seguida, retire um caractere.

  • Modo de comando vi: <t>

SearchForward

Solicita uma cadeia de caracteres de pesquisa e inicia a pesquisa em AcceptLine.

  • Modo de comando vi: <?>

Funções de seleção

ExchangePointAndMark

O cursor é colocado no local da marca e a marca é movida para o local do cursor.

  • Modo Emacs: Ctrl+x,Ctrl+x

SelectAll

Selecione a linha inteira.

  • Modo windows: Ctrl+a

SelectBackwardChar

Ajuste a seleção atual para incluir o caractere anterior.

  • Modo windows: Shift+LeftArrow
  • Modo Emacs: Shift+LeftArrow

SelectBackwardsLine

Ajuste a seleção atual para incluir do cursor até o início da linha.

  • Modo windows: Shift+Home
  • Modo Emacs: Shift+Home

SelectBackwardWord

Ajuste a seleção atual para incluir a palavra anterior.

  • Modo windows: Shift+Ctrl+LeftArrow
  • Modo Emacs: Alt+B

SelectCommandArgument

Faça a seleção visual dos argumentos de comando. A seleção de argumentos tem como escopo um bloco de script. Com base na posição do cursor, ele pesquisa do bloco de script mais interno até o bloco de script mais distante e é interrompido quando encontra argumentos em um escopo de bloco de script.

Essa função respeita o DigitArgument. Ele trata os valores de argumento positivo ou negativo como deslocamentos para frente ou para trás do argumento atualmente selecionado ou da posição atual do cursor quando nenhum argumento é selecionado.

  • Modo windows: Alt+a
  • Modo Emacs: Alt+a

SelectForwardChar

Ajuste a seleção atual para incluir o próximo caractere.

  • Modo windows: Shift+RightArrow
  • Modo Emacs: Shift+RightArrow

SelectForwardWord

Ajuste a seleção atual para incluir a próxima palavra usando ForwardWord.

  • Modo Emacs: Alt+F

SelectLine

Ajuste a seleção atual para incluir do cursor até o final da linha.

  • Modo windows: Shift+End
  • Modo Emacs: Shift+End

SelectNextWord

Ajuste a seleção atual para incluir a próxima palavra.

  • Modo windows: Shift+Ctrl+RightArrow

SelectShellBackwardWord

Ajuste a seleção atual para incluir a palavra anterior usando ShellBackwardWord.

  • A função não está relacionada.

SelectShellForwardWord

Ajuste a seleção atual para incluir a próxima palavra usando ShellForwardWord.

  • A função não está relacionada.

SelectShellNextWord

Ajuste a seleção atual para incluir a próxima palavra usando ShellNextWord.

  • A função não está relacionada.

SetMark

Marque o local atual do cursor para uso em um comando de edição subsequente.

  • Modo Emacs: Ctrl+@

APIs de suporte de associação de chave personalizada

As funções a seguir são públicas em Microsoft.PowerShell.PSConsoleReadLine, mas não podem ser diretamente associadas a uma chave. A maioria é útil em associações de chave personalizadas.

void AddToHistory(string command)

Adicione uma linha de comando ao histórico sem executá-la.

void ClearKillRing()

Desmarque o anel de morte. Isso é usado principalmente para testes.

void Delete(int start, int length)

Exclua caracteres de comprimento desde o início. Essa operação dá suporte a desfazer/refazer.

void Ding()

Execute a ação Ding com base na preferência do usuário.

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

Essas duas funções recuperam informações úteis sobre o estado atual do buffer de entrada. O primeiro é mais comumente usado para casos simples. O segundo será usado se a associação estiver fazendo algo mais avançado com o Ast.

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

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

Essas duas funções são usadas por Get-PSReadLineKeyHandler. O primeiro é usado para obter todas as associações de chave. O segundo é usado para obter associações de chave específicas.

Microsoft.PowerShell.PSConsoleReadLineOptions GetOptions()

Essa função é usada por Get-PSReadLineOption e provavelmente não é muito útil em uma associação de chave personalizada.

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

Se não houver seleção na linha de comando, a função retornará -1 tanto no início quanto no comprimento. Se houver uma seleção na linha de comando, o início e o comprimento da seleção serão retornados.

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

Insira um caractere ou cadeia de caracteres no cursor. Essa operação dá suporte a desfazer/refazer.

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

Esse é o ponto de entrada principal para PSReadLine. Ele não dá suporte à recursão, portanto, não é útil em uma associação de chave personalizada.

void RemoveKeyHandler(string[] key)

Essa função é usada por Remove-PSReadLineKeyHandler e provavelmente não é muito útil em uma associação de chave personalizada.

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

Substitua algumas entradas. Essa operação dá suporte a desfazer/refazer. Isso é preferencial em vez de Excluir seguido por Inserir porque é tratado como uma única ação para desfazer.

void SetCursorPosition(int cursor)

Mova o cursor para o deslocamento fornecido. O movimento do cursor não é controlado para desfazer.

void SetOptions(Microsoft.PowerShell.SetPSReadLineOption options)

Essa função é um método auxiliar usado pelo cmdlet Set-PSReadLineOption, mas pode ser útil para uma associação de chave personalizada que deseja alterar temporariamente uma configuração.

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

Esse método auxiliar é usado para associações personalizadas que respeitam o DigitArgument. Uma chamada típica se parece com

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

Anotações

Comportamento do evento OnIdle

  • Quando O PSReadLine está em uso, o evento OnIdle é acionado quando ReadKey() tempo limite (sem digitar em 300ms). O evento pode ser sinalizado enquanto o usuário está no meio da edição de uma linha de comando, por exemplo, o usuário está lendo ajuda para decidir qual parâmetro usar.

    A partir do PSReadLine 2.2.0-beta4, o comportamento do onIdle alterado para sinalizar o evento somente se houver um tempo limite ReadKey() e o buffer de edição atual estiver vazio.

Consulte Também