Navegar por un archivo que contenga ^J en Vim
Frecuentes
Visto 144 equipos
0
Estoy escribiendo en un archivo txt de python. Cada vez que especifico una escritura \n en el archivo python, encuentro un ^J en el archivo txt, cuando se abre con Vi. Si abro con cualquier otro editor de texto, veo una nueva línea limpia. Los comandos estándar j y k no funcionan al intentar navegar por el archivo txt. ¿Alguna solución?
Estoy usando Ubuntu 12.04
2 Respuestas
1
Vim probablemente esté detectando el archivo como un archivo Mac Classic. Obtengo el mismo comportamiento al configurar mi vim en el modo de nueva línea Mac Classic. Primero, abra vim y verifique el valor de ffs
:set ffs?
Si ve 'mac' en cualquier parte de esa línea, ese es su problema. Para ver qué secuencia de comandos vim estableció esa opción, ejecute
:verbose set ffs?
Una solución es establecer ffs
manualmente en su .vimrc
set ffs=unix
Respondido 15 Feb 14, 20:02
Configuré ffs=unix manualmente en mi vimrc, y aún muestra fileformats=unix,mac. En cuanto a la fuente, se debe a un complemento llamado sensible. ¿Significa esto que el complemento anula el vimrc? - elexhobby
¿Has intentado iniciar vim con vim -u NONE
deshabilitar cualquier configuración? - Federico Pihl
unix,dos,mac
or unix,mac
debería funcionar bien; lo intenta unix
y dos
primero, y utiliza mac
solo si no \n
or \r\n
es encontrado. Ver :help fileformats
para más información. - Martín Tournoij
El complemento sensato tenía una línea: establecer formatos de archivo+=mac. Al comentar esa línea, el problema se resuelve. Sin embargo, no sé cómo afectará esto a cualquier otra cosa. Gracias OregonTrail. @Carpetsmoker: No funciona con Unix, Mac. - elexhobby
1
Probablemente te equivocaste fileformats
opciones de alguna manera para usar mac
caracteres de fin de línea, que es un solo \r
(usado solo con pre-OSX-macs, OSX usa finales de línea UNIX).
Puede comprobar su configuración escribiendo :set fileformat
. El valor predeterminado debe establecerse en unix
.
Respondido 15 Feb 14, 20:02
OP afirma que está usando Ubuntu 12.04
¿Sigue siendo válido entonces? Ubuntu en una Mac sigue siendo ubuntu, ¿o sí? - Federico Pihl
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas python vim file-io or haz tu propia pregunta.
windows, linux u otro entorno? - Fredrik Pihl
¿Y cómo se ve tu línea de python que escribe la línea en el archivo? Tal vez agregue un
strip()
para eliminar cualquier terminación de línea torcida antes de escribir - Fredrik Pihl^J es salto de línea, el carácter de nueva línea estándar en Unix. ¿Su .vimrc está configurado para actuar como si estuviera en un entorno solo de Windows? - OregonTrail
Su Ubuntu instalado en un macbook blanco (2007) - elexhobby
pastebin.com/m6upacgw Vimrc, si eso ayuda. - elexhobby