commit cd2798b274830a21f912a4601b9d2a377c0dd9ec Author: Kenneth Odle Date: Sun Apr 20 11:45:52 2025 -0400 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..902b065 --- /dev/null +++ b/.gitignore @@ -0,0 +1,19 @@ +Covers +*bklt* +*.aux +*.log +*.out +*.synctex.gz +*.toc +*.dvi +*.odt +metric* +*.mx1 +*.abc +*.bak +*wc* +*drafts* +/build/* +*/build/* +*/spoken/* +images.tex diff --git a/sudoku.tex b/sudoku.tex new file mode 100644 index 0000000..c0d0f4b --- /dev/null +++ b/sudoku.tex @@ -0,0 +1,273 @@ +\documentclass[twoside]{report} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{float} +\raggedbottom + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Fonts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Choose either kpfonts or fourier +% \usepackage[nott]{kpfonts} +% \usepackage{fourier} +\usepackage{lmodern} + + +% Delete any of the following that are not needed +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage{makeidx} +\usepackage{graphicx} +\usepackage{array} +\usepackage{multirow} +\usepackage{gensymb} % Just for the degree symbol +\usepackage{ccicons} % Creative Commons icons; now we can delete an image +\usepackage{lettrine} % Drop caps +\usepackage{wrapfig} % Let's wrap some images +\usepackage{hanging} % For hanging indents in a script +\usepackage{fancyvrb} % Use line numbers with code samples +\usepackage{fvextra} % Break lines inside Verbatim environment: +\usepackage{enumitem} % Control spacing in lists +\usepackage{setspace} % Better control over line-spacing +\usepackage{nicefrac} % Use nice fractions +\usepackage[bottom]{footmisc} % Keep the footnotes at the bottom of the page +%\usepackage{tabto} % Use tab stops when we need to (especially in footnotes) +\usepackage{microtype} % Make things neater. +\usepackage{tabularray} % Easy tables +\usepackage[]{footmisc} +\usepackage{tikz} +\usetikzlibrary{calc} +\usepackage{ninecolors} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Commands %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\graphicspath{{images/}} % Where are our images? +\usepackage{multicol} % Include two- or three-column sections +\counterwithout{footnote}{chapter} % Stop resetting the footnote count after each chapter +%\NumTabs{18} % Define 18 tab stops (at 1/4" intervals) [tabto package] +\raggedbottom % Don't force text to fill page +\setlength{\belowcaptionskip}{4pt} % Adjust space between caption and figure +%\renewcommand*\contentsname{In This Issue…} % Change the name of the TOC + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Document Setup%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\usepackage{geometry} +\geometry{ + paperheight=8.5in, + paperwidth=5.5in, + margin=15mm, +% a5paper % Comment out for half-letter paper +} + +\addtolength{\topmargin}{10mm} % Adjust and bottom margin +\addtolength{\textheight}{-20mm} % Adjust the bottom margin + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Page Headers%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Adjust the TITLE as necessary +\usepackage{fancyhdr} +\pagestyle{fancy} + \fancyhf{} + \fancyhead[LE,RO]{\textit{Sudoku}} + \fancyhead[RE,LO]{Issue \#006} + \cfoot{Page \thepage} +\renewcommand{\footrulewidth}{0.5pt} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Chapter Title Spacing %%%%%%%%%%%%%%%%%%%% +\usepackage{titlesec} +\titleformat{\chapter}[display] + {\normalfont\huge\bfseries} + {\chaptertitlename\ \thechapter} + {20pt} + {\Huge} +\titlespacing*{\chapter}{0pt}{0pt}{40pt} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Custom Macros %%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Make a nice border and box for the tops of our examples +\newcommand\klab[3]{\vspace{#1}\noindent{}\hrulefill\fbox{\texttt{~#2~}}\hrulefill\vspace{#3}} + +% Add an \hrule with space above and below +\newcommand\krule[2]{\vspace{#1}\hrule\vspace{#2}} + +% Make hrefs easier (must load package hyperref} +\newcommand\kref[2]{\href{#1}{{\texttt{#2}}}} + +% Rotate text in tables easier +% https://tex.stackexchange.com/questions/89115/how-to-rotate-text-in-multirow-table +\newcommand\krot[3]{\parbox[t]{#1}{\multirow{#2}{*}{\rotatebox[origin=c]{90}{#3}}}} + +% Draw a sudoku grid +\newcommand{\kgrid}{ +% Thick horizontal lines + \draw [ultra thick](0,0)--(9,0); + \draw [ultra thick](0,3)--(9,3); + \draw [ultra thick](0,6)--(9,6); + \draw [ultra thick](0,9)--(9,9); +% Thick vertical lines + \draw [ultra thick](0,0)--(0,9); + \draw [ultra thick](3,0)--(3,9); + \draw [ultra thick](6,0)--(6,9); + \draw [ultra thick](9,0)--(9,9); +% Thin horizontal lines + \draw (0,1)--(9,1); + \draw (0,2)--(9,2); + \draw (0,4)--(9,4); + \draw (0,5)--(9,5); + \draw (0,7)--(9,7); + \draw (0,8)--(9,8); +% Thin vertical lines + \draw (1,0)--(1,9); + \draw (2,0)--(2,9); + \draw (4,0)--(4,9); + \draw (5,0)--(5,9); + \draw (7,0)--(7,9); + \draw (8,0)--(8,9); +% Labels + \begin{scriptsize} + \node at (-0.5,0.5) {R1}; + \node at (-0.5,1.5) {R2}; + \node at (-0.5,2.5) {R3}; + \node at (-0.5,3.5) {R4}; + \node at (-0.5,4.5) {R5}; + \node at (-0.5,5.5) {R6}; + \node at (-0.5,6.5) {R7}; + \node at (-0.5,7.5) {R8}; + \node at (-0.5,8.5) {R9}; + \node at (0.5,-0.5) {C1}; + \node at (1.5,-0.5) {C2}; + \node at (2.5,-0.5) {C3}; + \node at (3.5,-0.5) {C4}; + \node at (4.5,-0.5) {C5}; + \node at (5.5,-0.5) {C6}; + \node at (6.5,-0.5) {C7}; + \node at (7.5,-0.5) {C8}; + \node at (8.5,-0.5) {C9}; + \end{scriptsize} +} + +% Sudoku nodes +\newcommand{\knode}[3]{\node at (#1,#2) {#3};} + +% Sudoku fills +\newcommand{\kfill}[3]{\draw [fill=gray#3, line width=0mm] (#1,#2) rectangle +(1,1);} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Just for Issue #006 %%%%%%%%%%%%%%%%%%%%%% + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Include URLS %%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Be sure to load this package last +\usepackage[hidelinks]{hyperref} % Inlcude URLs, but load this package last + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Document Information %%%%%%%%%%%%%%%%%%%%% +%% Adjust the TITLE and SUBTITLE as necessary +\author{Kenneth John Odle} +\title{ + {\Huge Sudoku} \\ + \bigskip + {\footnotesize How to Play \\ How to Win \\ + \bigskip + Typeset in \LaTeX{} \\ +% Issue \#006 + } +} +\date{\begin{small}\the\year\end{small}} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Let's get it started %%%%%%%%%%%%%%%%%%%%% + +\begin{document} +\maketitle + +\section*{Impressum} +All contents \copyright{}2025 Kenneth John Odle + +FYI, this is made in \LaTeX \,using the report document class. It then gets exported to a letterhalf (5.5 in x 8.5 in) pdf, which then gets made into a booklet using PDF Booklet, which you can find at + +\kref{https://pdfbooklet.sourceforge.io/wordpress/}{https://pdfbooklet.sourceforge.io/wordpress/} + +If you want to donate financial support for the creation of this zine (and all the hours of research that go into it), you can do so at + +\kref{https://paypal.me/kjodle}{https://paypal.me/kjodle} (Thanks!) + + +\tableofcontents + +\chapter{What Is Sudoku?} + +Tikz grid example: + +\noindent{}\begin{tikzpicture}[x=5mm,y=5mm] +% Fills (must go first to put behind the grid) + \path [fill=gray8, line width=0mm] (6,7) -- (7,7) -- (7,8) -- (6,8); +% Thick horizontal lines + \draw [ultra thick](0,0)--(9,0); + \draw [ultra thick](0,3)--(9,3); + \draw [ultra thick](0,6)--(9,6); + \draw [ultra thick](0,9)--(9,9); +% Thick vertical lines + \draw [ultra thick](0,0)--(0,9); + \draw [ultra thick](3,0)--(3,9); + \draw [ultra thick](6,0)--(6,9); + \draw [ultra thick](9,0)--(9,9); +% Thin horizontal lines + \draw (0,1)--(9,1); + \draw (0,2)--(9,2); + \draw (0,4)--(9,4); + \draw (0,5)--(9,5); + \draw (0,7)--(9,7); + \draw (0,8)--(9,8); +% Thin vertical lines + \draw (1,0)--(1,9); + \draw (2,0)--(2,9); + \draw (4,0)--(4,9); + \draw (5,0)--(5,9); + \draw (7,0)--(7,9); + \draw (8,0)--(8,9); +% Nodes + \node at (0.5,7.5) {6}; + \node at (1.5,7.5) {1}; + \node at (4.5,7.5) {3}; + \node at (7.5,8.5) {9}; + \node at (8.5,8.5) {5}; + \node at (5.5,8.5) {2}; +\end{tikzpicture} + +\begin{wrapfigure}{R}{0.6\textwidth} +\begin{tikzpicture}[x=5mm,y=5mm] +\kfill{6}{7}{8} +\kgrid +\knode{0.5}{7.5}{6} +\knode{1.5}{7.5}{1} +\knode{4.5}{7.5}{3} +\knode{6.5}{1.5}{7} +\knode{6.5}{4.5}{4} +\knode{7.5}{8.5}{9} +\knode{8.5}{6.5}{2} +\knode{8.5}{8.5}{5} +\end{tikzpicture} +\caption{Grid A} +\end{wrapfigure} + +\chapter{The Rules of Sudoku} + +\chapter{Troubleshooting} + + +\end{document}