Kaut gan 2020. gads jau ir paguvis pārsteigt pasauli praktiski ar visu, 15. septembrim pietaupīju nelielu pārsteigumu arī no savas puses. Šodien aprit 15 gadi kopš es sāku rakstīt mrserge.lv blogu, jau pirmajā ierakstā nosmīkņājot par «Baltic Marketing&Advertising» žurnālā publicēto statistiku, ka Latvijā uz vienu iedzīvotāju gadā tiek izlietoti vien 70 kg papīra.
Kopš tā laika smīkņāt esmu iemācījies skarbāk, ar grafomāniju nodarboties plašāk un ik pa laikam atļauties arī kaut ko uzdāvināt uzticamajiem bloga lasītājiem (jā, jā, es zinu, smieklīgi kaut ko tādu rakstīt 2020. gadā).
Viena no tradīcijām, kas dažus gadus pēkšņi pamesta novārtā — līdz ar bloga dzimšanas dienu sagatavot aktuālo kalendāru plānotājiem–ķēpātājiem, kuru katrs pats var izdrukāt uz ofisa printera un lietot, kā vien ienāk prātā. Savukārt tad, ja Adobe InDesign nav svešs, ar katru kalendāra iterāciju pastāstu arī kādu jaunu knifu izklājprogrammas lietošanā.
Piezīme 2020.09.16. Lejuplādējamie faili atjaunoti uz 1.1 versiju (to var redzēt titullapā), jo acīgais Kristaps bija pamanījis, ka 31. jūlijs nekorekti bija nomarķēts kā darbadiena. Atjaunoti arī IDML, INDD un TXT faili.
Nepacietīgajiem saite uz drukas failu, ja nav vēlme iedziļināties sīkumos:
mrserge.lv kalendārs plānotājiem–ķēpātājiem 2021. gadam PDF formātā
Kaudzīte ar visiem darba failiem, lai varētu izklaidēties un pielāgot savām vajadzībām:
mrserge.lv kalendārs plānotājiem–ķēpātājiem 2021. gadam ZIP arhīvs ar INDD, IDML, PDF un papildus failiem
Plānotāju–ķēpātāju kalendārs 101
Tas ir standarta A4 portretformāta kalendārs ar 13 lapaspusēm (jo titullapa), un, tā kā visi objekti ir tekstā un vektoros, to var palielināt/samazināt drukai bez kvalitātes zudumiem uz jebkuru vēlamo A formātu.
Kā jau tas ir bijis iepriekš, arī šogad draudzīgais aicinājums visiem tiem, kas kalendāru ikdienā lietos (tostarp arī modificētās versijas), šī ieraksta komentāros iemest saites uz fotogrāfijām, aprakstiem un PDF failiem ar gatavajiem maketiem.
Līdzās nedēļu numerācijai, kalendārā iekļautas visas 2021. gada svinamās un svētku dienas, atzīmētas pārceltās darbadienas un, tā kā mēness fāzes vairs nav stilīgi, tās aizstātas ar saulgriežu dienām. Papildus pievienotas arī atzīmes par dienām, kurās ir jāgroza pulkstenis iestājoties vasaras un ziemas laikam. Tas tāpēc, ka Ekonomikas ministrijas 2019. gada solījums šo marazmu izbeigt līdz ar pāreju uz vasaras laiku 2021. gadā, pagaidām izskatās tikai pēc solījuma.
Kalendāram ir saglabāta galvenā funkcionalitāte — atstāts maksimāli daudz vietas, lai varētu to izmantot, darbojoties ar tādām pirmsdigitālā laikmeta smalkajām iekārtām kā zīmulis, pildspalva, flomasters, krītiņš un galu galā jebkas cits, kas spēj atstāt pēdas uz papīra. Jo papīrs pacieš visu.
Makets, tā uzbūve un nianses InDesign
Viss ir būvēts ar InDesign 15.1.2 un, tā kā saturs ir salīdzinoši vienkāršs, IDML fails vērsies vaļā arī uz vecajiem CS versiju InDesign. Trūkumi būs Nested Styles un Paragraph Style Options nianses, kas var nedarboties, bet tās nesalauzīs maketu. Identificēt «pārāk vecu» InDesign var titullapā: ja starp gadu un kalendāra nosaukumu nav līnija (kas ir rindkopai piešķirta īpašība) — jums ir samērā veca InDesign versija.
Saturs ir no savstarpēji salinkotiem teksta blokiem, kas katrā lapaspusē ir divi. Divi tāpēc, ka augšējais bloks ar mēneša un gada nosaukumu nolīdzināts pēc bloka augšmalas, savukārt tabula ar datumiem ir otrā blokā, kuram piešķirta īpašība nolīdzināt teksta blokus gar apakšējo malu. Attiecīgi nav ar roku jāčakarējas katrā mēnesī bīdot augstāk/zemāk tabulas, ja atšķiras nedēļu skaits mēnesī.
Stili ir definēti tabulām, tabulu šūnām, rindkopām un zīmēm (Table Styles, Cell Styles, Paragraph Styles, Character Styles), kas savā starpā ir saistīti. Ja ir vēlme nomainīt burvīgo Adobe fontu kolekcijas jaunumu Bely fontu, atliek to pārdefinēt rindkopu stiliem menesis
un diena
.
Rindkopas stilam menesis
ir papildus īpašība, ka nākamā rindkopa vienmēr sākas jaunā teksta laukā (Paragraph Style Options > Keep Options > Start Paragraph > In Next Frame).
Rindkopas stilam diena
ir papildus īpašība, ka nākamā rindkopa vienmēr būs stils svetku apraksts
(Paragraph Style Options > General > Next Style > svetku apraksts), tāpēc, ja gribās pievienot savas svinamdienas, atliek vienkārši aiz datuma iesist jaunu rindu un var sākt rakstīt.
Zīmju stili ir peleks
, sarkans
un svetki
. Ja par pirmajiem diviem viss ir skaidrs, tad pēdējais ir tāpēc, ka rindkopas stilam diena ir definēts arī Nested Style jeb pakārtotais stils (Paragraph Style Options > Drop Caps and Nested Styles > Nested Styles). Šis palīdzēs gadījumos, kad Enter vietā aiz datuma tiks uzsists Shift+Enter, jo arī tad teksts būs noformatēts pareizi.
Krāsu paletē ir Black
, red
, marker
un r32g31b27
krāsu lauki. Pēdējais atstāts jums pārdomām, reāli maketā izmantots netiek (patiesībā makets vispār izmanto tikai MYK un Cyan pat netiek izmantots, ja nu pēkšņi ofsetā taisīsieties dragāt). Mainot red
krāsu, mainīsies arī krāsa visām svinamdienām, ja manis izvēlētais tonis nenāk pie sirds.
Par veselības stāvokli, lasot tālāk, katrs atbild pats
Kalendārs pēc būtības ir samērā čakarīgs makets, jo katru gadu sanāk bakstīties ar vienu un to pašu elli, rociņām bakstot nianses vienu pēc otras. Daži nosper skriptus ar konstruktoriem, kas nav adaptēti latviešu valodai; citi atrod 12 gadus vecu maketu un cer, ka izšļūks cauri tikai ar pāris labojumiem; hardcore iesācēji baksta visu rociņām.
Šī gada maketam par pamatu ir uz ātru roku PHP uzprogrammēts skriptiņš, kas uzģenerēja kalendāra saturu un salika marķējumu starp dažādiem teksta elementiem. Rezultāts glabājas arhīvā pieejamajā failā 2021-kalendars-ar-svinamdienam.txt. Ja grib sākt no šī punkta, tad atveram šo failu ar teksta redaktoru (ne MS Word) un kopaina būs skaidra. Svinamdienas pievieno, uzreiz aiz datuma ieliekot tagu <br>
un aiz tā rakstot svinamdienas tekstu. Piemēram, ja gribam salikt vārdadienas visam gadam, tad arī tās būtu rakstāmas šādā veidā. Ja vienā dienā ir vairākas svinamās lietas, var katru atdalīt ar savu <br>
. Īpatnība šajā teksta dokumentā ir ir tāda, ka starp datumiem ir reāls unicode Tab simbols, kas būs nepieciešams vēlāk, darbojoties ar tekstu InDesign maketā. Marķējums dienām ir <d>
, <dG>
un <dR>
, attiecīgi norādot uz parastu dienu, pelēku (iepriekšējā vai nākamā mēneša) dienu un svinamdienu vai brīvdienu.
Kad teksts ir izbakstīts un svinamdienas saliktas, kopējam to InDesign dokumentā (ja tas nav manis taisītais dokuments, tad pirms teksta ievietošanas vajag pārkopēt no manis gatavotā dokumenta visas krāsas, teksta un tabulu stilus, jo tie tiks vēlāk izmantoti konvertācijās un skriptos).
Iezīmē no sākuma līdz beigām vienu pilnu mēnesi (no pirmās rindkopas līdz pēdējai, bet bez mēneša nosaukuma rindkopas) un pārkonvertējam uz tabulu Table > Convert Text to Table, atceroties izvēlēties tabulas stilu tabula menesim
.
Kad visiem mēnešiem tabulas ir uztaisītas, atveram Scripts paneli un tur sameklējam skriptu FindChangeByList.jsx. Tieši zem viņa būs arī folderis FindChangeSupport, kurā patlaban visticamāk ir tikai fails FindChangeList.txt Ar labo peles klikšķi uzklikšķinām uz šī faila un izvēlamies Reveal in Explorer un uztaisām oriģinālajam TXT dokumentam kopiju. Ja nu būs luste vairāk ar šo skriptu ņemties, tur ir dažādi piemēri iekšā, ar kuriem padarboties. Oriģināla vietā iekopējam FindChangeList.txt failu no arhīva un tad ar dubultklikšķi palaižam FindChangeByList.jsx skriptu. Kad maģija beigusies, iedziļināsimies, ko tad mēs tikko izdarījām.
Pēc būtības šis skritpts dara tikai vienu lietu: izpilda Find/Change logā definējamās darbības. Bet, atšķirībā no dialogloga, šeit var sarakstīt uzreiz vairākas darbības pēc kārtas un izpildīt tās visas pēc kārtas. Tāpēc jāatceras, ka izpildes secībai arī ir nozīme. Ar // var iezīmēt rindas komentāriem, tāpēc, atverot FindChangeList.txt ar parastu teksta redaktoru, uzreiz būs skaidrs, kas notika kurā darbībā (nocitēšu tikai dažus, pārējo skatieties dokumentā):
//ielikām jaunu rindu pirms katras svinamdienas grep {findWhat:"<br>"} {changeTo:"~b"} {includeFootnotes:false, includeMasterPages:false, includeHiddenLayers:false, wholeWord:false} //piešķīrām rindkopām pirms tam definētos stilus grep {findWhat:"<w>.+?.<w>"} {appliedParagraphStyle:"nedela"} {includeFootnotes:false, includeMasterPages:false, includeHiddenLayers:false, wholeWord:false} //piešķīrām zīmēm pirms tam definētos stilus grep {findWhat:"<dG>.+?.<d>"} {appliedCharacterStyle:"peleks"} {includeFootnotes:false, includeMasterPages:false, includeHiddenLayers:false, wholeWord:false} //un tā tālāk uz priekšu
Sintakse ir pašsaprotama un, kā jau minēju, papildus piemērus var meklēt oriģinālajā FindChangeList.txt failā, jo nekur citur šim skriptam dokumentāciju atrast neizdosies. Ja GREP ir svešs, tad šis var būt piņķerīgs pasākums, bet var definēt arī parasto Search/Replace, tikai tad nāksies iztikt bet papildus funkcionalitātes, ko piedāvā regulārās izteiksmes. Par regulārajām izteiksmēm un to lietošanu InDesign es jau sen gribu uzrakstīt, tāpēc, ja tas šķiet saistoši, pabakstiet komentāros, lai varu saņemties.
Kad šis darīts, pārējais jau ir iepriekš definētie stili, kas visu saliek pa plauktiņiem. Vienīgi tabulas būs jāsabīda pašiem pareizos izmēros, jo to ar vienkāršu skriptu izdarīt nevar, bet sarežģītu skriptu man bija slinkums rakstīt. Tā kā tabulas ir tikai 12 un parametri ir jāiedauza tikai vienreiz (30 mm augstums, 25,3 mm platums un 3 mm platums pirmajai kolonnai), tad izdarīt to rociņām sanāca ātrāk par skripta rakstīšanu.
Veiksmi lietošanā un lai labi nosvinās mrserge.lv 15 gadi!