La sortie à chaud est l'une des principales fonctionnalités de l'éditeur de texte sublime. Il permet de fermer l'éditeur à tout moment sans se soucier des modifications des fichiers ouverts - il se ferme sans aucune question. Lors du nouveau lancement de ST, tous les fichiers ouverts et modifiés seront dans le même état qu'avant la fermeture.
Je me demande s'il y a un moyen de faire la même chose dans vim?
Réponses:
Vim peut le faire, même si cela peut être un peu maladroit et nécessiter une certaine configuration.
romainl vous aide à mi-chemin
session
. Les bits manquants sont les fichiers d'échange:preserve
et le&
drapeau decpoptions
.Les fichiers d'échange sont destinés à la récupération en cas de panne de Vim ou de votre système. Ils vous permettent de récupérer toutes les modifications non enregistrées (avec certaines limitations, voir
:he swap-file
). Cependant, lorsque Vim se ferme normalement, il supprime tous les fichiers d'échange qu'il utilisait, même si le tampon avait des modifications non enregistrées.C'est là
:preserve
etcpoptions
« s&
entrent en jeu .:preserve
Forces vim pour écrire tous les tampons à leurs fichiers d'échange immédiatement (par opposition à la norme après 4 secondes ou 200 caractères, ou quels que soient vos options ont mis à). Faire:set cpoptions+=&
indique à Vim de ne pas supprimer les fichiers d'échange échangés avec:preserve
lors de la fermeture normale.Malheureusement, Vim ne nettoie pas automatiquement les fichiers d'échange lors de leur récupération, vous pouvez donc bientôt vous retrouver avec un répertoire ressemblant à ceci:
Vous pouvez supprimer les plus anciens manuellement, mais Vim ne proposera automatiquement de récupérer que s'il y a un
*.swp
fichier où il mettra son nouveau fichier d'échange. La:recover
commande forcera Vim à rechercher les fichiers d'échange à récupérer.En utilisant les autocommandes, vous pouvez automatiser la conservation (probablement avec l'
QuitPre
événement) et la récupération (probablement avecBufRead
ouBufReadPost
). Recover.vim est un plugin qui pourrait fonctionner comme une alternative plus conviviale pour gérer la récupération. Il semble également gérer le nettoyage des fichiers d'échange. Je ne sais pas comment il gérerait un répertoire avec un fichier.swo
mais pas.swp
. Vous devrez peut-être encore utiliser:recover
pour ce cas.vim-obsession est un autre plugin qui prétend faciliter la gestion des sessions.
la source
Oui. Cela s'appelle "session" et vous pouvez tout lire à ce sujet dans:
la source