Cuando intenté usar las teclas de flecha en modo de inserción en el vieditor, los siguientes caracteres se están insertando en el editor:
- porque ↓consigo B,
- porque ↑obtengo A,
- porque ←tengo D,
- porque →consigo C.
Por favor, ayúdame a resolver este problema.
text-editor
vi
bvb
fuente
fuente

Respuestas:
Si aún no tiene un
.vimrcarchivo en su directorio de inicio, cree uno usando esto:Agregue esta línea al principio del archivo:
Guarde el archivo y esto debería solucionar el problema por usted. :)
fuente
vilugar devim, tiene que hacer la misma configuración pero en el~/.exrcarchivo.Instale vim -> Esto solucionará el problema.
Hay muchos buenos tutoriales vim / vi en youtube, o en la web en general. Para su problema, vea aquí
Luego continúe abriendo archivos como de costumbre :
fuente
Con
vi, al hacer clic en iactiva el comando para Insertar texto.Este comando le permite insertar texto en su archivo.
Y a la derecha, al hacer clic:
Hasta que desactive este comando.
Para desactivar un comando en
vi: simplemente haga clic en EscY luego volverá a usar normalmente las teclas de flecha:
FYI, aquí hay algunos
vicomandos: deesta fuente .
:xReturn salir de vi , escribir el archivo modificado en el archivo nombrado en la invocación original:wqReturn salir de vi , escribir el archivo modificado en el archivo nombrado en la invocación original:qReturn salir (o salir) vi:q!Return salir de vi aunque los últimos cambios no se hayan guardado para esta llamada vi↓ mover el cursor hacia abajo una línea
↓ mover el cursor hacia arriba una línea
← mover el cursor hacia la izquierda un carácter
→ mover el cursor hacia la derecha un carácter
udeshacer lo que acabas de hacer; un simple alternar.rehacer lo que acaba de haceriinsertar texto antes del cursor, hasta EscpresionarIinsertar texto al comienzo de la línea actual, hasta Escpresionaraagregar texto después del cursor, hasta EscpresionarAagregar texto al final de la línea actual, hasta Escpresionaroabrir y colocar texto en una nueva línea debajo de la línea actual, hasta EscpresionarOabrir y poner texto en una nueva línea sobre la línea actual, hasta que se Escpresionerreemplace un solo carácter debajo del cursor (no es Escnecesario)cwcambie la palabra actual con un nuevo texto, comenzando con el carácter debajo del cursor, hasta que Escpresionexeliminar un solo carácter debajo del cursorNxelimine N caracteres, comenzando con el carácter debajo del cursordwelimine la sola palabra que comienza con el carácter debajo delCcambio del cursor (reemplazar) los caracteres en la línea actual, hasta que EscpresioneDeliminar el resto de la línea, comenzando con la posición actual del cursorddeliminar toda la línea actualNddeliminar N líneas, comenzando con la línea actual; por ejemplo, 5dd elimina 5 líneas,yycopia (tira, corta) la línea actual en el búferNyycopia (tira, corta) las siguientes N líneas, incluida la línea actual, en el búferppega las líneas en el búfer en el texto después la línea actual0(cero) mover el cursor al inicio de la línea actual (el que está con el cursor)$mover el cursor al final de la línea actualwmover el cursor al comienzo de la siguiente palabrabmover el cursor de regreso al comienzo de la palabra anterior:0Returno1Gmover el cursor a la primera línea del archivo:nReturnonGmover el cursor a la línea n:$ReturnoGmueva el cursor a la última línea del archivo/stringbuscar hacia adelante la aparición de la cadena en el texto?stringbuscar hacia atrás la aparición de la cadena en el textonpasar a la siguiente aparición de la cadena de búsquedaNmover a la siguiente aparición de la cadena de búsqueda en dirección opuestafuente
:help compatible: "Por defecto, esta opción está activada y los valores predeterminados de Vi se utilizan para opciones. Este valor predeterminado se eligió para aquellas personas que desean usar Vim como Vi y ni siquiera (quieren) saber acerca de la opción 'compatible' ".Para deshabilitar la impresión de letras al presionar flechas en el modo de edición, puede hacer lo siguiente
(cree un archivo si no existe) y luego agregue una línea
set nocompatibley guárdelo.fuente
:versionpara el orden de carga (también:h .exrco:h init) Supongo que alguien podría desear que se aplique una configuración tanto en vi como en vim, o podría ser pura fuerza de hábito.Hay tres modos en el editor vi, a saber:
Cuando abre un archivo, está en modo predeterminado. Ahora bien, si quieres ir a una posición específica en el texto, sólo tiene que utilizar las teclas de flecha o el uso h, j, k, lllaves. Tenga en cuenta que esto iba a funcionar sólo cuando no se ha pulsado i(o cualquier otro modo de entrada de comandos de entrar como a, A, I).
La razón de 'B' puede deberse a que las teclas de flecha en el modo de entrada no funcionan como teclas de flecha, así que solo presione Escpara ingresar al modo predeterminado en cualquier momento. Cuándo hacer el cambio a modo de entrada de prensa io a, y para navegar sólo tiene que pulsar ilas teclas principales y el uso de flecha o h, j, k, l.
fuente
Tuve exactamente el mismo problema, pero no solo en mi máquina local, sino también en las conexiones a través de masilla en una máquina sles en una máquina virtual Win7 sobre un receptor citrix. Tanto el host local como los hosts remotos se muestran después de que una reinstalación de Ubuntu tuvo exactamente el mismo problema.
Después de descubrir eso
Causa este extraño comportamiento de VI. ¡Instalé el paquete consola-datos que resuelve el problema!
fuente
Nota:
Hay buena información en las otras publicaciones, pero ninguna de las publicaciones intentó explicar por qué sucedió este comportamiento. Muchas personas están obligadas a tropezar con esto en el futuro. Además, ¿podría marcar esta pregunta como resuelta ya que cualquiera de las publicaciones anteriores probablemente lo ayudó?
Aquí hay una explicación :
Vi es un editor que existe desde hace mucho tiempo, con raíces en los sistemas Unix. Es una buena herramienta, pero se ha iterado y ahora hay una mejor. Vim fue escrito más tarde y es esa iteración. La gente comúnmente se refiere a vi como 'vim-minimal' y vim es una versión "mejorada" de vi. Puedes pensarlo así: vi es el núcleo y vim se expande sobre él.
Probablemente cómo descubriste el comportamiento :
Para que haya descubierto este problema, presionó " i " para ingresar al modo de inserción y luego utilizó las teclas de flecha para navegar por la línea correcta y editar el punto. Esto es lo que causó su problema inesperado de char.
Solución 1 o 2
1)
vi someFileMientras usa vi , primero muévase al punto de edición, luego ingrese al modo de inserción.2)
vim someFileSimplemente use vim desde el principio.No puedo enfatizar lo suficiente como para leer el manual (páginas de manual) o usar -h para obtener ayuda. Una vez que se ajusta a los patrones en el shell, las páginas man se convierten en su mejor amigo. Ejemplo:
man vioman vimValide que Vim esté instalado .
Abra una ventana de consola y ejecute:
dpkg --list | grep vimSi obtienes algo similar a esto, entonces puedes comenzar a usar vim.
Si el símbolo del sistema regresa sin nada, entonces vim is no está instalado. Use los ejemplos a continuación para actualizar sus repositorios y luego instale vim.
Si usa vi o vim solo cuando busca en Internet cómo arreglar algo y se olvida de escribir
vim, hay una manera de arreglarlo en el futuro. Te advierto que prestes atención. Puede usar un alias para sobrescribir vi con una referencia a vim para que, sin importar lo que escriba en un futuro poco frecuente, obtenga vim sin ese "¡Uy!" momento. Siempre puedes eliminar un alias más tarde.Tipo
vim .bashrc. Desplácese hacia abajo a la línea vacía con solo una~(o hacia cualquier otra línea que comience conalias(para que estén agrupadas) y luego presione la tecla i para ingresar al modo -inserción-. En su propia línea separada, ingrese lo siguiente:Presione
Escy luego escriba:wq. Ahora necesita volver a cargar el archivo. Escribasource .bashrcCualquier otro shell que se abra después de haber realizado estas ediciones cargará automáticamente el archivo .bashrc.fuente
Todas las explicaciones dadas son un poco extrañas. Tengo vi pero no vim instalado.
Comprobación de alternativas:
/etc/alternatives/vi→/usr/bin/vim.tinyAsí
viesvim.tiny, y lo usa/etc/vim/vimrc.tiny.Y en
vimrc.tinyti encuentras la siguiente línea:Que es casi lo único en este archivo. Tenga en cuenta que en
/etc/vim/vimrcél está utilizandonocompatible.Así que instale vim, o cambie el
vimrc.tinyarchivo, o cree uno propio~/.vimrcque debe contener la línea:fuente
~/.vimrcy configurarnocompatible: askubuntu.com/a/353944/158442 , o 3. editar un archivo del sistema. Solo la sugerencia de edición/etc/vim/vimrc.tinyes nueva y, sin embargo, las respuestas son extrañas al sugerir lo mismo que ellas.El editor vi tradicional no reconoce las teclas de flecha (... afair). Hay dos soluciones:
fuente
Esto también puede deberse a la
TERMvariable; configúralo por ejemplo así:fuente
En algunos sistemas, la
nocompatibleopción no está disponible o puede que no solucione el problema si un complemento rompe la funcionalidad de la tecla de flecha. Aquí hay una solución ...Edite el
.exrcarchivo para incluir las siguientes líneas:O bien, si el problema solo existe en el modo normal, puede cambiar
nmapy omitir lo siguientea, como sigue:y así.
Aquí están las combinaciones de teclas necesarias para producirlas (mostrando solo la primera):
Esto escapa del modo de edición, se mueve en la dirección deseada y vuelve a ingresar al modo de edición. Esto es necesario para superar Vi leyendo la secuencia de escape como una secuencia de <ESC> <O> <A> literal, etc.
Fuente: https://hea-www.harvard.edu/~fine/Tech/vi.html
fuente
Para VI crear o editar el archivo "~ / .exrc" o VIM crear o editar el archivo "~ / .vimrc" establecido o agregar en la línea.
En el momento de escribir este artículo, hay elogios sobre el segundo elemento más votado que se preguntan por qué su entrada no fue aceptada. La razón es que hay hosts que no permiten instalar otros editores. Incluso entonces, vim a veces tiene los mismos efectos, por lo que hay un montón de información utilizable de las dos entradas principales. Sin embargo, no puedo comentar con suerte, esto aclara las razones por las cuales ninguno de los dos es 100% correcto el 100% del tiempo.
fuente
En esta máquina tuve
make surequees el
last entry in ~/.vimrc. O al menos una de las últimas entradas, en particular, no se carga más plugin después.HTH
fuente
Por alguna razón, Ubuntu ha omitido la inicialización de envvar HOME para el usuario root en mi nuevo VPS 18.04. Si ese es el caso, vi no puede encontrar el archivo .vimrc. El problema no ocurre para usuarios normales (en / home /).
Para verificar la variable:
Si esto resulta en una línea en blanco, la variable no se establece. El problema desapareció después
Moví el comando al archivo /root/.bashrc (no sé dónde se configura normalmente).
fuente