Editor di testo che aggiorna il file senza chiedere conferma

4

Esiste un editor di testo basato su console o finestra che ricarica automaticamente il file modificato su disco senza richiedere nulla?

    
posta Kadir 26.08.2014 - 05:48

4 risposte

2

vim può farlo. Basta aggiungere

set autoread

al tuo ~/.vimrc . (Consulta anche il plug-in Bundle di coda .

L'impostazione autoread applica solo determinati eventi (che possono essere determinati controllando il testo di aiuto per timestamp ( :h timestamp )). Per fare in modo che% co_de carichi i file più frequentemente, ci sono due opzioni decenti:

  1. Definisci una funzione che controlla le modifiche.
  2. Imposta un autocommand come:

    au FocusGained,BufEnter,BufWinEnter,CursorHold,CursorMoved * :checktime
    

    Questo si ricarica ogni volta che vim ottiene lo stato attivo, si entra nel buffer, si sposta un cursore, si inattiva il cursore. Tuttavia, non cambierà la posizione attuale del cursore.

vim può anche farlo se aggiungi emacs :

(global-auto-revert-mode t)

Anche questo non controlla le modifiche, ma dovrebbe essere il seguente:

(global-auto-revert-tail-mode t)

Questo dovrebbe funzionare come .emacs , secondo EmacsWiki .

Anche se tail -f non supporta questo, sono sicuro che ci sono molti altri editor GUI che fanno.

Fonti:

  1. È possibile monitorare le modifiche in tempo reale in un file
  2. Come per fare in modo che Emacs aggiorni automaticamente tutti i buffer quando i file sono stati modificati sul disco?
risposta data muru 26.08.2014 - 06:04
0

Emacs può farlo per te. Si chiama revert-buffer in Emacs. Se vuoi abilitarlo per ogni file che apri in Emacs, aggiungi quanto segue al tuo file ~/.emacs o .emacs.d/init.el :

 (global-auto-revert-mode 1)

Per ulteriori informazioni, consulta Wiki di Emacs . Questo forum di Ubuntu potrebbe anche essere utile.

    
risposta data ph0t0nix 26.08.2014 - 09:31
0

Per chi ama qualcosa di più moderno, Testo sublime lo fa per impostazione predefinita.

// Always prompt before reloading a file, even if the file hasn't been
// modified. The default behavior is to automatically reload a file if it
// hasn't been edited. If a file has unsaved changes, a prompt will always
// be shown.
"always_prompt_for_file_reload": false,
    
risposta data Gabriel 28.04.2017 - 16:37
0

g / vim può farlo quando si usa questo comando:

:set autoread | au CursorHold * checktime | call feedkeys("lh")

(Per scorrere verso il basso, usa invece ... feedkeys("G") invece (ma scorre verso il basso ogni buffer visibile, anche se diviso)

... puoi trovare spiegazioni e informazioni aggiuntive in questa domanda / risposta stackoverflow link

    
risposta data eli 22.01.2018 - 16:00

Leggi altre domande sui tag