Prezto: ~ / .zprezto / modules / completed / init.zsh: 37: erro de análise próximo a `]] '

Criado em 11 jun. 2020  ·  5Comentários  ·  Fonte: sorin-ionescu/prezto

Descrição

Após reenviar a atualização (ff91c8d4), quando abro um novo shell, recebo este erro:

~/.zprezto/modules/completion/init.zsh:37: parse error near `]]'

Comportamento esperado

Não espero erros durante a inicialização do shell.

Passos para reproduzir

  1. abrir zsh versão 5.02
  2. atualizar prezto para ff91c8d4
  3. abra uma nova sessão zsh (digite zsh)

Versões

  • Prezto commit:
    ff91c8d410df3e6141248474389051c7ddcaf80a
  • Versão ZSH:
    zsh 5.0.2 (x86_64-redhat-linux-gnu)
  • Informação do sistema operacional:
    Centos 7.4

Comentários muito úteis

@belak , obrigado por comentar. Provavelmente precisamos de um consenso sobre as versões oficiais com suporte, ou isso seria um processo demorado?

A correção para remover q seria pequena, fiz algum código localmente e pode empurrá-lo se necessário.

Todos 5 comentários

if [[ $_comp_path(#qNmh-20) ]]; usa #q que é suportado somente após a versão 5.06 conforme indicado no changelog .

Se a opção EXTENDED_GLOB estiver em vigor, é possível forçar o globbing dentro do código condicional usando a sintaxe [...] [...] sinalizando que uma determinada string é um glob usando a sintaxe do qualificador glob (#q). O glob resultante é tratado como um único argumento. Por exemplo, [[-n * .c (#qN)]] testa se há algum arquivo .c no diretório atual.

Não sei se temos uma "versão oficialmente suportada" da política zsh neste projeto ... Eu geralmente uso o oldstable do Debian como referência (que está em 5.3.1). CentOS 7 (que é compatível até algum tempo em 2024 é 5.0.2). CentOS 8 tem 5.5.2.

Honestamente, não gosto de oferecer suporte ao CentOS porque as versões dos pacotes são muito antigas. 5.0.2 foi lançado no final de 2012, quase 8 anos atrás. Se fôssemos oferecer suporte até o fim da vida do CentOS 7, isso significava oferecer suporte a uma versão do ZSH com 12 anos de idade.

No entanto, se essa for a única coisa que impede o uso no 5.0.2, podemos descartar o sinalizador q . Existem outras maneiras de escrever este código.

@belak , obrigado por comentar. Provavelmente precisamos de um consenso sobre as versões oficiais com suporte, ou isso seria um processo demorado?

A correção para remover q seria pequena, fiz algum código localmente e pode empurrá-lo se necessário.

@srijanshetty Você se importaria de compartilhar o patch que o faz funcionar?

Dando um passo para trás, a lógica de regeneração de 20 horas não está funcionando para mim. A última vez que o cache foi criado para mim foi em 23 de julho.

Screenshot from 2020-08-12 15-44-05

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

lokesh-krishna picture lokesh-krishna  ·  5Comentários

ww7 picture ww7  ·  4Comentários

daiyanze picture daiyanze  ·  4Comentários

jeffwidman picture jeffwidman  ·  3Comentários

brycekellogg picture brycekellogg  ·  4Comentários