Para agregar a esta pregunta de stackoverflow , ¿qué se debe poner en su .vimrc
para garantizar la 'edición privada' de ciertas extensiones de archivo (por ejemplo, .gpg
archivos).
Sin comprometer la efectividad de la sesión, no se debe guardar información sobre el trabajo realizado, incluidos los registros, el historial de búsqueda, el historial de comandos, las vistas, los swaps, etc. Para los gpg
archivos, se puede usar este complemento vim , pero además de editar el complemento, ¿cómo ¿Se pueden extender estas ideas discutidas a tipos de archivos arbitrarios?
Probablemente haremos uso de los siguientes comandos,
if <ft in privacy_ext_list>
set noswapfile
set noundofile
set viminfo=
endif
pero además de la declaración condicional apropiada, ¿qué falta?
Además, ¿hay alguna manera con Vimscript para hacer una matriz de extensiones de archivo y luego evaluar si el tipo de archivo actual está dentro de la matriz?
Respuestas:
Aquí está la lista completa de configuraciones que debe agregar a su
.vimrc
si desea evitar cualquier fuga de archivos confidenciales.Le recomiendo que cree un nuevo archivo de configuración llamado
.vimrc_secure
y ejecute Vim convim -u ~/.vimrc_secure
(o cree un script / alias) cuando desee editar su archivo confidencial. Esto minimizará el riesgo de un complemento malicioso o una característica defectuosa.fuente
.vimrc_secure
es independiente de.vimrc
(ya que hacer lo que dices le permite al usuario:e private file
[mantener así el archivo fuera del historial del shell también]), pero el usovim -u ~/.vimrc-incognito
no será fuente~/.vimrc
en absoluto, ¿correcto? Las alegrías de la privacidad no deberían tener el costo de una comodidad reducida (a menos que la comodidad sea fundamentalmente defectuosa a través de un complemento malicioso o una función con errores). Si bien debe haber un énfasis en el riesgo de incógnitas, seguramente, debe haber alguna forma de envolver condicionalmente su solución ...au BufRead * if &key != "" | setlocal nobackup noundofile ... | endif
debería hacer la magia por ti, y es imposible de olvidar.&l:cm != ""
todo esto?&cryptmethod
, que se refiere a esa configuración. Lal:
parte fue un error (usé mis poderes mod especiales para editar mi comentario). ¡Gracias por señalar eso!