Skip to content

Commit fac4ca6

Browse files
authored
Merge pull request #28 from aobolensk/chktex
Introduce chktex linter
2 parents ec548b3 + 2badc91 commit fac4ca6

File tree

10 files changed

+98
-88
lines changed

10 files changed

+98
-88
lines changed

.github/workflows/build.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,20 @@ permissions:
88
pages: write
99

1010
jobs:
11+
lint-tex:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
- name: Install chktex
16+
run: |
17+
sudo apt-get update
18+
sudo apt-get install -y chktex texlive-latex-base
19+
- name: Lint TeX files
20+
run: |
21+
find . -type f -name '*.tex' -exec chktex -q {} +
1122
ubuntu-build:
1223
runs-on: ubuntu-latest
24+
needs: lint-tex
1325
steps:
1426
- uses: actions/checkout@v4
1527
- name: Setup environment
@@ -31,6 +43,7 @@ jobs:
3143
path: '*.html'
3244
macos-build:
3345
runs-on: macos-latest
46+
needs: lint-tex
3447
steps:
3548
- uses: actions/checkout@v4
3649
- name: Setup environment

00-intro/00-intro.tex

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,21 @@
1919
\leavevmode%
2020
\hbox{%
2121
\begin{beamercolorbox}[wd=.45\paperwidth,ht=2.5ex,dp=1ex,leftskip=1em,center]{author in head/foot}%
22-
\usebeamerfont{author in head/foot}\insertshortinstitute % Displays the university name
22+
\usebeamerfont{author in head/foot}\insertshortinstitute% Displays the university name
2323
\end{beamercolorbox}%
2424
\begin{beamercolorbox}[wd=.45\paperwidth,ht=2.5ex,dp=1ex,leftskip=1em,center]{author in head/foot}%
25-
\usebeamerfont{author in head/foot}\insertshorttitle % Displays the short title
25+
\usebeamerfont{author in head/foot}\insertshorttitle% Displays the short title
2626
\end{beamercolorbox}%
2727
\begin{beamercolorbox}[wd=.1\paperwidth,ht=2.5ex,dp=1ex,rightskip=1em,center]{author in head/foot}%
28-
\usebeamerfont{author in head/foot}\insertframenumber{} / \inserttotalframenumber
28+
\usebeamerfont{author in head/foot}\insertframenumber{} / \inserttotalframenumber%
2929
\end{beamercolorbox}}%
3030
\vskip0pt%
3131
}
3232

3333
\begin{document}
3434

3535
\begin{frame}
36-
\titlepage
36+
\titlepage%
3737
\end{frame}
3838

3939
\begin{frame}{Contents}
@@ -61,7 +61,7 @@ \section{Introduction}
6161
\end{itemize}
6262
\end{frame}
6363

64-
\begin{frame}{Before we start the actual project...}
64+
\begin{frame}{Before we start the actual project\ldots}
6565
need to familiarize ourselves with key technologies used in the industry.
6666

6767
Next lectures plan:
@@ -91,8 +91,8 @@ \section{Introduction}
9191

9292
\begin{frame}{Reports}
9393
\begin{itemize}
94-
\item February - intermediate report
95-
\item June - ITLab report
94+
\item February --- intermediate report
95+
\item June --- ITLab report
9696
\end{itemize}
9797
\end{frame}
9898

01-git/01-git.tex

Lines changed: 24 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,21 @@
1919
\leavevmode%
2020
\hbox{%
2121
\begin{beamercolorbox}[wd=.45\paperwidth,ht=2.5ex,dp=1ex,leftskip=1em,center]{author in head/foot}%
22-
\usebeamerfont{author in head/foot}\insertshortinstitute % Displays the university name
22+
\usebeamerfont{author in head/foot}\insertshortinstitute% Displays the university name
2323
\end{beamercolorbox}%
2424
\begin{beamercolorbox}[wd=.45\paperwidth,ht=2.5ex,dp=1ex,leftskip=1em,center]{author in head/foot}%
25-
\usebeamerfont{author in head/foot}\insertshorttitle % Displays the short title
25+
\usebeamerfont{author in head/foot}\insertshorttitle% Displays the short title
2626
\end{beamercolorbox}%
2727
\begin{beamercolorbox}[wd=.1\paperwidth,ht=2.5ex,dp=1ex,rightskip=1em,center]{author in head/foot}%
28-
\usebeamerfont{author in head/foot}\insertframenumber{} / \inserttotalframenumber
28+
\usebeamerfont{author in head/foot}\insertframenumber{} / \inserttotalframenumber%
2929
\end{beamercolorbox}}%
3030
\vskip0pt%
3131
}
3232

3333
\begin{document}
3434

3535
\begin{frame}
36-
\titlepage
36+
\titlepage%
3737
\end{frame}
3838

3939
\begin{frame}{Contents}
@@ -52,26 +52,26 @@ \section{What are version control systems?}
5252

5353
\section{What version control systems exist? History and evolution}
5454

55-
\begin{frame}{Early Days of Computing (1950s - 1970s). SCCS}
55+
\begin{frame}{Early Days of Computing (1950s--1970s). SCCS}
5656
Before the development of dedicated version control systems, programmers used manual processes to manage changes. Early systems, like the Source Code Control System (SCCS), developed by Marc Rochkind at Bell Labs in 1972, were among the first tools created to automate version control. SCCS stored multiple versions of code and helped manage modifications through change sets, allowing programmers to revert to earlier versions if necessary.
5757
\begin{block}{SCCS subcommands}
58-
admin -i file.f s.file.f - Put subs under SCCS control.\\
59-
get s.file.f - Retrieve, read only.\\
60-
get -e s.file.f - Retrieve, read/write (e = edit).\\
61-
get -p s.file.f - Retrieve, just peak.\\
62-
delta s.file.f - Store changes.\\
63-
prs s.file.f - List revisions.\\
58+
admin -i file.f s.file.f --- Put subs under SCCS control.\\
59+
get s.file.f --- Retrieve, read only.\\
60+
get -e s.file.f --- Retrieve, read/write (e = edit).\\
61+
get -p s.file.f --- Retrieve, just peak.\\
62+
delta s.file.f --- Store changes.\\
63+
prs s.file.f --- List revisions.\\
6464
\end{block}
6565

6666
\footnotesize Source: \href{https://sites.science.oregonstate.edu/~landaur/nacphy/coping-with-unix/node169.html}{https://sites.science.oregonstate.edu/~landaur/nacphy/coping-with-unix/node169.html}
6767
\end{frame}
6868

69-
\begin{frame}{Centralized Version Control Systems (1980s - 1990s)}
69+
\begin{frame}{Centralized Version Control Systems (1980s--1990s)}
7070
Centralized version control systems (CVCS) came to prominence during the 1980s. These systems required a single, central server where all files and version histories were stored. Developers had to be connected to this server to commit changes or retrieve updates.
7171
\begin{itemize}
72-
\item RCS (Revision Control System): Developed by Walter Tichy in the early 1980s, RCS is a more advanced system than SCCS. It introduced features like automated version numbering and handling of concurrent edits, but it was still a single-user system.
72+
\item RCS (Revision Control System): Developed by Walter Tichy in the early 1980s, RCS is a more advanced system than SCCS.\@ It introduced features like automated version numbering and handling of concurrent edits, but it was still a single-user system.
7373
\item CVS (Concurrent Versions System): Introduced in 1990, CVS extended RCS with support for multiple developers working on the same project. It allowed distributed teams to collaborate more effectively, although merging changes was often difficult.
74-
\item SVN (Subversion): developed as an improvement over older systems like CVS. It was created by CollabNet in 2000 and later became an Apache project.
74+
\item SVN (Subversion): developed as an improvement over older systems like CVS.\@ It was created by CollabNet in 2000 and later became an Apache project.
7575
\end{itemize}
7676
\end{frame}
7777

@@ -155,13 +155,13 @@ \section{Basic Git commands}
155155
\item Subject line (summary)
156156
\begin{itemize}
157157
\item Usually is short (up to 50 characters)
158-
\item Imperative is used (e.g., "Fix bug in user login" or "Add tests for API endpoint").
158+
\item Imperative is used (e.g., ``Fix bug in user login'' or ``Add tests for API endpoint'').
159159
\item Avoid periods at the end of the line
160160
\end{itemize}
161161
\item Body (optional)
162162
\begin{itemize}
163163
\item Wrap lines at 72 characters
164-
\item Explain why the change was made, rather than just what was done (the code diff itself explains the "what").
164+
\item Explain why the change was made, rather than just what was done (the code diff itself explains the ``what'').
165165
\end{itemize}
166166
\end{itemize}
167167
\begin{block}{Commit message example}
@@ -179,7 +179,7 @@ \section{Basic Git commands}
179179
\item Make small, logical commits: Each commit should represent a single logical change. Avoid lumping multiple unrelated changes into one commit.
180180
\begin{itemize}
181181
\item If you can split your commit into two in many cases it is better to do this.
182-
\item If your commit message contains the word "and" this might be a signal that commit can be split
182+
\item If your commit message contains the word ``and'' this might be a signal that commit can be split
183183
\end{itemize}
184184
\item Write meaningful commit messages: This helps others (and future you) understand the purpose of each commit.
185185
\item Commit often: Regular commits allow you to track progress and makes it easier to revert to a stable state if something goes wrong.
@@ -190,7 +190,6 @@ \section{Basic Git commands}
190190
\begin{figure}[h]
191191
\centering
192192
\includegraphics[width=0.75\textwidth]{images/in-case-of-fire.png}
193-
\label{fig:in-case-of-fire}
194193
\end{figure}
195194
{\footnotesize Source: \href{https://github.com/hendrixroa/in-case-of-fire}{https://github.com/hendrixroa/in-case-of-fire}}
196195
\end{frame}
@@ -208,7 +207,7 @@ \section{Basic Git commands}
208207
\end{block}
209208
\item Commit changes:
210209
\begin{block}{Command}
211-
\texttt{git commit -m "Commit message"}
210+
\texttt{git commit -m ``Commit message''}
212211
\end{block}
213212
\end{itemize}
214213
\end{frame}
@@ -244,7 +243,7 @@ \section{Basic Git commands}
244243
\footnotesize
245244
In Git, a branch represents an independent line of development, enabling you to work on different features, fixes, or experiments without affecting the main line of the project.\\
246245
\textbf{A branch} is a movable pointer to a commit. It allows users to develop different project directions in parallel.\\
247-
e.g. several developers are working on several different independant features
246+
e.g.\ several developers are working on several different independant features
248247
\begin{itemize}
249248
\item Create a new branch:
250249
\begin{block}{Command}
@@ -402,7 +401,6 @@ \section{Git workflows overview}
402401
\begin{figure}[h]
403402
\centering
404403
\includegraphics[width=1\textwidth]{images/github-flow.png}
405-
\label{fig:github-flow}
406404
\end{figure}
407405
{\footnotesize Source: \href{https://github.com/a-a-ron/Github-Flow}{https://github.com/a-a-ron/Github-Flow}}
408406
\end{frame}
@@ -412,11 +410,11 @@ \section{Git workflows overview}
412410
\item A robust branching model for managing releases.
413411
\item Defines specific branches:
414412
\begin{itemize}
415-
\item \textbf{master} - contains production-ready code.
416-
\item \textbf{develop} - integration branch for features.
417-
\item \textbf{feature branches} - for new features.
418-
\item \textbf{release branches} - prepare for a new production release.
419-
\item \textbf{hotfix branches} - quick fixes for production.
413+
\item \textbf{master} --- contains production-ready code.
414+
\item \textbf{develop} --- integration branch for features.
415+
\item \textbf{feature branches} --- for new features.
416+
\item \textbf{release branches} --- prepare for a new production release.
417+
\item \textbf{hotfix branches} --- quick fixes for production.
420418
\end{itemize}
421419
\item Benefits:
422420
\begin{itemize}
@@ -430,7 +428,6 @@ \section{Git workflows overview}
430428
\begin{figure}[h]
431429
\centering
432430
\includegraphics[height=0.87\textheight]{images/git-flow.png}
433-
\label{fig:git-flow}
434431
\end{figure}
435432
\end{frame}
436433

02-cmake/02-cmake.tex

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,21 +41,21 @@
4141
\leavevmode%
4242
\hbox{%
4343
\begin{beamercolorbox}[wd=.45\paperwidth,ht=2.5ex,dp=1ex,leftskip=1em,center]{author in head/foot}%
44-
\usebeamerfont{author in head/foot}\insertshortinstitute % Displays the university name
44+
\usebeamerfont{author in head/foot}\insertshortinstitute% Displays the university name
4545
\end{beamercolorbox}%
4646
\begin{beamercolorbox}[wd=.45\paperwidth,ht=2.5ex,dp=1ex,leftskip=1em,center]{author in head/foot}%
47-
\usebeamerfont{author in head/foot}\insertshorttitle % Displays the short title
47+
\usebeamerfont{author in head/foot}\insertshorttitle% Displays the short title
4848
\end{beamercolorbox}%
4949
\begin{beamercolorbox}[wd=.1\paperwidth,ht=2.5ex,dp=1ex,rightskip=1em,center]{author in head/foot}%
50-
\usebeamerfont{author in head/foot}\insertframenumber{} / \inserttotalframenumber
50+
\usebeamerfont{author in head/foot}\insertframenumber{} / \inserttotalframenumber%
5151
\end{beamercolorbox}}%
5252
\vskip0pt%
5353
}
5454

5555
\begin{document}
5656

5757
\begin{frame}
58-
\titlepage
58+
\titlepage%
5959
\end{frame}
6060

6161
\begin{frame}{Contents}
@@ -64,7 +64,7 @@
6464

6565
\section{Building C++ projects}
6666

67-
\begin{frame}[fragile]{C++ "Hello, World" example}
67+
\begin{frame}[fragile]{C++ ``Hello, World'' example}
6868
\lstset{style=CStyle, caption=Hello World example}
6969
\begin{lstlisting}
7070
#include <iostream>
@@ -95,7 +95,7 @@ \section{Building C++ projects}
9595
\begin{itemize}
9696
\item Open the Command Prompt.
9797
\item Navigate to the directory containing \texttt{main.cpp}.
98-
\item If using MinGW:
98+
\item If using MinGW\@:
9999
\begin{lstlisting}[language=bash]
100100
g++ -o hello.exe main.cpp
101101
hello.exe
@@ -165,7 +165,7 @@ \section{Building C++ projects}
165165
\end{frame}
166166

167167
\begin{frame}[fragile]{Building simple main.cpp with add library on Windows}
168-
Using MinGW:
168+
Using MinGW\@:
169169
\begin{itemize}
170170
\item Compile \texttt{add.cpp}:
171171
\begin{lstlisting}[language=bash]

03-linux/03-linux.tex

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,21 @@
1919
\leavevmode%
2020
\hbox{%
2121
\begin{beamercolorbox}[wd=.45\paperwidth,ht=2.5ex,dp=1ex,leftskip=1em,center]{author in head/foot}%
22-
\usebeamerfont{author in head/foot}\insertshortinstitute % Displays the university name
22+
\usebeamerfont{author in head/foot}\insertshortinstitute% Displays the university name
2323
\end{beamercolorbox}%
2424
\begin{beamercolorbox}[wd=.45\paperwidth,ht=2.5ex,dp=1ex,leftskip=1em,center]{author in head/foot}%
25-
\usebeamerfont{author in head/foot}\insertshorttitle % Displays the short title
25+
\usebeamerfont{author in head/foot}\insertshorttitle% Displays the short title
2626
\end{beamercolorbox}%
2727
\begin{beamercolorbox}[wd=.1\paperwidth,ht=2.5ex,dp=1ex,rightskip=1em,center]{author in head/foot}%
28-
\usebeamerfont{author in head/foot}\insertframenumber{} / \inserttotalframenumber
28+
\usebeamerfont{author in head/foot}\insertframenumber{} / \inserttotalframenumber%
2929
\end{beamercolorbox}}%
3030
\vskip0pt%
3131
}
3232

3333
\begin{document}
3434

3535
\begin{frame}
36-
\titlepage
36+
\titlepage%
3737
\end{frame}
3838

3939
\begin{frame}{Contents}
@@ -83,7 +83,7 @@ \section{Introduction}
8383
\item Personal computers
8484
\item Embedded systems
8585
\item Networking equipment
86-
\item and many others...
86+
\item and many others\ldots
8787
\end{itemize}
8888
\end{frame}
8989

@@ -100,7 +100,7 @@ \section{History}
100100

101101
\begin{frame}{UNIX history}
102102
\begin{itemize}
103-
\item Origins at Bell Labs (1969-1970)
103+
\item Origins at Bell Labs (1969--1970)
104104
\item UNIX Expansion (1970s)
105105
\begin{itemize}
106106
\footnotesize
@@ -121,7 +121,7 @@ \section{History}
121121
\item POSIX Standard was introduced
122122
\end{itemize}
123123
\item Rise of Linux and Open Source (1990s)
124-
\item Modern UNIX and Legacy (2000s - Present)
124+
\item Modern UNIX and Legacy (2000s---Present)
125125
\end{itemize}
126126
\end{frame}
127127

@@ -173,7 +173,7 @@ \section{Linux}
173173
\item SPARC (32-bit and 64-bit)
174174
\item Itanium (IA-64, 64-bit)
175175
\item LoongArch
176-
\item and many others...
176+
\item and many others\ldots
177177
\end{itemize}
178178

179179
\footnotesize Full up-to-date list: \href{https://en.wikipedia.org/wiki/List_of_Linux-supported_computer_architectures}{https://en.wikipedia.org/wiki/List\_of\_Linux-supported\_computer\_architectures}
@@ -250,40 +250,40 @@ \section{Basic Linux commands}
250250

251251
\begin{frame}{Files navigation}
252252
\begin{itemize}
253-
\item \texttt{pwd} : Print working directory
254-
\item \texttt{ls} : List directory contents
255-
\item \texttt{cd} : Change directory
256-
\item \texttt{mkdir} : Create a new directory
253+
\item \texttt{pwd}: Print working directory
254+
\item \texttt{ls}: List directory contents
255+
\item \texttt{cd}: Change directory
256+
\item \texttt{mkdir}: Create a new directory
257257
\end{itemize}
258258
\begin{exampleblock}{Examples}
259259
\begin{itemize}
260-
\item \texttt{ls -l} : Detailed list
261-
\item \texttt{cd /home/user} : Navigate to user's home
260+
\item \texttt{ls -l}: Detailed list
261+
\item \texttt{cd /home/user}: Navigate to user's home
262262
\end{itemize}
263263
\end{exampleblock}
264264
\end{frame}
265265

266266
\begin{frame}{File Manipulations}
267267
\begin{itemize}
268-
\item \texttt{touch} : Create an empty file or update timestamp
269-
\item \texttt{cp} : Copy files or directories
270-
\item \texttt{mv} : Move or rename files
271-
\item \texttt{rm} : Remove files or directories
272-
\item \texttt{cat} : Concatenate and display files
268+
\item \texttt{touch}: Create an empty file or update timestamp
269+
\item \texttt{cp}: Copy files or directories
270+
\item \texttt{mv}: Move or rename files
271+
\item \texttt{rm}: Remove files or directories
272+
\item \texttt{cat}: Concatenate and display files
273273
\end{itemize}
274274
\begin{exampleblock}{Examples}
275275
\begin{itemize}
276-
\item \texttt{touch file.txt} : Create a new file
277-
\item \texttt{rm -r folder} : Remove a directory and its contents
276+
\item \texttt{touch file.txt}: Create a new file
277+
\item \texttt{rm -r folder}: Remove a directory and its contents
278278
\end{itemize}
279279
\end{exampleblock}
280280
\end{frame}
281281

282282
\begin{frame}{Text Editors}
283283
\begin{itemize}
284-
\item \textbf{nano} : Simple text editor
285-
\item \textbf{vim} : Advanced text editor with modal editing
286-
\item \textbf{code} : Visual Studio Code (GUI only)
284+
\item \textbf{nano}: Simple text editor
285+
\item \textbf{vim}: Advanced text editor with modal editing
286+
\item \textbf{code}: Visual Studio Code (GUI only)
287287
\end{itemize}
288288
\begin{exampleblock}{Opening a File}
289289
\begin{itemize}

0 commit comments

Comments
 (0)