-
IT café
Új hozzászólás Aktív témák
-
doc
nagyúr
válasz Sk8erPeter #5021 üzenetére
a vim un. modalis editor, vagyis ket uzemmodja van: a 'normal' es az 'insert' mod
az elobbinel a lenyomott billentyuk parancskent mukodnek, tehat ha pl. ketszer megnyomod a d billentyut, akkor kitorli azt a sort, amin a kurzor all
insert modba eleg sokfelekeppen at lehet kerulni, pl. a c-vel es s-sel kezdodo parancsok vegrehajtas utan insert modba raknak, de lehet kozvetlenul is pl. az i paranccsal (vagyis az i billentyu megnyomasaval) a kurzor ele irni (ez ugyanaz mintha egy hagyomanyos editorban siman elkezdesz gepelni) vagy pl. az a parancs a kurzor utanra rak, ahova ugyanugy gepelhetsz (tehat ez a jobbra nyil majd gepelesnek felel meg), de vannak picivel trukkosebbek is, nagyon gyakran hasznalom pl. az I (vagyis nagy i, illetve SHIFT+i) parancsot, ami az adott sor legelejere viszi a kurzort es insert modba rak, vagy ugyanez az A csak a sor vegevel, de ott van pl. az o, ami az aktualis sor ala beszur egy ujat, az elejere viszi a kurzort es insert modba tesz (ez hagyomanyos editornal az END, ENTER -nek felel meg)
insert modbol visszaterni normalba az ESC vagy a CTRL-C billentyukkel leheta kezdok el szoktak kovetni azt a hibat, hogy az ido nagy reszet insert modban toltik, es csak a parancsok kiadasahoz mennek vissza normal modba aztan egybol vissza. ennel sokkal praktikusabb csak akkor insert modba kapcsolni, amikor tenyleg az kell
(egyebkent insert modbol is barmikor kiadhatoak a normal parancsok ha elotte nyomsz egy CTRL-O kombinaciot, ilyenkor a parancs vegrehajtasa utan megint insert modban vagy)
amiket leirtal, azok teljesen kozonseges roviditesek, vimben annyit hozol letre amennyi jol esik, nalam is be van allitva pl. az hogy a #i-bol #include-ot csinaljon, de kivetel nelkul az osszes altalad felsorolt rovidites is nagyon egyszeruen letrehozhato
ehhez un. parancs modba kell menni (na ezt nem is mondtam eddig) amihez a : billentyut kell lenyomni, ilyenkor kapsz lent egy sort ahova gepelhetsz, pl. az elso rovidites:
:abbrev cw Console.WriteLine();na lassan ossze is foglaljuk a vim legeslegalapvetobb funkcioit
ha mar itt tartunk, megemlitenem a makrozast, ami valami egeszen dobbenetes hatekonysagot tesz lehetove
nagyon sokszor kell pl. tobb soron egy adott muveletet vegrehajtani
tegyuk fel hogy van mondjuk egy .h file-od, felsorolva X db fuggvenydeklaracioval, es ezeknek akarod a torzset megcsinalni
pl:class akarmi
{
int getValami() const;
void setValami(int ertek);
bool init();
};ekkor csak annyi dolgot, hogy megnyitod a .cpp file-t, pl. a :vsplit akarmi.cpp paranccsal, amivel az ablak fuggolegesen kette lesz osztva, baloldalon a cpp, jobb oldalon a h file-lal
kijelolod a harom fuggvenydeklaraciot, kimasolod vagolapra, atmesz a masik ablakba, ott beilleszted
(pl. a legelso, a getValami soraban allva: Vjjy aztan CTRL-WW a masik ablakra valtashoz, itt p a beillesztes)
ezek utan elinditasz egy makrorogzitest. az angol ABC osszes betujere rakhatsz egy-egy makrot, mivel a rogzites parancsa a q, en altalaban a q makrot szoktam hasznalni amolyan gyors-makrokent
tehat elinditod a makrorogzitest a qq paranccsal (a masodik q betu a makro valasztott neve)
majd megcsinalod a fuggvenytorzset a kovetkezo paranccsal:
<<wiakarmi::<ESC>A<BACKSPACE><ENTER>{<ENTER>}<ESC>j
majd leallitod a makrorogzitest a q paranccsal. ilyenkor a q makroban mar benne van a fuggvenytorzs letrehozasa ahhoz a sorhoz, amin eppen allsz
vagyis csak annyi a dolgod hogy ketszer futtatod a makrot, es a maradek ket fuggveny is letrejon, szepen az osztalynevet elerakva, ahogy azt kell: 2@q. a parancsok ele szamot irva annyiszor hajtja vegre, a @ a makrofuttatas, a q pedig a makro neve
nyilvan ha nem 2 sorod van meg, hanem 60, akkor is ugyanigy mukodik, csak akkor 60@q lesz a parancs, es egyetlen pillanat alatt kesz is a 60 fuggvenyed es mindehhez nem kellett elmozditani egyik csuklodat sem, teljesen pihenteto az egesz[ Szerkesztve ]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Samsung Galaxy S21 Ultra - vákuumcsomagolás
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Készül a Galaxy S24 FE
- Google Pixel 6/7/8 topik
- Amazon Fire TV stick/box
- Azonnali informatikai kérdések órája
- 20 ezer új munkást visz Eindhovenbe az ASML
- Videó stream letöltése
- Ukrajnai háború
- Eredeti dizájnnal tér vissza idén a Nokia 225 4G
- További aktív témák...
- XBOX ONE/PS4/PS5/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!
- XBOX SERIES/PS4/PS5/XBOX ONE/NINTENDO SWITCH konzolt vásárolnék!
- PS5/PS4/XBOX ONE/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!
- Új Dobozos Lenovo Ideapad Flex 5 x360 Érintős Ultrabook Óriás Tab 16" -40% Ryzen 5 5500U 16/512 QHD
- PS4/PS5/XBOX ONE/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!