; TeX output 2003.04.04:1553_2 ~?Ձ[Iqqecss2074Vim;ColowmrEditorHOW-TO;(ViImprovedmetsyntaxcolorhighlighting) cG 1 ecrm1000AlU Dev(AlavoGorU V*asudevqan)HЃ ecti1000alavo}/or@yahoo.comV*ertaaldU doGor:qEllenBokhorstb}/okkie@nl.linux.orgv5.0,U 04maart2000&6 ecss1000DitdoGcumentiseenleidraadvoorhetsnelinstellenvandeVim-kleureneditoronderLinux-ofUnix-systemen.DeQwinformatiehierinzaldeproGductiviteitvaneenprogrammeurverhogenaangeziendeVim-editorondersteuningbiedthvoGorsyntaxcolorhighlightingenbGoldfontsdiede"leesbaarheid"vanprogrammeercoGdeverbetert.aDeproGductiviteitvanprogrammeurswordtmet2tot3keerverbGeterddoorgebruiktemakenvaneenkleureneditorzoalsVim.qDeinformatieinditdoGcumentgeldtvoorallebesturingssystemenwaaronderVimwerkt,*datzijn-WindowsU 95/NTenallesoGortenUnixzoalsLinux,Solaris,HPUX,AIX,SCO,Sinix,BSD,SCO,enz..(&Lt$ffffecbx1440Inhoudsopgacve]f ecbx10001In>troQductie}83ؼ1.1%InstallatieU vqanVimonderRedhatLinux++.荍.............................w31.2%InstallatieU vqanVimonderGNUDebianLinux(.荍..........................w31.3%VimU onderdiverseUnix-eninstalleren.荍..............................w41.4%VimU installerenonderMicrosoftWindows95/NT勍.荍........................w42Steldeinit-bQestandenv\|angvimin552.1%V*oGorbeeldU gvimrcbGestando.荍.....................................w52.2%XdefaultsU parameters.荍........................................w73KleurenSyn>taxinitbQestanden&[84VIMGebruik|!85VibQondgenotenpǗ95.1%CtagsU voGorESQL`.荍..........................................x?105.2%CtagsU voGorJavqascriptprogramma's,Korn,Bourneshells&.荍....................x?125.3%DebuggerU gdb.荍............................................x?136OnlineVIMhelpeR147VimHomepageenVimlinks%)158VimT utorialy158.1%VimU Hands-onT*utorialۍ.荍......................................x?158.2%ViU T*utorialsophetInternet.荍....................................x?16*_2 ~?GINHOUDSOPGAVEh2ՁV9ViT utorial/T16ؼ9.1%CursorU verplaatsingsopGdrachten.荍..................................x?169.2%Herhalingenk.荍.............................................x?199.3%V*erwijderenU vqanTekst!?.荍.......................................x?199.4%WijzigenU vqanT*ekst=?.荍.........................................x?209.5%Y*ankenU (kopiren)vqanT*ekst7.荍...................................x?219.6%FilterenU vqantekst.荍..........................................x?219.7%MarkerenU vqanRegelsenT*ekens.荍..................................x?229.8%BenoGemenU vqanBuers([.荍.......................................x?229.9%Substituties_.荍.............................................x?239.10%Diverse!ƍ"Commando'sbGeginnendmeteendubbelepunt"239.11%OptiesU Instellen.w.荍...........................................x?249.12%KeyU Mappingsw.荍...........................................x?249.13%WijzigenU vqanMeerdereBestanden .荍................................x?259.14%LaatsteU Opmerkingen.荍.......................................x?2610VimReferen>tiek\|aartTw2610.1%ViU status.荍..............................................x?2610.2%ShellU Commando'sKG.荍.........................................x?2610.3%OptiesU Instellen.w.荍...........................................x?2710.4%GebruikteU Notaties.荍.........................................x?2710.5%Onderbreken,U annuleren덍.荍......................................x?2710.6%Bestandsmanipulatie(#.荍........................................x?2810.7%V*erplaatsen&.荍.............................................x?2810.8%RegelU pGositioneringǍ.荍.........................................x?2910.9%PositionerenU vqandecursor/.荍.....................................x?2910.10%W*oGorden,U zinnen,paragrafenk.荍...................................x?3010.11%MarkerenU enterugkeren.荍......................................x?3010.12%CorrectiesU tijdenshetinvoGegen.荍..................................x?3010.13%AanpassenU vqanhetscherm.荍.....................................x?3110.14%V*erwijderenX.荍.............................................x?3110.15%InvoGegen,U wijzigenuߍ.荍.........................................x?3110.16%KopirenU enPlakken.荍........................................x?3210.17%OpGeratorsU (gebruikdubbelomeecttehebbenopregels).荍...................x?3210.18%ZoGekenU envervqangen덍.荍........................................x?3210.19%Algemeen.荍..............................................x?33C_2 ~?G1.8In>troQductieY̹3ՁV10.20%Regeleditor-opGdrachteno.荍.......................................x?33ؼ10.21)RAndereU opGdrachtenO.荍........................................x?3311GerelateerdeURL'sVѿ3412AndereF ormatenv\|anditDoQcumen>tI3413Cop>yrightNoticed;35(1Inctropductie:VimeditorstaatvoGor'ViIMproved'. EViisdepGopulairsteenkrachtigsteeditorindeUnix-wereld. EDe ViAiseenafkortingvoGorVi@" ecbi1000Vi#nsueiHelditor.BBVroegerkwasdeeiHersteeditoropdezeplaneeteenriHegeleditorgenaamd'eiHd'(en'ex').xDeVi#nsueleeditorzoalsViwaseenreusachtigeverbeter-ing~inveriHgelijkingmetregeleditorsals'ed'(of'ex').j{Deeditors'ed'en'ex'zijnnogsteedsbiHeschikbaar$onderLinux,zie'maneiHd'en'manex'.EengoiHedeeditorzaldeproductiviteitvandeprogrammeurverbeteren.VimbiedtondersteuningvoiHorNcolorsyntaxhighlightingvanprogramma-codeentevensbenadrukkingdoorgebruiktemakenivanverschillendefontsalsnormaal,z(vetofcursief.5EenkleuriHeneditorialsVimzaldepriHoductiviteitTbijhetpriHogrammerenTmeteiHenfactor2tot3verhogen!!\ProgrammeurskunnendeciHode"veelsnellerlezenaangeziendesyntaxvandecodeinkleurenopgelichtwordtweergegeven.#]!N ecbx12001.1Installatiev@ anVimonderRedhatLinuxInstalleiHer$devolgendeRPM-packagesomVimonderRedhatLinuxteinstalleren-F7ffG)`qL ectt1000rpm?-ivim*.rpmOF?gebruikdit-)`rpm?-ivim-enhanced*.rpm)`rpm?-ivim-X11*.rpm)`rpm?-ivim-common*.rpm)`rpm?-ivim-minimal*.rpm rffGJexkaneiHenlijsttezienkrijgenvandebestandendiehetrpm-packagevanviminstalleertmet-TffG)`rpm?-qa|grep^vim|awk'{print"rpm-ql"$1}'|/bin/sh|lessffGen hierdoiHorheen bladerenmetj,k,CTRL+f,CTRL+D,CTRL+B,CTRL+UofdoiHorgebruikte$makenvandepijltjestoiHetsen,pageup/downtoetsen.R'Zie'manless'.#]1.2Installatiev@ anVimonderGNUDebianLinuxVoiHorBdeinstallatievanVimonderDebianLinux(GNUBLinux)logjeinalsrootenwanneerje$biHentverbondenmethetinternettypeje:F7ffGS!_2 ~?G1.8In>troQductieY̹4ՁVapt-get?installvimvim-rt kffG HiermeiHebzaldelaatsteversievanvimwordengedownload,rgenstalleerdengecongureerden zal_Ihet't.debbiHestanddatwerdgedowload,mwordenverwijderd.Heteerstopgesomdepackageiskvim,}destandaariHdeditor,}gecompileerdmetX11-ondersteuning,}vim-rtisdevimruntime,het$biHevatallesyntax-enhelpbestanden.#e1.3VimonderdiverseUnix-eninstallerenDownloiHad=vooranderevariantenvanunix,D&zoalsSolaris,D&HPUX,AIX,Sinix,SCO=hetbriHon-ciHode$bestandffG4)`zcat?vim.tar.gz|tar-xvf-)`cd?vim-5.5/src)`./configure?--enable-gui=motif)`make)`make?install pffGoK1.4ViminstallerenonderMicrosoftWindows95/NTVoiHor$Windows95/NTmoetjeTWEEzip-bestandendownloaden.'@Ɍ cmbsy10Runtime$ondersteuningsbiHestandvim*rt.zipKʍ@Vim$opiHdrachtenbestandvim*56.zip.R'HierisdeVim-versie5.6&Haald$dezetweiHezipbestandenopvanaf-@De$homepiHagevanvim: N@Een$mirriHorsiteinUS:In&Pak1dezip-biHestandenuitmetbehulpvanWinzipb.PBeidezip-bestanden (vim*rt.zip$envim*56.zip)moiHetenindezelfdedirectory,bvinc: !", cmsy10nvimwordenuitgepakt.ؼStel$deomgevingVIMininautoiHexec.bat$enplaatsdaarindezeriHegel$-ÉffG&Eset?VIM=c:\vim\vim56 EffG VimzoudaarnaarmoiHetenverwijzendaarwaarjedevim56directoryinstalleerde.H"JekuntjePATH$oiHokzoinstellendathetpadnaargvim.exeerinvoorkomt.MoiHgelijkmoetjeuitloggenenweerinloggenomjeomgevingintestellen. TypachterdeMS-DOS$priHompt-ÉffGPset?vim pffGH]En$jezoumoiHetenzien:R'VIM=c:nvimnvim56Maakt eiHensnelkoppelingaanopjedesktopdoorteklikkenenslepenvanuitc:nvimnvim56ngvim.exe.KopieiHerThetbestandgvimrc_examplenaar$VIMn_gvimrc.Inmijngeval$isditc:nvimnvim56n_gvimriHc.`ؠ_2 ~?G2.8Steldeinit-bQestandenv\|angvimin5ՁV2StelG\deinit-bpestandenvangviminJeMOEThetbiHestandgvimrcnaarjehomedirectorykopirenomdesyntaxcolorhighlighting te(activeriHen.^wHierdoorzalookhet"Syntax"Menumetdegvim-opdrachtwordengeplaatst.^wJekunt:ophetSyntax-MenuklikkenendevantoiHepassing:zijndetalenseleiHcteren,zoals:C++,Perl,$Java,SQL,ESQLenz..XffGcd?$HOMEcp?/usr/doc/vim-common-5.3/gvimrc_example X~/.gvimrc &ffGCommentaarriHegelsTPbeginnenin.gvimrcmetdubbeleaanhalingstekens(").Jekuntgvimaan-piHassen,doorhetwijzigenvanhetbestand$HOME/.gvimrcendaardevolgenderegelsinplaat-sen$-ffffGF"Deze?regeliscommentaar....ndiemetdubbeleaanhalingstekensbegint"?Hetbesteishetbold-font,probeerzeallemaalenkiesernuit....set?guifont=9x15bold"set?guifont=8x13bold"set?guifont=7x14bold"set?guifont=7x13bold""Beslist?aanteradendetabtoetsenop4intestellen.set?tabstop=4set?shiftwidth=4"Het?tegengesteldeis'setwrapscan'bijhetzoekennaarstrings....set?nowrapscan""Het?tegengesteldeisnoignorecaseset?ignorecaseffGVHet$woriHdjetenzeersteaanbevolendetabstopenshiftwidthop4intestellen.ؼDetabstopishetaantalspiHatiesdatdoorTABzalwordengeplaatstalsjemetgvimaanhetwerken;biHent.*Deshiftwidthishetaantalspatieswaarmeederegelszullenwordenverschovenbij;gebruikvande" b> cmmi10>>f"<ffG)`bash$?xlsfonts|less)`bash$?xlsfonts|grep-ibold|grepx)`bash$?manxlsfonts ;ffG㌍2.1Vo_orbeeldgvimrcb_estandJekuntdeinstellingen,zoiHalskleuren,bold/normalefontsinhet$HOME/.gvimrcbestandwijzigen.+XHetHworiHdttenzeersteaanbevolendatjedeachtergrondkleuropqL ecit1000lichtgeelofwitmeteiHenVzwartevoorgrondinstelt.Ergonomenzeggendatdebesteachtergrondkleurlichtgeelofwit$meteiHenzwartevoorgrondis.R'Wijzigdaaromalsvolgtdevariabele'guibg':XffGjՠ_2 ~?G2.8Steldeinit-bQestandenv\|angvimin6ՁV)`highlight?Normalguibg=lightyellow &ffGHetTvoiHorbeeldgvimrcvanuit/usr/doc/vim-common-5.3/gvimrc_exampleluidtalsvolgt(ver- taalde$versie):>ffGF"?Vim"?Eenvoorbeeldgvimrcbestand."?DeopdrachtenhierinwordenuitgevoerdwanneerdeGUIwordtopgestart.""?Kopieerhetvoorgebruiknaar">\voor?UnixenOS/2: X~/.gvimrc">voor?Amiga: Xs:.gvimrc" Xvoor?MS-DOSenWin32:$VIM\_gvimrc"?Zorgdatexterneopdrachtenviaeenpipeinplaatsvaneenpseudo-ttywerken"set?noguipty"?stelhettegebruikenX11-fontin.Zieonderunix/linux'manxlsfonts'."?setguifont=-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1set?guifont=8x13bold"set?guifont=9x15bold"set?guifont=7x14bold"set?guifont=7x13bold""Beslist?aanteradendetabtoetsenop4intestellen.set?tabstop=4set?shiftwidth=4"Het?tegengesteldeis'setwrapscan'bijhetzoekennaarstrings....set?nowrapscan""Het?tegengesteldeisnoignorecaseset?ignorecase"?Steldeopdrachtregelinop2regelsset?ch=2"?shift-insertwerktnetalsinXtermmap?map!?"?DoeditalleenvoorVimversie5.0enlater.if?version>=500 X"?Ikvind'tprettigalsstringsinCcommentaarwordtopgelicht Xlet?c_comment_strings=1 X"?Schakelsyntaxhighlightingin. Xsyntax?on"?Schakelzoekpatroonhighlightingin.u_2 ~?G2.8Steldeinit-bQestandenv\|angvimin7ՁVset?hlsearch "?VoorWin32versie,"K"zoekthetsleutelwoordineenhelpbestand"if?has("win32")" Xlet?winhelpfile='windows.hlp'" Xmap?K:execute"!startwinhlp32-k".winhelpfile"endif"?Verbergdemuisaanwijzertijdenshettypenset?mousehide"?Stelfraaiekleurenin"?achtergrondvoornormaletekstislichtgrijs"?Tekstonderdelaatsteregelisdonkergrijs"?Cursorisgroen"?Constantenwordennietonderstreeptmaarhebbeneenietslichtereachtergrond Xhighlight?Normalguibg=grey90 Xhighlight?Cursorguibg=Greenguifg=NONE Xhighlight?NonTextguibg=grey80 Xhighlight?Constantgui=NONEguibg=grey95 Xhighlight?Specialgui=NONEguibg=grey95endif ffffGZieoiHokhetvoorbeelbestandvimrcin/usr/doc/vim-common-5.3/vimrc_exampledatvooron-der$deciHonsolewordtgebruikt#J2.2XdefaultsparametersJe$kunteiHenaantaleigenschappenvanViminhetbestandXdefaultsplaatsen.ؼWҏAARSCHUWING!!LWAARSCHUWING:OPlaatshierinnietdeVim*geiHometry;eIhetzalhetmenu$vangvimopbriHeken,gebruikhiervoorindeplaatsVim.geometry.Wijzig$hetbiHestand$HOME/.Xdefaultsenplaatshierindevolgenderegels:>ffGF!?GVimgreatColors.Vim*useSchemes:/= allVim*sgiMode:>trueVim*useEnhancedFSB:>\trueVim.foreground:/= Black!Vim.background:)`lightyellow2Vim*background:/= white!?GebruikGEENVim*geometry,ditzaldemenu'sopbreken,gebruikinplaats!?daarvanVim.geometry.EenasterikstussenVimengeometryisniettoegestaan.!?Vim.geometry:widthxheightVim.geometry:9d88x40!Vim*font:I{h-misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-15-*5Vim*menuBackground:?yellowVim*menuForeground:?black &ffG|K_2 ~?G3.8KleurenSyn>taxinitbQestanden$8w8ՁVDit$heiHefteectnahetintikkenvan-XffG)`xrdb?-merge$HOME/.Xdefaults )`man?xrdb ffffGJe$kuntoiHokhetbestand/.gvimrcwijzigenomdeachtergrondkleurenteveranderen.>ffG)`gvim?$HOME/.gvimrcDe?besteachtergrondkleurislichtgeelofwit.highlight?Normalguibg=lightyellow &ffG퍍3KleurenG\SynctaxinitbpestandenInplaatsvangebruiktemakenvanhet"Syntax"menukunjehetsyntax-biHestandookhandmatigbiHewerken.QWijzig"hetbestandmetgvimenachterde:Q.(dubbelepunt)opdrachtgeefjede'so'opiHdracht.R'Bijvoorbeeld$-XffGF)`gvim?foo.pc)`:so?$VIM/syntax/esqlc.vimffGDesyntaxsouriHce-bestandenstaanin/usr/shariHe/vim/syntax/*.vim.Vimondersteuntmeerdan120verschillendesyntax-biHestandenvoorverschillendetalenzoalsC++,PERL,VHDL,Javascript,...R'enzovoiHort!!ؼIeiHderisyntaxbestandondersteunteenstandaardnaamvoordebestandsextensie,Uhetsyntaxbe-standvoiHorJavascriptbijvoorbeeld,ondersteuntdeextensie*.js.DMochthetjegebeurendatjeeiHenLandereextensiegebruiktdieeenconictveroorzaaktmeteenanderstandaardsyntaxbe-standczoiHalsbijhetplaatsenvanJavascriptineen*.htmlbestand,rdanMOETbjedeopdracht:so$VIM/syntax/javascript.vimgebruiken.яDebiHestemethodeiseensoftlinkaantemakenzoiHalsffffGln?-s$VIM/syntax/javascript.vimjsgvim?foo.html(...ditbestandbevatjavascriptfunctiesenHTML):so?jsffG퍍4VIMG\GebruikJe:kuntVimintweiHemodigebruiken-阀nmetGUI endeanderezonderGUI.OmdeGUIte$gebruikengeiHefjedevolgendeopdracht-XffGF)`gvim?foo.cppffGVOm$deniet-guimoiHdustegebruikentikjein-ffGF)`vim?foo.cpp OF?plainvanillamodus)`vi?foo.cpp j_2 ~?G5.8VibQondgenotenn+9ՁVffGnnHetRistenzeiHersteaanteradendatjealtijdgebruikmaaktvangviminplaatsvanvim, aangezien$deGUImoiHdemetkleurenjeproductiviteitbeslistzalverbeteren.ؼDe$GUImoiHdevoorzietinhetvolgende-썍@Je$kuntdetekstmetdemuismarkeriHenomteknippen,kopiren,enplakken. ,@JekuntdeMenubiHalkmetdeFile,Edit,Window,Tools,SyntaxenHelpknoppenitemsgebruiken.@InrdenabijetoiHekomstvangvimzaleentweedemenubalkdelijstmetdetewijzigenbe-standen alshieriHonder-CVffGs)`:tag?voorbeeld_functie ffGHiermeiHe$zaldecursoropdeeersteregelvanvoorbeeld_functie()wordengeplaatst.AlskjebinnendefunctienaareiHenregelmetdenaamvandefunctiewiltspringen,plaatsjeOdecursordiriHectOvoordenaamvandefunctieendrukjeopCTRL+](druktegelijkertijd J_2 ~?G5.8VibQondgenoteni{10ՁVopNdeciHontrol-toetsNenlinkerblokhaak),XhieriHdoorNzaljeautomatischdiriHectNrechtsvanderegel teriHechtkomen$waardefunctiebiHegint!!XffGS//?voorbeeldcodeSswitch(id_number)?{} Case?1:if?(foo_function(22,"abcef")==3)0^0|0|0|^zPlaats?decursorhier(directvoorfoo_function)endrukopCTRL+]^zHierdoor?zaljenaardefunctiemetdenaam"foo_function"gaan.^zDruk?opCTRL+tomnaardezeregelterugtekeren. &ffGDrukpopCTRL+t(ContriHol-toetspenletter't'samen)omterugtegaannaardeaanriHoependeriHegel.Je3kblijftdeCTRL+tindrukkenomterugtegaanennaardeeiHersteregeltegaanvanwaarjedenavigatiebiHegon.5DatwilzeiHggendatjedeCTRL+]inkanblijvendrukkenendandeCTRL+t omterugtegaan.c#JekuntditzovaakherhalenalsjewiltvoiHorvolledigenavigatiedoiHor$deCofC++functies.#J5.1Ctagsvo_orESQLAiHangezien{*ctagsdeEmbeddedSQL/C{(ESQL)taal{*nietdirectondersteunt,kanhetvolgendescript woriHdengebruiktomtagsvooresqlaantemaken.lESQL/C BzijndatabaseSQL BopdrachtenembiHedded)binnende"C"priHogramma's.|Oracle's)ESQL/CwordtPro*CgenoemdenSybase,Informix$heiHeftESQL/CenPostgreSQLheefthetproduktcpg".ؼBewaar$ditbiHestandals"sqltags.shnpaseena+rxtags_gen.shtoe. z#ffG#!/bin/sh#?ProgrammaomctagsvoorESQL,C++enCbestandenaantemakenESQL_EXTN=pctag_file1=tags_file.1tag_file2=tags_file.2which_tag=ctagsrm?-f$tag_file1$tag_file2tagsaa=`ls?*.$ESQL_EXTN`#echo?$aafor?iiin$aado)`#echo?$ii)`jj=`echo?$ii|cut-d'.'-f1`)`#echo?$jj)`if?[!-f$jj.cpp];then _2 ~?G5.8VibQondgenoteni{11ՁVSecho?"" Secho?""Secho?"***********************************************"Secho?"ESQL*.cppbestandenbestaanniet.."Secho?"Jemoetde*.cppvanuithet*.pcbestandgenereren"Secho?"metbehulpvandeOraclePro*Cpre-compilerofSybase"Secho?"ofInformixesql/cpre-compiler."Secho?"Envervolgensdezeopdrachtweeropnieuwuitvoeren"Secho?"***********************************************"Secho?""Sexit)`fi)`rm?-ftags)`$which_tag?$jj.cpp)`kk=s/$jj\.cpp/$jj\.pc/g)`#echo?$kk>sed.tmp)`#sed?-fsed.tmptags>>$tag_file1)`#sed?-e's/sample\.cpp/sample\.pc/g'tags>>$tag_file1)`sed?-e$kktags>>$tag_file1done#?HandelnualleC++/Cbestandenaf-sluitdeESQL*.cppbestandenuitrm?-ftags$tag_file2bb=`ls?*.cpp*.c`aa=`ls?*.$ESQL_EXTN`for?mmin$bbdo)`ee=`echo?$mm|cut-d'.'-f1`)`file_type="NOT_ESQL")`#?SluitdeESQL*.cppen*.cbestandenuit)`for?nnin$aa)`doSdd=`echo?$nn|cut-d'.'-f1`Sif?["$dd"="$ee"];then} file_type="ESQL"} breakSfi)`done)`if?["$file_type"="ESQL"];thenScontinue)`fi)`rm?-ftags)`$which_tag?$mm)`cat?tags>>$tag_file2done _2 ~?G5.8VibQondgenoteni{12ՁV mv?-f$tag_file2tagscat X$tag_file1?>>tagsrm?-f$tag_file1#?Moettagsbestandsorterenwilhetjuistwerken....sort?tags>$tag_file1mv?$tag_file1tags &ffG㌍5.2Ctagsvo_orJav@ ascriptprogramma's,Korn,BourneshellsHetimhieriHondergegevenshell-scriptkanwordengebruiktomtagsvooreenzeergrotevariteitaan,priHogramma'sgeschreveninvarietyofprogramswritteninJavasScript,.PHP/FI,scripts,KornSrshell, CS$shell,BourneSrshellenveleanderiHentegenereren.XDitiseenzeeralgemenemoiHdule.ؼBewaar$ditbiHestandalstags_gen.shenpaseenchmoda+rxtags_gen.shtoe. z#ffG#!/bin/shtmp_tag=tags_filetmp_tag2=tags_file2echo?""echo?""echo?""echo?""echo?""echo?"Genereertagsvoor...."while?:do)`echo?"Voerdebestandsextensieinwaarvoorjetagswiltgenereren.")`echo?-n" XBestandsextensiezouietsmoetenzijnalssh,js,ksh,enz...:")`read?ans)`if?["$ans"==""];thenSecho?""Secho?"Onjuisteinvoer.Probeeropnieuw!")`elseSbreak)`fidone\rm?-f$tmp_tagaa=`ls?*.$ans`for?iiin$aado)`jj=`echo?$ii|cut-d'.'-f1` _2 ~?G5.8VibQondgenoteni{13ՁV)`#echo?$jj )`cp?$ii$jj.c)`ctags?$jj.c)`echo?"s/$jj.c/$ii/g">$tmp_tag2)`sed?-f$tmp_tag2tags>>$tmp_tag)`\rm?-ftags$jj.cdonesort?$tmp_tag>tags\rm?-f$tmp_tag$tmp_tag2 % ffGEY5.3DebuggergdbJezousamenmetViuitgebriHeidgebruikmoetenmakenvangdb./JDebuggenishetbelangrijksteaspiHect vanpriHogrammeren aangeziendebiHelangrijkstekostenvaneensoftwareprojectinhetdebuggen$entestengaanzitten.ؼGebruikdetoiHo'gdb'voorhetdebuggenvanC++/Cprogramma's.HZie'mangdb'.JemoiHetjepriHogramma's$metdeoptie-g3ciHompileren$alsэ>rqL ectt0900gccN-g3foo.cfoo_another.csample.cVoiHor$heteenvoudiginstellenvanaliassen-"rStelNeenaliasininje~/.bash_profile =>raliasNgdb='gdb-directory=/home/src-directory=/usr/myname/src'"rGiveN->rgdbNfoo.cpp>rgdb>Ndir/hom2/another_src>rDitNzalaanhetbestandszoekpadwordentoegevoegd>rgdb>Nbreak'some_class::func"rHiermeeNzaldefunctienaamwordenaangevuldomjetijdtesparenbijhettypen...enzaluitvoerproducerenals->rgdb>Nbreak'some_class::function_foo_some_where(intaa,floatbb)'HettweiHemaalindrukkenvandeTAB-toetsisdevoltooingvandeopdrachtregel,”watjeheel veiHelktijdzalbesparenbijhettypen.'Ditis阀nvandebelangrijkstetechniekenbijhetgebruikvan$gdb.ؼVoiHor$onlinehulp-э>rgdb>Nhelp ="rGeeftNonlinehulp>rgdb>Nhelpbreakpoints"rGeeftNmeerdetailsoverbreakpoints.Het$instellenvanbriHeakpoints$enhetdebuggenэ>runixprompt>Ngdbexe_filename>rgdb>NbmainHiermeeNzaleenbreakpointindemain()functiewordengeplaatst>rgdb>Nb123HiermeeNzaleenbreakpointinregel123vanhethuidigebestandwordengeplaatst.>rgdb>NhelpbreakpointsGeeftNmeerdetailsoverbreakpoints.Ӡ_2 ~?G6.8OnlineVIMhelpc14ՁVVoiHor$hetanalyserenvandecoredumps+卑>runixprompt>Ngdbexe_filename rcore =>rgdb>Nbt"rGeeftNbacktracevanfunctiesenregelnummerswaarhetprogrammaingebrekebleef>rgdb>Nhelpbacktrace"rGeeftNmeerdetailsoverbacktrace.OJe$kuntoiHokdeGUI-versievangdb,genaamdxxgdbgebruiken.ؼMemory$leiHaktools-O@FriHeeware$ElectricFenceonlinuxcd,i@CommeriHcial$toolsPurifyIn@InsuriHe++In)6OnlineG\VIMhelpZie$deonlinemanpiHages.R'Typachterdeunixshell-promptmanvimenmangvim.Of$indegvimsessietikje:helpinvoiHordehelppagina.R'Zieookde8()VimTutiorial. _RVIMN-hoofdhelpbestand =0Manoeuvreren: rGebruikNdecursortoetsen,of"h"omnaarlinkstegaan,wz"j"Nomnaarbenedentegaan,"k"omnaarboventegaan,wz"l"Nomnaarrechtstegaan.wz":1"Nganaar1eregelvanpaginawz":n"Nganaarden-deregelvanpaginawz"g"Nganaardeonderkantvanpaginawz":/eenwoord/Nzoeknaar"eenwoord"indocSluitNditvenster: rGebruik":q".GaNnaaronderwerp: rPositioneerdecursoropeentagtussen||endrukopwzCTRL-].5WMetNdemuis: r":setmouse=a"omdemuisteactiveren(inxtermofGUI).wzDubbelklikNmetdelinkermuisknopopeentagtussen||.CgaNterug: rTypCTRL-TofCTRL-O."rSpecifiekeNhulp: rHetismogelijkdirectnaareenbepaaldhulponderwerpwzteNgaan,dooreenargumentaande":help"opdrachtwz|:help|Noptegeven.wzHetNismogelijkdecontextverdertespecificeren:WATYERVOORVOORBEELD8~wzNormaleNmodusopdrachten8(niets):helpNxwzVisualNmodusopdrachten!"v_:helpNv_uwzInsertNmodusopdrachten!"i_:helpNi_wzcommand-lineNopdrachten!":%p:help:quitwzcommand-lineNediting/= c_!":helpc_wzVimNopdrachtargumenten%p-:help-rҠ_2 ~?G7.8VimHomepageenVimlinks$&15ՁVwzoptiesq_P'%p:helpN'textwidth' =lijstNmetdocumentatie-bestanden:|howto.txt|hoeNhetmeestalgemenetedoen|intro.txt|introductieNVim|index.txt|alfabetischeNindexvooriederemode|autocmd.txt|+automatischNuitvoerenvanopdrachtenbijeenactie|change.txt|8verwijderenNenvervangenvantekst)=7VimG\HomepageenVimlinksDehomepiHagevanvimistevindenbij Xendemirror-siteindeUS ؼVimFҏAQisbij enbijEli's$VimPageopInDe$ViLiHoversHomePageInVim$RiHeferenceGuideopInVim mailinglistop enMailing$listariHchievenwordenbewaardop:ؼ@@@Vim$macriHo'sIn)=8VimG\T(utorialX8.1VimHands-onTutorialKijkvoiHordetutorialopeenLinux-systeemin/usr/doc/vim-common-5.*/tutor,gaonderan- deriHeunix-systemennaardedirectorywaarinvimisgenstalleerdenzoeknaardedocdirectory.XffG)`bash$?cd/usr/doc/vim-common*/tutor)`bash$?lessREADME.txt)`bash$?cptutor$HOME)`bash$?cd$HOME)`bash$?lesstutor ;ffG_2 ~?G9.8ViT utorialܹ16ՁV8.2ViTutorialsophetInternetY@PuriHdue$UniversityIn0@Quick$VitutorialIn@AiHdvancedVitutorial E$@TutorialsIn@TutorialsIn@Unix*worldonlinevitutorialU^@Univ$ofHawaiitutorialIn@InfoBoundIn@Cornell$UnivIn@Vi$LiHovershomepage: N@Zal$naSept2000,verplaatstworiHdennaarIn@BeiHginner'srCGuidetovi@vi$HelpleIn@vimFҏAQErbiHestaanveleViTutorialsophetinternet.lTikbijYahoiHo(Lycos,iexciteofHotbot)"ViTutorialnhetzoekveldende$zoiHekmachinezalveleverwijzingenretourneren.)9ViG\T(utorialInzdezetutorialbiHeschrijvenweeenaantal"gevorderde"viconceptenenopdrachten,٫zodatjedekriHachtvanvikuntlerenwaarderenendusbeslissenhoejejekennisvanviopdrachtenkuntuitbriHeiden.@Bijnah,j,k,enl? @IndeASCIIschariHacterset,staatCTRL-HsvoiHordebackspace(verplaatsingUYnaarlinks),aCTRL-JULvoiHorlinefeed(verplaatsingnaarbeneden),aen,kUYenlbiHevinden$zichdirectnaasthenj,duszoalsjekuntzienzijnzemakkelijkteonthouden.@0g:+("nul",xznieth")GanaarhetbiHegingvandehuidigeriHegel.-(gebruikgdecursortoiHetsenofhjklomnaareiHeningesprongentekstregelmeteenpaar"tekenserintegaan,/omditQendevolgendepiHaaropdrachtenuitteproberen.AlsjegeeningesprongenregelinjebiHestand}kuntvinden,Hmaakerdan阀naandooreenpaarspatiesaanhetbeginvaneenriHegel$intevoiHegen).@:zGa|naarheteiHersteniet-blancotekenvandehuidigeregel.Z(VooreeningesprongenriHegel,$hebben0eneenverschillendebetekenis).@$In:R'Ga$naarhetlaatstetekenvandehuidigeriHegel.@tCo:7Ganaar(vlakervoiHor)hetvolgendetekencindehuidigeregel.(Drukop0,GanaarriHegel>n.mAlsnnietworiHdtopgegeven,gadannaardelaatsteregelinhetbiHestand. (Probeer`=bijvoorbeeld15G_omnaarregel15tegaan. DeCTRL-G_opdrachttoiHont>denaamvanhetbestand,watstatusinformatieenhethuidigeregelnummer.ͻOmnaar$hetbiHegin$vanhetbiHestandtegaan:R'1G)@CTRL-dIn:R'ScriHoll$eenhalfschermomlaag(zienoot).@CTRL-uIn:R'ScriHoll$eenhalfschermomhoog(zienoot).@CTRL-fIn:R'Ga$eiHenschermverder(zienoot).@CTRL-bIn:R'Ga$eiHenschermterug(zienoot).@NoiHot:Dezekqvierscrolling/pagingopdrachtenkunnennietmetdeverwijder-,wijzigings-,kopieiHer-$oflteropdrachtenwordengebruikt.@/riHeg_exp ޖ:OGaKnaarhetvolgendevoiHorkomenvandereguliereexpressiereg_exp.Alsjede/intikt,woriHdtdecursornaardelinkeronderkantvanhetschermgeplaatstenwachtP}totdatjederiHeguliereP}expressietypt.xDrukopdeReturntoetsomdeinvoertebiHevestigen;viqzoektdaninvoorwaartserichtingnaarhetvolgendevoorkomenvanderiHeguliere|expressie.!Bijvoorbeeld,Btikin/degevolgddooreendrukopdeReturn.!HiermeeworiHdt+naarhetvolgendevoorkomenvan`de'gegaan,zmisschienonderdeeluitmakendvaneiHenwatlangerwoord(ander,weder,enz.).sAlsjede/intikt,gevolgddoordeReturn,zoiHekt$vinaardelaatstopgegevenreguliereexpressiewaarnaarwerdgezocht.@n dL:mHeiHeft&hetzelfdeeectalshetindrukkenvande/endeReturn;d.w.z.,Ղzoektnaarhet$volgendevoiHorkomenvandelaatstereguliereexpressiewaarnaarjezocht.w_2 ~?G9.8ViT utorialܹ19ՁV@?riHeg_exp y:Zoekvoorwaarts,#inplaatsvanterugwaarts. Alsergeenreg_expwerd opiHgegeven,Ǟzoekt hetnaardelaatsteriHeguliere expressiediewerdingevoerd.Hetzoekenmet$/en?R'"na"deonderkanten"voiHor"debovenkantvanhetbestandistoegestaan.@NIn:$Hetzelfdealshetindrukkenvan?R'endanopRiHeturn.#J9.2HerhalingenVeiHelKvandeverplaatsingsopdrachtendiehiervoorwerdenbesprokenkunnenwordenvoorafge-gaan&doiHoreengetalwaarmeewordtaangegevenhoeveelmaaldeernavolgendeopdrachtmoetworiHden$herhaald;deverplaatsingwordtgewoonhetgegevenaantalmalenherhaald:ؼ@3wIn:R'Ga$driewoiHorden$vooruit@5kIn:R'Ga$viertekensnaarbiHoven@3faIn:R'ZoiHek$dederdeopeenvolgendeaindehuidigeregel@6+In:R'Ga$zesriHegels$naarbiHenedenVoiHor$eenaantalopdrachtenhebbendeherhalingeneenspecialebetekenis:@4HIn:$GanaarriHegel$4ophetscherm(homeplus3)@8LIn:$GanaardeachtsteriHegel$vanafdeonderkantvanhetscherm.@3$In:R'Ga$naarheteindevandederiHderegelvanonderBijqeiHenaantalopdrachten(b.v.,)wordtdeherhalinggenegeerd;bijanderen(b.v.,/en?8) is$hetniettoiHegestaan#J9.3Verwijderenv@ anTekstWe"hebbiHengeziendatdddehuidigeregelverwijdert. hDitkanmeteenherhalingwordengebruikt:R'3dd$verwijdertdrieriHegels,$dehuidigeriHegel$ende2daariHopvolgenderegels.ؼDedopiHdrachtkanalseiHen"voorvoegsel"wordengebruiktmetdemeesteverplaatsingsopdrachtenhierbiHovenombijnawillekeurigestukkentekstteverwijderen. DeverplaatsingsopdrachtenworiHden%"targetspeciers"genoemd,alszeincombinatiemetdwordengebruikt.NpAandkaneiHen#herhalingwordenopgegeven.ck(Alsjehiermeegaatexperimenteren,>denkerdanaannaieiHdere$opdrachtdeuintetikkenomdeverwijderingongedaantemaken).ؼ@dwIn:R'Verwijder$"klein"woiHordvoorwaarts@d3wIn:R'Verwijder$drie"kleine"woiHorden$voorwaarts@3dwIn:R'Drie$keiHer,verwijder"klein"woordvoorwaarts@3d3wx:=DriekeiHer,verwijderdrie"kleine"woordenvoorwaarts(datwilzeggen,verwijderneiHgen$"kleine"woordenvoorwaarts)@d+In:R'Verwijder$huidigeendaariHopvolgenderegel@d/de N: IUVerwijdervanafhethuidigetekentotaan,3maarnietinclusiefhetvolgendevoiHorkomen$vanhetpatroon'de'_2 ~?G9.8ViT utorialܹ20ՁV@d$In:R'Verwijder$totaanheteindevanderiHegel@d0In:R'Verwijder$totaanhetbiHegin$vanderiHegel@d30GIn:$VerwijdervanafdehuidigeriHegel$totenmetriHegel$30@dGIn:$VerwijdervanafdehuidigeriHegel$totenmetdelaatsteriHegel@d1GIn:$VerwijdervanafdehuidigeriHegel$totenmetriHegel$1ؼGebruik$xomenkeletekensteverwijderiHen.R'aanxkaneenherhalingwordenopgegeven:ؼ@15xIn:R'Verwijder$hethuidigeende14daariHopvolgende14tekensx$isinfeitegewoiHoneenafkortingvand1;datwilzeggen,verwijder阀ntekenrechts.#J9.4Wijzigenv@ anTekstDecopiHdrachtisveriHgelijkbaarmetd,biHehalvedathetvinaarInsertmodelaatschakelen, waarbijhetmoiHgelijkwordtdeoorspronkelijke(ongewenste)tekstinietsandersteveranderen.ؼPlaatsB!bijvoiHorbeelddecursoraanhetbeginvaneenwoord(drukopwomnaarhetbeginvanhetvolgendewoiHordtegaan).vDrukdanopcwomdatwoiHordtewijzigen.OphetschermzalhetHlaatstetekeninhetwoiHordHdatworiHdtgewijzigd,Pwordenvervangendooreen$-symboolomdeJgriHensvandewijzigingaantegeven;6typeennieuwwoordin(jezulthetoorspronkelijkewoiHordophetschermoverschrijven)endrukdeESC-toiHetsinalsjeklaarbent.CWatjeinvoertmag$langerofkorterzijndanhetwoiHord$datworiHdtgewijzigd.Plaatsa,decursoraanhetbiHegina,vaneiHenregelbestaandeuitopz'nminstdriewoorden,IenpriHobeerc3womdriewoiHordentewijzigen.kPriHobeerc$omtotheteindevandehuidigeriHegeltenwijzigen.}KInallegevallenworiHdtdegrensaangegevenmet$daarwaardewijzigingalleeneeiHct$heeftopdehuidigeregel.AlsweiHenwijzigingopmeerdanalleendehuidigeregeleectheeft,verwijdertvideoorspronke-lijketekstvanhetschermenschakeltovernaarInsert-moiHde.Probeerbijvoorbeeldeensmetc3+Sdehuidigeen3volgenderiHegelsStewijzigen;EviverwijdertdevieroiHorspronkelijkeSregelsvanhetschermenschakeltovernaarInsert-moiHdeopeennieuweblancoregel.6DrukzoalsgewoiHonlijk$opdeESC-toetswanneerjeklaarbentmethetinvoerenvanjenieuwetekst.Een$aantalanderiHewijzigingsopdrachten:ؼ@ciHcIn:R'Wijzig$huidigeregel@5ciHcIn:R'Wijzig$vijfregels(huidigeendevolgendevier)@c/de:WijzigLvanafhuidigetekentotaan,V}maarnietinclusiefhetvolgendevoiHorkomen van$hetvolgendepiHatroon$datvoldoiHetaan'de'@c$In:R'Wijzig$totaanheteindevanderiHegel@c30GIn:$WijzigvanafdehuidigeriHegel$totenmetRiHegel$30@cGIn:$WijzigvanafdehuidigeriHegel$totenmetdelaatsteriHegel@c1GIn:$WijzigvanafdehuidigeriHegel$totenmetRiHegel$1_2 ~?G9.8ViT utorialܹ21ՁV9.5Yanken(kopiren)v@ anTekstDeyopiHdrachtkopieerteenkopievantekstnaareenbuer;degekopieerdetekstkandanmet p$ofPeldersinhetbiHestandwordengeplaatst(ofgeplakt).ؼDeRZeiHenvoudigstevormvanyankisyyomdehuidigeregeltekopiren;i,probeernaeenyyeenkopie;vandegekopieiHerde;regelnadecursorteplaatsen.=Naeenyy,Tkunjezoveelkopienvande gekopieiHerderegelmakenalsjewiltdoornaarbovenennaarbenedeninhetbestandtegaanen$opptedrukken.PriHobeer4voorhetkopirenvanmeerdereregelsbijvoorbeeld5yy(kopieerdehuidigeendevol-gendehvierriHegels).}phplaatsteiHenkopievandegekopieerderegelsnadecursor;dereeks5yyp"werkt"maarhetiswaarschijnlijknietwatjewilt.DePopiHdrachtisveriHgelijkbaarmetp,maarhet$plaatsteiHenkopievandegekopieerdetekstvoordecursor;probeerdereeks5yyP.AnderiHe$kopieer-opdrachten:ؼ@y3wIn:R'KopieiHer$driewoorden@y$In:R'KopieiHer$totaanheteindevandehuidigeregel@y1GIn:$KopieiHervanafdehuidigeregeltotenmetRegel1#J9.6Filterenv@ antekstDe{FlteriHopdracht!,verwachtdenaamvaneenUNIX-opdracht(wateenlterzoumoeten zijn),TengeiHeftdegeselecteerderegelsdandooraanhetlter,Twaarbijdegeselecteerderegelsin|devi-buerdanworiHdenvervangendoordeuitvoervanhetlteropdracht.wvi'svermogenombijnawillekeurigestukkentekstviaieiHdereUNIX-lterdoiHortegevenvoegt,zonderxtrakostenan$vieiHenongelofelijkeexibliteittoe.TerillustriHatiezaleenaantalvoorbeeldenvanhulpzijn.MaakinhetbestandeenregelmetsleiHchtsϏhetwoord'who'enabsoluutgeenanderetekst.5Plaatsdecursoropdezeregel,endrukop!!.DezeopiHdrachtisanaloiHogaandd,jciHc,ofyy,maarinplaatsvanhetverwijderiHen,wijzigenofX kopiriHenvandehuidigeregel,dlterthetdehuidigeregel.'Alsjedetweede!'indrukt,dgaatdecursornaardelinkerhoiHekaandeonderkantvanhetschermenwordteenenkele!)getoond,daarbijwachtendtotdatjedenaamvaneiHenlteropgeeft.hTypalslternaamshendrukopdeRiHeturn-toets.ash(deBourneshell)iseenlter!aHetleestvanstandaarinvoer,"verwerktzijnmeinvoiHer(datwilzeggen,voertopdrachtenuit)enstuurtdeuitvoer(deuitvoervandieopiHdrachten)'ZnaarstandaariHduitvoer.ZHet'ZlterenvanderegelmetwhoviashzorgtervoordatderiHegelmetwhowordtvervangendooreenlijstmetdehuidigegebruikersophetsysteem-diriHect$injebiHestand!PriHobeerditpriHocesteherhalenmetdate.=DatwilzeiHggen,maakeenregelmetnietsandersdanhet#woiHorddate,#plaatsdecursordanopdezeregel,#drukop!!shendeReturn-toets.QDeregelmet$dateworiHdtvervangendoordeuitvoervandedateopdracht.PlaatsdecursoropdeeiHersteregelvandeuitvoervanwho.-Telhetaantalregels.-Stelbijvoor-biHeeld?dathetaantalzesis.KSeleiHcteer?dandezezesriHegels?omviasorttelatenlteriHen;gdrukop6!!sortzenvervolgensdeRiHeturn-toets.pDezzesriHegelszzullenaansortworiHdendoorgegeven,ende$zesoiHorspronkelijke$regelswordendoordeuitvoervansortvervangen.De$lteriHopdrachtkanalleenopgeheleregelswordentoegepast,nietoptekensofwoorden.NoiHg$watanderelter-opdrachten(hierbetekent,eendrukopdeReturn-toets):_2 ~?G9.8ViT utorialܹ22ՁV@!/de7sort:wSorteiHervanafdehuidigeregeltotenmetdevolgenderegel met$daarinhetwoiHord$`de'.@!1GgriHepTde:AVervangvanafdehuidigeregeltotenmetRegel1doorslechtsdieriHegels$metdaarinhetwoiHord$`de'.@!Gawkh'fprint$1g':VanafdehuidigeriHegelhtotaanheteindevanhetbiHestand,het$vervangenvanieiHdere$regeldoorslechtsheteerstewoord.#J9.7Markerenv@ anRegelsenTekensJekuntriHegelsentekensmarkeriHenomtewordengebruiktalsdoelvoorverplaatsing,Hverwi-jdering,&wijziging,zeBtekopiriHen,&oflterenmetbehulpvandeopdrachtmc,&waarcstaatvooreiHen$kleineletter.ؼPlaatsdecursorbijvoiHorbeeldinhetmiddenvaneiHenwoordendrukopma.1Hiermeewordthetteken$onderdecursormetagemarkeiHerd.Verplaats1decursornunaarelders,5,weiHgvanhetgemarkeerdetekenennaareenandereregel(gebruikJdecursorpijlen,TJCTRL-uofietsderiHgelijks).TOmnaardegemarkeerderegelterugtekeriHen,4tik1je'ain.x(datwilzeggen,4eenenkelaanhalingstekenendaneena).xHierdoorwordtde$cursornaarheteiHersteniet-blancotekeninderegelgemarkeerdmetaverplaatst.Ga߅weiHerwegvandezeregel.;Drukop`a(datwilzeggen,\eenaanhalingstekenachterwaartsendaneiHena)omnaarhetgemarkeerdetekenterugtekeren.7DHierdoorwordtdecursornaarhetteken$gemarkeiHerdmetaverplaatst.MarkeringenworiHdenmeestalgebruiktincombinatiemetverwijderingen,wijzigingen,kopieer-of3 lteriHopdrachten.}bVerplaatsdecursorbijvoorbeeldnaareenandereregeldandiemetdemarkeringq)aendrukdanopd'a(d,EeiHenenkelaanhalingstekeneneena).7|Hiermeewordtdehuidige$riHegeltotenmetderegelgemarkeerdmetaverwijderd.PlaatsДdecursorinhetmiddenvaneiHenanderwoordendrukopmbomdemarkeringbintestellen.ŻVerplaatsdecursornu,*4weiHgvandatwoord(maarslechtseenpaarregels,*4zodatjeKmakkelijkkuntzienwatweaanhetdoiHenzijn),W_2 ~?G9.8ViT utorialܹ25ՁVNoiHot:Indezeopdrachtwordtiedercontrole-tekengetoondalsC,Cishierbijeenhoofdletter. CTRL-M>woriHdt>bijvoorbeeldgetoondalsM.Wanneerjedezeopdrachtinvoert,EzuljeookdeCTRL-vQ0tekenszoiHalsgetoond,Nnietzien:iedereCTRL-vonderdruktlouterdegebruikelijkespiHeciale}betekenisvanhetvolgendecontrole-teken,3dusalsjedereeksVM}intikt,3zuljeophet$schermsleiHchtsMzien.R'Indezeopdracht,isMdeReturn-toetsen[isdeESC-toets.>ffG)`:map?^A X55+?^$^V^Mcc^V^L^V^M^V^M^V^M^V^[ &ffG㌍9.13%}Wijzigenv@ anMeerdereBestandenJekuntmetvimeiHerderebestandenwijzigen,>dooralsargumentenopdeopdrachtregel,>meerderebiHestandsnamen$optegeven:XffGF)`vi?crocfatherw XwknightffGVTweiHeopdrachtenbeginnendmeteendubbelepuntwordengebruiktomjetussendemeerderebiHestanden$teverplaatsen:ؼ@:nGanaarhetvolgendebiHestandindeargumentenlijst(jemoetjewijzigingenopslaanmet$:wanderszalvieiHenfoutmeldingweergeven)@:riHew$GaterugengaweerverdermetheteerstebestandindelijstmetargumentenDe$:nen:riHewopdrachtenzijnwatonhandig,maarerzijneenaantalbelangrijkevoordelen:dePinhoudvanbiHenoemdePbuers(,["b,"c,etc.)պworiHdenPdoordebestandenheenonthouden,dusjekunt:nen:riHewmetpenPgebruikenomtekstheenenweertussenbestandentekopiriHen./OokRwordtdemeestrecentezoekstringvoorde/en?/opdrachtendoordebestandenheiHens3onthouden,dusjekuntnogalmakkelijkherhalendezoekopdrachteninmeerderebestandengebruiken.ؼPriHobeer%bijvoorbeeldhetvolgendeexperiment:SGaeerstuitvi,estartvidanopmetcrocenwknight$alsariHgumenten:XffG)`$?vicrocwknight &ffGVZoiHek$incrocnaar`de'/de$KopieiHer$dezeregelnaarbuera:yyGanunaarhetvolgendebiHestand(jehebtgeenwijzigingenaangebrachtaancroc,dusditwerkt)::n$ZoiHek$naardevolgenderegelmet`de',zonderhetopnieuwintikkenvandezoekstring:nPlaats$eiHenkopievanbueranadehuidigeregelinwknight:pL _2 ~?G10.8VimReferen>tiek\|aartMTy26ՁVGa$tweiHeregelsnaarbeneden,enkopieerdehuidigeregelnaarbuerb:ؼjj"byySla$dewijzigingeninwknightop:w$Ga$nuterugnaarcriHoc:riHew$ZoiHek$nogmaals,enplaatseenkopievanbuerbnadegevondenregel:n"bpSla$dewijzigingenopenbiHeindig$viZZ#J9.14%}LaatsteOpmerkingenDezetutorialwasbiHedoeldomwatvandemoiHgelijkhedenvanviteintriHoducerenwaarjein het[systeiHemhandboekvanvimisschienoverheenzoukijkenofdiewellichtnietinhethand-biHoek1wordenvermeld(opdeverschillendesystemenzijndehandboekenvanzeerverschillendekwaliteit).ؼJeNzultnahetlezenvandezetutorialgeiHenvi-expertzijn,XjmaarjekuntdemogelijkhedenvanviIdanweljuistinschatten.SleiHchtstijdenmoeitekunneneenvi-expertvanjemaken.Maarde$ecintieenalomvattenheidbiHetalenditopdelangetermijnterug.MoiHgelijk"hebjebeslotendatjevihaat.KHetzijzo!MaarweiHesjeerbewustvandatvidestandaariHdl0UNIXlteksteditorblijft-deenigeeditorwaarjeopkuntrekenendathetopiederUNIX-systeiHem:beschikbaaris-duszelfsalsjedevoorkeurgeeftomdagelijksietsanderste,gebruiken,woriHdtjegeadviseerdombekendtezijnmethetabsoluteminimumaanhetvi-materiaal$datindezetutorialisbiHehandeld.)=10%VimG\ReferenctiekaartX10.1%}VistatusVi$heiHeft3modi:ؼ "1.opiHdrachtenmodus-Normaleeninitilestatus;DanderiHenkerenhiernaarterug(gebruikESC$omeiHengedeeltelijkgetypteopdrachtaftebreken) "2.invoiHerpmodusA-ingegaandoorspeciekeopdrachtenaiApIoOcCsSRenbiHeindigddoiHor$ESCofabnormaaldooreeninterrupt "3.riHegel}modusN-d.w.z.qhetwachtenopinvoernaeen:,/,? 4ofeiHen!opiHdracht(beindigdmetr^CR,aftebriHekenmetCTRL-c).CTRLr0isdecontrol-toets:CTRL-cbetekent"controlc"#J10.2%}ShellCommando'sXT "1.TERM=$ciHodeBPlaatsteencode-naamvoorjeterminalindevariabeleTERMWY_2 ~?G10.8VimReferen>tiek\|aartMTy27ՁV "2.expiHortYTERMYDraagtdewaardevanTERMYover(determinalcode)naariederUNIX- systeiHemprogramma$datterminalafhankelijkis. "3.tput~kinitInitialiseiHertdeterminalzodathetjuistzalfunctionerenmetdiverseUNIX-systeiHemprogramma's. "4.vi I(lename~GeiHefttoegangtotdeschermeditorvizodatjeeenspeciekbestandkuntwijzigen. "5.vi le1Ule2le3LiHaadtdriebestandenindevibueromtewordengewijzigd.DiebiHestanden$zijnle1,le2,enle3P. "6.viewInleBRiHoep$devi-eiHditoraanmethetbestandleBinread-onlymodus "7.vi$-RInleBRiHoepdevi-editoraanmethetbestandleBinread-onlymode "8.vi$-rInleBHerstelhetbiHestandleenriHecente$wijzigingennaeiHensysteemcrash "9.vi$-rInleBHerstelhetbiHestandleenriHecente$wijzigingennaeiHensysteemcrash#J10.3%}OptiesInstellenXT "1.:set$optieBAiHctiveeroptie "2.:set$optie=waariHdeBWijswaardeBtoeaanoptie "3.:set$nooptieBDeiHactiveer$optie "4.:setInToiHon$doorgebruikeringesteldeopties "5.:seteallToiHonlijstmetallehuidigeopties,vzowelstandaariHdalsdiezijningestelddoordegebruiker "6.:setInoptieً?R'ToiHon$waardenvanoptie#J10.4%}GebruikteNotatiesNotaties:ؼ "1.CTRL-c$CTRLisdeciHontrol-toets:R'CTRL-c$betekent"controlc" "2.CR$iseiHenCarriagereturn(ENTERtoets)10.5%}Onderbreken,annulerenXT@ESC$biHeindiginvoeg-modusofonvolledigeopdracht@CTRL-? 'CTRLcisd deciHontrol-toets:CTRL-?betekentd "control?"verwijderofrubout interrupts@CTRL-l$riHeprint/verversschermalsCTRL-?R'hetdoordewargooitan_2 ~?G10.8VimReferen>tiek\|aartMTy28ՁV10.6%}Bestandsmanipulatie/u@ZZ$BewaarbiHestandenbeindigvi\V@:wq$BewaarhetbiHestandenbeindigvi@:w$SlahethuidigebiHestandop@:w!R'ForiHceer$schrijvennaarhethuidigebiHestand,alshetbestandalleenlezenis@:wnameBSchrijf$naarbiHestandname@:q$BeiHindigvi@:q!R'ForiHceer$beindigingvi(verwerpwijzigingen)@:e$nameWijzigbiHestandsnaam@:e!R'opnieuw$wijzigen,verwerpveriHanderingen@:e$+namewijzigbiHestandnameً,beginnendaanheteind@:e$+nbiHegin$metwijzigenopriHegeln@:e$#wijziganderiHebestand@:n$wijzigvolgendebiHestandinarglist@:ariHgs$geeflijstmetbestandeninhuidigebestandenlijst@:riHew$wijzigeerstebestandinbestandenlijst@:n$ariHgsspeciceernieuwearglist@:fIntoiHon$huidigebestandenregel@CTRL-G$synoniemvoiHor:f,toonhuidigebestandenregel@:ta$tagInnaartagleentrytag@CTRL-]In:ta,$volgendewoiHord$istag#l10.7%}Verplaatsen@Cursorpijlen$Verplaatsdecursor@CTRL-d$ScriHollhalvepaginaomlaag@CTRL-u$ScriHollhalvepaginaomhoog@CTRL-f$ScriHolleenvolledigepaginaomlaag@CTRL-b$ScriHolleenvolledigepaginaomhoog@:0$GanaarbiHegin$vanhetbiHestand@:n$GanaarriHegelnummer$n@:$$GanaareindebiHestand@0$GanaarbiHegin$vanderiHegel@$GanaareiHersteniet-blancotekenj_2 ~?G10.8VimReferen>tiek\|aartMTy29ՁV@$$GanaareinderiHegel@CR$GanaarhetbiHegin$vandevolgenderiHegel@-$GanaarhetbiHegin$vandevorigeriHegel@%$ZoiHeknaarovereenkomendeblokhaak@GInga$naarriHegel$(standaarddelaatsteregel)@]]Involgende$seiHctie/functie@[[Invorige$seiHctie/functie#J10.8%}Regelp_ositioneringXT@HInLinksbiHovenaan$venster@LInLiHaatste$regelvanvenster@MInMiddelste$riHegelvanvenster@+InVolgende$riHegel,naareerstniet-blanco@-InVorige$riHegel,naareersteniet-blanco@CRInriHeturn,$zelfdeals+@jInvolgende$riHegel,zelfdekolom@kInvorige$riHegel,zelfdekolom10.9%}Positionerenv@ andecursorXT@0InbiHegin$vanderiHegel@$Ineinde$vanderiHegel@hInvoiHoruit@lInterug@SPACEInzelfde$alsl@fxInzoiHek$xvoorwaarts@FxInzoiHek$xterugwaarts@;Inherhaal$laatstefF@,Ininverse$van;@jInnaar$aangeiHgevenkolom@%InzoiHek$overeenkomendefofgs_2 ~?G10.8VimReferen>tiek\|aartMTy30ՁV10.10,=tiek\|aartMTy31ՁV10.13,=tiek\|aartMTy32ՁV10.16,=yy$KopieiHernregelstebeginnenvanafdehuidigeregelnaardeyankbuer@p$"Plak"deinhoudvandeyankbuernadecursor(ofonderdehuidigeriHegel)@P$"Plak"deyankbuervoiHordecursor(ofbovendehuidigeregel)@@pIn"Plak"vanuit$buerx@@yInYank$(kopieiHer)naarbuerx@@dInVerplaats$naarbuerx#J10.17,=InriHechter$verschuiving@! Nlter$doiHoropdracht@=Ininspringing$voiHorLISP@yInyank$(kopieiHer)tekstnaarbuer10.18,=tiek\|aartMTy33ՁV10.19,=-deriHegel$indebuer.@:x,zcxwlename5SchrijfriHegelvanafhetnummerx+totaanhetnummerzM"naarhetnieuwebiHestand$genaamdlenameً.@:$$VerplaatsdecursornaarhetbiHegin$vandelaatsteriHegel$indebuer.@:.,$d$VerwijderalleriHegels$vanafdehuidigeriHegel$totaandelaatsteriHegel.@:rhlenameAVoiHegtdeinhoudvanhetbestandlenameAtoeonderdehuidigeregelvandebuer.@:s/text/new_text/vVervangtheteiHerstevoorkomenvantextopdehuidigeregeldoornew_text@:s/text/new_text/g$Vervangt@ieiHdervoorkomenvantextopdehuidigeregeldoornew_text@:g/text/s//new_text/g1sWijzigt$ieiHdervoorkomenvantexthindebuernaarnew_text.#J10.210Andereop_drachtenXT@u$MaakdelaatstewijzigingongeiHdaan@U$HersteldehuidigeriHegel@$WijziggriHoteletterinkleineletterenviceversa@J$VoiHegdehuidigeregelsamenmetdevolgenderegel@.R'Herhaal$laatstetekstwijzigingsopiHdracht@CTRL-g$ToiHonbestandsnaamenregelnummer"_2 ~?G11.8GerelateerdeURL'sO34ՁV11%GerelateerdeG\URL'sAiHan$VIMgerelateerdeURL'szijntevindenbij-ؼ@C~andC++BeiHautifer @Linux$goiHodiesInorbij)=12%AndereG\F(ormatenvanditDopcumenctDitmdoiHcumentisin10verschillendeformatengepubliceerd,teweten-DVI,Postscript,LiHatex,LyX,$GNU-info,HTML,RTF(RichTextFormat),Plain-text,UnixmanpiHagesenSGML.ؼ@Je>kuntditHOWTO-doiHcumentalseenenkeltar-archiefophaleninHTML,DVI,PostscriptKofSGML-formaatvanaf-$ofIn@Plain&tekstformaatisin:ofM@Vertalingennaar'tFriHans,QDuits,Spaans,Chinees,Japansstaanin]n-kofZAllehulpbijhet$vertalennaaranderiHetaleniswelkom.ؼHetFmdoiHcumentisgeschrevendoorgebruiktemakenvaneentoolgenaamd"SGMLFdtool"welkekanMworiHdenopgehaaldvanaf-Bijhetcompilerenvande$souriHcekrijgjemetdevolgendeopdrachtenؼ@sgml2html$vim-howto.sgml(eiHenhtml-bestand)@sgml2rtf$vim-howto.sgml(eiHenRTF-bestand)@sgml2latex$vim-howto.sgml(eiHenlatex-bestand)Dit$doiHcumentistevindenop-ؼ@Je$kuntditdoiHcumentookvindenopdevolgendemirror-sites-@@@@@AnderiHe)mirror-sitesindebuurt(netwerk-adres-wijsheid)zijntevindenop ZR seleiHcteereensiteenganaardedirectory/LDP/HOWTO/Vim-HOWTO.html#Ǡ_2 ~?G13.8Cop>yrightNotice]ҹ35ՁVGebruik!Ahetxdvi-priHogramma!AomditdoiHcumentinhetdvi-formaattebekijken. GHetxdvi- priHogrammaistevindeninhettetex-xdvi*.rpmpiHackageinRedhatLinuxwatkanwordengevonden$viadeContriHolPaneljApplicationsjPublishingjTeXmenubuttons.卑>rGeefNdevolgendeopdrachtomhetdvi-documenttelezen- =dxdviN-geometry80x90howto.dvi>rEnNpasdegroottevanhetschermmetdemuisaan.>rZieNdemanpageoverxdvi.>rGebruikNdepijltjestoetsen,PageUp,PageDownkeys,omdoor>rhetNdocumenttemanoeuvreren,jekuntookde>r'f',N'd','u','c','l','r','p','n'letter>rtoetsenNgebruikenomnaarboven,onder,hetmidden,devolgende>rpagina,Nvorigepagina,enztegaan.>rDrukNop'x'omhetexpert-menuuitteschakelen.ؼJekunthetpiHostscript-bestandlezenmetbiHehulpvanhetprogramma'gv'(ghostview)of 'ghostscript'. Het8ghostscriptpriHogramma8istevindeninhetghostscript*.rpmpiHackageenhetSgvpriHogrammaSistevindeninhetgv*.rpmpiHackageinRedhatLinuxwelkekanwordengelokaliseiHerd viadeContriHolPaneljApplicationsjGraphicsmenubuttons.I(HetgvprogrammaisveiHelgebruikersvriendelijkerdanghostscript.,Ghostscriptengvzijnookvoorandereplat-formen$biHeschikbaarzoalsOS/2,Windows95enNT.>rGeefNdevolgendeopdrachtomhetpostscriptdocumenttelezen- =dgvNhowto.ps>rMetNgebruikvanghostscriptgeefjeop-dghostscriptNhowto.psؼJen cmmi10x