diff options
Diffstat (limited to 'macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv')
-rw-r--r-- | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv | 1507 |
1 files changed, 1507 insertions, 0 deletions
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv new file mode 100644 index 0000000000..4ca5f86989 --- /dev/null +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv @@ -0,0 +1,1507 @@ +%D \module +%D [ file=t-pocketdiary, +%D version="2023-04-15", +%D title=PocketDiary \CONTEXT\ User Module, +%D subtitle=PocketDiary, +%D author=Willi Egger, +%D date=\currentdate, +%D copyright=Willi Egger, +%D email=w.egger@boede.nl, +%D license=Public Domain] + +\startmodule[pocketdiary] + +\writestatus{loading}{ConTeXt User Module / PocketDiary} + +%D \startsubject[title={Introduction}] +%D +%D It is already some time ago, that my brother Heinz asked me to prepare him a +%D special page-arrangement scheme. +%D This scheme is suitable to form a section with a single-sided printed sheet +%D of paper. +%D He wanted to use it for special kind of greeting-cards. By coincidence I +%D detected an article by U. Ziegenhagen in de \TEX nische +%D Kommödie nr. 3/2010. This article deals with the preparation of a PocketMod, +%D which is a personal organizer +%D based on the mentioned arranging scheme. In the article there is also a +%D link mentioned to an online +%D version of the PocketMod. (http://www.pocketmod.com/). +%D -- After reading the article and visiting the web-site I got +%D intrigued by the fact, that \CONTEXT\ has built in arranging capabilities +%D and +%D due to the \LUATEX\ engine and herewith the possibility to perform +%D calculations in Lua it +%D should be possible to build such a personal organizer in \CONTEXT. +%D +%D The result is contained in this module. I would like to thank Hans Hagen +%D and Taco Hoekwater for the great +%D \LUATEX\ machinery and Wolfgang Schuster for supporting me in tackling +%D the multi-lingual interface. +%D +%D After the first version in 2011, we are now 11 years older, a lot +%D has changed in and around the \CONTEXT +%D -machinery. We are now using \LMTX\ (\LUAMETATEX ) the latest development. +%D +%D During the \CONTEXT -meeting 2021 Thomáš Hála presented his solution +%D for generating an agenda, while the shops were closed during the Covid-19 +%D pandemic. Discussing issues with calendars revealed, that it could be +%D interesting to integrate into a calendar also data concerning the moon +%D phase and possibly information on the sun rise and sun set time. +%D +%D I thought, that I would like to do such calculations and give it a try. +%D After having found information how to perform such astronomical +%D calculations, slowly two new modules appeared. The calculations of the +%D moon phases is quite straight forward and this can be considered the +%D easy part of the new development. The only remark must be made, that +%D those calculations are not super accurate. A deviation of about 1 day has +%D to be accepted. +%D +%D Finding a way to calculate the sun rise and sun set times is much more +%D tedious. Collecting articles on such calculations and building the +%D formulas in Lua is not the issue, but that the given information in those +%D articles looks +%D incomplete for a layman like me. -- Finally I found a Lua-module written for +%D an +%D application for presenting the required data on screen (the reference +%D to the authors is given in the Lua-file for the sun data calculations). +%D I adapted +%D this to Lua/\CONTEXT\ and it looks like it works fine. -- I have a Raspberry +%D Pi Nano with a screen attached where I display weather information together +%D with the sun data, which are fetched from the Open Weather Map +%D (https://openweathermap.org). Due to the fact that the development of the +%D solar data module took a long time I was able to compare the calculated +%D results with those displayed on the Raspberry Pi screen. Happily they are +%D completely congruent. +%D +%D \blank[big] +%D +%D Without the help of Hans Hagen, this module would not have been finished. I +%D would like to thank him for all the support and patience with my struggles! +%D \stopsubject + +%D \startsubject[title={Subpaths}] + +%D In order to keep the hole module clearly organized the moon phase +%D as well as the sun rise/set calculation files are situated in +%D separate folders. +%D We tell \CONTEXT\ where to find the requested files + +\usepath[{Moonphase,Solar}] + +%D \stopsubject + +%D \startsubject[title={Lua-files}] +%D All calculations for dates are performed with Lua functions. +%D The functions are contained in \type{t-calendar.lua} + +%\ctxloadluafile{t-calendar}{} +\ctxloadluafile{t-calendar}{} + +%D The calculations for the moon phase are done by Lua functions. +%D The functions are contained in \type{t-moonphase.lua} +%D in the folder \quotation{Moonphase} + +\ctxloadluafile{t-moonphase}{} + +%D The calculations for the sun rise and set time are calculated in Lua too. +%D The +%D functions are contained in the file \type{t-solar.lua} in the folder +%D \quotation{Solar} + +\ctxloadluafile{t-solar}{} +%D \stopsubject + +%D \startsubject[title={International interface}] +%D +%D The PocketDiary is aware of different languages. The language to be used is +%D selected with \type{\mainlanguage[en]}. The following interfaces +%D are available +%D +%D \startitemize[2,packed] +%D \item Englisch interface +%D \item Dutch interface +%D \item German interface +%D \item Italian interface +%D \item French interface +%D \item Spanish interface +%D \item Polish interface +%D \stopitemize +%D \stopsubject + +%D English interface +\setuplabeltext[en][calendar=Calendar] +\setuplabeltext[en][weekagenda=Week calendar] +\setuplabeltext[en][week=Week] +\setuplabeltext[en][month=Month] +\setuplabeltext[en][contact=Contact] +\setuplabeltext[en][name=Name] +\setuplabeltext[en][address=Address] +\setuplabeltext[en][zip=Zip] +\setuplabeltext[en][place=Place] +\setuplabeltext[en][country=Country] +\setuplabeltext[en][phone=Phone] +\setuplabeltext[en][mail=e-mail] +\setuplabeltext[en][notes=Notes] +\setuplabeltext[en][todo=Todo] +\setuplabeltext[en][found={If found\textcomma\ please return to:}] + +\setuplabeltext[en][nyd={New Year's Day}] +\setuplabeltext[en][epi={Epiphany}] +\setuplabeltext[en][ashw={Ash Wednesday}] +\setuplabeltext[en][palms={Palm Sunday} ] +\setuplabeltext[en][gfri={Good Friday} ] +\setuplabeltext[en][esun={Easter Sunday}] +\setuplabeltext[en][esmo={Easter Monday}] +\setuplabeltext[en][ascd={Ascension Day}] +\setuplabeltext[en][pcst=Pentecost] +\setuplabeltext[en][pcstmo={Pentecost Monday}] +\setuplabeltext[en][xmas=Christmas] +\setuplabeltext[en][bxd={Boxing Day}] +\setuplabeltext[en][day=Day] +\setuplabeltext[en][mon=Mon] +\setuplabeltext[en][tue=Tue] +\setuplabeltext[en][wed=Wed] +\setuplabeltext[en][thu=Thu] +\setuplabeltext[en][fri=Fri] +\setuplabeltext[en][sat=Sat] +\setuplabeltext[en][sun=Sun] + +\setuplabeltext[en][january=January] +\setuplabeltext[en][february=February] +\setuplabeltext[en][march=March] +\setuplabeltext[en][april=April] +\setuplabeltext[en][may=May] +\setuplabeltext[en][june=June] +\setuplabeltext[en][july=July] +\setuplabeltext[en][august=August] +\setuplabeltext[en][september=September] +\setuplabeltext[en][october=October] +\setuplabeltext[en][november=November] +\setuplabeltext[en][december=December] + +\setuplabeltext[en][moondays=Lunar days] +\setuplabeltext[en][moon=Moon] +\setuplabeltext[en][sunrise=Sunrise] +\setuplabeltext[en][sunset=Sunset] +\setuplabeltext[en][lighthours=Lighthours] +\setuplabeltext[en][sunstar=Sun] + +%D German interface +\setuplabeltext[de][calendar=Planer] % Terminkalender, Kalender +\setuplabeltext[de][weekagenda=Wochenagenda] +\setuplabeltext[de][week=Woche] +\setuplabeltext[de][month=Monat] +\setuplabeltext[de][contact=Kontakt] +\setuplabeltext[de][name=Name] +\setuplabeltext[de][address=Adresse] +\setuplabeltext[de][zip=Postleitzahl] +\setuplabeltext[de][place=Ort] +\setuplabeltext[de][country=Land] +\setuplabeltext[de][phone=Telefon] +\setuplabeltext[de][mail=e-Mail] +\setuplabeltext[de][notes=Notizen] +\setuplabeltext[de][todo={Zu erledigen}] +\setuplabeltext[de][found={Wenn gefunden\textcomma\ bitte retournieren an:}] + +\setuplabeltext[de][nyd=Neujahr] +\setuplabeltext[de][epi=Dreikönigstag] +\setuplabeltext[de][ashw=Aschermittwoch] +\setuplabeltext[de][palms=Palmsonntag] +\setuplabeltext[de][gfri=Karfreitag] +\setuplabeltext[de][esun=Ostern] +\setuplabeltext[de][esmo=Ostermontag] +\setuplabeltext[de][ascd=Himmelfahrt] +\setuplabeltext[de][pcst=Pfingsten] +\setuplabeltext[de][pcstmo=Pfingstmontag] +\setuplabeltext[de][xmas=Weihnachten] +\setuplabeltext[de][bxd=Stephanstag] +\setuplabeltext[de][day=Tag] +\setuplabeltext[de][mon=Mo] +\setuplabeltext[de][tue=Di] +\setuplabeltext[de][wed=Mi] +\setuplabeltext[de][thu=Do] +\setuplabeltext[de][fri=Fr] +\setuplabeltext[de][sat=Sa] +\setuplabeltext[de][sun=So] + +\setuplabeltext[de][january=Januar] +\setuplabeltext[de][february=Februar] +\setuplabeltext[de][march=März] +\setuplabeltext[de][april=April] +\setuplabeltext[de][may=Mai] +\setuplabeltext[de][june=Juni] +\setuplabeltext[de][july=Juli] +\setuplabeltext[de][august=August] +\setuplabeltext[de][september=September] +\setuplabeltext[de][october=Oktober] +\setuplabeltext[de][november=November] +\setuplabeltext[de][december=Dezember] + +\setuplabeltext[de][moondays=Mondtage] +\setuplabeltext[de][moon=Mond] +\setuplabeltext[de][sunrise=Sonnenaufgang] +\setuplabeltext[de][sunset=Sonnenuntergang] +\setuplabeltext[de][lighthours=Taglichtstunden] +\setuplabeltext[de][sunstar=Sonne] + +%D Dutch interface +\setuplabeltext[nl][calendar=Kalender] +\setuplabeltext[nl][weekagenda=Weekagenda] +\setuplabeltext[nl][week=Week] +\setuplabeltext[nl][month=Maand] +\setuplabeltext[nl][contact=Kontakt] +\setuplabeltext[nl][name=Naam] +\setuplabeltext[nl][address=Adres] +\setuplabeltext[nl][zip=Postcode] +\setuplabeltext[nl][place=Plaats] +\setuplabeltext[nl][country=Land] +\setuplabeltext[nl][phone=Tel.] +\setuplabeltext[nl][mail=e-mail] +\setuplabeltext[nl][notes=Notities] +\setuplabeltext[nl][todo=Todo] +\setuplabeltext[nl][found={Wanneer gevonden\textcomma\ aub sturen naar:}] + +\setuplabeltext[nl][nyd={Nieuw jaar}] +\setuplabeltext[nl][epi=Driekoningen] +\setuplabeltext[nl][ashw=Aswoensdag] +\setuplabeltext[nl][palms=Palmpasen] +\setuplabeltext[nl][gfri={Goede vrijdag}] +\setuplabeltext[nl][esun=Pasen] +\setuplabeltext[nl][esmo={2\high{de} Paasdag}] +\setuplabeltext[nl][ascd=Hemelvaart] +\setuplabeltext[nl][pcst=Pinksteren] +\setuplabeltext[nl][pcstmo={2\high{de} Pinksterdag}] +\setuplabeltext[nl][xmas=Kerst] +\setuplabeltext[nl][bxd={2\high{de} Kerstdag}] +\setuplabeltext[nl][day=Dag] +\setuplabeltext[nl][mon=Ma] +\setuplabeltext[nl][tue=Di] +\setuplabeltext[nl][wed=Woe] +\setuplabeltext[nl][thu=Do] +\setuplabeltext[nl][fri=Fr] +\setuplabeltext[nl][sat=Za] +\setuplabeltext[nl][sun=Zo] + +\setuplabeltext[nl][january=Januari] +\setuplabeltext[nl][february=Febrari] +\setuplabeltext[nl][march=Maart] +\setuplabeltext[nl][april=April] +\setuplabeltext[nl][may=Mei] +\setuplabeltext[nl][june=Juni] +\setuplabeltext[nl][july=Juli] +\setuplabeltext[nl][august=Augustus] +\setuplabeltext[nl][september=September] +\setuplabeltext[nl][october=October] +\setuplabeltext[nl][november=November] +\setuplabeltext[nl][december=December] + +\setuplabeltext[nl][moondays=Maandagen] +\setuplabeltext[nl][moon=Maan] +\setuplabeltext[nl][sunrise=Zonsopg.] +\setuplabeltext[nl][sunset=Zonsonderg.] +\setuplabeltext[nl][lighthours=Lichturen] +\setuplabeltext[nl][sunstar=Zon] + +%D French interface +\setuplabeltext[fr][calendar=Calendrier] +\setuplabeltext[fr][weekagenda={Cal. de la semaine}] +\setuplabeltext[fr][week=Sem.] +\setuplabeltext[fr][month=Mois] +\setuplabeltext[fr][contact=Contact] +\setuplabeltext[fr][name=Nom] +\setuplabeltext[fr][address=Adresse] +\setuplabeltext[fr][zip=CP] +\setuplabeltext[fr][place=Lieu] +\setuplabeltext[fr][country=Pays] +\setuplabeltext[fr][phone=Tél.] +\setuplabeltext[fr][mail=e-mail] +\setuplabeltext[fr][notes=Observations] +\setuplabeltext[fr][todo=Tâches] +\setuplabeltext[fr][found={Si trouvé\textcomma\ retourner s.v.p. à: }] + +\setuplabeltext[fr][nyd={Jour de l'an}] +\setuplabeltext[fr][epi={Épiphany}] +\setuplabeltext[fr][ashw={Mercredi des Cendres}] +\setuplabeltext[fr][palms={Dimanche des Rameaux}] +\setuplabeltext[fr][gfri={Vendredi saint}] +\setuplabeltext[fr][esun={Pâques}] +\setuplabeltext[fr][esmo={Lundi de Pâques}] +\setuplabeltext[fr][ascd={Jour de l'ascension}] +\setuplabeltext[fr][pcst=Pentecôte] +\setuplabeltext[fr][pcstmo={Lundi de Pentecôte}] +\setuplabeltext[fr][xmas=Noël] +\setuplabeltext[fr][bxd=] +\setuplabeltext[fr][day=Jour] +\setuplabeltext[fr][mon=Lun] +\setuplabeltext[fr][tue=Mar] +\setuplabeltext[fr][wed=Mer] +\setuplabeltext[fr][thu=Jeu] +\setuplabeltext[fr][fri=Ven] +\setuplabeltext[fr][sat=Sam] +\setuplabeltext[fr][sun=Dim] + +\setuplabeltext[fr][january=Janvier] +\setuplabeltext[fr][february=Février] +\setuplabeltext[fr][march=Mars] +\setuplabeltext[fr][april=Avril] +\setuplabeltext[fr][may=Mai] +\setuplabeltext[fr][june=Juin] +\setuplabeltext[fr][july=Juillet] +\setuplabeltext[fr][august=Août] +\setuplabeltext[fr][september=Septembre] +\setuplabeltext[fr][october=Octobre] +\setuplabeltext[fr][november=Novembre] +\setuplabeltext[fr][december=Décembre] + +\setuplabeltext[fr][moondays=Jours lun.] % jours lunaires +\setuplabeltext[fr][moon=Lune] +\setuplabeltext[fr][sunrise=Lever du s.] %soleil +\setuplabeltext[fr][sunset=Coucher du s.] %soleil +\setuplabeltext[fr][lighthours=Heures de l.] %lumière +\setuplabeltext[fr][sunstar=Soleil] + +% Italian interface +\setuplabeltext[it][calendar=Calendario] +\setuplabeltext[it][weekagenda=Calendario di settimana] +\setuplabeltext[it][week=Sett.] %Settimana +\setuplabeltext[it][month=Mese] +\setuplabeltext[it][contact=Contatto] +\setuplabeltext[it][name=Nome] +\setuplabeltext[it][address=Indirizzo] +\setuplabeltext[it][zip=C.A.P.] +\setuplabeltext[it][place=Luogo] +\setuplabeltext[it][country=Paese] +\setuplabeltext[it][phone=Tel.] +\setuplabeltext[it][mail=e-mail] +\setuplabeltext[it][notes=Osservazioni] +\setuplabeltext[it][todo=Compiti] +\setuplabeltext[it][found={Se trovato\textcomma\ prego speditelo à:}] + +%D Italian interface +\setuplabeltext[it][nyd=Capodanno] +\setuplabeltext[it][epi={Epifania}] +\setuplabeltext[it][ashw={Giorno delle Ceneri}] +\setuplabeltext[it][palms={Domenica delle Palme}] +\setuplabeltext[it][gfri={Venerdi santo}] +\setuplabeltext[it][esun=Pasqua] +\setuplabeltext[it][esmo={Lunedì dell'Angelo}] +\setuplabeltext[it][ascd=Ascensione] +\setuplabeltext[it][pcst=Pentecoste] +\setuplabeltext[it][pcstmo={Lunedì di Pentecoste}] +\setuplabeltext[it][xmas=Natale] +\setuplabeltext[it][bxd={Giorno di S. Stefano}] +\setuplabeltext[it][day=Giorno] +\setuplabeltext[it][mon=Lun] +\setuplabeltext[it][tue=Mar] +\setuplabeltext[it][wed=Mer] +\setuplabeltext[it][thu=Gio] +\setuplabeltext[it][fri=Ven] +\setuplabeltext[it][sat=Sab] +\setuplabeltext[it][sun=Dom] + +\setuplabeltext[it][january=Gennaio] +\setuplabeltext[it][february=Febbraio] +\setuplabeltext[it][march=Marzo] +\setuplabeltext[it][april=Aprile] +\setuplabeltext[it][may=Maggio] +\setuplabeltext[it][june=Giugno] +\setuplabeltext[it][july=Luglio] +\setuplabeltext[it][august=Agosto] +\setuplabeltext[it][september=Settembre] +\setuplabeltext[it][october=Ottobre] +\setuplabeltext[it][november=Novembre] +\setuplabeltext[it][december=Dicembre] + +\setuplabeltext[it][moondays=Giorni lun.] %Giorni lunari +\setuplabeltext[it][moon=Luna] +\setuplabeltext[it][sunrise=Albo] +\setuplabeltext[it][sunset=Tramonto] +\setuplabeltext[it][lighthours={O. di luce}] %Ore di luce +\setuplabeltext[it][sunstar=Sole] + +%D Spanish interface +\setuplabeltext[es][calendar=Agenda] +\setuplabeltext[es][weekagenda=Agenda semanal] +\setuplabeltext[es][week=Sem.] %Semana +\setuplabeltext[es][month=Mes] +\setuplabeltext[es][contact=Contacto] +\setuplabeltext[es][name=Nombre] +\setuplabeltext[es][address=Dirección] +\setuplabeltext[es][zip=C.P.] +\setuplabeltext[es][place=Población] +\setuplabeltext[es][country=País] +\setuplabeltext[es][phone=Tel.] +\setuplabeltext[es][mail=Correo-e] +\setuplabeltext[es][notes=Observaciones] +\setuplabeltext[es][todo=Pendiente] +\setuplabeltext[es][found={Por favor\textcomma\ devuélvalo a:}] + +\setuplabeltext[es][nyd=Año Nuevo] +\setuplabeltext[es][epi={Reyes Magos}] +\setuplabeltext[es][ashw={Miércoles de Ceniza}] +\setuplabeltext[es][palms={Domingo de Palmas}] +\setuplabeltext[es][gfri={Viernes santo}] +\setuplabeltext[es][esun=Domingo de Pascua] +\setuplabeltext[es][esmo={Lunes de Pascua}] +\setuplabeltext[es][ascd=Ascensión] +\setuplabeltext[es][pcst=Pentecostes] +\setuplabeltext[es][pcstmo={Lunes de Pentecostes}] +\setuplabeltext[es][xmas=Navidad] +\setuplabeltext[es][bxd={San Esteban}] +\setuplabeltext[es][day=Día] +\setuplabeltext[es][mon=Lu] +\setuplabeltext[es][tue=Ma] +\setuplabeltext[es][wed=Mi] +\setuplabeltext[es][thu=Ju] +\setuplabeltext[es][fri=Vi] +\setuplabeltext[es][sat=Sá] +\setuplabeltext[es][sun=Do] + +\setuplabeltext[es][january=Enero] +\setuplabeltext[es][february=Febrero] +\setuplabeltext[es][march=Marzo] +\setuplabeltext[es][april=Abril] +\setuplabeltext[es][may=Mayo] +\setuplabeltext[es][june=Junio] +\setuplabeltext[es][july=Julio] +\setuplabeltext[es][august=Agosto] +\setuplabeltext[es][september=Septiembre] +\setuplabeltext[es][october=Octubre] +\setuplabeltext[es][november=Noviembre] +\setuplabeltext[es][december=Diciembre] + +\setuplabeltext[es][moondays=Días lunares] +\setuplabeltext[es][moon=Luna] +\setuplabeltext[es][sunrise=Alba] +\setuplabeltext[es][sunset=Ocaso] +\setuplabeltext[es][lighthours={Horas de luz}] +\setuplabeltext[es][sunstar=Sol] + +%D Polish interface +\setuplabeltext[pl][calendar=Kalendarz] +\setuplabeltext[pl][weekagenda={Kalendarz tygodniowy}] +\setuplabeltext[pl][week=Tydzień] +\setuplabeltext[pl][month=Miesiąc] +\setuplabeltext[pl][contact=Kontakt] +\setuplabeltext[pl][name=Nazwisko] +\setuplabeltext[pl][address=Adres] +\setuplabeltext[pl][zip=Kod pocztowy] +\setuplabeltext[pl][place=Miejsce zamieszkania] +\setuplabeltext[pl][country=Kraj] +\setuplabeltext[pl][phone=Telefon] +\setuplabeltext[pl][mail=e-mail] +\setuplabeltext[pl][notes=Notatki] +\setuplabeltext[pl][todo=Do zrobienia] +\setuplabeltext[pl][found={W przypadku znalezienia proszę o odesłanie na adres}] + +\setuplabeltext[pl][nyd={Nowy Rok}] +\setuplabeltext[pl][epi={Trzech Króli}] +\setuplabeltext[pl][ashw={Środa Popielcowa}] +\setuplabeltext[pl][palms={Niedziela Palmowa} ] +\setuplabeltext[pl][gfri={Wielki Piątek} ] +\setuplabeltext[pl][esun={Niedziela Wielkanocna}] +\setuplabeltext[pl][esmo={Pn. Wielkanocny}] +\setuplabeltext[pl][ascd={Wniebowstąpienie}] +\setuplabeltext[pl][pcst={Zesłanie Ducha Świętego}] +\setuplabeltext[pl][pcstmo={}] +\setuplabeltext[pl][xmas=Święta] %Święta Bożego Narodzenia . +\setuplabeltext[pl][bxd={Drugi dzień świąt}] +\setuplabeltext[pl][day=Dzień] +\setuplabeltext[pl][mon=Pn.] +\setuplabeltext[pl][tue=Wt.] +\setuplabeltext[pl][wed=Śr.] +\setuplabeltext[pl][thu=Czw.] +\setuplabeltext[pl][fri=Pt.] +\setuplabeltext[pl][sat=Sob.] +\setuplabeltext[pl][sun=Ndz.] + +\setuplabeltext[pl][january=Styczeń] +\setuplabeltext[pl][february=Luty] +\setuplabeltext[pl][march=Marzec] +\setuplabeltext[pl][april=Kwiecień] +\setuplabeltext[pl][may=Maj] +\setuplabeltext[pl][june=Czerwiec] +\setuplabeltext[pl][july=Lipiec] +\setuplabeltext[pl][august=Sierpień] +\setuplabeltext[pl][september=Wrzesień] +\setuplabeltext[pl][october=Październik] +\setuplabeltext[pl][november=Listopad] +\setuplabeltext[pl][december=Grudzień] + +\setuplabeltext[pl][moondays=Dzień lunarny] +\setuplabeltext[pl][moon=Księżyc] +\setuplabeltext[pl][sunrise={Wschód słońca}] +\setuplabeltext[pl][sunset={Zachód słońca}] +\setuplabeltext[pl][lighthours=Długość dnia] +\setuplabeltext[pl][sunstar=Słońce] + +%D \startsubject[title={PocketDiary layout}] +%D +%D This module uses different page templates, whereof one uses a symbol +%D out of the set 2 of the Martin Vogel collection. So we load these symbols: + +\usesymbols[mvs] +\setupsymbolset[martinvogel 2] + +%D The placement of the page numbers is switched off for the moment. + +\setuppagenumbering[location=] + +%D Because we will place 8 pages on an A4 landscape, we define our own pagesize + +\definepapersize[Arrangingformat][width=7.42cm, height=10.5cm] +\setuppapersize[Arrangingformat][A4,landscape] + +%D In the templates a light gray color for (grid)lines is used. Separator +%D lines can have +%D an individual color too. We define the two colors with arbitrary values. +%D These preset colors can be adjusted in the user file \type{PocketDiary.tex}. + +\definecolor[Grid][s=.75] +\definecolor[Separatorline][blue] + +%D The page of the PocketDiary has a fairly simple layout. We use a +%D header- and a footer-space. +%D The header has a rule beneath and the footer one on top. +%D +%D The preset body-font is Pagella at 10pt +%D +%D We will also use tabular figures throughout the typesetting: +%D \stopsubject + +\setuplayout + [topspace=.6cm, + backspace=.6cm, + header=3\bodyfontsize, + headerdistance=.5\bodyfontsize, + footer=1.2\bodyfontsize, + footerdistance=.5\bodyfontsize, + margin=0pt, + height=middle, + width=middle] + +\setupbackgrounds + [header] + [text] + [state=repeat, + frame=off, + bottomframe=on, + framecolor=\getvariable{PocketDiaryColors}{Separatorline}] + +\setupbackgrounds + [footer] + [text] + [state=repeat, + frame=off, + topframe=on, + framecolor=\getvariable{PocketDiaryColors}{Separatorline}] + +\setupbodyfont[pagella,rm,10pt] +\definefontfeature[f:tabular] [tnum=yes] +\definefontfeature[f:smallcaps][smcp=yes] + +\addfeature[f:tabular] + +%D \startsubject[title={\METAFUN\ drawings}] +%D +%D There are three templates which are made up in \METAPOST. The drawings are +%D used as backgrounds to the typesetting area in the form of an overlay. So the +%D drawings adapt themselves to the actual dimensions +%D \stopsubject + +\startuniqueMPgraphic{Caro} + numeric w; w:= floor(OverlayWidth/4mm); + numeric h; h:= floor((OverlayHeight)/4mm); + path p,q; + p := unitsquare xscaled (4mm*w) yscaled (4mm*h); + q:= ulcorner p -- llcorner p; + for i = 0 upto w : + draw q shifted (i*4mm,0) withpen pencircle scaled .5pt + withcolor \MPcolor{Grid}; + endfor; + q:= llcorner p -- lrcorner p; + for i = 0 upto h : + draw q shifted (0,i*4mm) withpen pencircle scaled .5pt + withcolor \MPcolor{Grid}; + endfor; +\stopuniqueMPgraphic + +\startuniqueMPgraphic{Lines} + numeric w; w:= OverlaytWidth; + numeric h; h:= floor(OverlayHeight/7mm); + path p,q; + p := unitsquare xscaled OverlayWidth yscaled (7mm*(h-1)); + q:= llcorner p -- lrcorner p; + for i = 1 upto (h-1) : + draw q shifted (0,i*7mm) withpen pencircle scaled .5pt + withcolor \MPcolor{Grid}; + endfor; +\stopuniqueMPgraphic + +\startuniqueMPgraphic{Todo} + numeric w; w:= OverlayWidth; + numeric h; h:= floor(OverlayHeight/8mm); + path p,q; + p := unitsquare xscaled OverlayWidth yscaled OverlayHeight; + q:= llcorner p -- lrcorner p; + for i = 0 upto h : + draw q shifted (0,i*7mm) withpen pencircle scaled .5pt + withcolor \MPcolor{Grid}; + label.top(textext("\tfd \symbol[HollowBox]"), point 0 of q + shifted (2mm,i*7mm)); + endfor; +\stopuniqueMPgraphic + +%D \startsubject[title={The moon phase}] +%D +%D The moon phase calculation from SubsySTEMs, an American education institute, +%D for this module is based on a simple calculation. +%D The consequence is, that the results give a good idea only of the moon phase +%D but this is most probably precise enough for the purpose of the diary. +%D The return value of the moon phase calculation can be either a number, +%D representing the day number in the lunar month, or a command to put a +%D \METAFUN -graphic (New moon, growing moon, full moon, waning moon). +%D These little graphics are stored in the file \type{moons-MP.tex}. + +\input moons-MP + +%D In this file 4 overlays are defined which are used in a dedicated +%D \type{\framed[]{}} to typeset the pictograms. +%D +%M \input ./Moonphase/moons-MP +%M \defineoverlay[waningmoon][\useMPgraphic{Moon::Waning_moon}] +%M \defineoverlay[growingmoon][\useMPgraphic{Moon::Growing_moon}] +%M \defineoverlay[newmoon][\useMPgraphic{Moon::Newmoon}] +%M \defineoverlay[fullmoon][\useMPgraphic{Moon::Fullmoon}] +%M \defineframed +%M [Moon] +%M [height=1.5\bodyfontsize, +%M width=1.5\bodyfontsize, +%M frame=off] +%D +%D \starttabulate[|l|r|l|] +%D \NC \bf Moon phase +%D \NC \bf Lunar day +%D \NC \bf Macro +%D \NC \bf Pictogram \NC\NR +%D \NC New moon +%D \NC 0 +%D \NC \type{\Moon[background=newmoon]{}} +%D \NC \Moon[background=newmoon]{} \NC\NR +%D \NC Growing moon +%D \NC 7 +%D \NC \type{\Moon[background=growingmoon]{}} +%D \NC \Moon[background=growingmoon]{} \NC\NR +%D \NC Full moon +%D \NC 15 +%D \NC \type{\Moon[background=fullmoon]{}} +%D \NC \Moon[background=fullmoon]{} \NC\NR +%D \NC Waning moon +%D \NC 22 +%D \NC \type{\Moon[background=waningmoon]{}} +%D \NC \Moon[background=waningmoon]{} \NC\NR +%D \stoptabulate +%D \stopsubject + +%D \startsubject[title=Sun pictograms] +%D +%D The calculations for the sun rise and sun set times is based on work of +%D Alexander Yakushev. The results of his calculations nicely correspond with +%D results obtained from the Open Weather Map website. +%D +%D For sunrise, sunset and light hours exist three \METAFUN\ drawings. +%D These are included in the directory \type{Solar} in the file +%D \type{sun-MP.tex}. + +\input sun-MP + +%D In this file 3 overlays are defined which can then be used as a +%D background in a dedicated framed environment. +%M \input ./solar/sun-MP +%M \defineoverlay[Sunrise][\useMPgraphic{Sun::Sunrise}] +%M \defineoverlay[Sunset][\useMPgraphic{Sun::Sunset}] +%M \defineoverlay[Light][\useMPgraphic{Sun::Light}] +%M \defineframed +%M [SunA] +%M [strut=yes, +%M height=\lineheight, +%M width=\emwidth, +%M frame=off, +%M offset=0pt] +%M +%M \defineframed +%M [SunB] +%M [strut=yes, +%M height=\lineheight, +%M width=\emwidth, +%M frame=off, +%M offset=0pt, +%M location=depth] +%D +%D \starttabulate[|l|l|l|] +%D \NC \bf Sun +%D \NC \bf Macro +%D \NC \bf Pictogram \NC\NR +%D \NC Sunrise +%D \NC \type{\SunA[background=Sunrise,height=8pt]{\strut}} +%D \NC \SunA[background=Sunrise,height=8pt]{\strut} \NC\NR +%D \NC Sunset +%D \NC \type{\SunA[background=Sunset,height=8pt]{\strut}} +%D \NC \SunA[background=Sunset,height=8pt]{\strut} \NC\NR +%D \NC Light hours +%D \NC \type{\SunB[background=Light,height=8pt]{\strut}} +%D \NC \SunB[background=Light,height=8pt]{\strut} \NC\NR +%D \stoptabulate +%D \stopsubject + +%D \startsubject[title={The variable sets}] +%D +%D The module uses six sets of variables. The first set contains +%D the information on the +%D calendars to be calculated. + +%D First of all it has to be stated, that the whole idea behind +%D this module is to prepare a personal organizer with as few +%D parameters as possible. After the initial setup of the variables +%D it is sufficient to adapt the values in the first set and once +%D every year the information on the dates of the Day Light Saving +%D Time in the last set must be adjusted. +%D +%D \startsubsubject[title={Variable set \bf PocketDiary}] +%D +%D \starttabulate[|l|l|p|] +%D \NC \bf Variable \NC \bf Value \NC \bf Comment \NC\NR +%D \NC WeekDay \NC number \NC Values between 1 and 7. \NC\NR +%D \NC Week \NC number \NC Values between 1 and 53 \NC\NR +%D \NC Month \NC number \NC Values between 1 and 12 \NC\NR +%D \NC Year \NC number \NC Year numbers in the range 1900 and 4099. +%D The lower limit is computer dependent (OS-timestamp), the upper limit +%D is depending on the Easter Sunday calculation.\crlf +%D (http://www.assa.org.au/edm.html, R.W. Mallen, 1985).\NC\NR +%D \NC Nextyear \NC yes/no \NC The testing is done on \quote{yes}. If set +%D to \quote{yes} the next year instead of the current year is used for +%D the calculation of the year calendar. \NC\NR +%D \NC Daybyday \NC yes/no \NC The testing is done on \quote{yes}. If this +%D variable is set to \quote{yes} then a diary is typeset with 1 page per +%D day and the weekend is typeset with Saturday and Sunday on one page. +%D This uses 6 pages and we can freely choose what should be typeset on +%D the pages 7 and 8. \NC\NR +%D \stoptabulate +%D \stopsubsubject + +\setvariables + [PocketDiary] + [WeekDay=1, + Week=17, + Month=5, + Year=2011, + Nextyear=no, + Daybyday=no] + +%D \startsubsubject[title={Variable set \bf PocketDiaryLayout}] +%D +%D The PocketDiary can be given a layout according to your own ideas. +%D There are 8 variables (Page1 up to Page +%D 8) which can be given different values. +%D +%D \starttabulate[|l|p|] +%D \NC \bf Variable \NC \bf Comment \NC\NR +%D \NC Dayplan \NC The weekday indicated in the variable \quote{WeekDay} +%D in the previous section is used to make a PocketDiary page. \NC\NR +%D \NC Weekendplan \NC The weekend of the chosen week (variable \quote{Week}) +%D is typeset on a single page \NC\NR +%D \NC Weekcurrentplan \NC A week calendar based on the variable +%D \quote{Week} +%D in the previous section is used for the presentation of a week table. +%D \NC\NR +%D \NC Weeknextplan \NC A week calendar based on the variable \quote{Week} +%D $+$ 1 in the previous section is used for the presentation of the nexts +%D week's table. \NC\NR +%D \NC Monthcurrentplan \NC A month table based on the value in the variable +%D \quote{Month} in the previous section is typeset. \NC\NR +%D \NC Monthnextplan \NC A month table of the next month based on the +%D value +%D in the variable \quote{Month} of the previous section is typeset. +%D \NC\NR +%D \NC Yearcurrentplan \NC A complete year calendar of the year given in the +%D variable \quote{Year} in the previous section is typeset. \NC\NR +%D \NC Yearnextplan \NC If the \quote{Nextyear} +%D variable in the previous section is \quote{yes}, then a complete year +%D calendar for the next year indicated in the +%D variable \quote{Year} of the previous section is typeset. \NC\NR +%D \NC Lost-Returnto \NC A page with the indicated information in the +%D PocketDiaryAddress variable set is used to compose and typeset +%D a lost and return page (see next section). \NC\NR +%D \NC Blank \NC This page carries a header and a footer but is +%D empty for the rest. \NC\NR +%D \NC Todo \NC A todo-list template is typeset. \NC\NR +%D \NC Caro \NC A page with full-grid-paper is typeset. \NC\NR +%D \NC Lines \NC A page with grid lines is typeset. \NC\NR +%D \NC Contact \NC A form with two sets of preprinted fields +%D for marking down contact information is typeset. \NC\NR +%D \stoptabulate +%D +%D A basic setup could look as follows: + +\setvariables + [PocketDiaryLayout] + [Page1=Lost-Returnto, + Page2=Weekplan, + Page3=Dayplan, + Page4=Monthcurrentplan, + Page5=Blank, + Page6=Lines, + Page7=Caro, + Page8=Contact] + +%D \stopsubsubject +%D +%D \startsubsubject[title={Variable set \bf PocketDiaryAddress}] +%D +%D The third section of variables contains information used for the footer +%D and the lost-return form. +%D \stopsubsubject + +\setvariables + [PocketDiaryAddress] + [Familyname=Egger, + Forename=Willi, + Street={Townstreet 3B}, + Zipcode=5000, + City={New Beach}, + Country=TEX-world, + Phone={+22 444 55 88 66}, + Mobile={+22 6 19 19 1717}, + E-mail={info at pocketdiary.org}, + Web=www.pocketdiary.org] + +%D \startsubsubject[title={Variable set \bf PocketDiaryColors}] +%D +%D The PocketDiary uses some color. The header and footer separator lines can +%D be given a color. Standard color is blue. +%D +%D For those who want gridlines other than light gray can set a +%D color for the gridlines too. +%D \stopsubsubject + +\setvariables + [PocketDiaryColors] + [Separatorline=blue, + Gridline={s=.55}] + +%D \startsubsubject[title={Variable set \bf PocketDiaryFooter}] +%D +%D The footer is filled with three fields. These fields may contain the contents +%D of variables or \TEX\ commands. The setup of the footer is done with a buffer +%D in order to be able to call it later on. +%D \stopsubsubject +%D \stopsubject +%D +%D \startsubject[title={Footer setup}] +%D \stopsubject + +\setvariables + [PocketDiaryFooter] + [Lefttext=PocketDiary, + Centertext=\pagenumber, + Righttext={\getvariable{PocketDiaryAddress}{Forename},~\currentdate[year]}] %{\currentdate[year]} + +\startbuffer[Footertext] + \setupfootertexts[% + \tfx + \getvariable{PocketDiaryFooter}{Lefttext} + \hfill + \getvariable{PocketDiaryFooter}{Centertext} + \hfill + \getvariable{PocketDiaryFooter}{Righttext}] +\stopbuffer + +\getbuffer[Footertext] + +%D \startsubject[title={Variable set \bf PocketDiaryGeoPosition}] +%D +%D For the sun data calculations you need to know the latitude and longitude of +%D your location. +%D +%D For correct calculations you need also to pass the timezone offset to Lua. +%D +%D The dates for the begin and end of the day light saving time (DST) +%D are calculated based on the continent information. Possible values are +%D \quote{EU} and \quote{US}. If the field is empty, then no DST is calculated. +%D +%D For the US (except for Arizona and Hawaii) currently the DST starts on the +%D second Sunday of March and ends on the first Sunday of November. +%D +%D for Europe currently the DST starts on the last Sunday of March and ends on +%D the last Sunday of October. +%D +%D Sun data are typeset on the \quote{Dayplan} and \quote{Weekendplan} as well +%D as on Tuesdays in the week-calendar. +%D \stopsubject + +\setvariables %Koziegłowy + [PocketDiaryGeoPosition] + [lat=52.467860, + lon=16.981240, + timeoffset=1, + continent=EU] + +%D \startsubject[title={The various calendar pages}] +%D +%D Most of the activities for creating the contents and layout of the +%D different pages like day, weekend, week, month and year calendars +%D is delegated to Lua. Those pages are made-up as +%D \CONTEXT -Lua-documents (cld). +%D We preload the Lua -file with + +\ctxloadluafile{t-pocketdiary}{} + +%D \startsubsubject[title={Day plan}] +%D +%D \startplacefigure +%D [location={middle,here}, +%D reference=fig:Singleday, +%D title={Example Day-calendar}] +%D {\externalfigure[docu-figures][page=1,width=.4\textwidth,frame=on]} +%D \stopplacefigure +%D +%D The day calendar looks as in \in{figure}[fig:Singleday]. +%D +%D Next to the day number of the selected month the day name is given. If the +%D day is a christian feast day, its name is following after the day name. +%D To the right the week number and the year is typeset. +%D +%D The configuration of the page looks as follows: + +\startsetups table:topinfo + \setupTABLE[each][each][frame=off] + \setupTABLE[r][1][offset=0pt,loffset=1pt,roffset=1pt,align=lohi] % Date row + \setupTABLE[r][2][height=1.3\bodyfontsize,frame=off,offset=0pt] % Astronomy row + \setupTABLE[c][1][style=bold,width=0.25\textwidth] % Day + \setupTABLE[c][2][width=0.35\textwidth,align=lohi] % Feastname column + \setupTABLE[c][3][width=0.4\textwidth, + align={flushright,lohi}] % Month / year column +\stopsetups + +\startsetups table:topweekplan + \setupTABLE[each][each][frame=off] + \setupTABLE[r][1][offset=0pt,loffset=3pt,roffset=3pt,align=lohi] % Date row + \setupTABLE[c][1][style=bold,width=0.5\textwidth,align=lohi] % Name + \setupTABLE[c][2][style={\switchtobodyfont[6pt]},width=0.5\textwidth, + align={flushright,lohi}] % Week, year +\stopsetups + +%D For the creation of the page a command with 8 parameters is defined: + +\define[8]\Dayplan{\ctxlua{thirddata.diary.dayplan(#1,#2,#3,#4,#5,#6,#7,#8)}} + +%D The Dayplan-command with the collected parameters is placed in a buffer. This buffer is later called from the user-file \type{PocketDiary.tex} . + +\startbuffer[Dayplan] + \Dayplan %Weekday,Week,Month,Year,lat,lon,timeoffset,continent + {\getvariable{PocketDiary}{WeekDay}} + {\getvariable{PocketDiary}{Week}} + {\getvariable{PocketDiary}{Month}} + {\getvariable{PocketDiary}{Year}} + {\getvariable{PocketDiaryGeoPosition}{lat}} + {\getvariable{PocketDiaryGeoPosition}{lon}} + {\getvariable{PocketDiaryGeoPosition}{timeoffset}} + {"\getvariable{PocketDiaryGeoPosition}{continent}"} +\stopbuffer + +%D \stopsubsubject + +%D \startsubsubject[title={Weekend}] +%D +%D The weekend calendar shows Saturday and Sunday on one page +%D (see \in{figure}[fig:Weekend]). +%D +%D The typeset data are identical to those of the \quote{Dayplan} +%D +%D \startplacefigure +%D [location={middle,here}, +%D reference=fig:Weekend, +%D title={Example Weekend-calendar}] +%D {\externalfigure[docu-figures][page=2,width=.4\textwidth,frame=on]} +%D \stopplacefigure + +%D Comparable to the Dayplan the Weekendplan command is defined with 8 parameters. + +\define[8]\Weekendplan{\ctxlua{thirddata.diary.weekendplan(#1,#2,#3,#4,#5,#6,#7,#8)}} + +%D Again this command with the collected information of the 8 parameters is placed in a buffer which is called then from the user-file \type{PocketDiary.tex} . + +\startbuffer[Weekendplan] + \Weekendplan %Weekday,Week,Month,Year,lat,lon,timeoffset,continent + {6} + {\getvariable{PocketDiary}{Week}} + {\getvariable{PocketDiary}{Month}} + {\getvariable{PocketDiary}{Year}} + {\getvariable{PocketDiaryGeoPosition}{lat}} + {\getvariable{PocketDiaryGeoPosition}{lon}} + {\getvariable{PocketDiaryGeoPosition}{timeoffset}} + {"\getvariable{PocketDiaryGeoPosition}{continent}"} +\stopbuffer + +%D \stopsubsubject + +%D \startsubsubject[title={Week plan and next week plan}] +%D +%D The week calendar is a one-column table for working days. +%D Saturday and Sunday are placed next to each other in the last table row. An +%D example is given +%D in \in{figure}[fig:Week]. +%D +%D In the \quote{Weekplan} header appears \quote{Weeek agenda} or its +%D correspondent name in the supported languages. To the right the month's +%D number, weeknumber and year are typeset. + +%D \startplacefigure +%D [location={middle,here}, +%D reference=fig:Week, +%D title={Example Week-calendar}] +%D {\externalfigure[docu-figures][page=3,width=.4\textwidth,frame=on]} +%D \stopplacefigure +%D By means of a setups-sequence the table is defined as follows: + +\startsetups table:week + \setupTABLE[r][each][height=.158\textheight,align=flushleft] %.165 + \setupTABLE[r][even][background=color,backgroundcolor=.5s] + \setupTABLE[c][1][width=.5\textwidth] + \setupTABLE[c][2][width=.5\textwidth] +\stopsetups + +%D Again the Weekcurrentplan-command is defined with 8 parameters + +\define[8]\Weekcurrentplan{\ctxlua{thirddata.diary.weekplan(#1,#2,#3,#4,#5,#6,#7,#8)}} + +%D And the command together with the gathered parameters is stored in a buffer, which will be used by the user-file \type{PocketDiary.tex} . + +\startbuffer[Weekcurrentplan] + \Weekcurrentplan %Weekday,Week,Month,Year,lat,lon,timeoffset,continent + {1} + {\getvariable{PocketDiary}{Week}} + {\getvariable{PocketDiary}{Month}} + {\getvariable{PocketDiary}{Year}} + {\getvariable{PocketDiaryGeoPosition}{lat}} + {\getvariable{PocketDiaryGeoPosition}{lon}} + {\getvariable{PocketDiaryGeoPosition}{timeoffset}} + {"\getvariable{PocketDiaryGeoPosition}{continent}"} + \page[yes] +\stopbuffer + +%D Similar to the week plan the next week plan is built. + +\define[8]\Weeknextplan{\ctxlua{thirddata.diary.weekplan(#1,#2,#3,#4,#5,#6,#7,#8)}} + +\startbuffer[Weeknextplan] + \Weeknextplan %Weekday,Week,Month,Year,lat,lon,timeoffset,dst_start,dst_stop + {1} + {\directlua{tex.print{\getvariable{PocketDiary}{Week}+1}}} + {\getvariable{PocketDiary}{Month}} + {\getvariable{PocketDiary}{Year}} + {\getvariable{PocketDiaryGeoPosition}{lat}} + {\getvariable{PocketDiaryGeoPosition}{lon}} + {\getvariable{PocketDiaryGeoPosition}{timeoffset}} + {"\getvariable{PocketDiaryGeoPosition}{continent}"} + \page[yes] +\stopbuffer + +%D \stopsubsubject + +%D \startsubsubject[title={Month current and month next}] +%D +%D The month calendar looks as in \in{figure}[fig:Month]. +%D +%D Left in the header appears the month name in the chosen language. To the +%D right the year is typeset. +%D +%D \startplacefigure +%D [location={middle,here}, +%D reference=fig:Month, +%D title={Example Month-calendar}] +%D {\externalfigure[docu-figures][page=4,width=.4\textwidth,frame=on]} +%D \stopplacefigure +%D In the same fashion as the previous items also the month and +%D next month calendars are defined respectively setup: + +\startsetups table:month + \setupTABLE[column][each][width=.143\textwidth,align=flushright,offset=3pt] + \setupTABLE[column][7][style=\red] +\stopsetups + +%D For the Month-calendars we need only two parameters: month and year. + +\define[2]\Monthcurrentplan{\ctxlua{thirddata.diary.monthcurrentplan(#1,#2)}} + +%D The command is kept together with the gathered parameters in a buffer again. +%D This will be called from the user-file \type{PocketDiary.tex} . + +\startbuffer[Monthcurrentplan] + \Monthcurrentplan + {\getvariable{PocketDiary}{Month}} + {\getvariable{PocketDiary}{Year}} +\stopbuffer + +\define[2]\Monthnextplan{\ctxlua{thirddata.diary.monthnextplan(#1,#2)}} + +\startbuffer[Monthnextplan] + \Monthnextplan + {\getvariable{PocketDiary}{Month}} + {\getvariable{PocketDiary}{Year}} +\stopbuffer + +%D \stopsubsubject + + +%D \startsubsubject[title={Year current and year next}] +%D +%D The year calendar looks as in \in{figure}[fig:Year]. +%D +%D In the header the year only is typeset. +%D +%D \startplacefigure +%D [location=middle, +%D reference=fig:Year, +%D title={Example Year-calendar}] +%D {\externalfigure[docu-figures][page=5,width=.4\textwidth,frame=on]} +%D \stopplacefigure +%D The year table(s) are prepared as the week tables with a table-setup +%D sequence, a custom command which resides with the parameters assigned in a +%D buffer, which will again be called from the user-file \type{PocketDiary.tex} + +\startsetups table:year + \setupTABLE[column] + [each] + [width=.032\textwidth,align=flushright,offset=1pt,frame=off] + \setupTABLE[column][1][width=.052\textwidth,align=flushleft] + \setupTABLE[row][each][offset=1pt,height=1.5\bodyfontsize] +\stopsetups + +\define[2]\Yearcurrentplan{\ctxlua{thirddata.diary.yearplan(#1,#2)}} +\define[2]\Yearnextplan{\ctxlua{thirddata.diary.yearplan(#1,#2)}} + +\startbuffer[Yearcurrentplan] + \Yearcurrentplan + {\getvariable{PocketDiary}{Year}} + {"no"} +\stopbuffer + +\startbuffer[Yearnextplan] + \Yearnextplan + {\getvariable{PocketDiary}{Year}} + {"\getvariable{PocketDiary}{Nextyear}"} +\stopbuffer + +%D \stopsubsubject + +%D \startsubsubject[title= {One week\dots}] +%D +%D As mentioned before, the result will be 5 pages with one working day per +%D page and the weekend on one page i.e. 6 pages. For the pages 7 and 8 the +%D values defined in the \quote{PocketDiaryLayout} variable set is used. +%D As for the Dayplan we need a command carrying 8 parameters: + +\define[8]\Daybyday{\ctxlua{thirddata.diary.daybydayplan(#1,#2,#3,#4,#5,#6,#7,#8)}} + +%D A buffer contains the command just defined with the gathered information for the parameters. The buffer then is called from the user-file \type{PocketDiary.tex} . + +\startbuffer[Daybyday] + \Daybyday + {1} %Weekday + {\getvariable{PocketDiary}{Week}} + {\getvariable{PocketDiary}{Month}} + {\getvariable{PocketDiary}{Year}} + {\getvariable{PocketDiaryGeoPosition}{lat}} + {\getvariable{PocketDiaryGeoPosition}{lon}} + {\getvariable{PocketDiaryGeoPosition}{timeoffset}} + {"\getvariable{PocketDiaryGeoPosition}{continent}"} +\stopbuffer + +%D \stopsubsubject + +%D \startsubsubject[title={Templates}] +%D +%D The PocketDiary comes with a couple of templates for writing down +%D information: + +%D For the pages with (grid)lines we use an overlay in the background of +%D the text area which will contain the \METAPOST -graphic. +%D +%D \startplacefigure +%D [location={middle,here}, +%D title={The set of available templates}] +%D {\startcombination[3*2] +%D {\externalfigure +%D [docu-figures] +%D [page=6,width=.25\textwidth,frame=on]}{The blank page} +%D {\externalfigure +%D [docu-figures] +%D [page=7,width=.25\textwidth,frame=on]}{Caro paper} +%D {\externalfigure +%D [docu-figures] +%D [page=8,width=.25\textwidth,frame=on]}{Lines} +%D {\externalfigure +%D [docu-figures] +%D [page=9,width=.25\textwidth,frame=on]}{Todo} +%D {\externalfigure +%D [docu-figures] +%D [page=10,width=.25\textwidth,frame=on]}{Contact information} +%D {\externalfigure +%D [docu-figures] +%D [page=11,width=.25\textwidth,frame=on]}{Lost-return-to information} +%D \stopcombination} +%D \stopplacefigure +%D \stopsubsubject +%D The setups for the Contacts page look as follows: + +\startsetups table:contacts + \setupTABLE[r][each][frame=off,bottomframe=on,height=2\lineheight] + \setupTABLE[c][1][width=.3\textwidth] + \setupTABLE[c][2][width=.5\textwidth] + \setupTABLE[c][3][width=.2\textwidth] +\stopsetups + +%D The setups for the Lost-Returnto page is setup in the following way: + +\startsetups table:returnto + \setupTABLE[r][each][frame=off] + \setupTABLE[c][each][width=\textwidth] +\stopsetups + +%D Another setups covers the reset of the used Background + +\startsetups Background:stop + \defineoverlay + [Textarea] + [\resetMPdrawing] + \setupbackgrounds[text][text][background=] +\stopsetups + +%D All templates for these pages are contained in buffers in order to call them from the user-file \type{PocketDiary.tex} + +\startbuffer[Contact] + \setupheadertexts[{\bf \labeltext{contact}\hfill}] + \switchtobodyfont[6pt] + \dorecurse{2}{\bTABLE[setups=table:contacts] + \bTR + \bTD \labeltext{name}: \eTD + \bTD \eTD + \bTD \eTD + \eTR + \bTR + \bTD \labeltext{address}:\eTD + \bTD \eTD + \bTD \eTD + \eTR + \bTR + \bTD \strut\eTD + \bTD \eTD + \bTD \eTD + \eTR + \bTR + \bTD \labeltext{zip}:\eTD + \bTD \labeltext{place}:\eTD + \bTD \labeltext{country}:\eTD + \eTR + \bTR + \bTD \labeltext{phone}:\eTD + \bTD \eTD + \bTD \eTD + \eTR + \bTR + \bTD \labeltext{mail}:\eTD + \bTD \eTD + \bTD \eTD + \eTR + \eTABLE + \blank} + \page[yes] +\stopbuffer + +\startbuffer[Caro] + \setupheadertexts[{\bf \labeltext{notes}\hfill}] + \defineoverlay + [Textarea] + [\useMPgraphic{Caro}] + \setupbackgrounds[text][background=Textarea] + \strut + \page[yes] + \setups{Background:stop} +\stopbuffer + +\startbuffer[Lines] + \setupheadertexts[{\bf \labeltext{notes}\hfill}] + \defineoverlay + [Textarea] + [\useMPgraphic{Lines}] + \setupbackgrounds[text][text][background=Textarea] + \strut + \page[yes] + \setups{Background:stop} +\stopbuffer + +\startbuffer[Todo] + \defineoverlay + [Textarea] + [\useMPgraphic{Todo}] + \setupbackgrounds[text][text][background=Textarea] + \setupheadertexts[\bf \labeltext{todo}\hfill] + \strut + \page[yes] + \setups{Background:stop} +\stopbuffer + +\startbuffer[Blank] + \setupheadertexts[{\bf \labeltext{notes}\hfill}] + \strut + \page[yes] +\stopbuffer + +\startbuffer[Lost-Returnto] + \strut + \setupheadertexts[{\bf \labeltext{calendar}}] + \setupfooter[state=empty] + \setupbackgrounds[footer][text][topframe=off] + \setups{Background:stop} + \strut + \blank[2*line] + \framed[width=\textwidth, + frame=off, + bottomframe=on, + align=flushleft, + rulethickness=1pt, + foregroundcolor=\getvariable{PocketDiaryColors}{Separatorline}, + framecolor=\getvariable{PocketDiaryColors}{Separatorline}] + {\labeltext{found}} + \bTABLE[setups=table:returnto] + \bTR + \bTD \getvariable{PocketDiaryAddress}{Forename}~ + \getvariable{PocketDiaryAddress}{Familyname} \eTD + \eTR + \bTR + \bTD \getvariable{PocketDiaryAddress}{Street} \eTD + \eTR + \bTR + \bTD \getvariable{PocketDiaryAddress}{Zipcode} + {\addff{f:smallcaps}\getvariable{PocketDiaryAddress}{City}}\eTD + \eTR + \bTR + \bTD Tel: \getvariable{PocketDiaryAddress}{Phone}\eTD + \eTR + \bTR + \bTD Mob: \getvariable{PocketDiaryAddress}{Mobile}\eTD + \eTR + \bTR + \bTD E-mail: \getvariable{PocketDiaryAddress}{E-mail} \eTD + \eTR + \bTR + \bTD Web: \getvariable{PocketDiaryAddress}{Web} \eTD + \eTR + \eTABLE + \page[yes] + \getbuffer[Footertext] + \setupbackgrounds[footer][text][topframe=on] +\stopbuffer + +%D \stopsubject +%D +%D \startsubject[title={The setup of the PocketDiary}] +%D +%D When filling the 8 pages we can do two things. Either we let \CONTEXT\ +%D typeset the pages as we choose them in the section \quote{PocketDiaryLayout} +%D or we set the variable \quote{Daybyday} in the variable set +%D \quote{PocketDiary} to \quote{yes}. This leads to the typesetting of 5 pages +%D with each a working day and the weekend on one page. The remaining two pages +%D are typeset according to the values given in \quote{PocketDiaryLayout.} + +\startbuffer[Pocketdiary] + \definecolor[Grid][\getvariable{PocketDiaryColors}{Gridline}] + \definecolor[Separatorline][\getvariable{PocketDiaryColors}{Separatorline}] + + \doifelse{\getvariable{PocketDiary}{Daybyday}}{yes} + {\Daybyday %creates 6 pages + {1} + {\getvariable{PocketDiary}{Week}} + {\getvariable{PocketDiary}{Month}} + {\getvariable{PocketDiary}{Year}} + {\getvariable{PocketDiaryGeoPosition}{lat}} + {\getvariable{PocketDiaryGeoPosition}{lon}} + {\getvariable{PocketDiaryGeoPosition}{timeoffset}} + {"\getvariable{PocketDiaryGeoPosition}{continent}"} + \getbuffer[\getvariable{PocketDiaryLayout}{Page7}] + \getbuffer[\getvariable{PocketDiaryLayout}{Page8}] + } + {\getbuffer[\getvariable{PocketDiaryLayout}{Page1}] + \getbuffer[\getvariable{PocketDiaryLayout}{Page2}] + \getbuffer[\getvariable{PocketDiaryLayout}{Page3}] + \getbuffer[\getvariable{PocketDiaryLayout}{Page4}] + \getbuffer[\getvariable{PocketDiaryLayout}{Page5}] + \getbuffer[\getvariable{PocketDiaryLayout}{Page6}] + \getbuffer[\getvariable{PocketDiaryLayout}{Page7}] + \getbuffer[\getvariable{PocketDiaryLayout}{Page8}] + } +\stopbuffer + +%D \stopsubject + +%D \startsubject[title={Arranging the pages}] +%D +%D For the arrangement of the 8 pages on the paper we need a +%D special arranging scheme, which is included in the distribution. +%D Invoking the scheme is performed with +%D +%D \type{\setuparranging[1*8]} +%D +%D The arrangement of the 8 pages is not switched on in this file. For the +%D purpose of experimenting it is better to keep this command in the user file +%D \type{\type{PocketDiary.tex} } +%D +%D \stopsubject + +%D \startsubject[title={How to fold the PocketDiary}] +%D +%D The eight printed pages are folded in such a way, that the PocketDiary +%D presents itself as a small booklet. +%D There are no empty pages visible. +%D +%D \startplacefigure +%D [location=middle, +%D reference=fig:schemeA, +%D title={The basic folding scheme}] +%D {\externalfigure[docu-figures][page=12,width=.6\textwidth]} +%D \stopplacefigure +%D +%D First make two mountain-folds as indicated with the straight lines in +%D \in{figure}[fig:schemeA]. +%D Unfold the paper and turn it face up and \unit{90 Degrees} to the left. +%D Make a valley-fold with the lower part +%D of the sheet on the previously made mountain-fold. Unfold and turn the +%D sheet \unit{180 Degrees}. +%D Make another valley-fold as described before. Unfold the sheet. +%D +%D Take a sharp knife and a ruler. Slit the paper open between Cuttingpoint A +%D and B (see \in{figure}[fig:schemeA]). +%D +%D Now we can fold the booklet. First fold the paper again in the length. Then +%D hold the double folded paper +%D with the mountain-fold up. Push from both sides towards the center in order +%D to get a form similar +%D to \in{figure}[fig:schemeB]. Fold then the upper double-page in direction B, +%D the lower double-page +%D in direction C and finally the lefthand double-sided page in direction D. +%D +%D \startplacefigure +%D [location=middle, +%D reference=fig:schemeB, +%D title={The basic folding scheme}] +%D {\externalfigure[docu-figures][page=13,width=.6\textwidth]} +%D \stopplacefigure +%D +%D Before creasing the booklet at the spine it is worthwhile to put the section +%D on table and adjust +%D folds where needed. Finally the spine is creased with preference with a +%D bone-folder. +%D \stopsubject + +\stopmodule
\ No newline at end of file |