Pour ajouter à cette question de stackoverflow , que faut-il y mettre .vimrc
pour assurer une «édition privée» de certaines extensions de fichiers (par exemple des .gpg
fichiers).
Sans compromettre l'efficacité de la session, aucune information sur le travail effectué ne doit être enregistrée, y compris les registres, l'historique des recherches, l'historique des commandes, les vues, les échanges, etc. Pour les gpg
fichiers, on peut utiliser ce plugin vim , mais en plus de modifier le plugin, comment étendre ces idées discutées à des types de fichiers arbitraires?
Nous utiliserons probablement les commandes suivantes,
if <ft in privacy_ext_list>
set noswapfile
set noundofile
set viminfo=
endif
mais à part l'énoncé conditionnel approprié, qu'est-ce qui manque?
De plus, existe-t-il un moyen avec Vimscript de créer un tableau d'extensions de fichiers et d'évaluer ensuite si le type de fichier actuel se trouve dans le tableau?
Réponses:
Voici la liste complète des paramètres qui devraient être ajoutés à votre
.vimrc
si vous souhaitez éviter toute fuite de fichiers sensibles.Je vous recommande de créer un nouveau fichier de configuration appelé
.vimrc_secure
et d'exécuter Vim avecvim -u ~/.vimrc_secure
(ou de créer un script / alias) lorsque vous souhaitez modifier votre fichier sensible. Cela minimisera le risque d'un plugin malveillant ou d'une fonctionnalité de buggy.la source
.vimrc_secure
est indépendant du.vimrc
(car faire comme vous le dites permet alors à l'utilisateur de:e private file
[garder ainsi le fichier hors de l'historique du shell]), mais utiliservim -u ~/.vimrc-incognito
ne sera pas source~/.vimrc
du tout, n'est-ce pas ? Les joies de la vie privée ne devraient pas se faire au détriment du confort réduit (sauf si le confort est fondamentalement vicié via un plugin malveillant ou une fonctionnalité de buggy). Bien que l'accent devrait être mis sur le risque d'inconnues, il doit sûrement y avoir un moyen d'envelopper conditionnellement votre solution ...au BufRead * if &key != "" | setlocal nobackup noundofile ... | endif
devrait faire la magie pour vous, et il est impossible d'oublier.&l:cm != ""
il?&cryptmethod
, ce qui fait référence à ce paramètre. Lal:
partie était une erreur (j'ai utilisé mes pouvoirs spéciaux pour modifier mon commentaire). Merci d'avoir fait remarquer cela!