diff options
Diffstat (limited to '_extensions/js/stylish-issue')
-rw-r--r-- | _extensions/js/stylish-issue/_extension.yaml | 197 | ||||
-rw-r--r-- | _extensions/js/stylish-issue/doc-class.tex | 68 |
2 files changed, 241 insertions, 24 deletions
diff --git a/_extensions/js/stylish-issue/_extension.yaml b/_extensions/js/stylish-issue/_extension.yaml index 4b02876..153adfa 100644 --- a/_extensions/js/stylish-issue/_extension.yaml +++ b/_extensions/js/stylish-issue/_extension.yaml @@ -4,30 +4,44 @@ version: 0.0.1 contributes: formats: pdf: +# fontsize: 11pt + indent: true # links-as-notes: true colorlinks: false pdf-engine: lualatex documentclass: scrartcl + classoption: + - headings=big csquotes: true papersize: a4 # extract-media: img template-partials: - before-title.tex + - doc-class.tex include-in-header: +# borrow microtype tunings from somewhat similar EB Garamond + - text: | + \DeclareMicrotypeAlias{ETbb}{EB Garamond} +# larger section font + - text: | + \RedeclareSectionCommand[font=\Huge]{section} # support multiple tagged columns (class option twocolumn is not tagged) +# * disable all drivers, as recommended in CTAN package crop - text: | - \usepackage[a4paper, margin=0.5in, bottom=1in]{geometry} % Set all margins to zero + \usepackage[dvips=false,pdftex=false,vtex=false]{geometry} + \geometry{a4paper, margin=0.5in, bottom=1in} \usepackage{multicol} - \setlength{\columnsep}{20pt} % Adjust space between columns - \setlength{\columnwidth}{0.45\textwidth} % Set column width (optional) + \setlength{\multicolsep}{0pt} + \setlength{\columnsep}{1.5em} + \setlength{\columnseprule}{0.4pt} # avoid widow headline or definition description - text: | \usepackage{needspace} \let\oldsection\section \renewcommand{\section}[1]{% - \needspace{6\baselineskip} + \needspace{7\baselineskip} \oldsection{#1}% } \let\olddesc\description @@ -38,33 +52,168 @@ contributes: # avoid widow or orphan lines - text: | \usepackage[defaultlines=3,all]{nowidow} -# reduce vertical space after headlines - - text: | - \RedeclareSectionCommands[ - runin=false, - beforeskip=.5\baselineskip, - afterskip=-1ex]{section,subsection} -# add newline between definition list description and items +# tighten lists styling +# * add newline between definition list description and items +# * reduce unnumbered list item indentation - text: | \usepackage{enumitem} - \setlist[description]{style=nextline} + \setlist[description]{leftmargin=0em,style=nextline} + \setlist[itemize]{leftmargin=*,labelsep=0.5em} +# tighten blockquote styling to reduce margins + - text: | + \renewenvironment{quote} + {\list{}{\leftmargin=1em \rightmargin=1em}\item[]} + {\endlist} # set page footer to danish page count "side X af Y" - text: | \usepackage{lastpage} \usepackage{scrlayer-scrpage} - \cfoot{side \thepage\ af \pageref{LastPage}} -# suppress figure label + \cfoot*{side \thepage\ af \pageref{LastPage}} +# suppress figure label, and adjust styling - text: | - \usepackage[labelformat=empty]{caption} - - include-before-body: + \usepackage[labelformat=empty,font={sf,small},skip=0.5ex]{caption} +# newspaper styling of title header; omit page number on front page - text: | -# enable multiple tagged columns + \usepackage[useregional,showdow]{datetime2} + \makeatletter + \renewcommand{\maketitle}{ + { + \rightline{\@subtitle, \DTMdate{\@date}} + \centerline{\resizebox{\linewidth+18pt}{!}{\textsc{\@title}}} + \thispagestyle{empty} + } + } + \makeatother +# define format for ingress text - text: | - \begin{multicols}{2} - \raggedcolumns - - include-after-body: -# conclude multiple tagged columns + \makeatletter + \newcommand{\ingress}[1]{% + {\Large #1}\par + \@afterindentfalse + \@afterheading + \vspace{.5\baselineskip}% + } + \makeatother +# support unusual space characters like   and   - text: | - \end{multicols} + \usepackage{uspace} +# refine hyphenation + - text: | + \usepackage{lua-check-hyphen} + \LuaCheckHyphen{whitelist={hyph_ok_danish.txt}]{lua-check-hyphen}} + %\LuaCheckHyphen{whitelist={file1.txt,file2.txt,file3.txt}} + \babelhyphenation[danish]{ + af-fald-et % affal-det + an-er-kend-el-sen % anerken-delsen + an-hæng-er-en % anhæn-geren + ar-bejds-dag-e-ne % arbejdsda-gene + be-slut-ning-er % beslutnin-ger + be-søg-ende % besø-gende + bord-ene % bor-dene + bo-ring-en % borin-gen + bris-ter % bri-ster + brugs-for-e-ning-ens % brugsforenin-gens + by-bjerg % byb-jerg + bå-de-laug-ets % bådelau-gets + del-stræk-ning-er-ne % delstræknin-gerne + del-tag-en-de % delta-gende + ener-gi-klas-se % energik-lasse + e-ner-gi-re-no-ve-ring-er % energirenoverin-ger + er-fa-ring-en % erfarin-gen + es-bjerg % esb-jerg + fjord-en % fjor-den + fol-ke-ting-ets % folketin-gets + fond-en % fon-den + for-bind-el-se % forbin-delse + for-e-ning-en % forenin-gen + for-e-ning-er % forenin-ger + for-hand-ling-er-ne % forhandlin-gerne + for-sam-lings-hu-set % forsamlingshu-set + for-sam-lings-hu-sets % forsam-lingshu-sets + for-æl-dre-for-e-ning-ens % forældreforenin-gens + for-år-et % forå-ret + frem-skriv-ning-er % fremskrivnin-ger + fri-lufts-laug % fril-uftslaug + fri-lufts-råd-et % fril-uftsrådet + fund-et % fun-det + fæl-les-mail-en % fællesmai-len + grønt-sags-la-sag-ne % grøntsag-slasagne + ho-ved-byg-ning-en % hovedbygnin-gen + hon-ning-en % honnin-gen + hus-hold-nings-for-e-ning-er % husholdningsforenin-ger + hyg-ge-land-brug-et % hyggelandbru-get + høj-sæ-son-en % højsæso-nen + ind-flyt-ning-en % indflytnin-gen + in-fra-struk-tur-en % infrastruktu-ren + in-ter-es-se-for-e-ning-er % interesseforenin-ger + ka-jak-ro-ning % kaja-kroning + klat-rede % kla-trede + kom-mu-nist-er % kommuni-ster + kon-cen-tra-ti-ons-lejr-en % koncentrationslej-ren + krea-ting % kreat-ing + krig-en % kri-gen + kul-tur-be-hol-der-en % kulturbeholde-ren + kul-tur-for-e-ning-er % kulturforenin-ger + kva-li-tet-en % kva-lite-ten + kvarts-fa-mi-li-en % kvart-sfamilien + kvæl-stof-ud-led-ning-en % kvælstofudlednin-gen + land-mand-en % landman-den + lej-lig-hed-er % lejlighe-der + lejr-at-mos-fæ-re % lej-ratmosfære + lejr-sko-le % lej-rskole + ler-lag-et % lerla-get + lig-hed-er % lighe-der + løs-ning-er % løs-nin-ger + men-nes-ker % menne-sker + mi-nis-tre % mini-stre + mær-kat-er-ne % mærka-terne + må-ned-er % måne-der + na-tur-op-le-vel-ser % natu-roplevelser + ok-se-mør-brad-en % oksemørbra-den + orø-post-en % orøpo-sten + per-son-er % perso-ner + pin-se-lop-pe-mar-ked % pin-sel-oppemarked + pin-se-lop-pe-mar-ked-et % pinsel-oppemar-ke-det + prang-en-de % pran-gende + proviant-en % provian-ten + re-dak-tion-en % redaktio-nen + rick-shaw % ricks-haw + rick-shaw-for-e-ning-en % rickshawforenin-gen + sam-virk-en-de % samvir-kende + schreib-eis % schrei-beis + se-nio-r-er % seni-orer + skov-en % sko-ven + skulp-tur-er % skul-pturer + skulp-tør % skul-ptør + sky-de-gla-de % skydeg-lade + smuk-ke-ste % smukkes-te + so-cia-le % soci-ale + som-mer-en % somme-ren + som-mer-hus-eje-re % sommerhuse-jere + som-mer-hus-grund-ejer-for-e-ning % sommerhusgrunde-jerforening + som-mer-hus-gæst-er % sommerhusgæs-ter + spe-cia-le % speci-ale + sports-plads-en % sport-spladsen + spænd-en-de % spæn-dende + stab-en % sta-ben + sten-e-ne % ste-nene + sten-sli-be-re % stens-libere + sving-ende % svin-gende + tal-lerk-ner % taller-kner + thors-lev % thor-slev + tryk-sag-er % tryksa-ger + tråd-te % trå-dte + ud-for-dring-er % udfordrin-ger + ud-stil-ling-er % udstillin-ger + ud-vik-ling-en % udviklin-gen + und-tag-el-se % undta-gelse + vand-ak-ti-vi-tet-er % van-daktiviteter + vand-et % van-det + vand-ets % van-dets + vind-ud-sat % vin-dudsat + vok-sen-bib-li-o-tek-et % voksenbi-blio-teket + væ-ve-a-te-lier-et % væveateli-eret + week-end-en % weeken-den + work-shops % wor-kshops + øn-ske-lis-te % ønskeli-ste + } diff --git a/_extensions/js/stylish-issue/doc-class.tex b/_extensions/js/stylish-issue/doc-class.tex new file mode 100644 index 0000000..a9dbfaa --- /dev/null +++ b/_extensions/js/stylish-issue/doc-class.tex @@ -0,0 +1,68 @@ +\DocumentMetadata{ +% modern PDF rendering: <https://tex.stackexchange.com/a/686905/309738> +$if(lang)$ + lang={$lang$}, +$endif$ +$if(pdfversion)$ + pdfversion=$pdfversion$, +$endif$ +$for(pdfstandard)$ + pdfstandard=$pdfstandard$, +$endfor$ +$if(pdftestphase)$ +testphase= + { +$for(pdftestphase)$ + $pdftestphase$, +$endfor$ + }, +$endif$ +$if(pdfdebug)$ +debug= + { +$for(pdfdebug)$ + $pdfdebug$, +$endfor$ + }, +$endif$ +$if(pdfdebugfirstaidoff)$ +debug= + { +firstaidoff= + { +$for(pdfdebugfirstaidoff)$ + $pdfdebugfirstaidoff$, +$endfor$ + }, + }, +$endif$ +} +$if(copyright)$ +% flag as rights protected <https://tex.stackexchange.com/a/712443/309738> +\ExplSyntaxOn +\pdfmeta_xmp_add:n{<xmpRights:Marked>True</xmpRights:Marked>} +\ExplSyntaxOff +$endif$ +$if(pdftestphasestrict)$ +% fatalize tagging warnings +\ExplSyntaxOn + \msg_redirect_module:nnn { tag } { warning } { error } +\ExplSyntaxOff +$endif$ +\documentclass[ +$for(babel-otherlangs)$ + $babel-otherlangs$, +$endfor$ +$if(babel-lang)$ + $babel-lang$, +$endif$ +$if(fontsize)$ + $fontsize$, +$endif$ +$if(papersize)$ + $papersize$paper, +$endif$ +$for(classoption)$ + $classoption$$sep$, +$endfor$ +]{$documentclass$} |