Uvod u web dizajn - 7. deo - Podešavanja editora i efikasna obrada teksta
Uvod
Programeri i web dizajneri često smatraju da se bave veoma zanimljivim i kreativnim poslovima koji pružaju znatne mogućnosti za lični i profesionalni razvoj, međutim - šta je zapravo posao web dizajnera ili programera?
Sa jedne strane, prioritet u pomenutim zanimanjima jeste: iznalaženje ideja, sprovođenje ideja u delo i rešavanje usputnih problema uz saradnju sa drugima, ali, na osnovnom tehničkom nivou - 'ispod' svega prethodno navedenog - i dalje stoji unos i obrada povećih količina teksta.
Čim shvatimo 'kako stvari stoje', deluje sasvim logično da se potrudimo da posao obrade teksta učinimo što lakšim i ugodnijim, a način da to postignemo je - da se što bolje upoznamo sa principima efikasne obrade i da ih što bolje usvojimo ....
Važnost upotrebe tastaturnih prečica u uređivanju teksta
U uvodnom članku o web dizajnu preporučili smo da izaberete jedan (dobar) editor i detaljno se upoznate sa opcijama za efikasnu obradu teksta, a kada kažemo "opcije za efikasnu obradu teksta", mislimo pre svega na tastaturne prečice za pozivanje komandi editora.
U opštem smislu, na početku bavljenja web dizajnom ili programiranjem, prioritet (ipak) treba dati učenju opštih principa navedenih veština i sintakse samih jezika, ali, već posle nekoliko meseci (ili nedelja, u slučaju starijih učenika), svakako možete početi da se upoznajete sa prečicama.
Naravno, na ovom mestu se mnogi od vas mogu zapitati, da li je zaista neophodno upoznavati se sa "gomilom tastaturnih prečica" (budući da pozivanju komandi preko menija naizgled "ništa ne fali")?!
Ukratko (da odgovorimo na pitanje), bez obzira na to što većina korisnika računara ima naviku da se pri pozivanju komandi za rad sa tekstom oslanja na grafički interfejs i menije (odnosno, na upotrebu miša - a ne tastature), bitno je odmah razumeti da popularnost takvog pristupa nije posledica toga što je pristup bolji i efikasniji (jer, objektivno - nije), već posledica toga što korišćenje menija predstavlja lakši način da se početnici upoznaju sa funkcionalnošću različitih programa.
Pored navedenog, korišćenje menija je "prihvatljivo efikasan" način za pokretanje komandi i na duže staze (najprostije: čak i ako se neke komande ne sećate - pronaći ćete je "već nekako" u nekom od menija i obaviti posao).
Nasuprot "desnim klikovima i menijima", stoji upotreba tastaturnih prečica, što je pristup koji već na prvi pogled "deluje kao dobra ideja" (pozivanje komandi preko tastaturnih prečica jeste objektivno efikasnije), međutim .... u svemu se podrazumeva da korisnik mora, manje-više odmah (ili, bar - "što pre"), naučiti veći broj kombinacija tastera - a to zahteva trud.
"Krajnji bilans" je sledeći: ako se usmerite na tastaturne prečice (i potrudite se da ih savladate), biće malčice teško na početku, ali, uz uloženi trud i vreme (jer rezultati neće doći sami od sebe (!)), kroz nekoliko meseci postaćete (okvirno), bar duplo efikasniji u obradi teksta, a ako i dalje budete radili "preko miša" - bićete na istom nivou.
Izbor ostavljamo vama. :)
Ako ste se odlučili za "crvenu pilulu" (to jest, za tastaturne prečice), podelićemo sa vama i sledeći savet: iako je nedvosmisleno neophodno uložiti trud - nikako nemojte "zapinjati" u želji da odmah ("preko noći") postanete vrhunski ekspert u upotrebi prečica (tj. nemojte se "napinjati" da odmah naučite "sve")!
Kodirajte redovno i svake nedelje dodajte svega jednu ili dve prečice u svoj "arsenal" (nemojte se zaletati čak ni na početku); posmatrajte komande u raznim situacijama ("sa svih strana"), unapređujte polako i svoju veštinu unosa teksta preko tastature i uživajte u onome što radite.
Kao što već rekosmo, nagrada za uloženi trud neće izostati!
Ukratko o "slepom kucanju"
Čuveno "slepo kucanje" (unos teksta preko tastature - bez gledanja u tastaturu), nismo hteli odmah da istaknemo kao nešto "bez čega se ne može" (pogotovo na početku), ali, i u ovom slučaju situaciju treba sagledati sa (bar) dve strane.
Sa jedne strane, postavlja se pitanje: da li svaki programer mora da bude "tastaturni nindža" koji je u stanju da unosi preko sto reči svakog minuta, a odgovor je (naravno) - ne. :)
Brzina pri unosu teksta nije posebno bitna (osim ako niste daktilograf/stenograf i sl :)), međutim - treba sagledati i "drugu stranu", to jest, treba sagledati da li se tekst unosi pravilno, bez dodatnog opterećenja i skretanja pažnje?!
Nije teško razumeti (u prethodno navedenom kontekstu), da nepravilan unos, uz prebacivanje pažnje sa tastature na monitor "svaki čas", znatno odmaže i veoma nepovoljno utiče na koncentraciju (bar kada je u pitanju unos teksta 'na duže staze').
Dakle: nemojte - doslovno na početku - biti opterećeni time da što pre naučite slepo kucanje (jer na samom početku imate "preča posla"), međutim, predlažemo da već posle nekoliko nedelja počnete - polako i bez opterećenja - da vodite računa i o tome da li vam unos teksta predstavlja napor (ili ste možda, u najboljem slučaju, već spontano naučili da kucate bez gledanja u tastaturu).
Ukoliko primetite da stvari "zapinju", preporučujemo da ipak uložite svesni napor u savladavanje veštine unosa teksta bez gledanja, radije nego da se "nadate najboljem", jer, ako ne ide "samo od sebe" - a pri tom se ne potrudite svesno - gotovo je zagarantovano da će se loše navike zadržati dugi niz godina (a nije preterano reći da se ponekad zadrže i celoga života)!
Pronađite dobre tutorijale, dajte sebi dovoljno vremena i budite pažljivi i dosledni (i naravno - uporni :)), a da bismo vam pomogli (iako nećemo davati detaljna uputstva, jer na internetu već postoji veliki broj visoko kvalitetnih tutorijala - koje samo treba pažljivo pratiti, uz redovno vežbanje), objasnićemo osnovne principe.
Najosnovniji princip je sledeći: pri unosu teksta treba gledati u monitor - a ne u tastaturu, to jest, potrebno je izbegnuti da pažnja "skreće" sa jednog uređaja na drugi, jer to (kao što smo već naveli), dovodi do povećeg rasipanja energije, zamora očiju i gubitka koncentracije.
Drugi princip (ni u kom slučaju manje važan od prvog), je sledeći: prioritet je uvek u pravilnom unosu teksta - a ne u brzini.
Na početku ćete najverovatnije biti "spori", ali - morate istrajati, i pri tom: nemojte svesno povećavati brzinu, nemojte brinuti oko toga što naizgled nema napretka; štaviše - što manje vremena provedete u razmišljanjima na temu "dokle ste stigli", a što više truda i pažnje uložite u praktičnu stranu celog poduhvata - tim bolje! :)
Međutim (da vas bar malo i obradujemo), ako istrajete i uspete da savladate veštinu pravilnog unosa teksta preko tastature (bez gledanja), više nego solidna brzina - doslovno će doći sama od sebe.
U tehničkom smislu, "slepo kucanje" (koje se na engleskom jeziku naziva "touch typing"), zasniva se upravo na prepoznavanju tastera dodirom ('a ne pogledom'): kažiprsti leve i desne ruke pozicioniraju se na tastere F
i J
, na kojima postoje izbočine preko kojih se ruke mogu dovesti u pravilnu početnu poziciju (naravno - bez gledanja).
S tim u vezi, poslednji važan princip koji ćemo navesti, je: svaki prst je "zadužen" za (samo) jedan taster - uvek; međutim, sprovođenje navedenog principa u delo, često "zapinje" (i zato skrećemo pažnju), a rešenje je jednostavno i potrebno je - veoma svesno i veoma namerno - uložiti trud u dosledno poštovanje navedenog pravila (sve dok se prvobitne navike ne promene na bolje). :)
Kako sve tačno funkcioniše u tehničkom smislu ("gde tačno koji prst ide" i sl), možete videti na sledećim sajtovima (za drugi sajt, potrebno je poznavanje engleskog jezika) ....
Typing study Typing club.... a uobičajeni tok savladavanja veštine je sledeći: nekoliko nedelja svesnog ulaganja truda - bez gotovo ikakvih rezultata, posle čega sledi prelazni period u kome počinje da deluje da je veština "ušla u prste" (ali, još uvek nije), da bi na kraju veština zapravo "ušla u prste".
U drugoj fazi, veoma je bitno da "ne hvatate krivine", da ne ubeđujete sebe da ste uspeli pre vremena, pa - ako se potrudite za prave - uspećete. :)
Izbor editora
Iako kroz članke provlačimo lajtmotiv da "boj ne bije svijetlo oružje", iz razloga što (zaista) smatramo da se sa bilo kojim kvalitetnim editorom može uraditi 'sve što treba', red je da se ipak osvrnemo na nekoliko najznačajnijih editora i time vam (nadamo se) olakšamo izbor.
Međutim, ostajemo pri tome da treba izabrati jedan editor i da ne treba svaki čas menjati program * samo zato što u datom trenutku deluje da se neka pojedinačna operacija može lakše obaviti u drugom programu (ako baš morate, probajte nekoliko programa u početku, ali, što pre izaberite samo jedan, zadržite se uz taj program i naučite ga "uzduž i popreko").
Krajnji izbor editora prepuštamo vama (naravno), ali, naše je uverenje da za početak treba izabrati Notepad++ ili Atom Editor, * a pored ova dva programa, razmotrićemo još i tri popularna programa koje web developeri rado koriste: Visual Studio Code, Vim i Sublime Text.
Osvrnućemo se na editore po pitanju brzine pokretanja (editor bi trebalo da se otvori gotovo trenutno), sposobnosti otvaranja velikih datoteka (datoteku od ~100MB, editor bi trebalo da otvori za manje od deset sekundi), zauzeća prostora na instalacionom mediju (koje ne bi trebalo da bude veće od nekoliko desetina MB), a sagledaćemo i to u kakvom su međusobnom odnosu sve navedene odlike.
Notepad++
- Osnovne mogućnosti: 10/10
- Napredne mogućnosti: 6/10
- Dizajn: 5/10
- Početno privikavanje: 10/10
- Cena: program je besplatan
- Sajt: Notepad++
Kao što smo već nagovestili, smatramo da je upravo Notepad++ najbolji editor za početnike. Program izgleda i funkcioniše kao običan editor teksta (od korisnika se ne zahteva da usvoje komplikovan/"specijalizovani" način rada), a zapravo je u pitanju prilično moćan i ozbiljan alat, sa brojnim naprednim opcijama.
Takođe, Notepad++ je mali i nenametljiv program velike stabilnosti, otvara se gotovo trenutno i sa lakoćom izlazi na kraj sa velikim datotekama.
Ako vas samo zanima da što pre počnete sa radom, preuzmite Notepad++ sa interneta, instalirajte program (počnite da radite), a naše izlaganje o ostalim programima (bar za sada) - slobodno preskočite.
Atom Editor
- Osnovne mogućnosti: 10/10
- Napredne mogućnosti: 8/10
- Dizajn: 8/10
- Početno privikavanje: 5/10
- Cena: program je besplatan (open-source)
- Sajt: Atom Editor
Ukoliko ste nešto iskusniji korisnik * koji već neko vreme radi na računaru, ne boji se zalaženja "u sitna crevca" i zapravo ume da iskoristi još koju dodatnu opciju (u odnosu na Notepad++), možete izabrati Atom Editor.
Zauzvrat ćete dobiti program koji je ipak napredniji u odnosu na Notepad++ (iako razlika ni izdaleka nije drastična, pogotovo iz perspektive programera sa manje od cca. dve godine iskustva), ali, to sve ima i "cenu" (koja, po našem mišljenju, nije zanemarljiva).
Atom Editor je znatno veći program u smislu zauzeća na disku (veličina je dovoljna da nas dovede do pitanja: da li zaista želimo da toliki prostor dodelimo editoru teksta), nešto se sporije otvara, stabilnost programa nije baš na 'skroz zavidnom' nivou i (takođe), Atom Editor ne ispoljava ni zavidnu sposobnost izlaženja na kraj sa velikim datotekama.
Ipak - i pored svega što smo naveli - "ima nečega" u Atom Editoru (i to je razlog zašto ovaj program preporučujemo).
Visual Studio Code
- Osnovne mogućnosti: 10/10
- Napredne mogućnosti: 8/10
- Dizajn: 6/10
- Početno privikavanje: 4/10
- Cena: program je besplatan (open-source)
- Sajt: Visual Studio Code
Visual Studio Code je prvi od tri programa koje nikako ne želimo da preporučimo početnicima (bez obzira na to što je reč o programima koji inače zaslužuju pažnju u svakom drugom smislu).
Nemojte nas pogrešno shvatiti kada tako kažemo, jer VSC je svakako dobar editor (a naredna dva, po našem skromnom mišljenju - još bolji), međutim, koncepcija VSC-a, iz perspektive nedovoljno iskusnih korisnika (a pogotovo početnika bez ikakvog prethodnog iskustva), zauzima vrlo nezgodnu poziciji između "običnih" programa za uređivanje teksta (kao što su ostali programi koje navodimo) i kompletnih integrisanih razvojnih okruženja (IDE), kao što su Visual Studio, IntelliJ i slični programi kakvi se inače koriste za 'kompajlirane' programske jezike.
Program je, po zamisli autora, namenjen razvoju ozbiljnijih web aplikacija (što postaje veoma jasno već posle nekoliko minuta rada u programu), opcije za analizu koda i druge naprednije opcije, uključene su "po default-u" i 'izbacuju' poruke (na koje treba znati odreagovati) - i upravo su to razlozi zašto opisano okruženje ne smatramo optimalnim izborom za početnike (pogotovo ne za početnike koji još uvek pohađaju osnovnu školu i sl).
Za kraj smo ostavili dva (po mišljenju autora ovih redova), najbolja trenutno dostupna editora teksta. *
Vim
- Osnovne mogućnosti: 10/10
- Napredne mogućnosti: 10/10
- Dizajn: 9/10
- Početno privikavanje: 1/10
- Cena: program je besplatan (open-source)
- Sajt: Vim
Vim je sjajan (!), ali prilično idiosinkratičan program sa TUI interfejsom, * tridesetak godina istorije i tradicije ** - i krajnje "neapologetičnim" stavom prema novim korisnicima (više o tome u nastavku).
Vim je modalni editor teksta, što je naizgled pomalo čudan pristup koji podrazumeva da se korisnik u datom trenutku nalazi u određenom režimu rada (jednom od nekoliko), pri čemu za dati režim važe zasebne komande (i odgovarajuće tastaturne prečice) - koje u drugim režimima tipično ne važe.
Primera radi, po pokretanju programa, unos teksta zapravo nije moguć (!) - iz razloga što se editor nalazi u režimu uređivanja teksta i potrebno je pritisnuti taster ("i", "a" ili "o") za ulaz u režim za unos teksta. Nakon toga, kada je (ponovo) potrebno uređivati tekst, pritiskom na taster "ESC" možemo se vratiti u režim uređivanja.
Jasno je da Vim ne preporučujemo početnicima (nismo "za džabe" sposobnost programa da izađe u susret korisnicima pri početnom navikavanju, ocenili najnižom ocenom), ali, nećemo baš ni izbeći priliku da navedemo (u ionako opširnom članku), šta vas čeka ako u nekom malo kasnijem trenutku ipak odlučite da isprobate ovakav moćan i (pomalo) neobičan editor.
Vim naravno nije dizajniran sa namerom da bude "težak i naporan" (naprotiv), ali, svakako nije u pitanju program koji će se na početku prilagoditi Vama (još jednom - naprotiv).
Vim od korisnika očekuje izvestan nivo discipline i angažovanja, i stoga se na početku očekuje - da se Vi prilagodite Vimu.
U početnim stadijumima, Vim tipično "žulja" novog korisnika (uglavnom "poprilično"), neće vam mnogo pomagati, * ali, ukoliko se dovoljno potrudite (nije baš lako, ali, nije ni "strašno" - ni iz daleka), shvatićete da je program napisan tako da se što manje "nameće" korisniku (to je razlog zašto vas Vim na početku neće "pridržavati", ali istovremeno i razlog zašto vas u nastavku neće ni "saplitati").
Međutim, posle nekog vremena (i naravno, uz uloženi trud), stvari koje su "žuljale" na početku - više ne žuljaju nimalo (baš, baš - nimalo!) i onda počinju da se otvaraju mogućnosti ....
Komande za rad sa tekstom (i odgovarajuće tastaturne prečice), veoma su brojne, pri čemu ima i opcija koje nisu standardno dostupne u drugim programima. Program je mali i izuzetno stabilan, u stanju je da lako otvara velike datoteke (koliko god je to uopšte/inače moguće) i, takođe - nadaleko je poznat po prihvatanju spoljnih plugin-ova, korisničkih skripti, kao i po drugim (veoma brojnim) opcijama za prilagođavanje, čime se (ionako znatne) mogućnosti programa, dodatno proširuju.
Uz Vim dolazi i podrška za VimScript - skriptni jezik koji je razvijan uporedo sa Vimom i za Vim, dok Neovim, popularni i nešto moderniji fork Vima, za pisanje i pokretanje skripti koristi skriptni jezik Lua.
Prosto rečeno, Vim maksimalno koristi koncept obrade teksta bez miša, uz veoma brojne i raznolike mogućnosti proširivanja osnovnih kapaciteta.
Sublime Text
- Osnovne mogućnosti: 10/10
- Napredne mogućnosti: 9/10
- Dizajn: 9/10
- Početno privikavanje: 8/10
- Cena: $80
- Sajt: Sublime Text
Sublime Text (za razliku od prethodno navedenih programa), zahteva licencu koja se plaća, i to je razlog zašto smatramo da nije primereno da ovaj editor preporučimo početnicima (u suprotnom - bili bismo skloni da ga preporučimo svima).
Veličina programa je krajnje umerena (nije baš mali kao Notepad++ ili Vim, ali, veličina ni izdaleka ne predstavlja problem) i, takođe, program je brz, stabilan i sposoban da izađe na kraj sa velikim datotekama.
Sublime Text izgleda kao običan editor i koristi običan interfejs (nije kao Vim po tom pitanju), što znači da vas neće "odvratiti".
Kada vam u Sublime-u zatrebaju napredne mogućnosti, možete ih aktivirati, pri čemu će program i dalje izgledati kao običan editor (po pitanju naprednih mogućnosti, Sublime Text jeste nalik Vim-u (možda ipak zaostaje, ali - sasvim malo)).
Prisutna je (očekivano u ovoj klasi editora), i podrška za spoljne plugin-ove, koji proširuju osnovne mogućnosti i uvode sasvim nove (broj i kvalitet plugin-ova je na zavidnom nivou), a plugin-ovi su zapravo Python skripte, * što znači da postoji i mogućnost kreiranja i pozivanja sopstvenih skripti i plugin-ova.
Sublime Text sadrži i jednu posebno zanimljivu dodatnu opciju - podršku za prečice iz programa Vim (takozvani "Vintage" režim, koji se po želji može uključiti i isključiti), što otvara još više mogućnosti.
Sve navedeno čini ovaj editor veoma funkcionalnim i zaokruženim paketom za obradu teksta i razvoj web aplikacija (a bogme i desktop programa).
Izbor editora - kratak rezime
Editor teksta je alat - alat koji mnogi korisnici veoma vole i poštuju, ali - ipak samo alat (program neće "sam od sebe" obavljati posao, već to morate učiniti vi). :)
Sa jedne strane, naveli smo nešto što najverovatnije 'deluje suviše očigledno', ali (sa druge strane) - budući da takođe pišemo o poduhvatima koji ipak spadaju u kategoriju "lakše reći nego učiniti", nije zgoreg da se ponekad podsetimo na to da sopstveni napredak najviše zavisi - od nas samih.
Izbor editora (kao što smo već pomenuli), prepuštamo vama, ali, za koji god od navedenih editora da se odlučite - nećete pogrešiti, a u sledećim odeljcima ćemo se pozabaviti (konačno! :)), onim što je najbitnije - tastaturnim prečicama i tehnikama za efikasno uređivanje teksta.
Osnovne opcije editora za udobniji rad sa tekstom
Kao što red nalaže, upoznaćemo se prvo sa najosnovnijim opcijama, a potom i sa dve grupe naprednijih opcija. *
Što se tiče najosnovnijih dodatnih opcija, svi editor koje smo do sada naveli u tekstu podržavaju svih pet dole navedenih opcija (a isto važi i za većinu editora koji su nam i inače poznati), i stoga - i ovoga puta budite bez brige.
Opcije su:
- bojenje sintakse
- numeracija redova i markiranje bitnih redova ("bookmarks")
- automatsko zatvaranje zagrada i tagova
- automatsko uvlačenje redova
- prikaz informacija o poziciji kursora (red, kolona), dužini teksta i tipu dokumenta koji uređujemo (tipično se ovaj odeljak nalazi na traci u dnu prozora)
Ništa "previše impresivno" (ipak smo, jelte, u 21. veku - rekli bi mnogi), ali, lepo je ponekad u životu primetiti i "ono čega ima" (nasuprot ljudskoj sklonosti da se neretko primeti samo "ono čega nema"). :)
Opcije koje navodimo u ovom poglavlju, uključene su odmah po instalaciji (u svim programima koje opisujemo u članku), i stoga, ne morate preduzimati nikakve dodatne korake za aktivaciju navedenih opcija (naravno, ako opcije nekim čudom nisu odmah uključene "po default-u", svakako su dostupne).
Bojenje sintakse
"Bojenje sintakse" (eng. syntax highlighting), je termin koji se odnosi na korišćenje različitih boja u označavanju različitih delova teksta sa posebnim značenjem u računarskim jezicima (rezervisane reči, tagovi, operatori, zagrade, komentari i sl).
Navedeni način označavanja delova teksta, popularan je i široko rasprostranjen (godinama unazad), i uveliko doprinosi preglednosti programskog koda.
Zarad 'poređenja', pogledajmo isti kod bez uključene opcije za 'raznobojni prikaz teksta'.
Nije "strašno", s obzirom na to da je u pitanju samo nekoliko linija koda, ali - inače bi "moglo biti" ....
Numeracija redova
Prikaz rednih brojeva vrsta (sa leve strane prozora), može biti od velike pomoći u navigaciji kroz tekst (pogotovo kada je u pitanju programski kod).
Ako se dvoumite, zamislite samo sledeću situaciju: otvorili ste u browseru sajt na kome radite, ustanovili ste da postoji greška u 183. redu; tražite u editoru navedenu liniju, niste uključili numeraciju redova i pri tom koristite editor koji ne dozvoljava prebacivanje na proizvoljni red ....
Reći će neko da ni u takvoj situaciji nije problem "snaći se" i (naravno) - sama po sebi, situacija nije posebno problematična (možda zato što ste već krišom uključili numeraciju i bojenje sintakse?! ), ali, praktično, posao web dizajnera i programera je - kreiranje sajtova i pisanje programa, to jest, posao web dizajnera i programera nije - da nepotrebno gube vreme na "traženje linije #183" koja sadrži grešku.
Pored proste numeracije, korisna je i opcija "bookmarks" (pamćenje pozicija redova sa bitnim sadržajem), što u daljem radu omogućava lakše pronalaženje zapamćenih redova.
Kada pogledamo gornju sliku, stvari ipak deluju lepše i - što je važnije - bolje, * u odnosu na prethodnu sliku (na kojoj nije bilo uključeno bojenje sintakse, kao ni numeracija redova).
Automatsko zatvaranje zagrada i tagova
Iako smatramo da čak i iskusni programeri treba sami da vode računa o uparivanju zagrada, tagova i sl. (a početnici pogotovo; više o svemu na kraju odeljka), editori svakako nude opciju automatskog zatvaranja zagrada, niski, tagova i sl, koju .... "malo ko voli da isključi". :)
Informacije o poziciji kursora (red, kolona), dužini teksta i tipu dokumenta
Informacije o poziciji kursora (red, kolona), dužini teksta i tipu dokumenta koji uređujemo, tipično su diskretno smeštene na traku u dnu prozora (tako da nas odeljak sa informacijama ne ometa u radu i tu je kada zatreba da "bacimo pogled").
Saveti za početnike
Bez obzira na nedvosmislenu upotrebnu vrednost opcija koje smo naveli, početnicima koji žele da "očvrsnu" svoj "mentalni sklop", toplo preporučujemo da određene opcije - isključe (u početnim fazama učenja).
Pre svega mislimo na prikaz "sintakse u boji", jer - kao što posmatranje 'obojenog' koda donekle umanjuje svest o sadržaju kodnog teksta, posmatranje 'jednobojnog' programskog koda - znatno povećava nivo pažnje i podiže svest o sadržaju kodnog teksta (a u opštem smislu, posredno podiže i svest o tome da je potrebno samostalno voditi računa o programskim kodovima).
Nećemo vas dalje ubeđivati, ali, ako zaista želite da napravite što bolji 'temelj sopstvene programerske veštine', provedite prvih nekoliko meseci pišući programe u "crno-belom" editoru - nećete zažaliti. :)
Kada inače ne treba koristiti opcije za udobniji rad sa editorom?
Ako izuzmemo savet koji smo dali početnicima (u vezi sa isključivanjem naprednih opcija editora u fazi učenja), ne deluje baš 'logično' da se odreknemo opcija koje "olakšavaju život" u produkcijskom programiranju, ali - postoje i određene vanredne okolnosti u kojima uključene opcije mogu opteretiti editor na način koji je u uobičajenim situacijama teško sagledati.
Recimo, ako se bavite održavanjem sajtova, može se desiti da dođete u kontakt sa izrazito velikim tekstualnim datotekama (npr. log fajl sa servera, u kome je ubeležena svaka poseta, ili sadržaj baze podataka koji je izvezen u obliku tekstualne datoteke), a kada pokušamo da otvorimo takvu datoteku, uviđamo da čak i otvaranje tekstualnih datoteka ima svoju "cenu" (samo što je ta cena inače veoma mala, i stoga je "ne primećujemo").
Sa druge strane, tekstualna datoteka od stotinjak hiljada linija (od kojih svaka ima širinu između npr. 50 i 150 znakova), može zauzeti preko 500 MB ma disku, preko 8GB pri učitavanju u RAM memoriju, može se učitavati tridesetak sekundi i prilično usporiti računar!
Praktično rešenje može biti upotreba portabilnih verzija editora (instalacije svih editora koje smo naveli mogu se preuzeti i u obliku .zip datoteka).
Sa interneta možete preuzeti .zip datoteku i otpakovati je na tri mesta (tj. u tri direktorijuma):
- u jednom direktorijumu može biti veoma "nasušna" verzija editora (bez ikakvih dodataka, to jest, bez bojenja sintakse, uparivanja zagrada i sl), i takva verzija editora je prilagođena otvaranju izrazito velikih datoteka
- drugi direktorijum može sadržati verziju sa bojenjem sintakse, * ali, bez ostalih opcija, što je primereno za datoteke obima do ~30 hiljada linija koda (+/- desetak hiljada linija, u zavisnosti od računarskih kapaciteta kojima raspolažete)
- treća opcija može biti puna instalacija za standardne potrebe, sa uključenim (svim) osnovnim i dodatnim opcijama (source datoteke sa kojima se tipično srećemo, imaju veličinu, od nekoliko desetina do nekoliko hiljada linija koda, što, na modernim računarima, ne predstavlja problem u smislu otvaranja i obrade)
Kada se upoznamo sa osnovnim opcijama editora, na red dolaze (pre svega) ....
Osnovne prečice za rad sa tekstom
Pre nego što se udubimo u proučavanje iole naprednijih komandi u editorima, osvrnućemo se na one najosnovnije, koje su zajedničke za sve editore (možda i pomalo nepotrebno, jer verovatno već poznajete najosnovnije opcije, ali - "za svaki slučaj"). :)
Rad sa datotekama
Za sam početak, nekoliko osnovnih prečica za rad sa datotekama ....
- ctrlO- otvaranje datoteke
- ctrlN- kreiranje nove datoteke
- ctrlS- čuvanje otvorene datoteke pod istim imenom.
Komanda Save as
, za čuvanje datoteke uz otvaranje dijaloga za izbor lokacije i imena datoteke, tipično nema prečicu u programima, pa je zato nismo navodili (vrlo često je prečica Ctrl + Shift + S
, ali - ne i uvek).
Pomeranje tekstualnog kursora
Pomeranje tekstualnog kursora "bez upotrebe miša", može se obaviti preko sledećih prečica:
- ↑↓←→- pomeranje kursora za jedno mesto gore, dole, levo, ili desno
- home- prebacivanje kursora na početak reda
- end- prebacivanje kursora na kraj reda
- ctrl←- prebacivanje kursora jednu reč ulevo
- ctrl→- prebacivanje kursora jednu reč udesno
Komande za pomeranje kursora često prethode komandama za biranje teksta (i takođe ih nadopunjuju).
Biranje teksta
Delovi teksta mogu se birati preko sledećih komandi:
- shift←- biranje znaka ulevo
- shift→- biranje znaka udesno
- ctrlshift←- biranje reči ulevo - kada je kursor na kraju reči
- ctrlshift→- biranje reči udesno - kada je kursor na početku reči (uz prethodne dve prečice probajte i shift + strelice levo/desno, da selekciju proširite ili skupite za nekoliko znakova)
- ctrlshift↓- biranje celog reda (kada je kursor na početku reda)
Pored navedenih komandi, pojedini editori koje smo naveli, imaju i dodatne opcije za automatsko biranje celih reči (odjednom), pa čak i većih celina u tekstu.
Kopiranje teksta
Ako postoje prečice koje početnici treba da usvoje odmah, reklo bi se da se radi upravo - o prečicama za kopiranje:
- ctrlC- Copy (priprema izabranog teksta za kopiranje na drugu poziciju)
- ctrlX- Cut (priprema izabranog teksta za premeštanje na drugu poziciju)
- ctrlV- Paste (postavljanje teksta koji je prethodno pripremljen za kopiranje ili premeštanje, na novu poziciju)
Brisanje teksta
Za kraj odeljka, pogledajmo i prečice za uklanjanje znakova i većih celina u tekstu:
- backspace- brisanje jednog znaka levo od kursora
- del- brisanje jednog znaka desno od kursora
- ctrlbackspace- brisanje dela reči koji prethodi kursoru (svih znakova sa leve strane)
- ctrldel- brisanje dela reči posle kursora (svih znakova sa desne strane)
Iako deluju jednostavno, čak i osnovne opcije koje smo do sada naveli, pomažu u velikoj meri i - pod uslovom da ih pravilno usvojite - bićete u stanju da tekst obrađujete znatno brže i lakše (naravno, ne baš odmah, ali, već posle kraćeg perioda navikavanja).
Međutim, opcija svakako ima još ....
Dodatne komande za rad sa tekstom - grupa 1 (dodatne opcije koje su praktično neophodne već na početku)
Dodatne opcije koje su navedene u prvoj grupi, smatramo (baš kao što gornji naslov nagoveštava), neophodnim za efikasan rad već na početku, s tim da ne mislimo (naravno) na "sam početak", jer prvo je potrebno - polako, dosledno i bez žurbe - savladati prečice iz prethodnih poglavlja.
U naprednije prečice koje su praktično neophodne za (ne baš sam) početak, spadaju:
- ctrlF- osnovna pretraga reči i izraza, sa podrškom za specijalne znakove (ali, bez regularnih izraza) *
- ctrlH- osnovna zamena reči i izraza, sa podrškom za specijalne znakove (bez regularnih izraza) *
- ctrlD- automatsko umnožavanje aktivnog reda **
- ctrlshift↑- zamena trenutnog reda sa gornjim redom
- ctrlshift↓- zamena trenutnog reda sa donjim redom
- ctrlPgUp- prebacivanje na dokument sa leve strane ***
- ctrlPgDown- prebacivanje na dokument sa desne strane ***
Pogledajmo detaljnije navedene opcije ....
Osnovna pretraga i zamena reči i izraza
Prečice:
- ctrlF- pretraga
- ctrlH- zamena
Na ovom mestu mislimo (i dalje), na pretragu i zamenu sa podrškom za specijalne znakove, ali, bez regularnih izraza (uvodu u regularne izraze posvetićemo zaseban odeljak pred kraj ovog članka).
Pri obavljanju pretrage ili zamene teksta, editori tipično omogućavaju:
- pronalaženje ili zamenu jedne reči ili izraza (u okviru jedne datoteke)
- pronalaženje ili zamenu svih pojava određene reči ili izraza (takođe u okviru jedne datoteke)
- pronalaženje teksta ili obavljanje zamene na svim mestima - u svim otvorenim datotekama.
Bitno je napomenuti i to da je u editorima moguće koristiti i specijalne znakove (zarad pretrage i zamene teksta), pri čemu su od svih znakova najbitniji sledeći:
\t
- tabulacija ("TAB")\n
- prelazak u novi red ("ENTER")
Automatsko umnožavanje aktivnog reda
Prečice:
- ctrlD(Notepad++)
- ctrlshiftD(Atom Editor, Sublime Text)
Dovoljno je postaviti kursor u određeni red (bilo gde u okviru reda, ali, bez selektovanja teksta), zatim, pozvati prečicu ....
.... i red je umnožen (tj. 'dupliran').
Osnovna ideja jeste, umnožavanje redova, ali, komanda zapravo služi umnožavanju selekcije u širem kontekstu (na način koji je naizgled pomalo 'čudan' pri prvom susretu):
- ako nije selektovan nijedan znak, komanda automatski umnožava ceo red (kopija će biti postavljena ispod)
- ako je selektovan tekst u okviru jednog reda, komanda automatski umnožava selektovani tekst (kopija će biti postavljena ispred)
- ako je selektovan tekst u više redova, komanda automatski umnožava selektovani tekst, tako što će selekcija biti postavljena "ispred" (ali, ako su redovi izabrani u celosti - od prvog znaka u prvom redu, do poslednjeg specijalnog znaka za prelazak u novi red u poslednjem redu - kopija će biti ispod )
Zamena trenutnog reda sa gornjim/donjim redom
Prečice:
- ctrlshift↑- zamena trenutnog reda sa gornjim redom
- ctrlshift↓- zamena trenutnog reda sa donjim redom
Dovoljno je postaviti kursor u donji red ....
.... i pozvati prečicu CTRL+SHIFT+↑.
Veoma korisna opcija, * baš kao i prethodna.
Dodatne komande za rad sa tekstom - grupa 2 (opcije za naprednije korisnike)
Opcije koje navodimo u ovoj poslednjoj grupi, krajnje dobro dođu u svakodnevnom radu, ali - nisu neophodne za sam početak.
Zapravo .... vrlo smo skloni da vam preporučimo da navedene opcije preskočite u prvoj godini bavljenja kodiranjem (svakako možete probati, pa "ako ide - ide", ali, ako "ne ide", nemojte se nepotrebno opterećivati opcijama iz grupe #2 neko vreme). :)
Upoznajte polako opcije koje smo već naveli u prethodnim odeljcima, i onda - na kraju (posle više meseci) - dodajte i sledećih nekoliko opcija:
- naprednu pretragu uz pomoć regularnih izraza
- podelu ekrana po vertikali (poželjno je da u editoru postoji mogućnost podele i po horizontali) *
- prebacivanje na početak proizvoljnog reda
- automatsko dodavanje novog reda
- automatsko biranje celog reda
- biranje reči unutar koje se kursor nalazi (naravno, u jednom 'koraku')
- uređivanje teksta u više redova odjednom
Osvrnućemo se detaljnije i na pojedine opcije iz poslednje grupe ....
Napredna pretraga uz pomoć regularnih izraza
S obzirom na to da smo regularnim izrazima posvetili zaseban članak, na ovom mestu ćemo spomenuti samo to da je u pitanju tehnika koja - za razliku od standardne pretrage (koja podrazumeva pretraživanje određenog izraza isključivo u unetom obliku) - dozvoljava pretraživanje obrazaca u tekstu.
Recimo, možemo tražiti:
- brojeve telefona (po obrascu:
pozivni_broj/grupa_cifara-grupa_cifara
) - e-mail adrese (po obrascu:
korisnicko_ime@domen
)
.... a moguće je pretraživati i mnoge druge obrasce.
Na donjoj slici vidimo primer biranja otvarajućih i zatvarajućih HTML tagova:
Ako vam regularni izrazi deluju zanimljivo, možete (kada dođe vreme), baciti pogled na pomenuti članak, koji smo posvetili regularnim izrazima.
Automatski prelazak na određeni red upisivanjem rednog broja
Prelazak na određeni red svodi se na upisivanje rednog broja u konzolu koja se otvara preko sledeće prečice (važi za sve programe osim Vima) ....
- ctrlG- otvaranje konzole za upis rednog broja
.... a svakako dobro dođu i prečice za automatsko postavljanje tekstualnog kursora na početak i kraj dokumenta:
- ctrlhome- postavljanje na početak prve linije dokumenta
- ctrlend- postavljanje na početak poslednje linije dokumenta
Automatsko dodavanje novog reda
Prečice:
- ctrlenter- automatsko dodavanje novog reda ispod
- ctrlshiftenter- automatsko dodavanje novog reda iznad
Naizgled, ne baš "spektakularno bitne" opcije, ali, kada se naviknete, nedostajaće vam u programima koji ih ne podržavaju. :)
Za razliku od svih do sada navedenih opcija, poslednjih nekoliko opcija koje ćemo navesti, nisu dostupne u svim editorima, ali, svakako je zanimljivo razmotriti mogućnosti.
Automatsko biranje celog reda
Bez specijalizovane tastaturne prečice, biranje celog reda (takođe) ne predstavlja problem:
- preko tastera homekursor se može postaviti na početak reda
- naknadnim pozivom prečice shiftend- bira se ceo red
Ali, pojedini programi, kao što su Atom Editor, Visual Studio Code i Sublime Text, nude dodatnu opciju:
- ctrlL- automatsko biranje celog reda
.... što ceo zahvat čini još lakšim.
Automatsko biranje reči unutar koje se nalazi kursor / proširivanje selekcije
Kada je potrebno - u jednom potezu - izabrati reč unutar koje se tekstualni kursor nalazi (a slično važi i za deo teksta između zagrada, ili, za HTML tagove, pri čemu je svejedno na kojoj se poziciji u reči/unutar zagrada/u okviru taga kursor nalazi), moguće je koristiti sledeće prečice:
- ctrlD- biranje cele reči u okviru koje se kursor nalazi
- ctrlshiftM- proširivanje selekcije unutar zagrada
- ctrlshiftA- proširivanje selekcije unutar HTML taga
Navedene prečice dostupne su samo u programima Sublime Text i Atom Editor, * i radi se o prečicama koje u praksi VEOMA dobro dođu i znatno ubrzavaju rad (pošto se reč izabere, lako se može kopirati, brisati ili zameniti drugom niskom, a isto se odnosi i na pasuse i tagove).
Da sve bude još lepše, prečice za proširivanje selekcije, moguće je koristiti u kombinaciji sa narednom opcijom.
Uređivanje teksta u više redova odjednom
Za sam kraj smo ostavili "zvezdu večeri" - istovremeno uređivanje teksta u više redova (ali, kao što smo već naveli, u pitanju je opcija koja takođe (nažalost) nije dostupna u svim editorima).
Zamislite sledeći scenario (neka primer bude skroz jednostavan i razumljiv): tri linka koji se nalaze direktno jedan ispod drugog, uredno su formatirani, ali, nemaju pripisanu klasu - i zadatak je da se elementima pripiše klasa (problem se može rešiti lako, upotrebom komande "replace", ali, drugo rešenje koje navodimo - ipak deluje elegantnije i prirodnije).
Kursor prvo treba postaviti na početak prvog elementa liste ....
.... i potom, preko prečice CTRL+ALT+↓ (koju treba pozvati više puta), kursor se postavlja i u ostale redove.
Sada se više kursora nalazi na početku svakog reda (tj. pojavio se "višestruki kursor"), i moguće je kursor(e) slobodno "šetati" levo-desno i (takođe), moguće je brisati i dodavati znake.
Pomerićemo kursor(e) nekoliko mesta udesno, i svim izabranim linkovima dopisaćemo klasu.
Za sam kraj: sećate li se prečice CTRL+D?
Ukoliko se prečica upotrebi više puta, program će prvi put izabrati celu reč (unutar koje se kursor nalazi), a svaki sledeći put - sledeću pojavu izabrane reči, što se (naravno) može kombinovati sa opcijom za postavljanje kursora u više redova (inače to ne bismo pominjali na ovom mestu). :)
Uzećemo (ponovo) jednostavan primer koji lako možete zamisliti: recimo da smo u dva susedna reda, u tagovima <img>
naveli (greškom) sliku sa ekstenzijom ".jpg" (umesto ".png").
Potrebno je postaviti kursor unutar prvog "jpg", pokrenuti prečicu jednom (čime se bira cela reč "jpg"), i potom treba prečicu pozvati još jednom (čime se bira pojava niske "jpg" i u donjem redu).
Sada se kursor može pomerati strelicama, i možemo ručno brisati jedan-po-jedan znak (preko prečica: DEL ili BACKSPACE), a takođe je moguće (budući da su obe reči zapravo izabrane), odmah upisati novu ekstenziju (pri čemu će stara ekstenzija biti uklonjena već sa prvim dodatim znakom).
Kratak rezime ....
Iako komande i prečice koje su navedene u članku ne obuhvataju (naravno) "sve postojeće mogućnosti programa", naveli smo širok spektar opcija različite namene, koje su od velike pomoći u radu sa tekstom.
Pošto smo takođe i na kraju uvodnog serijala članaka o web dizajnu, nadamo se da smo vam pomogli u kreiranju prvih sajtova i potakli vas da i dalje samostalno istražujete ovu izuzetno zanimljivu oblast.
Sledeći korak je upoznavanje sa jezikom JavaScript, a potom (prema želji) - upoznavanje sa backend programiranjem (o čemu ćemo takođe uskoro pisati) ....