Directory macros/latex/contrib/projlib
The ProjLib
Toolkit
This bundle is dated 2023/11/05.
New documentations are still being written. For now, only the core code is included in TeX Live 2023 (old documentations have been removed from the distribution).
Introduction
ProjLib can be interpreted as "Project Library" (in English), or as "Projet Libre" (in French, meaning "Free Project").
ProjLib
is a collection of tools that help you write LaTeX document. With the main package ProjLib
loaded (note that it is case-sensitive), you no longer need to manually configure the appropriate multilingual settings nor to set up the theorem-like environments. In addition, a series of auxiliary functionalities are introduced.
To get started, simply put this line in your preamble:
\usepackage{ProjLib}
For the options and detailed usage, please refer to the documentation.
The modules
Each module corresponds to a separate package, for example, the moduletheorem
isprojlib-theorem.sty
.
The modules include:
- module
author
- Enhanced author information block- Offering
\address
,\curraddr
and\email
. - Write in the AMS fashion (with option
ams-fashion
):- Support
\dedicatory
,\keywords
and\subjclass
\thanks
can be written outside\author
;- The
abstract
environment can be placed before\maketitle
.
- Support
- Offering
- module
datetime
- Convert numeric date-time string to natural language\TheDate
and\Thedate
for converting numeric date-time string to natural language, with multi-language support (if the command names\TheDate
or\Thedate
are occupied, then one can switch to the longer version\ProjLibDate
and\ProjLibdate
).\ProjLibToday
and\ProjLibToday
(with the modulelanguage
enabled,\today
is redefined into\ProjLibToday
, and thus supports the arguments likeonly-year-month
).- Multiple input and output format available.
- module
draft
- Useful commands during draft stage\DNF
for marking unfinished part. In addition, a report of all unfinished places shall be printed at the last of your document.- Reimplemented
\blindtext
to support more languages.
- module
font
- Font selection and configuration- Supporting Palatino, Times, Garamond, Biolinum, Noto, etc.
- module
language
- Multi-language configuration\UseLanguage
,\UseOtherLanguage
for selecting languages, and\AddLanguageSetting
for adding language-specific settings.\DefineMultilingualText
for defining multilingual text strings.- Currently support Chinese (simplified and traditional), English, French, German, Italien, Japanese, Portuguese (European and Brazilian), Russian and Spanish.
- module
logo
- The ProjLib logo- Draw the
ProjLib
logo in colorful or colorless fashion.
- Draw the
- module
math
- Efficient math setup\DefineOperator
and\DefineShortcut
for setting up math macros efficiently.\ListOfSymbols
for printing list of symbols.
- module
paper
- Configuration of the paper style- Paper style configuration, with the themes
light yellow
,yellow
,green
,light gray
,gray
,dark
, etc.
- Paper style configuration, with the themes
- module
text
- Text-related commands- Provide a few useful commands such as
\ie
,\eg
,\cf
,\etc
; and if you have your own version defined, they won't interfere with your definition. \ItemDescription
for writing leading description to items initemize
orenumerate
.
- Provide a few useful commands such as
- module
theorem
- Configuration of theorem-like environments- Setting up theorem-like environments based on the package
create-theorem
\CreateTheorem
,\SetTheorem
and more...- In particular, supporting the modes
name as is
andname as context
for the referencing names.
- In particular, supporting the modes
- Supporting the modes
simple name
andcomplex name
for the referencing names. \SwitchTheoremNumbering
and\DisableTheoremNumbering
for manipulating the numbering.- Preset environments include:
application
,assertion
,assumption
,axiom
,claim
,conclusion
,conjecture
,construction
,convention
,corollary
,definition
,definition-proposition
,definition-theorem
,example
,exercise
,fact
,hypothesis
,lemma
,notation
,observation
,postulate
,problem
,property
,proposition
,question
,recall
,remark
,theorem
, and the corresponding unnumbered version with an asterisk*
in the name.
- Setting up theorem-like environments based on the package
- module
titlepage
- Commands for rendering the title page- Currently support four title page styles:
default
,academic
,minimalist
andsimple
.
- Currently support four title page styles:
Since the moduletheorem
usescleveref
, it should be loaded aftervarioref
andhyperref
(same for the main packageProjLib
).
How to get these files
You can get the .sty
files mentioned above by compiling ProjLib.ins
:
latex ProjLib.ins
License
This work is released under the LaTeX Project Public License, v1.3c or later.
Download the contents of this package in one zip archive (73.9k).
ProjLib – A collection of facilitative tools
ProjLib is a collection of tools to help you write LaTeX documents. With the main package ProjLib 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.
Package | ProjLib |
Repository | https://github.com/Jinwen-XU/ProjLib |
Version | 2023-11-05 |
Licenses | The LaTeX Project Public License 1.3c |
Copyright | 2021–2023 Jinwen XU |
Maintainer | Jinwen XU |
Contained in | TeX Live as projlib MiKTeX as projlib |
Topics | Misc support Experimental LaTeX3 |
