El mode d'entrada del Vi

Mode d'entrada del Vi
L'objectiu del mode VI no és substituir-lo completament per Vim, sí que dóna suport a totes les característiques de Vim. El seu objectiu és fer que la forma Vim d'editar el text -i els hàbits apresos a Vim- estiguin disponibles per als programes utilitzant l'editor de text com al seu editor intern.
El mode VI té com a finalitat integrar-se molt bé amb el programa i desviar-se del comportament de Vim, on prengui sentit. Per exemple, :w obrirà un diàleg desa en el mode VI de .
Per habilitar el mode d'entrada VI per a totes les vistes, aneu a Arranjament Configura ... Edició Mode d'entrada del VI. En aquesta pestanya podeu configurar les opcions per al mode d'entrada VI i definir i modificar l'assignació de tecles en aquest mode. El mode d'entrada VI també es pot alternar amb la configuració del Mode d'entrada del VI al menú Edició. (La drecera de teclat per omissió és Meta V -a on Meta usualment serà la tecla Windows-).
En el Mode Vi moltes ordres de teclat són sensibles a majúscules i minúscules, a diferència de la majoria de les dreceres de teclat del . Això vol dir que i i I són ordres diferents. Per introduir l'ordre y (copia), assegureu-vos que Bloq Maj està inhabilitat i premeu Y. Per introduir l'ordre Y (copiarà al final de la línia), Y.
Això no s'aplica a les ordres que utilitzen la tecla , ja que es poden introduir independentment del mode Bloq Maj i sense necessitat de prémer . No obstant això, algunes ordres requereixen l'ús de la tecla seguida d'una altra tecla que distingeix entre majúscules i minúscules. Per exemple, per introduir W, h (canviar a la vista dividida de la dreta) assegureu-vos que Bloq Majús. està inhabilitada, premeu W, deixeu anar, i després premeu H.

Incompatibilitats amb Vim
Hi ha només unes poques característiques del mode VI de que són incompatibles amb Vim (no comptant les coses que falten). S'enumeren a continuació juntament amb les raons respectives.
: U i R són per refer.
Vim: R és refer normal, U s'utilitza per desfer tots els canvis més recents en una línia.
La raó de tenir U actua com refer en el mode VI de la drecera R per omissió pren la funció de substituir de (cerca i substitueix). Per omissió, el mode VI no substitueix les dreceres de (això es pot configurar en Arranjament Configura ... Edició Mode d'entrada del Vi), per tant, una acció de refer necessita estar disponible com a tecla normal. A més, el comportament de l'ordre U en Vim no es correlaciona bé amb el sistema intern de desfer de , de manera que no seria trivial donar-ne suport.
: print mostra el diàleg Impressió.
Vim: print mostra les línies de l'interval donat igual que el seu predecessor, ed.
Ordres com :print estan disponibles no només en el mode de VI, però també per als usuaris que utilitzen regularment -per tant, l'ordre :print obre el diàleg d'impressió- seguint el principi de la menor sorpresa en lloc d'imitar el comportament de Vim.
: Y copia al final de la línia.
Vim: Y copia tota la línia, igual que yy.
El comportament del VI per a l'ordre Y és en la pràctica un error. Per ambdues ordres canvia i suprimeix, cc/dd farà la seva acció en la línia actual i C/D treballarà a partir de la columna del cursor fins al final de la línia. No obstant això, tant yy com Y copien la línia actual. En mode VI de Y copiarà al final de la línia. Això es descriu més lògicament en la documentació de Vim.
: O i o obre [compte] noves línies i posa en el mode d'inserció.
Vim: O i O obre una nova línia i insereix text [compte] vegades deixant el mode d'inserció.
Això es fa principalment com a conseqüència de trobar que molta gent es confon per aquest comportament en un canal d'irc sobre vim (#vim en freenode).

Alternar entre els modes
Mode normal us permet introduir ordres per navegar o editar un document, i és el mode per omissió. Podeu tornar-hi des de qualsevol altra mode prement .
Mode visual us permet ressaltar text en un document. La majoria de les ordres del mode normal també són vàlides en aquest mode. Podeu introduir-les prement v per seleccionar caràcters o V per seleccionar línies.
Mode d'inserció us permet editar directament el document. Podeu introduir prement i o una de les diverses altres ordres enumerades a continuació.
El mode d'ordre invoca la línia d'ordres de , la qual us permetrà executar moltes ordres disponibles en les implementacions de Vi, així com algunes específiques per a . Per a més informació sobre aquestes ordres, veure . Per usar-lo, premeu :, introduïu l'ordre, i premeu .

Integració amb les característiques de Kate
Al mode visual si entra automàticament en seleccionar text amb el ratolí. També si entra utilitzant funcions de Kate que seleccionen text, com Selecciona-ho tot (sigui des del menú o mitjançant A ).
Les marques de Vi i els punts de Kate estan integrats. Quan es crea una marca en el mode de Vi, es crea un punt de Kate corresponent i apareixerà al menú Punts. Per contra, quan es crea un punt de Kate, també es crea marca de Vi corresponent a la columna 0.

Ordres suportades en el mode normal/visual
a	Entra en el mode d'inserció, afegeix després del cursor
A	Entra en el mode d'inserció, afegeix després de la línia
i	Entra en el mode d'inserció, insereix abans del cursor
Insert	Entra en el mode d'inserció, insereix abans del cursor
I	Entra en el mode d'inserció, insereix abans del primer caràcter no en blanc a la línia
gi	Entra en el mode d'inserció, insereix abans de la ubicació, on el va deixar el darrer mode d'inserció
v	Entra en el mode visual, selecciona caràcters
V	Entra en el mode visual, selecciona línies
v	Entra en el mode visual, selecciona blocs
gb	Entra en el mode visual, torna a seleccionar l'última selecció
o	Obre una nova línia sota la línia actual
O	Obre una nova línia sobre la línia actual
J	Uneix línies
c	Canvi: Segueix un moviment per eliminar i entrar en el mode d'inserció
C	Canvi al final de la línia: Elimina al final de la línia i entrar en el mode d'inserció
cc	Canvi de línia: Suprimeix la línia i entra en el mode d'inserció
s	Substitueix caràcter
S	Substitueix la línia
dd	Suprimeix la línia
d	Segueix un moviment per eliminar
D	Suprimeix fins al final de la línia
x	Suprimeix el caràcter a la dreta del cursor
Suprimeix	Suprimeix el caràcter a la dreta del cursor
X	Suprimeix el caràcter a l'esquerra del cursor.
gu	Segueix amb un moviment per fer minúscules
guu	Torna a minúscules la línia actual
gU	Segueix amb un moviment per fer majúscules
gUU	Torna a majúscules la línia actual
y	Segueix un moviment per tirar (copia)
yy	Tira (copia) la línia
Y	Tira (copia) la línia
p	Enganxa després del cursor
P	Enganxa abans del cursor
]p	Enganxa després del sagnat del cursor
[p	Enganxa abans del sagnat del cursor
r	Segueix amb un caràcter a substituir el caràcter després del cursor
R	Entra en el mode substitució
:	Entra en el mode d'ordres
/	Cerca
u	Desfés
R	Refés
U	Refés
m	Estableix la marca (després es pot utilitzar per als moviments)
n	Cerca següent
N	Cerca anterior
>>	Línia amb sagnat
<<	Línia sense sagnar
>	Línies amb sagnat
<	Línies sense sagnar
F	Avança pàgina
B	Retrocedeix pàgina
ga	Imprimeix el valor ASCII del caràcter
.	Repeteix l'últim canvi
==	commandAlignLine
=	commandAlignLines
~	Canvia la caixa del caràcter actual
S	Divideix horitzontalment la vista actual.
V	Divideix verticalment la vista actual.
W, w	Canvia a la següent divisió a la finestra.
W, h W Fletxa esquerra	Va a la divisió esquerra de la finestra.
W, l W Fletxa dreta	Va a la divisió dreta de la finestra.
W, k W Fletxa amunt	Va a la divisió de sobre a la finestra.
W, j W Fletxa avall	Va a la divisió de sota a la finestra.

Moviments suportats
Aquests es poden usar per moure-us per un document en el mode normal o visual, o en combinació amb una de les ordres anteriors. Poden anar precedits d'un compte, el que indicarà quants moviments són apropiats de fer.
h	Esquerra
Fletxa esquerra	Esquerra
	Esquerra
j	Avall
Fletxa avall	Avall
k	Amunt
Fletxa amunt	Amunt
l	Dreta
Fletxa dreta	Dreta
Espai	Dreta
$	Final de línia
Fi	Final de línia
0	El primer caràcter de la línia (Columna 0)
Inici	El primer caràcter de la línia
^	Primer caràcter no en blanc de la línia
f	Segueix el caràcter per anar a la dreta del cursor
F	Segueix el caràcter per anar a l'esquerra del cursor
t	Segueix el caràcter per anar a la dreta del cursor, situa el cursor sobre el caràcter abans que
T	Segueix el caràcter per anar a l'esquerra del cursor, situa el cursor sobre el caràcter abans que
gg	Primera línia
G	Última línia
w	Paraula següent
W	Paraula següent separada per un espai en blanc
b	La paraula anterior
B	La paraula anterior separada per un espai en blanc
e	Final de la paraula
E	Final de la paraula separada per un espai en blanc
ge	Final de la paraula anterior
gE	Final de la paraula anterior separada per un espai en blanc
|	Segueix un número de columna per anar a la columna
%	Segueix un element per anar a aquest element
`	Marca
‘	Primer caràcter d'espai no en blanc de la línia la marca està en
[[	Claudàtor d'obertura anterior
]]	Claudàtor d'obertura següent
[]	Claudàtor de tancament anterior
][	Claudàtor de tancament següent
I	Va endavant cap a la següent ubicació.
O	Va enrere cap a la ubicació anterior.
H	Va a la primera línia de la pantalla.
M	Va a la línia del mig de la pantalla.
L	Va a l'última línia de la pantalla.
%percentatge	Va al percentatge especificat del document.
gk	Va cap a dalt una línia visual (quan s'usa l'ajust de línia dinàmic).
gj	Va cap a avall una línia visual (quan s'usa l'ajust de línia dinàmic).
Fletxa esquerra	Mou una paraula a l'esquerra
Fletxa dreta	Mou una paraula a la dreta

Objectes de text suportats
Aquests es poden utilitzar per seleccionar certes parts d'un document.
iw	Paraula interior: Paraula incloent-hi l'espai en blanc
aw	Una paraula: Paraula excloent l'espai en blanc
i"	Cometes dobles (") anteriors per a les properes cometes dobles, incloses les marques de cometes
a”	Cometes dobles (") anteriors per a les properes cometes dobles, excloses les marques de cometes
i'	Cometes simples (') anteriors per a les properes cometes simples, incloses les marques de cometes
a'	Cometes simples (') anteriors per a les properes cometes simples, excloses les marques de cometes
i(	Parèntesi d'obertura anterior [(] al següent parèntesi de tancament [)], incloent-hi els parèntesis
a(	Parèntesi d'obertura anterior [(] al següent parèntesi de tancament [)], excloent els parèntesis
i[	Claudàtor d'obertura anterior [(] al següent claudàtor de tancament [)], incloent-hi els claudàtors
a[	Claudàtor d'obertura anterior [(] al següent claudàtor de tancament [)], excloent els claudàtors
i{	Claudàtor d'obertura anterior [{] al següent claudàtor de tancament [}], incloent-hi els claudàtors
a{	Claudàtor d'obertura anterior [{] al següent claudàtor de tancament [}], excloent els claudàtors
i<	Abraçadora d'obertura anterior [<] a la següent abraçadora de tancament [>], incloent-hi les abraçadores
a<	Abraçadora d'obertura anterior [<] a la següent abraçadora de tancament [>], excloent les abraçadores
i`	Accent anterior (`) al següent accent, inclosos els accents oberts
a`	Accent anterior (`) al següent accent, excloent els accents oberts

Ordres permeses del mode d'inserció
D	Sense sagnar
T	Sagnat
E	Insereix des de sota
Y	Suprimeix una paraula
W	Suprimeix una paraula
U	Suprimeix la línia
J	Línia nova
H	Suprimeix els caràcters enrere
Inici	Mou al primer caràcter en el document
R n	Insereix el contingut del registre n.
O, ordre	Entra en el mode normal per a una única ordre.
A	Actualment incrementa el nombre seleccionat.
X	Actualment disminueix el nombre seleccionat.

L'objecte de text per comes
Aquest objecte no es troba en Vim. L'objecte de text coma fa que sigui fàcil modificar les llistes de paràmetres en llenguatges com C i d'altres llistes separades per comes. Bàsicament es tracta de la zona entre dues comes o entre una coma i un claudàtor. En la línia que es mostra a la il·lustració, es ressalten els tres rangs que aquest objecte de text pot abastar.
Un exemple d'objecte de text per comes
Un exemple d'objecte de text per comes
Els intervals de l'objecte de text per comes. Si el cursor està sobre , arg2, prement ci, (canvi de coma interior) que elimina arg2 doble i situa el cursor entre les dues comes en el mode d'inserció. Una manera molt convenient per canviar els paràmetres d'una funció.

Característiques que falten
Com ja s'ha esmentat anteriorment, l'objectiu del mode VI del no és donar suport al 100% de les característiques del Vim.