Ho Ruby 2.3.0p0 installato tramite rbenv, su OS X 10.11.4. All'interno di una sessione IRB, la cronologia funziona correttamente. Tuttavia, non riesco ad accedere alla cronologia IRB tra le sessioni.Cronologia IRB non funzionante con Ruby 2.3.0
Ho provato il mio sistema Ruby, 2.0.0p648 e la cronologia delle sessioni IRB funziona correttamente. Ho provato a installare la stessa versione di Ruby tramite rbenv e ha anche una cronologia di lavoro.
Ho confrontato i valori di IRB.conf
tra un lavoro e la sessione non lavorativo, e nulla sembra fuori posto (anche se, stranamente, IRB/ext/salva-history.rb è un file vuoto in entrambi i casi).
Guardando il mio file .irb_history, sembra che sia stato sostituito, piuttosto che aggiunto, con i comandi dell'ultima sessione. Posso caricare una sessione IRB 2.0.0 e scorrere bene quei comandi.
Ho provato le risposte elencate in rbenv irb history is not saving senza successo.
Ho anche provato la risposta selezionata in irb history not working. Ho dovuto modificare la risposta selezionata per sostituire il metodo #nitems. Questo ha dimostrato che le righe venivano lette dal file di cronologia e inviate a Readline::HISTORY
. Tuttavia, l'esame di Readline::HISTORY
non mostra nulla lì.
È possibile eseguire una modifica della cronologia aggiungendo righe precedenti dal mio .irb_history alla cronologia Readline tramite Readline.readline
e specificando add_hist = true. Tuttavia, non è sicuramente il modo corretto per aggiungere i comandi precedenti a Readline.
So che posso passare a qualcosa come la leva, ma mi piacerebbe capirlo. Qualche suggerimento sul motivo per cui i comandi non vengono aggiunti a Readline e come cambiarlo?
Una cosa che hai detto sembra strano per me: hai detto salva-history.rb è vuoto. Il mio '~/.rbenv/versions/2.3.0/lib/ruby / 2.3.0/irb/ext/save-history.rb' è pieno di codice che fa funzionare la storia. Penserei che se il tuo fosse vuoto, la cronologia irb non funzionerebbe con o senza readline. –
Hmm. Non ho più il mio 2.3.0 originale, ma sono tornato indietro e ho guardato il mio 2.0.0, e il file save-history.rb ha effettivamente il codice. Non ho una spiegazione, a parte il fatto che il mio cervello era un po 'fritto a scavare intorno a questo. –