Guard: A digitação não aparece no terminal após sair da guarda

Criado em 13 ago. 2014  ·  23Comentários  ·  Fonte: guard/guard

Já faz algum tempo que tenho esse comportamento estranho. Sairei da guarda com ctrl+D e quando obtiver um prompt bash, nada aparecerá no prompt quando eu digitar. Posso digitar comandos do shell e eles serão executados, mas nenhum texto aparece enquanto digito. A saída dos comandos digitados é exibida. Usando GNU bash, version 4.2.25(1)-release (x86_64-pc-linux-gnu) .

Comentários muito úteis

entretanto, você tentou digitar reset ?

(Eu encontrei esse problema porque quando estou executando a guarda com pry-byebug, posso ver o que digito na minha guarda repl, mas quando adiciono um binding.pry a um arquivo, não consigo ver o que estou digitando no que repl. Estranho

Todos 23 comentários

Pode ser alguma sobra de stdout / stderr - ou uma sessão / discussão undead pry.

O Guard 2.7.0 foi lançado - você ainda tem o problema? Em caso afirmativo, qual é a última linha que está tornando o prompt invisível?

Obrigado, vou atualizar e ver o que acontece esta semana.

Acabei de atualizar e ainda estou vendo esse problema. Não tenho certeza do que você quer dizer com sua segunda pergunta. O Guard fica ocioso após a execução das especificações e, quando pressiono ctrl+D para sair, recebo meu prompt $ bash, mas nada aparece depois dele quando tento digitar um comando.

O Guard usa o LumberJack e acho que é o (s) thread (s) do LumberJack que não são limpos (então, quando o guarda sai, o LumberJack despeja as mensagens de saída restantes no "plano de fundo" depois que você obtém o prompt do shell, então ... o prompt do shell fica escondido.

Isso provavelmente será corrigido em breve.

Ah ok. Obrigado!

entretanto, você tentou digitar reset ?

(Eu encontrei esse problema porque quando estou executando a guarda com pry-byebug, posso ver o que digito na minha guarda repl, mas quando adiciono um binding.pry a um arquivo, não consigo ver o que estou digitando no que repl. Estranho

@ bf4 - pode ser um problema com o buffer. Você pode tentar colocar em seu Guardfile:

$stderr.sync = true
$stdout.sync = true

e fazendo o mesmo em algum lugar do seu aplicativo (por exemplo, antes de binding.pry ).

Isso é só para ver se isso muda alguma coisa (não faz sentido manter a saída sincronizada).

Também pode ser um problema com readline e Pry, então você pode querer desinstalar e instalar Pry (e readline) de acordo com o que é recomendado atualmente em seus documentos.

Ou você pode ter certeza de que não tem uma configuração personalizada em algum lugar.

Corrigi-lo removendo readline-rb gem e editando o .editrc por osx
docs imediatamente antes da sugestão de readline. Ruby 2.1.4 via rvm no osx,
guarda 2.7 e 2.9

Estou encerrando isso porque parece ser um problema de readline, não um problema do Guard.

Se houver algo que eu possa fazer no Guard para evitar isso (ou consertar), reabra.

Acho que pode ter sido um problema com guard-zeus . Quando retirei aquela joia, o problema desapareceu.

@mockdeep - estranho. Mas obrigado por me avisar. Se algum dia eu reproduzir (eu uso Linux), resolvo isso.

Eu estava conseguindo consistentemente quando guard-zeus estava conectado. Apenas inicialize guard , talvez execute algumas especificações, pressione ctrl + D e pronto. Também estou usando Linux.

Sim, a atualização legal da saída do Zeus interfere no Pry.

Gambiarra:

guard 'zeus', cli: '> /dev/null' do

A outra solução alternativa é, obviamente, simplesmente executar o Zeus em um terminal separado.

Enviei um problema aqui: https://github.com/guard/guard-zeus/issues/18

Precisa de mudanças no Zeus para suportar isso.

Agradável. Vou manter isso em mente se tiver problemas semelhantes. Por enquanto, mudamos para spring .

Se você estiver usando o spring no Linux, você pode querer assinar este problema: https://github.com/jonleighton/spring-watcher-listen/issues/1 (basicamente, quando eu chegar lá, o spring usará o inotify no Linux em vez de pesquisa).

Agradável! Seguido.

Portanto, vejo nos documentos https://github.com/guard/guard/wiki/Add-Readline-support-to-Ruby-on-Mac-OS-X a correção .editrc que mencionei isn ' t lá. Procurei na história e descobri que estava no Pry Docs

Como posso obter suporte readline (ctrl + r etc) para Pry no OSX?

Tecnicamente para o OSX, você não precisa do readline, e vamos nos concentrar no uso do libedit, que vem com o OSX.

Edite o arquivo .editrc em seu diretório inicial. Adicione esta linha:

bind "^R" em-inc-search-prev

Agora você pode usar ctrl + r para fazer uma pesquisa reversa do histórico.

Ref: http://hints.macworld.com/article.php?story=20080313113705760

Como alternativa, instale o GNU Readline e faça com que o Ruby o use: https://github.com/guard/guard/wiki/Add-Readline-support-to-Ruby-on-Mac-OS-X

Finalmente, Pry funciona com rb-readline, uma implementação Ruby pura de Readline que não deve sofrer com as dependências de plataforma e instalação do Readline padrão.
Ref: https://github.com/luislavena/rb-readline

Parece que esses médicos falam uns com os outros. Posso adicionar as informações do editrc ou link para os documentos do pry?

@ bf4 -

Posso adicionar as informações do editrc ou link para os documentos do pry?

Absolutamente! Seria muito apreciado!

Eu tenho esse problema tambem. Mesmo após uma nova reinicialização, estou usando spring + guard, quando coloco um ponto de interrupção binding.pry em meu código, não consigo ver nada do que digito. Tentei adicionar bind "^R" em-inc-search-prev a ~/.editrc e reiniciei meu terminal, mas não ajudou. Eu tentei reset também, não ajudou.

@rahilsondhi export DISABLE_SPRING=1 e todos os seus problemas irão embora

Obrigado. Tentei colocar isso no meu terminal antes de iniciar a guarda - não
dados. Eu até removi a mola do meu Guardfile, sem dados.

Na terça, 7 de abril de 2015 às 11h21, Benjamin Fleischer <
notificaçõ[email protected]> escreveu:

@rahilsondhi https://github.com/rahilsondhi export DISABLE_SPRING = 1 e
todos os seus problemas irão embora

-
Responda a este e-mail diretamente ou visualize-o no GitHub
https://github.com/guard/guard/issues/619#issuecomment -90688628.

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

Questões relacionadas

tomrossi7 picture tomrossi7  ·  6Comentários

lastobelus picture lastobelus  ·  5Comentários

Odaeus picture Odaeus  ·  21Comentários

Antti picture Antti  ·  4Comentários

greyblake picture greyblake  ·  18Comentários