about summary refs log tree commit diff stats
path: root/dwm.h
Commit message (Expand)AuthorAgeFilesLines
...
* sanitized other stuffAnselm R. Garbe2006-07-151-3/+1
* proceeded with cleaning up, sorting functions, etcAnselm R. Garbe2006-07-151-20/+19
* rearranged several stuffAnselm R. Garbe2006-07-151-14/+22
* sanitized namesAnselm R. Garbe2006-07-141-12/+12
* rearrangedAnselm R. Garbe2006-07-141-19/+12
* removed a bunch of lines through swap removalAnselm R. Garbe2006-07-141-2/+1
* searching for a better way to discard enter notifiesAnselm R. Garbe2006-07-141-6/+0
* implemented dwm reading status text from stdin Anselm R. Garbe2006-07-141-2/+2
* made barclick to select the specific tagAnselm R. Garbe2006-07-141-0/+1
* implemented bar for dwm (I miss status text), I plan that status text is read...Anselm R. Garbe2006-07-141-4/+7
* added mini stuffAnselm R. Garbe2006-07-131-3/+6
* fixed several things, nearly feature completeAnselm R. Garbe2006-07-131-1/+1
* new stuffAnselm R. Garbe2006-07-131-8/+16
* several other additions/fixes, dwm is quite usable alreadyAnselm R. Garbe2006-07-131-3/+5
* implemented tagging a clientAnselm R. Garbe2006-07-131-11/+19
* added xlock command (I need it regularly)Anselm R. Garbe2006-07-131-1/+2
* changed default colorsAnselm R. Garbe2006-07-131-0/+136
4'>94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
































































                                                                                                        
                          



















                                                                               




                                 










































                                                                                                                                         
                     




























































                                                                          
\ProvidesClass{nimdoc}[2022/04/17, 2018/01/01 LaTeX2e nonstandard class]

\LoadClass[a4paper,11pt]{article}

\usepackage[a4paper,xetex,left=3cm,right=3cm,top=1.5cm,bottom=2cm]{geometry}

%   for 2-sided printing with larger inner "binding" margin
%\usepackage[a4paper,xetex,twoside,left=4cm,right=2cm,top=1.5cm,bottom=2cm]{geometry}
%   for e-readers with 1.77:1 aspect ratio (e.g. 1920x1080)
%\usepackage[xetex,paperheight=27.6cm,paperwidth=15.5cm,left=3mm,right=3mm,top=3mm,bottom=3mm]{geometry}
%   for e-readers with 1.45:1 aspect ratio (e.g. 1200x825)
%\usepackage[xetex,paperheight=22.5cm,paperwidth=15.5cm,left=3mm,right=3mm,top=3mm,bottom=3mm]{geometry}
%   for e-readers with 1.33:1 aspect ratio (e.g. 1872x1404)
%\usepackage[xetex,paperheight=20.7cm,paperwidth=15.5cm,left=3mm,right=3mm,top=3mm,bottom=3mm]{geometry}

\usepackage{fontspec}
% logic to select default font with some fall-back fonts.
\IfFontExistsTF{Times New Roman}{%
  \setmainfont{Times New Roman}  % the default font
  \typeout{========================================= nim: using Times New Roman}
}{
  \IfFontExistsTF{FreeSerif}{%
    \setmainfont{FreeSerif}  % fallback #1 - official GNU font, resembles Times
    \typeout{========================================= nim: using FreeSerif}
  }{
    \IfFontExistsTF{DejaVuSerif}{%
      \setmainfont{DejaVuSerif}  % fallback #2 - very widespread free font
      \typeout{========================================= nim: using DejaVuSerif}
    }{
      \typeout{!!!!!!!!!!!!!!!!!!! Fonts not found !!!!!!!!!!!!!!!!!!!!!!!}
    }
  }
}

% default monospace font for code:
\usepackage{GoMono}
\usepackage{relsize}
% make this monospace font 2 steps smaller to hold 80-character line
\newcommand{\rstverbblockfont}{\smaller[2]}
\newcommand{\rstverbinlinefont}{\smaller}

\usepackage{parskip}  % paragraphs delimited by vertical space, no indent
\usepackage{graphicx}

\usepackage{makeidx}
\newcommand{\nimindexterm}[2]{#2\index{#2}\label{#1}}
\makeindex

\usepackage{dingbat} % for \carriagereturn, etc
\usepackage{fvextra}  % for code blocks (works better than original fancyvrb)
\fvset{
  breaklines,
  breakafter={=}:|\_\{\}[](){,}.;+-*/'",
  breaksymbolleft=\color{red}{\ensuremath{\hookrightarrow}},
  breaksymbolright=\color{red}{\small\carriagereturn}
}
\fvinlineset{%
   breaklines,
   breakafter={=}:|\_\{\}[](){,}.;+-*/'",
     % that does not work at all when we underline inline code by ulem :-(
   commandchars=\\\{\}
}

\usepackage{scrextend}  % for the `addmargin` environment

\usepackage[table]{xcolor}
\usepackage[urlbordercolor=blue,linkbordercolor=cyan,
            pdfborderstyle={/S/U/W 1}]{hyperref}
\usepackage{enumitem}  % for option list, enumList, and rstfootnote

\usepackage[most]{tcolorbox}  % boxes around admonitions, code blocks, doc.item

\newtcolorbox{rstadmonition}[1][]{blanker, breakable,
     left=3mm, right=0mm, top=1mm, bottom=1mm,
     before upper=\indent, parbox=false, #1}

\newtcolorbox{rstquote}[1][]{blanker, breakable,
     left=3mm, right=3mm, top=1mm, bottom=1mm,
     parbox=false,
     borderline west={0.3em}{0pt}{lightgray},
     borderline north={0.05em}{0pt}{lightgray},
     borderline east={0.05em}{0pt}{lightgray},
     borderline south={0.05em}{0pt}{lightgray}}

\definecolor{rstframecolor}{rgb}{0.85, 0.8, 0.6}

\usepackage{booktabs}
\belowrulesep=0ex
\aboverulesep=0ex
\renewcommand{\arraystretch}{1.1}

\newtcolorbox{rstprebox}[1][]{blanker, breakable,
     left=3mm, right=3mm, top=1mm, bottom=1mm,
     borderline ={0.1em}{0pt}{rstframecolor},
     before upper=\indent, parbox=false, #1}

\newenvironment{rstpre}{%
\VerbatimEnvironment\begingroup\begin{rstprebox}%
\begin{Verbatim}[fontsize=\rstverbblockfont , commandchars=\\\{\}]}%
{\end{Verbatim}\end{rstprebox}\endgroup}

\newtcolorbox{rstdocitembox}[1][]{blanker, breakable,
     left=3mm, right=3mm, top=1mm, bottom=1mm,
     borderline ={1pt}{0pt}{cyan},
     before upper=\indent, parbox=false, #1}

% Inline code formatting: grey underline,
% use \Verb from fvextras e.g. to display -- correctly as double -
\usepackage[normalem]{ulem}
\newcommand\rstuline{\bgroup\markoverwith{\textcolor{rstframecolor}{\rule[-0.8ex]{2pt}{1.0pt}}}\ULon}

\newcommand{\rstcode}[1]{%
{\rstverbinlinefont\Verb{\rstuline{#1}}}%
}

\newcommand{\rstcodeitem}[1]{\Verb{#1}}

\newenvironment{rstdocitem}{%
\VerbatimEnvironment\begingroup\begin{rstdocitembox}%
\begin{Verbatim}[fontsize=\rstverbblockfont , commandchars=\\\{\}]}%
{\end{Verbatim}\end{rstdocitembox}\endgroup}


\newenvironment{rstfootnote}{\begin{description}[labelindent=1em,leftmargin=1em,labelwidth=2.6em]}{\end{description}}
\ifdim\linewidth<30em
  \def\rstoptleftmargin{0.4\linewidth}
  \def\rstoptlabelwidth{0.35\linewidth}
\else
  \def\rstoptleftmargin{12em}
  \def\rstoptlabelwidth{10.5em}
\fi
\newenvironment{rstoptlist}{%
\begin{description}[font=\sffamily\bfseries,style=nextline,leftmargin=\rstoptleftmargin,labelwidth=\rstoptlabelwidth]}{\end{description}}

\usepackage{multirow}
\usepackage{tabulary}  % tables with adjustable cell width and no overflow
% make tabulary prevent overflows (https://tex.stackexchange.com/a/195088)
\tymin=60pt
\tymax=\maxdimen
% to pack tabulary into a new environment, special syntax is needed :-(
\newenvironment{rsttab}[1]{\tabulary{\linewidth}{#1}}{\endtabulary}

\newcommand{\rstsub}[1]{\raisebox{-0.5ex}{\scriptsize{#1}}}
\newcommand{\rstsup}[1]{\raisebox{0.5ex}{\scriptsize{#1}}}

\newcommand{\rsthA}[2][]{\section[#1]{#2}}
\newcommand{\rsthB}[2][]{\subsection[#1]{#2}}
\newcommand{\rsthC}[2][]{\subsubsection[#1]{#2}}
\newcommand{\rsthD}[2][]{\paragraph[#1]{#2}}
\newcommand{\rsthE}[2][]{\paragraph[#1]{#2}}

\newcommand{\rstovA}[2][]{\section*[#1]{#2}}
\newcommand{\rstovB}[2][]{\subsection*[#1]{#2}}
\newcommand{\rstovC}[2][]{\subsubsection*[#1]{#2}}
\newcommand{\rstovD}[2][]{\paragraph*[#1]{#2}}
\newcommand{\rstovE}[2][]{\paragraph*[#1]{#2}}

% Syntax highlighting:
\newcommand{\spanDecNumber}[1]{\textbf{\textcolor{darkgray}{#1}}}
\newcommand{\spanBinNumber}[1]{\textbf{\textcolor{darkgray}{#1}}}
\newcommand{\spanHexNumber}[1]{\textbf{\textcolor{darkgray}{#1}}}
\newcommand{\spanOctNumber}[1]{\textbf{\textcolor{darkgray}{#1}}}
\newcommand{\spanFloatNumber}[1]{\textbf{\textcolor{darkgray}{#1}}}
\newcommand{\spanIdentifier}[1]{#1}
\newcommand{\spanKeyword}[1]{\textbf{#1}}
\newcommand{\spanStringLit}[1]{\textbf{\textcolor{darkgray}{#1}}}
\newcommand{\spanLongStringLit}[1]{\textbf{\textcolor{darkgray}{#1}}}
\newcommand{\spanCharLit}[1]{#1}
\newcommand{\spanEscapeSequence}[1]{#1}
\newcommand{\spanOperator}[1]{\textbf{#1}}
\newcommand{\spanPunctuation}[1]{#1}
\newcommand{\spanComment}[1]{\emph{#1}}
\newcommand{\spanLongComment}[1]{\emph{#1}}
\newcommand{\spanRegularExpression}[1]{#1}
\newcommand{\spanTagStart}[1]{#1}
\newcommand{\spanTagEnd}[1]{#1}
\newcommand{\spanKey}[1]{#1}
\newcommand{\spanValue}[1]{#1}
\newcommand{\spanRawData}[1]{\textbf{\textcolor{darkgray}{#1}}}
\newcommand{\spanAssembler}[1]{#1}
\newcommand{\spanPreprocessor}[1]{#1}
\newcommand{\spanDirective}[1]{#1}
\newcommand{\spanCommand}[1]{#1}
\newcommand{\spanRule}[1]{#1}
\newcommand{\spanHyperlink}[1]{#1}
\newcommand{\spanLabel}[1]{#1}
\newcommand{\spanReference}[1]{#1}
\newcommand{\spanOther}[1]{#1}
\newcommand{\spantok}[1]{\fbox{#1}}
\newcommand{\spanPrompt}[1]{\textcolor{red}{\textbf{#1}}}
\newcommand{\spanProgramOutput}[1]{\textcolor{darkgray}{\textbf{#1}}}
\newcommand{\spanprogram}[1]{\textbf{\underline{#1}}}
\newcommand{\spanoption}[1]{\textbf{\textcolor{darkgray}{#1}}}

% Never allow text overflow to margin:
\setlength\emergencystretch{\hsize}\hbadness=10000