1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
<!-- Copyright (C) 2021 by Jinwen XU -->
# ProjLib Toolkit
> **ProjLib** can be interpreted as "***Proj**ect **Lib**rary*" in English, but I prefer the French interpretation "***Proj**et **Lib**re*".
## Introduction
`ProjLib` is a collection of tools that help you write LaTeX document. With `PJLtoolkit` loaded, you no longer need to set up the theorem-like environments nor to manually configure the appropriate multilingual settings. In addition, a series of auxiliary functionalities are introduced.
The collection includes:
1. `PJLamssim.sty`
- Simulate some features of `amsart` in the standard classes
1. `PJLauthor.sty`
- Enhanced author information block
- Offers `\address`, `\curraddr` and `\email`
1. `PJLdate.sty`
- Offers a macro `\PJLdate` to convert `yyyy-mm-dd` to normal datetime format, with multi-language support
1. `PJLdraft.sty`
- Useful macros during the draft stage: `\dnf` and `\needgraph`, with multi-language support
1. `PJLlang.sty`
- Multi-language configuration based on `babel` or `polyglossia`
- Offers `\UseLanguage`, `\UseOtherLanguage` and `\AddLanguageSetting`
- Currently support Chinese (simplified and traditional), English, French, German, Italien, Japanese, Portuguese (European and Brazilian), Russian and Spanish
1. `PJLlogo.sty`
- Draw the ProjLib logo
1. `PJLpaper.sty`
- Paper style configuration: yellow theme, dark theme and nord theme
1. `PJLthm.sty`
- Theorem setup and configuration
- Offers a macro `\CreateTheorem` for creating theorem-like environments with multi-language support
- Preset environments include: `assumption`, `axiom`, `conjecture`, `convention`, `corollary`, `definition`, `definition-proposition`, `definition-theorem`, `example`, `exercise`, `fact`, `hypothesis`, `lemma`, `notation`, `observation`, `problem`, `property`, `proposition`, `question`, `remark`, `theorem`, and the corresponding unnumbered version with an asterisk `*` in the name.
1. `PJLtoolkit.sty`, *the all-in-one solution*
- A collective interface of ProjLib Toolkit, loading all the packages above
- Provide some pre-defined font configuration
> Since `PJLthm.sty` (and thus `PJLtoolkit.sty`) uses `cleveref`, it should be loaded after `varioref` and `hyperref`.
## How to get these files
You can get the `.sty` files mentioned above simply by compiling `ProjLib.ins`:
```
latex ProjLib.ins
```
## An example
```latex
\documentclass{amsart}
\usepackage[a4paper,margin=.75in]{geometry}
\usepackage[hidelinks]{hyperref}
\usepackage[palatino]{PJLtoolkit}
%% You can also comment the above lines and try the following (require xelatex or lualatex):
% \documentclass[a4paper,allowbf]{lebhart}
% \usepackage{PJLtoolkit}
%% Using \UseLanguage to select language, by default "English" is selected
\UseLanguage{French} % Use French from here
\begin{document}
\title{Le Titre}
\author{Auteur 1}
\address{Adresse 1}
\email{\href{Courriel 1}{Courriel 1}}
\author{Auteur 1}
\address{Adresse 1}
\email{\href{Courriel 2}{Courriel 2}}
\date{\PJLdate{2022-04-01}}
\subjclass{*****}
\keywords{...}
\begin{abstract}
Ceci est un résumé. \dnf<Plus de contenu est nécessaire.>
\end{abstract}
\maketitle
\section{Un théorème}
%% Theorem-like environments can be used directly
\begin{theorem}\label{thm:abc}
Ceci est un théorème.
\end{theorem}
Référence du théorème: \cref{thm:abc} % It is recommended to use clever reference
\end{document}
```
# License
This work is released under the LaTeX Project Public License, v1.3c or later.
|