Comment empêcher vim de créer (et de quitter) des fichiers temporaires?

Pourquoi vim crée-t-il des ~ ? Est-il possible de désactiver cela?

Si c’est pour la sauvegarde (ou quelque chose), j’utilise git pour cela.

En outre, ces ..swp également.

Comment puis-je dire à Vim de ne pas les créer, ou au moins de nettoyer après lui?

MODIFIER

whoops, duplicate:

Pourquoi Vim enregistre-t-il des fichiers avec une extension ~?

J’ai adopté la réponse de rogeriopvl à partir de là.

copie textuelle:

 set nobackup "no backup files set nowritebackup "only in case you don't want a backup file while editing set noswapfile "no swap files 

    Je recommande fortement de continuer à travailler avec les fichiers d’échange (en cas de blocage de Vim).

    Vous pouvez définir le répertoire dans lequel les fichiers d’échange sont stockés, afin qu’ils n’encombrent pas vos répertoires normaux:

     set swapfile set dir=~/tmp 

    Voir également

     :help swap-file 

    Mettez ceci dans votre fichier de configuration .vimrc.

     set nobackup 

    ; Pour les utilisateurs de Windows pour revenir au répertoire temporaire

     set backup set backupdir=C:\WINDOWS\Temp set backupskip=C:\WINDOWS\Temp\* set directory=C:\WINDOWS\Temp set writebackup 

    J’ai créé un plugin appelé “noswapsuck” qui active uniquement le fichier d’échange lorsque le tampon contient des modifications non enregistrées. Une fois les modifications enregistrées, le fichier d’échange est effacé. Par conséquent, les fichiers d’échange contenant le même contenu que le fichier sur le disque seront supprimés.

    Obtenez-le ici: noswapsuck.vim

    Cela a bien fonctionné pour moi, mais je ne l’ai jamais annoncé auparavant, alors je serais heureux de recevoir vos commentaires.

    Avantages:

    • Les seuls fichiers d’échange qui restnt sur votre disque seront des fichiers d’échange importants qui diffèrent du fichier!

    Désavantages:

    • Si le tampon a un fichier d’échange, il ne sera pas détecté lors de la première ouverture du fichier. Il ne sera détecté que lorsque le swapfile est activé, c’est-à-dire lorsque vous commencez à modifier le tampon. C’est trop tard et cela vous interrompra. (Résolu: Nous recherchons maintenant un fichier d’échange préexistant lorsqu’un tampon est ouvert, en swapfile temporairement l’option de swapfile .)

    • Si vous travaillez dans un environnement où vous souhaitez minimiser les écritures sur disque (par exemple, faible consommation d’énergie ou fichiers montés sur un réseau ou modification d’un fichier volumineux), il n’est pas idéal de continuer à supprimer et à recréer le fichier d’échange sur tous les fichiers. enregistrer et éditer. Dans de telles situations, vous pouvez faire:

       :let g:NoSwapSuck_CloseSwapfileOnWrite = 0 

      qui conservera le fichier d’échange après une écriture, mais le supprimera quand le tampon perdra le focus.

    Au fait, j’ai un autre petit plugin :DiffAgainstFileOnDisk qui peut être très utile après avoir :DiffAgainstFileOnDisk sur (r)ecover , pour vérifier si le tampon que vous avez récupéré est plus récent ou plus ancien que le fichier existant, ou identique.

    Sous Windows, ajoutez les lignes suivantes à _vimrc

     " store backup, undo, and swap files in temp directory set directory=$HOME/temp// set backupdir=$HOME/temp// set undodir=$HOME/temp// 

    Cette réponse s’applique à l’utilisation de gVim sous Windows 10. Je ne peux pas garantir les mêmes résultats pour les autres systèmes d’exploitation.

    Ajouter:

     set nobackup set noswapfile set noundofile 

    Pour votre fichier _vimrc

    Note: Ceci est la réponse directe à la question (pour Windows 10) et probablement pas la chose la plus sûre à faire (lisez les autres réponses), mais c’est la solution la plus rapide dans mon cas.