2012-03-24 6 views
97

Wenn ich Dateien in meinem ~/.vim bearbeiten, würde die .netrwhist Datei auf mysteriöse Weise auch geändert werden.Was ist .netrwhist?

Es ist Inhalt:

let g:netrw_dirhistmax =10 
let g:netrw_dirhist_cnt =6 
...and so on... 

Was bedeutet diese Datei tun? Ist es wichtig?

Antwort

95

netrw ist eine Art von vim plugin/script, die das Lesen und Schreiben von Dateien über Netzwerke unterstützt. .netrwhist ist eine Verlaufsdatei, die alle Verzeichnisse verwaltet, die geändert wurden. Also, wenn Sie den Inhalt ~/.vim ändern fügt es einen Eintrag in .netrwhist

Eine Probe .netrwhist als

let g:netrw_dirhistmax =10 
let g:netrw_dirhist_cnt =6 
let g:netrw_dirhist_1='/Users/wolever/EnSi/repos/web/env/web/lib/python2.6/site-packages/django' 
let g:netrw_dirhist_2='/private/tmp/b/.hg/attic' 
let g:netrw_dirhist_3='/Users/wolever/code/sandbox/pydhcplib-0.6.2/pydhcplib' 
let g:netrw_dirhist_4='/Users/wolever/EnSi/repos/common/env/common/bin' 
let g:netrw_dirhist_5='/Users/wolever/EnSi/repos/common/explode' 
let g:netrw_dirhist_6='/Users/wolever/Sites/massuni-wiki/conf' 

netrw_dirhistmax gibt die maximale Anzahl der geänderten Verzeichnisse angezeigt wird es in der History-Datei speichert. dh Max. Verlaufsgröße. netrw_dirhist_cnt zeigt den aktuellen Verlaufszählwert von geänderten Verzeichnissen an.

Wenn Sie netrw deaktivieren möchten, um die Verlaufsdatei zu generieren, siehe this.

12

Darüber hinaus, wenn man g:netrw_dirhistmax auf Null setzt, wird netrw keine Geschichte oder Lesezeichen speichern:

:let g:netrw_dirhistmax = 0 

Dadurch wird keine vorherige .netrwhist oder .netrwbook Dateien verursachen gelöscht werden, jedoch.

5

Wenn Sie möchten, dass vim die XDG - Basisverzeichnisspezifikationen einhält, um zu verhindern, dass Ihr Home - Ordner von dotfiles wie ~/.vim übersät ist, möchten Sie möglicherweise gecachte Dateien und Verlaufsdateien von Ihrer Konfiguration trennen befindet sich normalerweise im Laufzeitpfad).

     *.netrwhist* 
See |g:netrw_dirhistmax| for how to control the quantity of history stack 
slots. The file ".netrwhist" holds history when netrw (and vim) is not 
active. By default, it's stored on the first directory on the user's 
|'runtimepath'|. 

In meinem Fall der erste Weg in runtimepath ist ~/.vim (Check mit :echo &runtimepath: So zum Beispiel, speichern .netrwhist in ~/.cache/vim Sie

let g:netrw_home=$XDG_CACHE_HOME.'/vim' 
+0

Wenn sich Ihr .vim-Ordner an einem anderen Speicherort als .vim befindet, befindet sich dieser neue Speicherort vermutlich auf dem Laufzeitpfad von vim. g: netrw_home wird standardmäßig auf das erste Verzeichnis auf dem Laufzeitpfad gesetzt, das wiederum standardmäßig $ HOME/.vim ist. Wenn Sie (ayekat) Ihren Laufzeitpfad ordnungsgemäß eingerichtet haben, sollten Sie g: netrw_home nicht ändern müssen. – user21497

+0

@ user21497 Das ist wahr. Wenn Sie andererseits Ihre Konfiguration von Dingen wie Auslagerungsdateien, Rückgängig-Dateien oder (wie hier) 'netrwhist' trennen möchten, löst das richtige Setzen des Laufzeitpfads das Problem nur teilweise. Aber ich werde die Antwort bearbeiten, um dies ein wenig klarer zu machen. – ayekat

0

Vom netrw Referenzhandbuch, um versuchen möchten). Ich bin damit gut, also muss ich nicht g:netrw_home ändern.


*g:netrw_dirhistmax*   =10: controls maximum quantity of past 
             history. May be zero to supppress 
             history. 

Also, ja, wird let g:netrw_dirhistmax=0 in die Protokolldatei schreiben stoppen.