Guard: Mengetik tidak muncul di terminal setelah keluar dari penjaga

Dibuat pada 13 Agu 2014  ·  23Komentar  ·  Sumber: guard/guard

Saya telah mengalami perilaku aneh ini untuk sementara waktu. Saya akan keluar dari penjaga dengan ctrl+D dan ketika saya mendapatkan bash Prompt, tidak ada yang muncul di Prompt saat saya mengetik. Saya dapat mengetikkan perintah shell dan mereka akan mengeksekusi, tetapi tidak ada teks yang muncul saat saya mengetik. Output dari perintah yang diketik memang muncul. Menggunakan GNU bash, version 4.2.25(1)-release (x86_64-pc-linux-gnu) .

Komentar yang paling membantu

sementara itu, sudahkah Anda mencoba mengetik reset ?

(Saya menemukan masalah ini karena ketika saya menjalankan guard dengan pry-byebug, saya dapat melihat apa yang saya ketik di guard repl saya, tetapi ketika saya menambahkan binding.pry ke file, saya tidak dapat melihat apa yang saya ketik di repl itu Aneh

Semua 23 komentar

Bisa jadi sisa stdout/stderr - atau sesi/utas undead.

Guard 2.7.0 telah dirilis - apakah Anda masih memiliki masalah? Jika demikian, apa baris terakhir yang membuat prompt tidak terlihat?

Terima kasih, saya akan meningkatkan dan melihat apa yang terjadi minggu ini.

Baru saja ditingkatkan dan saya masih melihat masalah ini. Saya tidak yakin apa yang Anda maksud dengan pertanyaan kedua Anda. Guard menganggur setelah menjalankan spesifikasi, dan ketika saya menekan ctrl+D untuk keluar, saya mendapatkan prompt bash $ , tetapi tidak ada yang muncul setelah itu ketika saya mencoba mengetikkan perintah.

Guard menggunakan LumberJack dan saya pikir itu adalah utas LumberJack yang tidak dibersihkan (jadi ketika penjaga keluar, LumberJack membuang pesan keluaran yang tersisa di "latar belakang" setelah Anda mendapatkan prompt shell jadi ... prompt shell menjadi tersembunyi.

Ini mungkin akan segera diperbaiki.

Oke. Terima kasih!

sementara itu, sudahkah Anda mencoba mengetik reset ?

(Saya menemukan masalah ini karena ketika saya menjalankan guard dengan pry-byebug, saya dapat melihat apa yang saya ketik di guard repl saya, tetapi ketika saya menambahkan binding.pry ke file, saya tidak dapat melihat apa yang saya ketik di repl itu Aneh

@ bf4 - mungkin ada masalah dengan buffering. Anda dapat mencoba memasukkan Guardfile Anda:

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

dan melakukan hal yang sama di suatu tempat di aplikasi Anda (misalnya sebelum binding.pry ).

Itu hanya untuk melihat apakah hal itu mengubah sesuatu (output yang disinkronkan tidak masuk akal untuk disimpan).

Mungkin juga masalah dengan readline dan Pry, jadi Anda mungkin ingin menghapus keduanya dan menginstal Pry (dan readline) sesuai dengan apa pun yang saat ini direkomendasikan dalam dokumen mereka.

Atau Anda mungkin memastikan Anda tidak memiliki konfigurasi khusus di suatu tempat.

Saya memperbaikinya dengan menghapus permata readline-rb dan mengedit .editrc per osx
docs tepat sebelum saran readline. Ruby 2.1.4 melalui rvm di osx,
jaga 2.7 dan 2.9

Saya menutup ini karena sepertinya ini adalah masalah readline, bukan masalah Guard.

Jika ada yang bisa saya lakukan di Guard untuk mencegah ini (atau memperbaikinya) - silakan buka kembali.

Saya pikir itu mungkin benar-benar menjadi masalah dengan guard-zeus . Ketika saya menghapus permata itu, masalahnya hilang.

@mockdeep - aneh. Tapi terima kasih telah memberi tahu saya. Jika saya pernah mereproduksinya (saya menggunakan Linux), saya akan menyelesaikan ini.

Saya mendapatkannya cukup konsisten ketika guard-zeus dicolokkan. Cukup boot guard , mungkin jalankan beberapa spesifikasi, tekan ctrl+D dan presto. Saya menggunakan Linux, juga.

Ya, pembaruan keluaran Zeus yang keren mengganggu Pry.

Solusi:

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

Solusi lainnya tentu saja dengan menjalankan Zeus di terminal terpisah.

Saya mengirimkan masalah di sini: https://github.com/guard/guard-zeus/issues/18

Perlu perubahan di Zeus untuk mendukung ini.

Bagus. Saya akan mengingat hal ini di masa mendatang jika saya mengalami masalah serupa. Untuk saat ini kami telah beralih ke spring .

Jika Anda menggunakan pegas di Linux, Anda mungkin ingin berlangganan masalah ini: https://github.com/jonleighton/spring-watcher-listen/issues/1 (pada dasarnya, begitu saya mendapatkannya, pegas akan menggunakan inotify di Linux alih-alih polling).

Bagus! Diikuti.

Jadi, saya melihat di dokumen https://github.com/guard/guard/wiki/Add-Readline-support-to-Ruby-on-Mac-OS-X perbaikan .editrc saya sebutkan tidak' di sana. Saya mencarinya di sejarah, dan ternyata ada di Pry Docs

Bagaimana saya bisa mendapatkan dukungan readline (ctrl+r dll) untuk Pry di OSX?

Secara teknis untuk OSX Anda tidak memerlukan readline, dan kami akan fokus menggunakan libedit yang disertakan dengan OSX.

Edit file .editrc di direktori home Anda. Tambahkan baris ini:

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

Anda sekarang dapat menggunakan ctrl+r untuk melakukan pencarian riwayat terbalik.

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

Atau, instal GNU Readline dan minta Ruby untuk menggunakannya: https://github.com/guard/guard/wiki/Add-Readline-support-to-Ruby-on-Mac-OS-X

Terakhir, Pry bekerja dengan rb-readline, implementasi Ruby murni dari Readline yang seharusnya tidak terpengaruh oleh platform dan menginstal dependensi dari Readline standar.
Ref: https://github.com/luislavena/rb-readline

Tampaknya dokumen ini berbicara satu sama lain. Bolehkah saya menambahkan info editrc atau tautan ke pry docs?

@bf4 -

Bolehkah saya menambahkan info editrc atau tautan ke pry docs?

Sangat! Itu akan sangat dihargai!

Saya punya masalah ini juga. Bahkan setelah restart baru, saya menggunakan spring+guard, ketika saya meletakkan breakpoint binding.pry dalam kode saya, saya tidak dapat melihat apapun yang saya ketik. Saya mencoba menambahkan bind "^R" em-inc-search-prev ke ~/.editrc dan memulai ulang terminal saya tetapi itu tidak membantu. Saya mencoba reset juga, tidak membantu.

@rahilsondhi export DISABLE_SPRING=1 dan semua masalah Anda akan hilang

Terima kasih. Saya mencoba meletakkannya di terminal saya sebelum memulai penjaga - tidak
dadu. Saya bahkan menghapus pegas dari Guardfile saya, tanpa dadu.

Pada Sel, 7 Apr 2015 jam 11:21, Benjamin Fleischer <
[email protected]> menulis:

@rahilsondhi https://github.com/rahilsondhi export DISABLE_SPRING=1 and
semua masalah Anda akan hilang


Balas email ini secara langsung atau lihat di GitHub
https://github.com/guard/guard/issues/619#issuecomment -90688628.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

Antti picture Antti  ·  4Komentar

jonmchan picture jonmchan  ·  16Komentar

Odaeus picture Odaeus  ·  21Komentar

greyblake picture greyblake  ·  18Komentar

thibaudgg picture thibaudgg  ·  3Komentar