Bazele Vim - Linux -% ifth1% 0% -% ifen1% 0% - Articole Director

Elementele de bază ale Vim

Rulați comanda
$ Man Vim

* Deschideți fișierul «httpd.conf»
* Deschideți caseta de căutare
* Introduceți în caseta de căutare «SSLVerif».
* Du-te la al doilea cuvânt al contului găsit
* Mutați cursorul la parametrul
* Înlocuiți parametrul la 1
* Salvați modificările
* Închideți fișierul

* / - Du-te în modul de căutare
* Klavisha [Enter] - Search“.
* N - Du-te la următoarea apariție a șirului de căutare
* W - Mutați cursorul la cuvântul următor
* R - Înlocuiți eticheta de sub cursor
* ZZ - Salvați modificările și a ieși

Aici am împărtășesc experiența mea în Vim'e. Se presupune cititorul este definit ca vi și vim, și este familiarizat cu elementele de bază ale unui sistem UNIX.

* „Normal“ - pentru a muta fișierul, ștergerea text și alte funcții de editare. Trecerea de la ea din orice alt mod:

, uneori, de 2 ori;

* „Mod de intrare“ - de introducere a textului. Rețineți că tastarea și ștergerea are loc în două moduri diferite. Trecerea la ea de la modul normal:

* „Mod căutare“ - Introduceți interogarea de căutare. Trecerea la ea de la modul normal

Vom descrie operațiile care pot fi efectuate pe fișierul în modul normal.

# Vi mamapapa.txt - deschis un fișier
# Vi mamapapa.txt ++ 11 - deschide fișierul și du-te la linia 11.
# Vi mama.txt papa.txt - mama.txt deschide fișierul, după ce a părăsit-l fișier papa.txt deschis
# Vi mama.txt papa.txt o- - deschide toate fișierele.

crearea fișierelor se face de către aceeași echipă. De fapt, crearea de fișier se întâmplă atunci când salvați.

Pentru a deschide sau pentru a crea un nou fișier recruta în mod normal,

Înainte de aceasta, trebuie să păstrați fișierul anterior
: W - salvează un nume de fișier existent
: W filename - salvează fișierul cu un nume nou

Mutarea unui fișier

Cel mai frecvent utilizate în cheile vi - cheile de circulație. Acesta este celebrul h j k l, corespunzând săgețile spre stânga, în jos, în sus și în dreapta. Săgețile sunt de lucru (dacă specificați terminalul corect). Puteți utiliza, de asemenea comenzi rapide de la tastatură:

* ^ Sau 0 ( „zero“) - la începutul liniei curente;
* $ - la sfârșitul liniei curente
* W - cuvânt dreapta
* B - un cuvânt la stânga
* W - la spațiul din dreapta
* B - la spațiul din stânga

*> - alineatul jos
* <— абзац вверх

* - pe pagina (ecran) in jos
* - pe pagina (ecran) de sus

* G - du-te la începutul fișierului
* G - du-te la sfârșitul fișierului
* G - du-te la o anumită linie

* / - Mergeți la
*? - la fel, dar uita-te înapoi
* N - căutare din nou
* N - repeta căutarea înapoi

Să presupunem că în fișierul nostru este scris următorul text:

Vinil, pe care le răspândit pe pâine, miere sau lapte condensat? -Și asta, și alta, și puteți, fără pâine! Ei bine, dacă nu faci nimic altceva nu vrei să ... - Ce, mai e ceva?

Dialog drăguț, dar oarecum deconectat. Să-l schimbe - pentru acest lucru trebuie să meargă la modul de introducere. Cel mai simplu mod - apăsarea «i» cheia din modul normal. Apoi, puteți trece în condiții de siguranță pentru a introduce text. Vom reveni la normal. Alte comenzi importante:

Desigur, toate în același timp să le memoreze greu, nici nu au nevoie. Vă asigur că, după un timp aceste echipe vor fi în cerere.

În cele din urmă am ajuns la principalul - modul de comandă. Amintiți-vă cum merge? ":". Shift-F, dacă în limba rusă.

Dacă vă aflați în modul de introducere, este necesar să se pre-press , pentru a reveni la modul normal.

ZZ - pentru a scrie fișierul și ieșiți (Dacă fișierul nu este modificat, acesta nu va fi înregistrat)

w - scriere fișier

sav nume de fișier - "Save As"

w! - scrie fișierul.

Această comandă poate ajuta, în cazul în care fișierul este deschis în modul (opțiunea -R) „read-only“, în cazul în care fișierul este blocat de un alt utilizator, sau nu are astfel de privilegii, sau chiar unele probleme. Când încercați să scrie fără „!“ Va fi emis un avertisment.

Dacă fișierul a fost modificat, nu vei reuși. În astfel de cazuri, este necesar să se adauge după comanda „!“:

q! - ieși din fișierul fără a salva modificările
: Qa! - din toate fișierele fără a salva modificările

Aproape toate comenzile vi accepte așa-numitul factor de repetiție. Pur și simplu pune, în cazul în care echipa în modul normal, specificați numărul, echipa a repetat de numărul de ori. De exemplu, comanda «j» mută cursorul o linie în jos - «3j» mută cursorul la rândul 3 în jos. „Rezultatul echipa Iprivet„După cum ați ghicit, este de a insera cuvântul“ salut „-“ 2iprivet"Insert" privetprivet“.

Există câteva lucruri pe care, fără editare cum ar fi tortura:
^ G - afișează informații despre un fișier

- du-te pe o linie număr
: Setați numărul - afișare numere de linie de pe stânga (: set nonumber - ascunde numerotarea)
: Set de folie - înfășurați linii lungi (: set nowrap - să nu transfere)
: Sy [ntax] on / off - comutator pornit / oprit syntax highlighting
: Schemă de culori - setați tema de culoare (care Nume temă, TAB funcționează ca auto-completare)
: H sau: ajutor - o listă de posibile ajutor (: exusage viusage.)

aduc capetele liniilor din dosar dos sau unix înseamnă, respectiv:
: Set = dos formatului fișierelor
: Set = unix formatului fișierelor

Setați dimensiunea tab-ul în 4 spații:
: Set ts = 4

sevă
Principalele diferențe față de vi

* Nelimitat undo / redo. (În a șaptea versiune adaugă copaci)
* Multi-fereastra.
* Suport pentru mai multe tampoane. (În a șaptea versiune adaugă un semn de carte)
* Subliniere sintaxa.
* Editați linia de comandă.
* Extensie din numele fișierului.
* Visual editare.
* Cross-platform.
* Interfață grafică cu utilizatorul (GUI).
* Modul de compatibilitate vi.
* Verificare ortografică

Du-te la începutul fișierului în Vim diferit de la Vi:
gg

Cuvântul de sub cursor

Du-te la următoarea apariție a cuvântului de sub cursor
*

Du-te la apariția anterioară a cuvântului de sub cursor

Du-te la definiția cuvântului de sub cursor
gd (go definiție)

Du-te la editarea fișierului (sub cursor trebuie să fie o modalitate)
gf (fișier go)

1. Marcați un început al blocului prin «v», «V» sau CTRL-V. Blocul este marcat cu un simbol care cursorul este pornit (implicit).
2. Mutați cursorul la capătul blocului dorit. Ultimul caracter va fi, de asemenea, incluse în blocul selectat.
3. Apelați comanda necesară.

«V» comandă este utilizat pentru a evidenția textul caracter cu caracter. Simboluri înainte și după cursorul într-un rând nu vor fi incluse în selecție. Este necesar în primul rând pentru a copia părți ale textului într-un rând.
«V» - pentru a evidenția textul linie cu linie.
CTRL-V - pentru a izola porțiunea dreptunghiulară a textului. La îndemână, dacă editați textul structurat.

Unix $ HOME / .vimrc
MS-DOS și Win32 $ HOME / _vimrc sau $ VIM / _vimrc

Fișierul de configurare este utilizat pentru a configura diferite aspecte ale comportamentului și aspectul VIM.

„Instalarea KEYMAP în conformitate cu Ctrl + ^ au trecut la vice-versa română și
set keymap = rusă-jcukenwin
„Default - aspecte latine
set iminsert = 0
„Implicit - aspect latin atunci când caută
set imsearch = 0
„Ignoră cazul atunci când caută
set IC
„Căutare Evidențiați
HLS set
„Utilizați căutarea incrementală
set este
„Text Lățime
set textwidth = 70
„Înălțimea minimă a ferestrei se lasa sa fie 0 (implicit - 1)
set winminheight = 0
„Face întotdeauna dimensiunea maximă a ferestrei active
set noequalalways
set winheight = 9999
„Set Courier font nou Cyr
set guifont = courier_new: h10: cRUSSIAN
„Configurarea în sine pentru a lucra cu cuvinte românești (la w, b, * să înțeleagă
„cuvinte românești)
set iskeyword = @, 48-57, _, 192-255
„Setați dimensiunea filei la patru spații
set ts = 4

Pentru mai multe informații despre fișierul _vimrc puteți introduce în comanda de linie de comandă Vim
: Vimrc Ajutor

Vim și dispunerea tastaturii Rusă

În modul normal, implicit Vim se așteaptă ca consola este în modul de introducere caractere latine. Dacă, de exemplu, modificați cu textul Vim în limba rusă, sau în codificări mixte (de exemplu, HTML-pagini în limba rusă), nevoia constantă de a comuta aspectul tastaturii sistem foarte repede te plictisesti. Există mai multe modalități de a rezolva această problemă.

metoda 1

Pentru a face scrisori românești pot fi introduse atunci când sistemul este în modul de dispunere de intrare de caractere romane.

Pentru a face acest lucru în fișierul de configurare Vim, numit .vimrc (sau _vimrc în Microsoft Windows), se adaugă următoarele linii:

set keymap = rusă-jcukenwin
set iminsert = 0

În plus, versiunea pentru Windows Vim în mod implicit configurat pentru a utiliza codificările tastatură care conțin caractere chirilice, cum ar fi CP1251 și KOI8-R (în versiunea pentru setare implicită Linux este corectă). Ca o consecință a acestui fapt, Vim la editarea textului românesc se ocupe în mod corespunzător muta echipa prin text, bazat pe cuvintele de căutare, cum ar fi w (înainte de un cuvânt), b (un singur cuvânt înapoi) * (găsit în textul cuvântului de sub cursor), și așa mai departe. n. pentru a seta Vim să funcționeze corect cu aceste comenzi indiferent de limba este suficientă pentru a adăuga fișier de configurare _vimrc următoarea linie:
set iskeyword = @, 48-57, _, 192-255

metoda 2

Pentru a face Vim să înțeleagă care tastele sunt apăsate, în cazul în care sunt incluse aspectul tastaturii din Rusia.

Pentru a face acest lucru, adăugați linia în .vimrc:

set langmap = oytsukengshschzhfyvaproldzheyachsmitbyu; `QWERTYUIOP [] asdfghjkl # 92;
; „Zxcvbnm # 92;. YTSUKEHGSHSCHZHFYVAPROLDZHEYACHSMITBYU;
QWERTYUIOP<>Asdfghjkl: # 92; „ZXCVBNM<>/

După aceasta, Vim va înțelege în mod normal, comenzile introduse de la tastatură incluse aspect rusesc.

Dacă locală UTF, că această metodă nu funcționează. Trebuie să alocați fiecare caracter individual:

harta e '
harta st q
hartă y w
hartă în e
hartă a r
harta e T
Harta y n
Harta r u
harta w i
harta u o
Harta de p
harta x [
harta b]
o hartă f
s s hartă
hartă în d
hartă și f
harta f g
harta p h
hartă a j
L k hartă
harta l d
Ei bine harta;
harta e '
harta I z
harta x h
harta cu c
harta m v
hartă și b
Harta T n
harta v m
b hartă.
harta st.
E harta


harta Q Q
harta D W
Noi harta E
Pentru a harta R
harta E T
Harta Y H
harta T U
W hartă I
Harta O ui
W hartă P
harta X <
map b>
O hartă F
Harta N S
Harta D
O hartă F
harta P G
Harta F H
Pe hartă J
O hartă K
O hartă L
Harta J.
E harta "
I harta Z
harta × X
Cu harta C
Harta M V
Harta & B
harta T N
Harta L M
harta B <
Harta U>

Căutare fișiere cu ieșire în listă

În Microsoft Visual Studio (și, eventual, alte IDE prea) există o caracteristică foarte la îndemână Găsiți în fișiere. Ea este în căutarea pentru un anumit șir de caractere sau o expresie regulată în fișiere în dosarul specificat și afișează rezultatele căutării într-o listă. Dacă faceți clic pe linia din listă se va deschide fișierul în locația în care a fost găsit șirul specificat. O caracteristică similară există în Vim. Pentru a găsi fișiere în rândul trebuie să tastați comanda:

vimgrep / Cale de căutare string / fișier | : COPEN

Un exemplu mai concret.

vimgrep / traducător / R: # 92; # 92 proiecte ** # 92; * txt |. : COPEN

Echipa vimgrep este în căutarea pentru un șir de caractere sau o expresie regulată închisă între caractere // într-un fișier sau fișiere și a rampelor de rezultatele într-un buffer special. Și, de asemenea, deschide fișierul cu primul rezultat găsit. comandă COPEN deschide tampon cu rezultatele căutării. Calea de fișier poate indica un singur fișier sau un set de fișiere. Că drumul indicat mai multe fișiere trebuie să utilizeze simboluri. și *. Semnificația acestor simboluri este aceeași ca linia de comandă a sistemului de operare. Pentru a căuta a mers pe toate subfolderele din folderul specificat sunt două asteriscuri ** pot fi utilizate. ** Exemplu de utilizare:
/usr/inc**/*.h

/usr/include/types.h
/usr/include/sys/types.h
/usr/inc_old/types.h

Conversia codificarea fișierului

Vim convertește automat fișierul pentru a deschide în codificarea curentă, menținând în același timp convertiți înapoi la codificarea fișierului. Current codificare dată de codificare variabilă (ENC). Codificarea fișierului este fileencoding variabilă (FENC). Codificarea fișier este detectat în mod automat atunci când îl deschideți (sau poate este preluată din setările de sistem?), Dar poate și seta manual. Pentru a salva fișierul în codificarea corectă, trebuie să întrebați înainte de a salva valoarea corespunzătoare a fileencoding variabile.

Pentru a vedea o listă a tuturor variabilelor disponibile fileencoding de codificare și tastați comanda:
: Ajutor de codificare valori

Exemplu: cum de a converti un fișier de la cp1251 la utf-8

* Deschideți un Vim gol
* Caracterul curent setat UTF-8 (dacă nu este deja setat implicit):

* Deschideți fișierul de interes. Când deschideți un fișier este convertit automat în utf-8
* Setați codarea UTF-8 fișier:

Vim cu traduceri ale textului, sau citiți documentația engleză

Dacă este convenabil să se combine, puteți obține un mediu bun pentru traducerea / lectura.

Asta ia?

Și orfografmometr: aceasta vraja în Wim, descarcă dicționar cu vim.org

Sunt interesat de posibilitatea unei liste drop-down, atunci când mutați mouse-ul cuvântul necunoscut pentru mine. În acest scop, după ce a citit mult coame (sau gugleniya) știu că, cu ajutorul sistemului de comandă poate efectua o acțiune, a concluzionat că în cazul în care o înregistrare. Scrie undeva în

Funcția! MyBalloonExpr ()
sistem de retur ( "mueller" v:. beval_text)
endfunction

set bexpr = MyBalloonExpr ()
set ballooneval
set balloondelay = 100

Funcția MyBallonExpr determinată care va genera string mueller [cuvânt care este căzut] și executa. Semnalul de ieșire al va emite o cutie drop-down „balon“, după 100 de milisecunde.

În mod firesc, în loc de mueller Puteți urma orice răspunsurile pentru a pune orice alt program care convertește textul.