Posso usar uma função de várias linhas ou um segmento de fluxo de controle no console do editor do PowerShellFar

2

Se eu estiver executando o farmanager com o FarNet e o PowerShellFar, posso abrir um console selecionando F11 | .NET PowerShell | Console do Editor . Este console é baseado no editor distante. Eu posso colar trechos de scripts do PowerShell neste console e editá-los.

O único problema é se eu quiser usar uma função de várias linhas ou um segmento de fluxo de controle no console. Se eu colá-lo não tem efeito. Se eu tentar digitar um, recebo um erro semelhante a:

ERROR: IncompleteParseException:
Missing closing '}' in statement block.
At line:1 char:42
+ foreach ($number in 1..10 ) { $number * 7 <<<<
    + CategoryInfo          : ParserError: (CloseBraceToken:TokenId) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : MissingEndCurlyBrace

Isso é simplesmente uma limitação do PowerShellFar?

    
por Justin Dearing 24.02.2011 / 05:52

1 resposta

1

Isso é simplesmente uma limitação do recurso do console do editor do PSF. O editor console é projetado para comandos de uma linha verdadeira em primeiro lugar.

Os comandos multilinha não são adequados para a interface do usuário semelhante a console: mesmo que você possa entrada e executar tal comando, então você não pode trazê-lo facilmente para modificar e correr de novo.

Mas você ainda pode copiar / colar / invocar um snippet. Copie, cole e selecione seu texto no console do editor e faça: F11 | PowerShellFar | Invocar selecionado código . É um pouco estranho, mas funciona.

UPDATE

O PowerShellFar 5.0.51 suporta comandos de múltiplas linhas em consoles de editor:

  • Como no ISE, ShiftEnter apenas adiciona uma nova linha sem invocar o comando.
  • Enter em qualquer posição da última área de comando invoca todo o código de área.
  • Como resultado, é possível colar o código de várias linhas e invocá-lo por Enter .
por 25.02.2011 / 05:04