Compare commits

...

28 commits

Author SHA1 Message Date
daniel
c7d7427f97
Correct documentation to reflect new order color before style (#257)
* Correct documentation to reflect new order \moderncvcolor before \moderncvstyle

* adds a direct hint on the command order for style and color

* manually update the userguide.pdf: color and style order

* correct ordering in CHANGELOG for older PR
2026-02-05 22:25:19 +01:00
daniel
35e3de2b71
improve icon documentation and include description how to use socials with custom strings (#240) 2026-02-05 21:49:19 +01:00
daniel
247d3fd585
Upgrade to fontawesome6 (#238)
* upgrade to fontawesome6, use signal icon from fontawesome instead of tikz and migrate the faGlobe icons to new syntax

* correct ordering of releases manually after auto-merge: fontawesome6 is used in moderncv >2.5.1
2026-02-03 22:12:06 +01:00
daniel
93a77ab387
use texlive image from island of tex (#258)
previous image had its last update 4y ago
2026-02-03 21:49:45 +01:00
daniel
8856b33714
Build all moderncv styles in github actions (#251)
* build all moderncv styles in github actions

* do correct escaping for sed

* prevent .log files from deletion, needed for artifact upload

* fix style iteration logic when replacing styles, colorize echo for better visibility

* fix colors
2026-02-03 21:43:32 +01:00
micheld93
18430d4884
Added support for "Medium.com" social symbols (#264)
* Added support for "Medium.com" social symbols

* Update CHANGELOG

Add new version with Medium.com icon support.

* Update moderncv_userguide.tex

Added "Medium.com" as icon in the manual

* Update moderncviconsletters.sty

Added "Medium.com"

* Update template.tex

Added "Medium.com"
2026-02-01 22:15:20 +01:00
LLdaniel
d3b648b93e manually generate newest userguide, as action is broken 2026-01-31 14:42:31 +01:00
daniel
8076b77366
Prepare v2.5.1 release (#266)
* preparations for v2.5.1: set correct copyright date, fix missing comments on userguide.tex

* sets the version for CHANGELOG

* comment in order to check the comments/headers beforehand

* omits .codespellrc in final release tarball

* fixes wrong paths for upload, investigation of failed push
2026-01-31 13:06:35 +01:00
LLdaniel
5d817593fb prepare new v2.5.0 release and do the usual header change 2026-01-30 22:23:41 +01:00
daniel
ee076d39f6
Install git in container used for automatic userguide generation (#254)
* gh action uses image without git: therefore add it, provide the newest moderncv_userguide.pdf manually due to failed action

* update apt sources
2025-09-06 20:54:19 +02:00
Yaroslav Halchenko
686f1a9a08
Add codespell support (config, workflow to detect/not fix) and make it fix some typos (#253)
* Add github action to codespell master on push and PRs

* Add rudimentary codespell config

* Ignore latex \@ constructs

* [DATALAD RUNCMD] chore: run codespell throughout fixing a few  new typos automagically

=== Do not change lines below ===
{
 "chain": [],
 "cmd": "codespell -w",
 "exit": 0,
 "extra_inputs": [],
 "inputs": [],
 "outputs": [],
 "pwd": "."
}
^^^ Do not change lines above ^^^
2025-09-06 19:54:28 +02:00
Audric Schiltknecht
172f632d5f
Make TikZ library use babel to not break with French (#247)
* Make TikZ library use babel to not break with French

Rendering was incorrect when using French babel: `\usepackage[french]{babel}` (and probably other languages). This can be fixed by configuring TikZ to use babel too.

Fix #219

* Configure TikZ to use babel wherever it is used

* Update CHANGELOG
2025-07-31 23:59:47 +02:00
smo42
d100f20646
Update moderncvheadvii.sty (#245)
* Update moderncvheadvii.sty

added born for the contemporary style after address and before phone section

* Update CHANGELOG

- Fix birthdate not showing up in contemporary style (#244)

* Update moderncvheadvii.sty

- Fix birthdate not showing up in contemporary style (#244) (removed /born from letter)
2025-07-23 22:49:14 +02:00
daniel
02640f41c4
automated action for user guide creation (#192) 2025-06-18 13:47:38 +02:00
Coleridge James Faraday
0c18c4286b
Inspire HEP social link bug fix (#242)
* Fixed typo in Inspire HEP social link

* Updated CHANGELOG
2025-06-05 16:42:12 +02:00
Javier Lopez-Gomez
800b295405 Fix minor horizontal spacing issue in 'contemporary' style header 2025-03-24 18:59:11 +01:00
Mark E Fuller
9bb975402b
Add nice header and proper rendering to contemporary letter (#233)
* apply icon colors to tikz icons

* add contemporary colored header to letter

* update changelog
2025-02-22 22:31:28 +01:00
daniel
51a3e9c3d7
introduce simplex/threema social icon - at least as tikz icon (#222)
* introduce simplex social icon - at least as tikz icon

* complete CHANGELOG entry

* introduce threema social icon - at least as tikz icon

* addendum: new compiled user guide

---------

Co-authored-by: Mark E Fuller <mark.e.fuller@gmx.de>
2025-02-22 21:43:18 +02:00
daniel
baa0c5920d
All colors for all styles (#212)
* make grey usable for contemporary, new color definition

* make blue usable for contemporary

* make burgundy usable for contemporary

* make green usable for contemporary

* make orange usable for contemporary

* make purple usable for contemporary

* make red usable for contemporary

* make black usable for contemporary
2025-02-22 16:14:49 +02:00
Aditya Bhargava
56d1b65d9e
Make header details flush against sides (#229)
* Make header details flush against sides

* Add fix to changelog
2025-01-13 17:05:32 +01:00
AlexVonB
d7e0e4966e
Allowing long names to break in the cv title again (#221)
* allow long names in titles to break

Until now, a `~` (non breaking space) connects first
and last name in the cv title. This prevents long
names to break correctly. This commit replaces the space
with `\ `, a space that allows breaking.

Fixes #220

* added changelog entry

* removed non-breaking space in names from other headlines, too
2024-12-10 23:24:40 +01:00
Aram Dermenjian
14deb59ddb
Allow icons in classic letter (#176)
* Allow icons in classic letter

* Add socials for fancy and banking themes

* Update changelog

---------

Co-authored-by: Cali Garmo <aram.dermenjian.o@gmail.com>
2024-09-24 04:43:19 +01:00
Aram Dermenjian
f05efdb2de
Update old style to use symbol instead of marvosym (#209)
* Update old style to use symbol instead of marvosym

* Update CHANGELOG

Added info to changelog

---------

Co-authored-by: Cali Garmo <aram.dermenjian.o@gmail.com>
2024-09-24 04:42:05 +01:00
Yehuda Davis
cdf027a9da
style space between first and last name the same as first name (#205)
* style space between first and last name the same as first name

* add fix to changelog
2024-08-09 18:52:54 +02:00
Patrick J. Roddy
06932535d8
Fix typo in bibliography comment (#206) 2024-08-09 07:42:41 +02:00
daniel
1472e001c5
Rename moderncvcolors from .tex to .sty for MiKTeX compatibility (#200)
* rename moderncvcolors from .tex to .sty for MiKTeX compatibility

* added changelog entry to document the file change
2024-08-06 22:11:34 +02:00
daniel
d6d3ef7f13
in case no photo is set: define photoframewidth nevertheless (#202) 2024-08-05 17:58:13 +02:00
daniel
34e7b15a6b
deliver missing CHANGELOG for 2.4.1 patch (#197) 2024-07-18 20:14:51 +02:00
54 changed files with 634 additions and 371 deletions

7
.codespellrc Normal file
View file

@ -0,0 +1,7 @@
[codespell]
# Ref: https://github.com/codespell-project/codespell#using-a-config-file
skip = .git*,*.pdf,.codespellrc
check-hidden = true
# names, case sensitive
ignore-regex = \bWille\b|\\@\S+
# ignore-words-list =

View file

@ -12,24 +12,37 @@ jobs:
name: Build template
runs-on: ubuntu-latest
container:
image: thomasweise/docker-texlive-full:latest
image: texlive/texlive:latest-full
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Build pdf
run: latexmk -pdflua ./template.tex
run: |
prev_style=contemporary
for style in casual classic banking oldstyle fancy contemporary
do
echo -e "\033[1;35mCompiling style $style...\033[0m"
# first cleanup, but keep .log files for later artifact upload
latexmk -c -e 'sub cleanup_generated { my $ext = $_[0]; return 0 if $ext eq "log"; return 1; }'
sed -i "s/moderncvstyle\[\]{${prev_style}}/moderncvstyle\[\]{${style}}/g" template.tex
latexmk -pdflua ./template.tex
mv template.pdf template_${style}.pdf
mv template.log template_${style}.log
# remember previous style
prev_style=$style
done
- name: Upload pdf
uses: actions/upload-artifact@v4
with:
name: template.pdf
path: ./template.pdf
path: ./template_*.pdf
- name: Upload log
if: ${{ always() }}
uses: actions/upload-artifact@v4
with:
name: template.log
path: ./template.log
path: ./template_*.log

View file

@ -0,0 +1,55 @@
name: Build user guide
on:
push:
branches:
- master
paths:
- 'manual/moderncv_userguide.tex'
pull_request:
paths:
- 'manual/moderncv_userguide.tex'
jobs:
build-userguide:
name: Build user guide
runs-on: ubuntu-latest
env:
UG_AUTHOR: Auto Userguide Creator
UG_COMMIT_MESSAGE: <automated> build of user guide
container:
image: texlive/texlive:latest-full
steps:
- name: Checkout source code
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Build user guide pdf
run: latexmk -pdflua -cd ./manual/moderncv_userguide.tex
- name: Upload user guide pdf
uses: actions/upload-artifact@v4
with:
name: moderncv_userguide.pdf
path: ./manual/moderncv_userguide.pdf
- name: Upload user guide log
if: ${{ always() }}
uses: actions/upload-artifact@v4
with:
name: moderncv_userguide.log
path: ./manual/moderncv_userguide.log
- name: Push new user guide to master
if: ${{ github.ref_name == 'master' }}
run: |
# maybe switch to an image with git already included, for now install it here
apt update && apt install git -y
git config --global user.name '${{ env.UG_AUTHOR }}'
git config --global user.email '${{ github.actor }}@users.noreply.github.com'
ls -l
git add manual/moderncv_userguide.pdf
git commit -m "${{ env.UG_COMMIT_MESSAGE }}"
git push

25
.github/workflows/codespell.yml vendored Normal file
View file

@ -0,0 +1,25 @@
# Codespell configuration is within .codespellrc
---
name: Codespell
on:
push:
branches: [master]
pull_request:
branches: [master]
permissions:
contents: read
jobs:
codespell:
name: Check for spelling errors
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Annotate locations with typos
uses: codespell-project/codespell-problem-matcher@v1
- name: Codespell
uses: codespell-project/actions-codespell@v2

View file

@ -1,3 +1,33 @@
version next
- Upgrade to Fontawesome 6 (#183)
- Document how to set custom strings for social command (#239)
- Correct documentation to reflect new order \moderncvcolor before \moderncvstyle (#256)
version 2.5.1 (31 Jan 2026)
- Fix french babel breaking contemporary style (#219)
- Fix birthdate not showing up in contemporary style (#244)
- Fix Inspire HEP social link (#241)
- Change moderncvcolors.tex to a .sty file for MikTeX compatibility (#199)
- Fix error when omitting the photo in contemporary style (#201)
- Fix spacing between first and last name (#204)
- Include social icons in cover letter for styles classic, fancy and banking (#170)
- Update Oldstyle to use symbols instead of marvosym (#209)
- Added SimpleX and Threema social (#217)
- Fix spacing between first and last name again (#220)
- Make header details flush against sides for casual, classic, and contemporary
styles (#229)
- Fix tikz icon color in contemporary style (#224)
- Add contemporary CV header style to cover letter, which also makes icons
visible (#186)
- Fix minor horizontal spacing issue in 'contemporary' style header
version 2.4.2 (01 Feb 2025)
- Added support for additional social icons like medium. (#264)
version 2.4.1 (18 Jul 2024)
- Fix commons/colors.tex not found in package (#194)
version 2.4.0 (08 Jul 2024)
- Rewrote user guide, thanks to David Seus (#58, #106, #169).
- Fixed "Underfull \hbox (badness 10000)" warning in \makecvtitle (#162).
@ -119,7 +149,7 @@ version 1.4.0 (28 Mar 2013)
now use each of these multiple times, e.g. to display multiple mobile phone
numbers.
- Deprecated \firstname and \familyname in favour of \name{<first>}{<last>}.
- Added a new mechanism to select amongs different possible icon sets:
- Added a new mechanism to select among different possible icon sets:
\moderncvicons{<iconsetname>}, where <iconsetname> can be "marvosym" (used by
default in the banking, casual and classic styles) or "letters" (used by
default in the oldstyle style). \moderncvicons should always be called after

View file

@ -1,5 +1,10 @@
#!/bin/sh
# script to create a tarball for the files that should be in the CTAN upload
#
# do not forget to replace comments/headers beforehand
# 1. date and version in moderncv_userguide.tex
# 2. find . -type f -exec sed -i 's/$OLD_DATE $OLD_VERSION/$NEW_DATE $NEW_VERSION/g' {} \;
# 3. find . -type f -exec sed -i 's|-$OLD_YEAR moderncv maintainers (github.com/moderncv)|-$NEW_YEAR moderncv maintainers (github.com/moderncv)|g' {} \;
# fetch version via git
VERSION=$(git describe --tags --dirty)
@ -12,7 +17,7 @@ rm -f $TARBALL $TARBALL.gz
git archive --prefix=moderncv/ HEAD > $TARBALL
# remove git specific files
tar -f $TARBALL --delete moderncv/.github/ moderncv/.gitignore moderncv/create-release-tarball.sh
tar -f $TARBALL --delete moderncv/.github/ moderncv/.gitignore moderncv/create-release-tarball.sh moderncv/.codespellrc
# compress
gzip $TARBALL

Binary file not shown.

View file

@ -1,5 +1,5 @@
%% moderncv_userguide.tex as shipped with 2024-07-18 v2.4.1 modern curriculum vitae and letter document class (moderncv)
%% 2021 David Seus, cryptointerest@posteo.de
%% moderncv_userguide.tex as shipped with 2026-01-31 v2.5.1 modern curriculum vitae and letter document class (moderncv)
%% 2021 David Seus (cryptointerest@posteo.de), 2021-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -9,7 +9,7 @@
\title{%
\texttt{moderncv} User Guide\\
{\small Package v2.4.1}%
{\small Package v2.5.1}%
}
% Cristina Sambo,
\author{%
@ -18,7 +18,7 @@
moderncv community\\
{\small Documentation by David Seus}%
}
\date{\today}
\date{2026-01-31}
% Language and encoding options
\usepackage[english]{babel}
@ -104,7 +104,7 @@
emph={[2]
familydefault, sfdefault, rmdefault, inputenc, moderncv, document, bibliographyitemlabel,
addresssymbol, mobilephonesymbol, fixedphonesymbol, faxphonesymbol, emailsymbol, homepagesymbol, linkedinsocialsymbol,
xingsocialsymbol, twittersocialsymbol, githubsocialsymbol, gitlabsocialsymbol,
xingsocialsymbol, twittersocialsymbol, githubsocialsymbol, gitlabsocialsymbol, mastodonsocialsymbol, codebergsocialsymbol, discordsocialsymbol, twitchsocialsymbol, youtubesocialsymbol, tiktoksocialsymbol, instagramsocialsymbol, soundcloudsocialsymbol, steamsocialsymbol, xboxsocialsymbol, playstationsocialsymbol, battlenetsocialsymbol, simplexsocialsymbol, threemasocialsymbol,
stackoverflowsocialsymbol, bitbucketsocialsymbol, skypesocialsymbol, orcidsocialsymbol, researchgatesocialsymbol, arxivsocialsymbol, inspiresocialsymbol,
researcheridsocialsymbol, telegramsocialsymbol, whatsappsocialsymbol, signalsocialsymbol, matrixsocialsymbol, googlescholarsocialsymbol, cvstretchability, bornsymbol
},
@ -240,17 +240,17 @@ where at most one value for each option can be passed to the document class:
\end{tabular}
\subsubsection*{Choosing a \texttt{moderncv} style and color}
Choose a \Moderncv style and color by adjusting the commands
Choose a \Moderncv style and color by adjusting the commands (command order is important!):
\begin{lstlisting}
\moderncvstyle{<style>}
\moderncvcolor{<color>}
\moderncvstyle{<style>}
\end{lstlisting}
As explained in \cvtemplate, the possible values are
\begin{tabular}{r@{\hspace{2ex}}p{0.65\textwidth}}
\textbf{\code{color}:} & \code{black} \cvdoccolorbox{black}, \code{blue} \cvdoccolorbox{cvblue} (default), \code{burgundy} \cvdoccolorbox{cvburgundy}, \code{green} \cvdoccolorbox{cvgreen}, \code{grey} \cvdoccolorbox{cvgrey}, \code{orange} \cvdoccolorbox{cvorange}, \code{purple} \cvdoccolorbox{cvpurple}, \code{red} \cvdoccolorbox{cvred}\\
\textbf{\code{style}:} & \code{casual} (default), \code{classic}, \code{banking}, \code{oldstyle},
\code{fancy} \\
\textbf{\code{color}:} & \code{black} \cvdoccolorbox{black}, \code{blue} \cvdoccolorbox{cvblue} (default), \code{burgundy} \cvdoccolorbox{cvburgundy}, \code{green} \cvdoccolorbox{cvgreen}, \code{grey} \cvdoccolorbox{cvgrey}, \code{orange} \cvdoccolorbox{cvorange}, \code{purple} \cvdoccolorbox{cvpurple}, \code{red} \cvdoccolorbox{cvred}
\code{fancy}
\end{tabular}
\note Some of the styles take additional options to fine-tune their appearance.
@ -329,8 +329,9 @@ A command for a social media account.
Takes the platform as an optional argument.
\begin{lstlisting}
\social[<platform>]{<username or handle>}
\social[<platform>][<link to site>]{<Text shown in document>}
\end{lstlisting}
The following values are supported for \code{<platform>}:
The following values are supported for \code{<platform>} (see also \ref{icon:usage}):
\begin{itemize}
\begin{multicols}{4}
\item \code{arxiv}
@ -347,15 +348,18 @@ The following values are supported for \code{<platform>}:
\item \code{mastodon}
\item \code{matrix}
\item \code{orcid}
\item \code{medium}
\item \code{playstation}
\item \code{researcherid}
\item \code{researchgate}
\item \code{signal}
\item \code{simplex}
\item \code{skype}
\item \code{soundcloud}
\item \code{stackoverflow}
\item \code{steam}
\item \code{telegram}
\item \code{threema}
\item \code{tiktok}
\item \code{twitch}
\item \code{twitter}
@ -403,7 +407,7 @@ In case BibTeX is used, the bibliography settings are adjusted in the lines
% \renewcommand*{\bibliographyitemlabel}{[\arabic{enumiv}]}
% \renewcommand{\refname}{Articles}
% bibliography with mutiple entries
% bibliography with multiple entries
% \usepackage{multibib}
% \newcites{book, misc}{{Books}, {Others}}
\end{lstlisting}
@ -490,7 +494,7 @@ This can be combined with the \code{itemize} environment.
\cvcolumn[<width>]{<content>}
\end{cvcolumns}
\end{lstlisting}
\code{<width>} is a number between 0 and 1 controling the width of the column.
\code{<width>} is a number between 0 and 1 controlling the width of the column.
\subsubsection{Skill matrix macros}
The skill matrix is a table for displaying skills such as computer skills or project management skills graphically.
@ -748,17 +752,9 @@ If an even finer control over the color scheme of the style is desired, the foll
\subsection{Modifying symbols and icons}
\subsubsection{Icons}
\subsubsection{Icons}\label{icon:usage}
As stated in section \ref{section:customization:stylesAndOptions}, the use of icons is toggled by the \code{symbols} option that can be passed to \code{\\moderncvstyle}.
The icons used in the display of the personal data (phone numbers, email, fax, social media accounts, etc.) can be customized by redefining the internal commands for the symbols:
\begin{lstlisting}
\renewcommand*{<\symbolcommand>}{{\small<\symbol>}~}
\end{lstlisting}
Using \code{\\small} is optional, but the default behavior is to render all icons using \code{\\small}.
Use \code{\\small} if one merely wishes to replace an icon/symbol while keeping the size consistent with the default icons/symbols.
The tilde ensures proper spacing after the symbols and is recommended as well.
Currently \Moderncv supports the following commands as \code{<\\symbolcommand>}:
\begin{itemize}
\begin{multicols}{2}
@ -768,44 +764,76 @@ Currently \Moderncv supports the following commands as \code{<\\symbolcommand>}:
\item \code{\\faxphonesymbol}
\item \code{\\emailsymbol}
\item \code{\\homepagesymbol}
\item \code{\\bornsymbol}
\item \code{\\linkedinsocialsymbol}
\item \code{\\xingsocialsymbol}
\item \code{\\twittersocialsymbol}
\item \code{\\mastodonsocialsymbol}
\item \code{\\githubsocialsymbol}
\item \code{\\gitlabsocialsymbol}
\item \code{\\stackoverflowsocialsymbol}
\item \code{\\googlescholarsocialsymbol}
\item \code{\\bitbucketsocialsymbol}
\item \code{\\skypesocialsymbol}
\item \code{\\orcidsocialsymbol}
\item \code{\\researchgatesocialsymbol}
\item \code{\\researcheridsocialsymbol}
\item \code{\\telegramsocialsymbol}
\item \code{\\whatsappsocialsymbol}
\item \code{\\signalsocialsymbol}
\item \code{\\matrixsocialsymbol}
\item \code{\\orcidsocialsymbol}
\item \code{\\researchgatesocialsymbol}
\item \code{\\researcheridsocialsymbol}
\item \code{\\bitbucketsocialsymbol}
\item \code{\\skypesocialsymbol}
\item \code{\\googlescholarsocialsymbol}
\item \code{\\codebergsocialsymbol}
\item \code{\\discordsocialsymbol}
\item \code{\\twitchsocialsymbol}
\item \code{\\youtubesocialsymbol}
\item \code{\\tiktoksocialsymbol}
\item \code{\\instagramsocialsymbol}
\item \code{\\soundcloudsocialsymbol}
\item \code{\\steamsocialsymbol}
\item \code{\\xboxsocialsymbol}
\item \code{\\playstationsocialsymbol}
\item \code{\\battlenetsocialsymbol}
\item \code{\\mediumsocialsymbol}
\item \code{\\bornsymbol}
\item \code{\\arxivsocialsymbol}
\item \code{\\inspiresocialsymbol}
\item \code{\\simplexsocialsymbol}
\item \code{\\threemasocialsymbol}
\end{multicols}
\end{itemize}
The general usage is \code{\\social\[\<symbol\>\]\{\<url fragment of profile\>\}}. Usually only the profile dependent url fragment has to be used as the common url parts are already defined in \texttt{moderncv.cls}.
As an alternative the appearing link and string after the symbol can be customized when using the following command instead:
\begin{lstlisting}
\social[<symbol>][<custom url>]{<custom name>}
\end{lstlisting}
\paragraph{Note.}
The possible options for \code{<\\symbol>} depend on the package that is used.
By default, the \code{marvosym} package is loaded if \code{pdflatex} is used, and the \code{academicons} and \code{fontawesome5} packages are loaded if either \code{lualatex} or \code{xelatex} is used.
By default, the \code{marvosym} package is loaded if \code{pdflatex} is used, and the \code{academicons} and \code{fontawesome6} packages are loaded if either \code{lualatex} or \code{xelatex} is used.
Full lists of all available symbols and icons can be found in the documentation of each respective package:
\begin{tabular}{l}
\url{https://ctan.org/pkg/marvosym} \\[1ex]
\url{https://ctan.org/pkg/fontawesome5} \\[1ex]
\url{https://ctan.org/pkg/fontawesome6} \\[1ex]
\url{https://ctan.org/pkg/academicons}
\end{tabular}
\paragraph{Redefinition.}The icons used in the display of the personal data (phone numbers, email, fax, social media accounts, etc.) can be customized by redefining the internal commands for the symbols:
\begin{lstlisting}
\renewcommand*{<\symbolcommand>}{{\small<\symbol>}~}
\end{lstlisting}
Using \code{\\small} is optional, but the default behavior is to render all icons using \code{\\small}.
Use \code{\\small} if one merely wishes to replace an icon/symbol while keeping the size consistent with the default icons/symbols.
The tilde ensures proper spacing after the symbols and is recommended as well.
\paragraph{Example.}
If one wanted to use the dingbat fonts to replace the default phone symbol, one should load the \code{pifont} package in the preamble and then substitute the default symbol with the dingbat symbol \ding{38}\ with
\begin{lstlisting}
\renewcommand*{\fixedphonesymbol}{\ding{38}~}
\end{lstlisting}
\paragraph{Alternative to icons}
\paragraph{Alternative to icons.}
In case you do not want \texttt{symbols} (default) for the icons, there is also the option to replace icons with \texttt{letters} instead. This is set by the macro \code{\\moderncvicons}, which must be called after setting the style in the preamble.
\begin{lstlisting}
\moderncvicons{<symbols|letters>}
@ -1033,7 +1061,7 @@ In addition to the packages that \Moderncv provides, the following packages are
\item \code{expl3}
\item \code{tikz}
\item \code{changepage}
\item \code{fontawesome5}
\item \code{fontawesome6}
\item \code{academicons}
\item \code{tgpagella}
\item \code{ebgaramond}

View file

@ -1,5 +1,5 @@
%% start of file `moderncv.cls'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{moderncv}[2024-07-18 v2.4.1 modern curriculum vitae and letter document class]
\ProvidesClass{moderncv}[2026-01-31 v2.5.1 modern curriculum vitae and letter document class]
%-------------------------------------------------------------------------------
@ -154,7 +154,7 @@
% reduced list spacing
% package providing hooks into lists
% originally developped by Jakob Schiotz (see http://dcwww.camd.dtu.dk/~schiotz/comp/LatexTips/tweaklist.sty)
% originally developed by Jakob Schiotz (see http://dcwww.camd.dtu.dk/~schiotz/comp/LatexTips/tweaklist.sty)
% modified and distributed with moderncv(not available otherwise on ctan)
\RequirePackage{tweaklist}
\renewcommand*{\itemhook}{%
@ -234,7 +234,7 @@
\newcommand*{\born}[1]{\def\@born{#1}}
% defines one's email (optional)
% usage: \email{<email adress>}
% usage: \email{<email address>}
\newcommand*{\email}[1]{\def\@email{#1}}
% defines one's home page (optional)
@ -290,6 +290,8 @@
% - "battlenet"
% - "arxiv"
% - "inspire"
% - "simplex"
% - "threema"
\collectionnew{socials}
\NewDocumentCommand{\social}{O{}O{}m}{%
\ifthenelse{\equal{#2}{}}%
@ -323,7 +325,10 @@
\ifthenelse{\equal{#1}{playstation}} {\collectionadd[playstation]{socials} {#3}} {}%
\ifthenelse{\equal{#1}{battlenet}} {\collectionadd[battlenet]{socials} {#3}} {}%
\ifthenelse{\equal{#1}{arxiv}} {\collectionadd[arxiv]{socials} {\protect\httpslink[#3]{arxiv.org/a/#3}}} {}%
\ifthenelse{\equal{#1}{inspire}} {\collectionadd[inspire]{socials} {\protect\httpslink[#3]{inspirehep.net/authoris/#3}}} {}%
\ifthenelse{\equal{#1}{inspire}} {\collectionadd[inspire]{socials} {\protect\httpslink[#3]{inspirehep.net/authors/#3}}} {}%
\ifthenelse{\equal{#1}{simplex}} {\collectionadd[simplex]{socials} {\protect\httpslink[#3]{simplex.chat/#3}}} {}%
\ifthenelse{\equal{#1}{threema}} {\collectionadd[threema]{socials} {\protect\httpslink[#3]{threema.id/#3}}} {}%
\ifthenelse{\equal{#1}{medium}} {\collectionadd[medium]{socials} {\protect\httpslink[#3]{medium.com/#3}}} {}%
}
{\collectionadd[#1]{socials}{\protect\httpslink[#3]{#2}}}}%
@ -391,6 +396,12 @@
\newcommand*{\battlenetsocialsymbol} {}
\newcommand*{\arxivsocialsymbol} {}
\newcommand*{\inspiresocialsymbol} {}
\newcommand*{\simplexsocialsymbol} {}
\newcommand*{\threemasocialsymbol} {}
\newcommand*{\mediumsocialsymbol} {}
% other
%------
@ -573,7 +584,7 @@
\newcommand*{\cvlistdoubleitem}[3][\listitemsymbol]{}
% makes a typical resume job / education entry
% usage: \cventry[spacing]{years}{degree/job title}{institution/employer}{localization}{optionnal: grade/...}{optional: comment/job description}
% usage: \cventry[spacing]{years}{degree/job title}{institution/employer}{localization}{optional: grade/...}{optional: comment/job description}
\newcommand*{\cventry}[7][.25em]{}
% makes a resume entry with a proficiency comment
@ -649,7 +660,7 @@
\newcounter{cvcolumnscounter}% counter for the number of columns
\newcounter{cvcolumnsautowidthcounter}% counter for the number of columns with no column width provided, and which will then be equally distributed
\newcounter{tmpiteratorcounter}% counter for any temporary purpose (e.g., iterating loops)
\newlength{\cvcolumnsdummywidth}\setlength{\cvcolumnsdummywidth}{1000pt}% dummy width for total width, in order to enable arithmetics (TeX has no float variables, only integer counters or lengths)
\newlength{\cvcolumnsdummywidth}\setlength{\cvcolumnsdummywidth}{1000pt}% dummy width for total width, in order to enable arithmetic (TeX has no float variables, only integer counters or lengths)
\newlength{\cvcolumnswidth}% total width available for head / content
\newlength{\cvcolumnsautowidth}% total width of columns with no explicit width provided
\newlength{\cvcolumnautowidth}% width of one of the columns with no explicit width provided (based on equal distribution of remaining space)

View file

@ -1,5 +1,5 @@
%% start of file `moderncvbodyi.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvbodyi}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 1]
\ProvidesPackage{moderncvbodyi}[2026-01-31 v2.5.1 modern curriculum vitae and letter body variant: 1]
%-------------------------------------------------------------------------------

View file

@ -1,5 +1,5 @@
%% start of file `moderncvbodyiii.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvbodyiii}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 3]
\ProvidesPackage{moderncvbodyiii}[2026-01-31 v2.5.1 modern curriculum vitae and letter body variant: 3]
% rules type options: "fullrules", "shortrules", "mixedrules" (default) or "norules"
\@initializeif{\if@fullrules}\@fullrulesfalse

View file

@ -1,5 +1,5 @@
%% start of file `moderncvbodyiv.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvbodyiv}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 4]
\ProvidesPackage{moderncvbodyiv}[2026-01-31 v2.5.1 modern curriculum vitae and letter body variant: 4]
%-------------------------------------------------------------------------------

View file

@ -1,5 +1,5 @@
%% start of file `moderncvbodyv.sty'.
%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvbodyv}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 5]
\ProvidesPackage{moderncvbodyv}[2026-01-31 v2.5.1 modern curriculum vitae and letter body variant: 5]
%-------------------------------------------------------------------------------
@ -111,11 +111,11 @@
\if@aftersection\else%
\vspace*{-\separatorrulewidth}\fi% HACK; I don't understand where the space is coming from, nor what it's exact value is :(
\noindent%
% \setlength{\fboxsep}{0pt}\framebox{% start of debuging
% \setlength{\fboxsep}{0pt}\framebox{% start of debugging
\begin{tabular}[t]{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}|@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}%
\@moderncvstrut{4pt}{16pt}#2 &#3\\[#1]% the spacing needs to be inside the cell for the vertical rule to extend correctly
\end{tabular}%
% }% end of debuging
% }% end of debugging
\par\@aftersectionfalse\ignorespaces}
\renewcommand*{\cvdoubleitem}[5][.5ex]{%

View file

@ -1,6 +1,6 @@
%% start of file `moderncvbodyvi.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me), 2024-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -11,7 +11,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvbodyvi}[2023/11/21 v2.0.0 modern curriculum vitae and letter body variant: 6]
\ProvidesPackage{moderncvbodyvi}[2026-01-31 v2.5.1 modern curriculum vitae and letter body variant: 6]
%-------------------------------------------------------------------------------

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcollection.sty'.
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcollection}[2024-07-18 v2.4.1 moderncv collections]
\ProvidesPackage{moderncvcollection}[2026-01-31 v2.5.1 moderncv collections]
%-------------------------------------------------------------------------------

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcolorblack.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,18 +10,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolorblack}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: black]
\ProvidesPackage{moderncvcolorblack}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: black]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\colorlet{color0}{black}% black
\colorlet{color1}{black}% black
\colorlet{color2}{black}% black
\usepackage{moderncvcolors}
\colorlet{color0}{black}
\colorlet{color1}{black}
\colorlet{color2}{black}
\colorlet{headTL}{lightblack}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcolorblue.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,17 +10,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolorblue}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: blue]
\ProvidesPackage{moderncvcolorblue}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: blue]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\usepackage{moderncvcolors}
\colorlet{color0}{black}% black
\colorlet{color1}{lightblue}% light blue
\colorlet{color2}{darkgrey}% dark grey
\colorlet{color0}{black}
\colorlet{color1}{lightblue}
\colorlet{color2}{darkgrey}
\colorlet{headTL}{lightskyblue}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcolorburgundy.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,18 +10,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolorburgundy}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: burgundy]
\ProvidesPackage{moderncvcolorburgundy}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: burgundy]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\colorlet{color0}{black}% black
\colorlet{color1}{burgundy}% burgundy
\colorlet{color2}{darkgrey}% dark grey
\usepackage{moderncvcolors}
\colorlet{color0}{black}
\colorlet{color1}{burgundy}
\colorlet{color2}{darkgrey}
\colorlet{headTL}{darkred}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,6 +1,6 @@
%% start of file `moderncvcolorcerulean.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me), 2024-2024 moderncv maintainers.
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -11,20 +11,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolorcerulean}[2023/11/21 v2.0.0 modern curriculum vitae and letter color scheme: cerulean]
\ProvidesPackage{moderncvcolorcerulean}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: cerulean]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\definecolor{color0}{rgb}{0,0,0}% black
\definecolor{color1}{HTML}{0081a7}% cerulean
\definecolor{color2}{HTML}{4d908e}% dark cyan
\definecolor{headTL}{HTML}{00afb9}% verdigris
\colorlet{headBR}{color1}
\definecolor{headtext}{HTML}{ffffff}% white
\colorlet{headhr}{color2}
\usepackage{moderncvcolors}
\colorlet{color0}{black}
\colorlet{color1}{cerulean}
\colorlet{color2}{darkcyan}
\colorlet{headTL}{verdigris}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcolorgreen.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,17 +10,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolorgreen}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: green]
\ProvidesPackage{moderncvcolorgreen}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: green]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\usepackage{moderncvcolors}
\colorlet{color0}{black}% black
\colorlet{color1}{green}% green
\colorlet{color2}{darkgrey}% dark grey
\colorlet{color0}{black}
\colorlet{color1}{green}
\colorlet{color2}{darkgrey}
\colorlet{headTL}{palegreen}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcolorgrey.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,18 +10,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolorgrey}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: grey]
\ProvidesPackage{moderncvcolorgrey}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: grey]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\colorlet{color0}{black}% black
\colorlet{color1}{darkgrey}% dark grey
\colorlet{color2}{darkgrey}% dark grey
\usepackage{moderncvcolors}
\colorlet{color0}{black}
\colorlet{color1}{darkgrey}
\colorlet{color2}{darkgrey}
\colorlet{headTL}{lightgrey}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcolororange.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,18 +10,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolororange}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: orange]
\ProvidesPackage{moderncvcolororange}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: orange]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\colorlet{color0}{black}% black
\colorlet{color1}{orange}% orange
\colorlet{color2}{darkgrey}% dark grey
\usepackage{moderncvcolors}
\colorlet{color0}{black}
\colorlet{color1}{orange}
\colorlet{color2}{darkgrey}
\colorlet{headTL}{lightorange}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcolorpurple.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,17 +10,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolorpurple}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: purple]
\ProvidesPackage{moderncvcolorpurple}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: purple]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\usepackage{moderncvcolors}
\colorlet{color0}{black}% black
\colorlet{color1}{purple}% purple
\colorlet{color2}{darkgrey}% dark grey
\colorlet{color0}{black}
\colorlet{color1}{purple}
\colorlet{color2}{darkgrey}
\colorlet{headTL}{lavender}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcolorred.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,17 +10,21 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolorred}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: red]
\ProvidesPackage{moderncvcolorred}[2026-01-31 v2.5.1 modern curriculum vitae and letter color scheme: red]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\usepackage{moderncvcolors}
\colorlet{color0}{black}% black
\colorlet{color1}{red}% red
\colorlet{color2}{darkgrey}% dark grey
\colorlet{color0}{black}
\colorlet{color1}{red}
\colorlet{color2}{darkgrey}
\colorlet{headTL}{firebrick}
\colorlet{headBR}{color1}
\colorlet{headtext}{white}
\colorlet{headhr}{color2}
\endinput

View file

@ -1,15 +1,42 @@
%% start of file `moderncvcolors.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com)
%% Copyright 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
% available at http://www.latex-project.org/lppl/.
%-------------------------------------------------------------------------------
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcolors}[2026-01-31 v2.5.1 modern curriculum vitae and letter base colors]
%-------------------------------------------------------------------------------
% built-in colors
%-------------------------------------------------------------------------------
\definecolor{black}{RGB}{0, 0, 0}
\definecolor{white}{HTML}{ffffff}
\definecolor{red}{rgb}{0.95, 0.20, 0.20}
\definecolor{darkgrey}{rgb}{0.45, 0.45, 0.45}
\definecolor{lightgrey}{HTML}{d3d3d3}
\definecolor{orange}{rgb}{0.95, 0.55, 0.15}
\definecolor{burgundy}{rgb}{0.596078, 0, 0}% 139/255 (0.545098) or 152/255 (0.596078)
\definecolor{purple}{rgb}{0.50, 0.33, 0.80}
\definecolor{lightblue}{rgb}{0.22, 0.45, 0.70}
\definecolor{green}{rgb}{0.35, 0.70, 0.30}
\definecolor{cerulean}{HTML}{0081a7}
\definecolor{darkcyan}{HTML}{4d908e}
\definecolor{verdigris}{HTML}{00afb9}
\definecolor{lightskyblue}{HTML}{b1dffc}
\definecolor{darkred}{HTML}{d60000}
\definecolor{palegreen}{HTML}{a6fca6}
\definecolor{lightorange}{HTML}{ffbb3d}
\definecolor{lavender}{HTML}{9090e9}
\definecolor{firebrick}{HTML}{ce2727}
\definecolor{lightblack}{HTML}{3d3d3d}
%-------------------------------------------------------------------------------
% default colors
@ -33,3 +60,5 @@
%-------------------------------------------------------------------------------
% \definecolor{tsinghua}{HTML}{791CB5}
%% end of file `moderncvcolors.sty'.

View file

@ -1,5 +1,5 @@
%% start of file `moderncvcompatibility.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvcompatibility}[2024-07-18 v2.4.1 modern curriculum vitae and letter compatibility patches]
\ProvidesPackage{moderncvcompatibility}[2026-01-31 v2.5.1 modern curriculum vitae and letter compatibility patches]
%-------------------------------------------------------------------------------

View file

@ -1,5 +1,5 @@
%% start of file `moderncvdebugtools.sty'.
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,13 +10,14 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvdebugtools}[2024-07-18 v2.4.1 modern curriculum vitae and letter debug tools]
\ProvidesPackage{moderncvdebugtools}[2026-01-31 v2.5.1 modern curriculum vitae and letter debug tools]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
\RequirePackage{tikz}
\usetikzlibrary{babel}
%-------------------------------------------------------------------------------

View file

@ -1,5 +1,5 @@
%% start of file `moderncvfooti.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvfooti}[2024-07-18 v2.4.1 modern curriculum vitae and letter footer variant: 1]
\ProvidesPackage{moderncvfooti}[2026-01-31 v2.5.1 modern curriculum vitae and letter footer variant: 1]
%-------------------------------------------------------------------------------
@ -69,7 +69,7 @@
%-------------------------------------------------------------------------------
% resume foot definition
%-------------------------------------------------------------------------------
% lenghts
% lengths
\renewcommand*{\recomputecvfootlengths}{\recomputefootlengths}
% commands

View file

@ -1,5 +1,5 @@
%% start of file `moderncvheadi.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvheadi}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 1]
\ProvidesPackage{moderncvheadi}[2026-01-31 v2.5.1 modern curriculum vitae and letter header variant: 1]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@ -92,7 +92,7 @@
\ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\socialsdetails% needs to be pre-rendered as loops and tabulars seem to conflict
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}%
\end{tabular}
\end{tabular}%
}\fi%
% optional photo (pre-rendering)
\@initializebox{\makecvheadpicturebox}%
@ -106,9 +106,9 @@
\setlength{\fboxrule}{\@photoframewidth}%
\ifdim\@photoframewidth=0pt%
\setlength{\fboxsep}{0pt}\fi%
\framebox{\includegraphics[width=\@photowidth]{\@photo}}}%
\framebox{\includegraphics[width=\@photowidth]{\@photo}}%
\if@right%
\hspace*{\separatorcolumnwidth}\fi}%
\hspace*{\separatorcolumnwidth}\fi}}%
% name and title (pre-rendering)
\@initializelength{\makecvheaddetailswidth}\settowidth{\makecvheaddetailswidth}{\usebox{\makecvheaddetailsbox}}%
\@initializelength{\makecvheadpicturewidth}\settowidth{\makecvheadpicturewidth}{\usebox{\makecvheadpicturebox}}%
@ -120,7 +120,7 @@
\begin{minipage}[b]{\makecvheadnamewidth}%
\if@left\raggedright\fi%
\if@right\raggedleft\fi%
\firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\firstnamestyle{\@firstname\ }\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}%
\end{minipage}}%
% raise boxes if top option is set
@ -180,6 +180,8 @@
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
\ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol%
\ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi%
\end{minipage}\\[2em]
% recipient block

View file

@ -1,5 +1,5 @@
%% start of file `moderncvheadii.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvheadii}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 2]
\ProvidesPackage{moderncvheadii}[2026-01-31 v2.5.1 modern curriculum vitae and letter header variant: 2]
% details options: "details" or "nodetails" (default)
\@initializeif{\if@details}\@detailsfalse

View file

@ -1,5 +1,5 @@
%% start of file `moderncvheadiii.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvheadiii}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 3]
\ProvidesPackage{moderncvheadiii}[2026-01-31 v2.5.1 modern curriculum vitae and letter header variant: 3]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@ -83,8 +83,8 @@
\parbox{\makeheaddetailswidth}{%
\centering%
% name and title
\firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\titlestyle{~|~\@title}}% \isundefined doesn't work on \@title, as LaTeX itself defines \@title (before it possibly gets redefined by \title)
\firstnamestyle{\@firstname\ }\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\titlestyle{~|~\@title}}% \isundefined doesn't work on \@title, as LaTeX itself defines \@title (before it possibly gets redefined by \title)
% optional detailed information
\if@details{%
\\%
@ -159,6 +159,8 @@
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
\ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol%
\ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi%
\end{minipage}\\[2em]
% recipient block

View file

@ -1,5 +1,5 @@
%% start of file `moderncvheadiv.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvheadiv}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 4]
\ProvidesPackage{moderncvheadiv}[2026-01-31 v2.5.1 modern curriculum vitae and letter header variant: 4]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@ -72,7 +72,7 @@
% \par\vspace{-\baselineskip}\vspace{-\parskip}\leftskip=\leftcolumnwidth%
\par\vspace{-\baselineskip}\vspace{-\parskip}%
\leftskip=\dimexpr\hintscolumnwidth+\separatorcolumnwidth\relax% \dimexpr require e-TeX engine extensions
\recomputecvlengths} % need to recompute the layout lenghts as we just changed \leftskip
\recomputecvlengths} % need to recompute the layout lengths as we just changed \leftskip
\renewcommand*{\makecvhead}{
% recompute lengths (in case we are switching from letter to resume, or vice versa)
\recomputecvlengths%
@ -93,7 +93,7 @@
{\setlength{\makecvheadnamewidth}{\textwidth-\makecvheadpicturewidth}}%
{}%
\begin{minipage}[b]{\makecvheadnamewidth}%
\firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\firstnamestyle{\@firstname\ }\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}%
\end{minipage}%
% optional photo

View file

@ -1,5 +1,5 @@
%% start of file `moderncvheadv.sty'.
%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvheadv}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 5]
\ProvidesPackage{moderncvheadv}[2026-01-31 v2.5.1 modern curriculum vitae and letter header variant: 5]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@ -94,7 +94,7 @@
% name and optional title
\newlength{\makecvheadpictureboxskip}%
\setlength{\makecvheadpictureboxskip}{\totalheightof{\usebox{\makecvheadpicturebox}}}%
\firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\firstnamestyle{\@firstname\ }\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{
\ifthenelse{\isundefined{\@quote}}%
{}%
@ -160,6 +160,8 @@
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
\ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol%
\ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi%
\end{minipage}\\[2em]
% recipient block

View file

@ -1,5 +1,5 @@
%% start of file `moderncvheadvi.sty'.
%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvheadvi}[2024-07-18 v2.4.1 modern curriculum vitae and letter header: 6]
\ProvidesPackage{moderncvheadvi}[2026-01-31 v2.5.1 modern curriculum vitae and letter header: 6]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@ -55,7 +55,7 @@
\setlength{\makeheaddetailswidth}{\textwidth}%
% name and title
\if@left\hfill\fi%
\firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\firstnamestyle{\@firstname\ }\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\titlestyle{~|~\@title}}\\[-.35em]% \isundefined doesn't work on \@title, as LaTeX itself defines \@title (before it possibly gets redefined by \title)
% rule
{\color{bodyrulecolor}\rule{\textwidth}{.25ex}}}

View file

@ -1,6 +1,6 @@
%% start of file `moderncvheadvii.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me), 2024-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -11,7 +11,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvheadvii}[2023/11/21 v2.0.0 modern curriculum vitae and letter header variant: 7]
\ProvidesPackage{moderncvheadvii}[2026-01-31 v2.5.1 modern curriculum vitae and letter header variant: 7]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@ -39,7 +39,7 @@
%-------------------------------------------------------------------------------
\RequirePackage{qrcode}
\RequirePackage{tikz}
\usetikzlibrary{tikzmark,fit}
\usetikzlibrary{tikzmark,fit,babel}
%-------------------------------------------------------------------------------
@ -92,12 +92,13 @@
\ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
\ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty
\ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}%
\ifthenelse{\isundefined{\@born}}{}{\makenewline\bornsymbol\@born}%
\phonesdetails% needs to be pre-rendered as loops and tabulars seem to conflict
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
\ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httplink{\@homepage}}%
\socialsdetails% needs to be pre-rendered as loops and tabulars seem to conflict
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}%
\end{tabular}
\end{tabular}%
}\fi%
% optional photo (pre-rendering)
\@initializebox{\makecvheadpicturebox}%
@ -115,9 +116,9 @@
\node[inner sep=0pt] at (0,0) {\includegraphics[width=\@photowidth]{\@photo}};
\end{scope}
\end{tikzpicture}%
\if@left%
\hspace*{\separatorcolumnwidth}\fi}%
}%
\if@left%
\hspace*{\separatorcolumnwidth}\fi}%
% optional QR for homepage (pre-rendering)
\@initializebox{\makecvheadqrbox}%
\if@headqr%
@ -145,6 +146,8 @@
% Users may define `\@moderncvheadBackground` for additional background decoration
\ifthenelse{\isundefined{\@moderncvheadBackground}}{}{\@moderncvheadBackground}
% case with no photo: assure defined \@photoframewidth with 2pt
\ifthenelse{\isundefined{\@photo}}{\@initializelength{\@photoframewidth}\setlength{\@photoframewidth}{2pt}}{}%
\path[draw,line width=\@photoframewidth]
(head-bg.south west) edge[color=headhr!85!black] ([xshift=8em]head-bg.south west)
([xshift=8em]head-bg.south west) edge[color=headhr] ([xshift=-8em]head-bg.south east)
@ -155,9 +158,9 @@
\usebox{\makecvheadnamebox}%
\hfill%
\llap{\usebox{\makecvheaddetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvheadnamewidth is forced
\usebox{\makecvheadqrbox}\fi%
\hspace{.5ex}\usebox{\makecvheadqrbox}\fi%
\if@right%
\usebox{\makecvheadqrbox}%
\usebox{\makecvheadqrbox}\hspace{.5ex}%
\rlap{\usebox{\makecvheaddetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvheadnamewidth is forced
\hfill%
\usebox{\makecvheadnamebox}%
@ -181,24 +184,41 @@
\renewcommand*{\makeletterhead}{%
% recompute lengths (in case we are switching from letter to resume, or vice versa)
\recomputeletterlengths%
% sender contact info
\hfill%
\begin{minipage}{.5\textwidth}%
% optional detailed information
\if@details%
\raggedleft%
\addressfont\textcolor{color2}{%
{\bfseries\upshape\@firstname~\@lastname}\@firstdetailselementfalse%
% optional detailed information
\@initializebox{\makeletterdetailsbox}%
\if@details%
\def\phonesdetails{}%
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\protected@edef\phonesdetails{\phonesdetails\protect\makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}%
\savebox{\makeletterdetailsbox}{%
\addressfont\color{headtext}%
\if@left\begin{tabular}[b]{@{}r@{}}\fi%
\if@right\begin{tabular}[b]{@{}l@{}}\fi%
\ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
\ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty
\ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}%
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}%
\phonesdetails% needs to be pre-rendered as loops and tabulars seem to conflict
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
\ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httplink{\@homepage}}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi%
\end{minipage}\\[1em]
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}%
\end{tabular}%
}\fi%
% name and title (pre-rendering)
\@initializelength{\makeletterdetailswidth}\settowidth{\makeletterdetailswidth}{\usebox{\makeletterdetailsbox}}%
% rendering
\begin{tikzpicture}[remember picture,overlay]
\node(letter-head-bg) [top color=headTL,bottom color=headBR,shading angle=45,inner sep=0pt,
fit={(current page.north west)(current page.north east)(pic cs:letter-head-end)}] {};
\end{tikzpicture}%
\hfill
\llap{\usebox{\makeletterdetailsbox}}% \llap is used to suppress
\\[.15em]%
\tikzmark{letter-head-end}\\[.15em]%
% recipient block
\begin{minipage}[t]{.5\textwidth}
\raggedright%

View file

@ -1,5 +1,5 @@
%% start of file `moderncviconsacademic.sty'.
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncviconsacademic}[2024-07-18 v2.4.1 modern curriculum vitae icons: academicons]
\ProvidesPackage{moderncviconsacademic}[2026-01-31 v2.5.1 modern curriculum vitae icons: academicons]
%-------------------------------------------------------------------------------
@ -23,7 +23,7 @@
%-------------------------------------------------------------------------------
% set colors
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\usepackage{moderncvcolors}
\providecolor{orcid}{named}{default-socialicon-color}
\providecolor{researchgate}{named}{default-socialicon-color}

View file

@ -1,5 +1,5 @@
%% start of file `moderncviconsawesome.sty'.
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,19 +10,19 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncviconsawesome}[2024-07-18 v2.4.1 modern curriculum vitae icons: awesome]
\ProvidesPackage{moderncviconsawesome}[2026-01-31 v2.5.1 modern curriculum vitae icons: awesome]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
% Font Awesome font
\RequirePackage{fontawesome5}
\RequirePackage{fontawesome6}
\RequirePackage{xcolor}
%-------------------------------------------------------------------------------
% set colors
%-------------------------------------------------------------------------------
\input{moderncvcolors.tex}
\usepackage{moderncvcolors}
\providecolor{address}{named}{default-socialicon-color}
\providecolor{mobilephone}{named}{default-socialicon-color}
@ -55,6 +55,8 @@
\providecolor{playstation}{named}{default-socialicon-color}
\providecolor{battlenet}{named}{default-socialicon-color}
\providecolor{born}{named}{default-socialicon-color}
\providecolor{signal}{named}{default-socialicon-color}
\providecolor{medium}{named}{default-socialicon-color}
%-------------------------------------------------------------------------------
% all symbols described in moderncv.cls
@ -70,7 +72,7 @@
\renewcommand*{\fixedphonesymbol} {{\color{fixedphone}\small\faPhone*}~} % alternative: \faPhone (reversed)
\renewcommand*{\faxphonesymbol} {{\color{faxphone}\small\faFax}~} % alternative: \faPrint
\renewcommand*{\emailsymbol} {{\color{email}\small\faEnvelope[regular]}~} % alternative: \faInbox, \faEnvelope (solid style)
\renewcommand*{\homepagesymbol} {{\color{homepage}\small\faGlobeAmericas}~} % alternative: \faHome, \faGlobe, \faGlobeEurope, \faGlobeAfrica, \faGlobeAsia
\renewcommand*{\homepagesymbol} {{\color{homepage}\small\faEarthAmericas}~} % alternative: \faHome, \faGlobe, \faEarthEurope, \faEarthAfrica, \faEarthAsia, \faEarthOceania
\renewcommand*{\linkedinsocialsymbol} {{\color{linkedin}\small\faLinkedinIn}~} % alternative: \faLinkedin
\renewcommand*{\xingsocialsymbol} {{\color{xing}\small\faXing}~} % alternative: \faXingSquare
\renewcommand*{\twittersocialsymbol} {{\color{twitter}\small\faTwitter}~} % alternative: \faTwitterSquare
@ -96,11 +98,13 @@
\renewcommand*{\xboxsocialsymbol} {{\color{xbox}\small\faXbox}~}
\renewcommand*{\playstationsocialsymbol} {{\color{playstation}\small\faPlaystation}~}
\renewcommand*{\battlenetsocialsymbol} {{\color{battlenet}\small\faBattleNet}~}
%\renewcommand*{\signalsocialsymbol} {}
\renewcommand*{\signalsocialsymbol} {{\color{signal}\small\faSignalMessenger}~}
%\renewcommand*{\matrixsocialsymbol} {}
% \renewcommand*{\arxivsocialsymbol} {{\color{arxiv}{\small\faarXiv}}~}
% \renewcommand*{\inspiresocialsymbol} {{\color{inspire}{\small\faInspire}}~}
\renewcommand*{\bornsymbol} {{\color{born}\small\faAsterisk}~} % alternative: \faBabyCarriage
\renewcommand*{\mediumsocialsymbol} {{\color{medium}\small\faMedium}~}
\endinput

View file

@ -1,5 +1,5 @@
%% start of file `moderncviconsletters.sty'.
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncviconsletters}[2024-07-18 v2.4.1 modern curriculum vitae icons: letter]
\ProvidesPackage{moderncviconsletters}[2026-01-31 v2.5.1 modern curriculum vitae icons: letter]
%-------------------------------------------------------------------------------
% symbols definition
@ -38,6 +38,7 @@
\renewcommand*{\bitbucketsocialsymbol} {\textbf{bb}~}
\renewcommand*{\skypesocialsymbol} {\textbf{sk}~}
\renewcommand*{\orcidsocialsymbol} {\textbf{orcid}~}
\renewcommand*{\mediumsocialsymbol} {\textbf{Me}~}
\renewcommand*{\researchgatesocialsymbol} {\textbf{rg}~}
\renewcommand*{\researcheridsocialsymbol} {\textbf{ri}~}
\renewcommand*{\telegramsocialsymbol} {\textbf{tg}~}
@ -58,6 +59,8 @@
\renewcommand*{\battlenetsocialsymbol} {\textbf{bn}~}
\renewcommand*{\arxivsocialsymbol} {\textbf{arx}~}
\renewcommand*{\inspiresocialsymbol} {\textbf{ins}~}
\renewcommand*{\simplexsocialsymbol} {\textbf{splx}~}
\renewcommand*{\simplexsocialsymbol} {\textbf{thr}~}
\renewcommand*{\listitemsymbol} {\labelitemi~}

View file

@ -1,5 +1,5 @@
%% start of file `moderncviconsmarvosym.sty'.
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncviconsmarvosym}[2024-07-18 v2.4.1 modern curriculum vitae icons: marvosym]
\ProvidesPackage{moderncviconsmarvosym}[2026-01-31 v2.5.1 modern curriculum vitae icons: marvosym]
%-------------------------------------------------------------------------------
% all symbols described in moderncv.cls

View file

@ -1,5 +1,5 @@
%% start of file `moderncviconssymbols.sty'.
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncviconssymbols}[2021-12-12 v2.2.0 modern curriculum vitae icons selector]
\ProvidesPackage{moderncviconssymbols}[2026-01-31 v2.5.1 modern curriculum vitae icons selector]
\ifxetexorluatex

View file

@ -1,5 +1,5 @@
%% start of file `moderncviconstikz.sty'.
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,14 +10,32 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncviconstikz}[2024-07-18 v2.4.1 modern curriculum vitae and letter icons: tickz]
\ProvidesPackage{moderncviconstikz}[2026-01-31 v2.5.1 modern curriculum vitae and letter icons: tickz]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
\RequirePackage{tikz}
\usetikzlibrary{babel}
\RequirePackage{etoolbox}
\RequirePackage{xcolor}
%-------------------------------------------------------------------------------
% set colors
%-------------------------------------------------------------------------------
\usepackage{moderncvcolors}
\providecolor{linkedin}{named}{default-socialicon-color}
\providecolor{twitter}{named}{default-socialicon-color}
\providecolor{github}{named}{default-socialicon-color}
\providecolor{gitlab}{named}{default-socialicon-color}
\providecolor{skype}{named}{default-socialicon-color}
\providecolor{googlescholar}{named}{default-socialicon-color}
\providecolor{matrix}{named}{default-socialicon-color}
\providecolor{codeberg}{named}{default-socialicon-color}
\providecolor{simplex}{named}{default-socialicon-color}
\providecolor{threema}{named}{default-socialicon-color}
%-------------------------------------------------------------------------------
@ -29,7 +47,7 @@
\protect\raisebox{-0.165em}{
\protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.25, yscale=-0.25, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[cm={{0.60,0.0,0.0,0.60,(346.39,123.07)}}]
\protect\path[fill=color2]
\protect\path[fill=linkedin]
(381,202) -- (434,202) .. controls (439,202) and (442,205) ..
(442,210) -- (442,264) .. controls (442,268) and (439,272) ..
(434,272) -- (381,272) .. controls (376,272) and (372,268) ..
@ -74,7 +92,7 @@
\renewcommand*{\twittersocialsymbol} {
\protect\raisebox{0em}{%
\protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.005, yscale=-0.005, inner sep=0pt, outer sep=0pt]
\protect\path[fill=color2]
\protect\path[fill=twitter]
(2000, 192) .. controls (1926, 225) and (1847, 247) ..
(1764, 257) .. controls (1849, 206) and (1914, 126) ..
(1945, 30) .. controls (1865, 77) and (1778, 111) ..
@ -106,7 +124,7 @@
\protect\raisebox{-0.15em} {
\protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.25, yscale=-0.25, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
\protect\path[fill=color2]
\protect\path[fill=github]
(117, 60) .. controls (117, 71) and (108, 81) ..
( 96, 81) .. controls ( 85, 81) and ( 75, 71) ..
( 75, 60) .. controls ( 75, 48) and ( 85, 39) ..
@ -118,7 +136,7 @@
( 75, 60) .. controls ( 75, 48) and ( 85, 39) ..
( 96, 39) .. controls (108, 39) and (117, 48) ..
(117, 60) -- cycle;
\protect\path[fill=color2, nonzero rule]
\protect\path[fill=github, nonzero rule]
(103, 45) .. controls (103, 45) and (101, 46) ..
(101, 47) -- (100, 47) --
( 99, 47) .. controls ( 99, 47) and ( 98, 47) ..
@ -217,7 +235,7 @@
\protect\raisebox{-0.12em}{
\protect\begin{tikzpicture}[x=0.11em, y=0.11em, xscale=0.015, yscale=-0.015, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
\protect\path[fill=color2,line width=0.057pt]
\protect\path[fill=gitlab,line width=0.057pt]
(105.2000,24.9000) .. controls (102.1000,16.0000) and (89.5000,16.0000) ..
(86.3000,24.9000) -- (29.8000,199.7000) -- (161.7000,199.7000) .. controls
(161.7000,199.7000) and (105.2000,24.9000) .. (105.2000,24.9000) -- cycle
@ -238,7 +256,7 @@
\protect\raisebox{-0.15em}{
\protect\begin{tikzpicture}[y=0.08em, x=0.08em, xscale=0.020, yscale=-0.020, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
\protect\path[fill=color2,even odd rule]
\protect\path[fill=skype,even odd rule]
(487.6550,288.9690) .. controls (489.0610,278.5690) and (489.8700,267.9960) ..
(489.8700,257.2330) .. controls (489.8700,128.0770) and (384.5990,23.3610) ..
(254.7670,23.3610) .. controls (241.8630,23.3610) and (229.2120,24.4210) ..
@ -274,7 +292,7 @@
\protect\raisebox{-0.12em}{
\protect\begin{tikzpicture}[y=2.0pt, x=2.0pt, yscale=-0.1, xscale=0.1, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
\protect\path[fill=color2] (25.0000,2.0000) .. controls (12.3095,2.0000) and (2.0000,12.3095)
\protect\path[fill=googlescholar] (25.0000,2.0000) .. controls (12.3095,2.0000) and (2.0000,12.3095)
.. (2.0000,25.0000) .. controls (2.0000,37.6905) and (12.3095,48.0000) ..
(25.0000,48.0000) .. controls (37.6905,48.0000) and (48.0000,37.6905) ..
(48.0000,25.0000) .. controls (48.0000,12.3095) and (37.6905,2.0000) ..
@ -327,7 +345,7 @@
\protect\raisebox{-0.12em}{
\protect\begin{tikzpicture}[y=1.8pt, x=1.8pt, yscale=-0.15, xscale=0.15, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
\protect\path[fill=color2]
\protect\path[fill=matrix]
(0.9360,0.7320) .. controls (0.9360,10.9053) and (0.9360,21.0787) ..
(0.9360,31.2520) .. controls (1.6673,31.2520) and (2.3987,31.2520) ..
(3.1300,31.2520) .. controls (3.3452,32.0075) and (2.8778,32.0803) ..
@ -369,76 +387,6 @@
~}
}{}\par
\ifdefempty{\signalsocialsymbol} {
\renewcommand*{\signalsocialsymbol} {
\protect\raisebox{-0.12em}{
\protect\begin{tikzpicture}[y=0.1pt, x=0.1pt, yscale=-0.13, xscale=0.13, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
\protect\path[fill=color2]
(430.1000,180.9000) -- (437.8000,211.9000) .. controls (407.6000,219.3000)
and (378.7000,231.3000) .. (352.1000,247.3000) -- (335.7000,220.0000) ..
controls (365.0000,202.3000) and (396.9000,189.1000) .. (430.1000,180.9000) --
cycle(593.9000,180.9000) -- (586.2000,211.9000) .. controls
(616.4000,219.3000) and (645.3000,231.3000) .. (671.9000,247.3000) --
(688.4000,219.9000) .. controls (659.0000,202.3000) and (627.2000,189.1000) ..
(593.9000,180.9000) -- cycle(220.0000,335.7000) .. controls
(202.3000,365.0000) and (189.1000,396.9000) .. (180.9000,430.1000) --
(211.9000,437.8000) .. controls (219.3000,407.6000) and (231.3000,378.7000) ..
(247.3000,352.1000) -- cycle(202.9000,512.0000) .. controls
(202.9000,496.5000) and (204.0000,481.0000) .. (206.4000,465.7000) --
(174.8000,460.9000) .. controls (169.7000,494.8000) and (169.7000,529.2000) ..
(174.8000,563.1000) -- (206.4000,558.3000) .. controls (204.1000,543.0000) and
(202.9000,527.5000) .. (202.9000,512.0000) -- cycle(688.3000,804.0000) --
(671.9000,776.6000) .. controls (645.3000,792.7000) and (616.5000,804.6000) ..
(586.3000,812.0000) -- (594.0000,843.0000) .. controls (627.2000,834.8000) and
(659.0000,821.7000) .. (688.3000,804.0000) -- cycle(821.1000,512.0000) ..
controls (821.1000,527.5000) and (820.0000,543.0000) .. (817.6000,558.3000) --
(849.2000,563.1000) .. controls (854.3000,529.2000) and (854.3000,494.8000) ..
(849.2000,460.9000) -- (817.6000,465.7000) .. controls (819.9000,481.0000) and
(821.1000,496.5000) .. (821.1000,512.0000) -- cycle(843.1000,593.8000) --
(812.1000,586.1000) .. controls (804.7000,616.3000) and (792.7000,645.2000) ..
(776.7000,671.8000) -- (804.1000,688.3000) .. controls (821.7000,659.0000) and
(834.9000,627.1000) .. (843.1000,593.8000) -- cycle(558.3000,817.6000) ..
controls (527.6000,822.2000) and (496.4000,822.2000) .. (465.7000,817.6000) --
(460.9000,849.2000) .. controls (494.8000,854.3000) and (529.2000,854.3000) ..
(563.1000,849.2000) -- cycle(760.8000,695.3000) .. controls
(742.4000,720.3000) and (720.3000,742.3000) .. (695.3000,760.7000) --
(714.3000,786.4000) .. controls (741.9000,766.1000) and (766.2000,741.9000) ..
(786.6000,714.4000) -- cycle(695.3000,263.2000) .. controls
(720.3000,281.6000) and (742.4000,303.7000) .. (760.8000,328.7000) --
(786.5000,309.5000) .. controls (766.2000,282.0000) and (741.9000,257.7000) ..
(714.5000,237.5000) -- cycle(263.2000,328.7000) .. controls
(281.6000,303.7000) and (303.7000,281.6000) .. (328.7000,263.2000) --
(309.5000,237.5000) .. controls (282.0000,257.8000) and (257.7000,282.1000) ..
(237.5000,309.5000) -- cycle(804.0000,335.7000) -- (776.6000,352.1000) ..
controls (792.7000,378.7000) and (804.6000,407.5000) .. (812.0000,437.7000) --
(843.0000,430.0000) .. controls (834.9000,396.8000) and (821.7000,365.0000) ..
(804.0000,335.7000) -- cycle(465.7000,206.4000) .. controls
(496.4000,201.8000) and (527.6000,201.8000) .. (558.3000,206.4000) --
(563.1000,174.8000) .. controls (529.2000,169.7000) and (494.8000,169.7000) ..
(460.9000,174.8000) -- cycle(279.6000,795.0000) -- (213.6000,810.4000) --
(229.0000,744.4000) -- (197.9000,737.1000) -- (182.5000,803.1000) .. controls
(180.0000,813.9000) and (183.2000,825.2000) .. (191.0000,833.0000) .. controls
(198.8000,840.8000) and (210.1000,844.0000) .. (220.9000,841.5000) --
(286.9000,826.4000) -- cycle(204.5000,708.5000) -- (235.6000,715.7000) --
(246.3000,669.9000) .. controls (230.8000,643.8000) and (219.2000,615.5000) ..
(211.9000,586.0000) -- (180.9000,593.7000) .. controls (187.9000,622.0000) and
(198.4000,649.2000) .. (212.3000,674.7000) -- cycle(353.7000,777.8000) --
(308.0000,788.5000) -- (315.2000,819.6000) -- (348.9000,811.8000) .. controls
(374.5000,825.7000) and (401.7000,836.3000) .. (430.0000,843.2000) --
(437.7000,812.2000) .. controls (408.3000,804.9000) and (380.1000,793.2000) ..
(354.0000,777.6000) -- cycle(512.0000,234.9000) .. controls
(411.2000,235.0000) and (318.3000,289.8000) .. (269.6000,378.0000) .. controls
(220.9000,466.2000) and (223.9000,574.0000) .. (277.6000,659.4000) --
(251.0000,773.1000) -- (364.7000,746.5000) .. controls (464.4000,809.3000) and
(592.9000,802.2000) .. (685.1000,728.8000) .. controls (777.3000,655.4000) and
(812.9000,531.7000) .. (774.0000,420.5000) .. controls (734.8000,309.2000) and
(629.8000,234.8000) .. (512.0000,234.9000) -- cycle;
\protect\end{scope}
\protect\end{tikzpicture}}
~}
}{}\par
\ifdefempty{\codebergsocialsymbol} {
\renewcommand*{\codebergsocialsymbol} {
\protect\raisebox{-0.12em}{
@ -449,7 +397,7 @@
(11258.5852,-1839.4433)arc(66.699:32.084:23.067) --
(11250.0698,-1872.8557)arc(329.460:269.346:0.201313 and 0.150) -- cycle;
\protect\path[scale=0.265, fill=color2, line width=0.426pt]
\protect\path[scale=0.265, fill=codeberg, line width=0.426pt]
(11249.3743,-1883.6959)arc(269.785:180.000:23.067)arc(180.001:147.920:23.067)
-- (11249.1480,-1873.2412)arc(209.929:330.071:0.360097 and 0.269) --
(11269.0053,-1848.3766)arc(32.082:-0.002:23.067)arc(360.000:270.000:23.067)arc(270.108:269.892:23.067)
@ -459,6 +407,53 @@
~}
}{}\par
\ifdefempty{\simplexsocialsymbol} {
\renewcommand*{\simplexsocialsymbol} {
\protect\raisebox{-0.12em}{
\protect\begin{tikzpicture}[y=0.8pt, x=0.8pt, yscale=-1.0, xscale=1.0, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}, rotate=45]
\protect\path[fill=simplex!80, scale=0.065]
(0,0) rectangle +(100,20)
(40,-60) rectangle +(20,120);
\protect\path[fill=simplex, scale=0.065]
(0,-60) rectangle +(160,20)
(40,-100) rectangle +(20,60)
(100,-100) rectangle +(20,160)
(100,0) rectangle +(60,20);
\protect\end{scope}
\protect\end{tikzpicture}}
~}
}{}\par
\ifdefempty{\threemasocialsymbol} {
\renewcommand*{\threemasocialsymbol} {
\protect\raisebox{-0.12em}{
\protect\begin{tikzpicture}[y=0.8pt, x=0.8pt, yscale=-1.0, xscale=1.0, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
\protect\path[fill=threema, scale=0.015]
% speech bubble
(137,25) ellipse (400 and 350)
% lock shackle
(244.5,-51) arc [start angle=0, end angle=-180, radius=107]
(199.5,-51) arc [start angle=0, end angle=-180, radius=62]
(199.5,-51) rectangle +(45,52)
(30.5,-51) rectangle +(45,52)
% lock body
(0, 0) rectangle +(274, 196);
% triangle
\protect\path[fill=threema, scale=0.015]
(-200,213) -- +(-41,168) -- +(157,120) -- cycle;
% three dots
\protect\path[fill=threema, scale=0.015]
(-94,553) circle (68)
(144,553) circle (68)
(390,553) circle (68);
\protect\end{scope}
\protect\end{tikzpicture}}
~}
}{}\par
\endinput
%% end of file `moderncviconstikz.sty'.

View file

@ -1,5 +1,5 @@
%% start of file `moderncvskillmatrix.sty'.
%% Copyright 2021 David Seus (cryptointerest@posteo.de).
%% Copyright 2021 David Seus (cryptointerest@posteo.de), 2022-2026 moderncv maintainers (github.com/moderncv).
%
% This package provides a skill matrix template for the moderncv package.
% Some recruiting firms require applicants to rate their skills, computer
@ -43,7 +43,7 @@
% Note:
% -The width of the columns can be adjusted by the \setcvskilllegendcolumns, see \setcvskilllegendcolumns
% -The design of the table is such that the <second_level> entry stands in the first column but
% occupies rows two and three. This has been done to accomodate english and german defaults.
% occupies rows two and three. This has been done to accommodate english and german defaults.
% An alternative is provided by \cvskillplainlegend
%
%
@ -77,7 +77,7 @@
% Input:
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2 (optional): string naming the level column (2nd column), default: <Level>
% input_3 (optional): string naming the skill column (3nd column), default: <Skill>
% input_3 (optional): string naming the skill column (3rd column), default: <Skill>
% input_4 (optional): string naming the experience-in-years column (4th column), default: <Years>
% input_5 (optional): string naming the comment column (5th column), default: <Comment>
%
@ -97,11 +97,11 @@
% asterix (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style.
% For the fancy style, the asterix has no meaning.
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2: string, naming skill cathegory, default: <>
% input_2: string, naming skill category, default: <>
% input_3: integer between 0 and 5, describing level of skill. \cvskill{input_2} is called internally, default: <>
% input_4: string, naming the skill, default: <>
% input_5: positive real number, stating the number of years of experience with this skill , default: <>
% input_6: string, explaining details w.r.t. that particual skill default: <>
% input_6: string, explaining details w.r.t. that particular skill default: <>
%
% Example usages:
% \cvskillentry*{Language:}{3}{Python}{2}{I have done a million projects with Python}
@ -121,7 +121,7 @@
% and actually yield a decent looking table. The defaults depend on the style used and are chosen reasonably.
% However, depending on the user input and the style that is used some of the columns might need adjustments.
% The \setcvskillcolumns command provides means to influence the width of the first, the third and the fourth
% skill matrix column. The second column containg the output of \cvskill remains fixed width. The last column,
% skill matrix column. The second column containing the output of \cvskill remains fixed width. The last column,
% the comment column gets recalculated according to the setting of the other columns.
%
% Input
@ -137,12 +137,12 @@
% \setcvskillcolumns[][0.45][]% adjust third (skill) column. Same as \setcvskillcolumns[][0.45]
% \setcvskillcolumns[][][\widthof{``Year''}]% adjust fourth (years) column.
% \setcvskillcolumns[\widthof{``Language''}][0.48][]% adjust 1st and 3rd columns. Same as \setcvskillcolumns[\widthof{``Language''}][0.45]
% \setcvskillcolumns[\widthof{``Management Tools''}][0.6][3em]% ajust all at once.
% \setcvskillcolumns[\widthof{``Management Tools''}][0.6][3em]% adjust all at once.
%
% Note
% - For the styles 'classic' and 'casual' the first column is set to hintscolumnwidth such that
% it aligns with the rest of the entries. A readjustment of the first column should therefor
% be avoided. It is recomended to only use \setcvskillcolumns in the form of
% it aligns with the rest of the entries. A readjustment of the first column should therefore
% be avoided. It is recommended to only use \setcvskillcolumns in the form of
% \setcvskillcolumns[][<factor>][<width>], thereby leaving the defaults in place for the first column.
%
%
@ -153,7 +153,7 @@
% such that the default english and german examples look good.
% However, depending on the user input (translation) and the style that is used some adjustment might be needed.
% The \setcvskilllegendcolumns command provides means to influence all columns except the ones containing
% \cvskill commands. The second column containg the output of \cvskill remains fixed width. The last column,
% \cvskill commands. The second column containing the output of \cvskill remains fixed width. The last column,
% the comment column gets recalculated according to the setting of the other columns.
%
% Input
@ -161,24 +161,24 @@
% where depending on the style the legend_string gets printed. In case the
% string is left empty adjusting this width allows moving the legend horizontally.
% Default <\skilllegend@hintscolumnwidth>
% Input_2 (optional): float between 0 and 1 influencing the width of the left legend descritor column,
% aka \cvskilllegend@leftdescriptorwidth. The desriptor column on the right,
% Input_2 (optional): float between 0 and 1 influencing the width of the left legend descriptor column,
% aka \cvskilllegend@leftdescriptorwidth. The descriptor column on the right,
% \cvskilllegend@rightdescriptorwidth is influenced by the factor 1-<factor>.
% Default <\skilllegend@leftdesriptorfactor>
%
% Example usage
% \setcvskilllegendcolumns[][0.45]%% adjust left desriptor column.
% \setcvskilllegendcolumns[][0.45]%% adjust left descriptor column.
% \setcvskilllegendcolumns[\widthof{``Legend''}][0.45]% adjust both left descriptor column and string column
%
% Note
% - Due to implementation of \cvskilllegend for style 'fancy' (moderncvbodyv)
% the first optional variable has no effect in this case.
% - For the styles 'classic' and 'casual' the first column is set to hintscolumnwidth such that
% it aligns with the rest of the entries. A readjustment of the first column should therefor
% be avoided. It is recomended to only use \cvskilllegend in the form of
% it aligns with the rest of the entries. A readjustment of the first column should therefore
% be avoided. It is recommended to only use \cvskilllegend in the form of
% \cvskilllegend[][<factor>], thereby leaving the defaults in place for the first column.
% - For style 'banking' the first column is set to align with the rest of the \cvskillentry entries
% Therefor adjusting the first column can be used to widen the table while moving it around. If no
% Therefore adjusting the first column can be used to widen the table while moving it around. If no
% legend string is used, setting \cvskilllegend[0em] maximises the real enstate for the legend.
%
%
@ -203,7 +203,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvskillmatrix}[2024-07-18 v2.4.1 modern curriculum vitae and letter skill matrix]
\ProvidesPackage{moderncvskillmatrix}[2026-01-31 v2.5.1 modern curriculum vitae and letter skill matrix]
% The definitions need to be adjusted depending on which moderncvbody<i-v>.sty style is usde.
% body type options: "moderncvbodyi" (default), "moderncvbodyii", "moderncvbodyiii", "moderncvbodyiv" or "moderncvbodyv"
@ -230,6 +230,7 @@
% required packages
%-------------------------------------------------------------------------------
\RequirePackage{tikz}
\usetikzlibrary{babel}
\RequirePackage{multirow}
% package arydshln is needed for the dashed lines but is incompatible with fancy style
\if@moderncvbodyv%
@ -401,7 +402,7 @@
% and actually yield a decent looking table. The defaults depend on the style used and are chosen reasonably.
% However, depending on the user input and the style that is used some of the columns might need adjustments.
% The \setcvskillcolumns command provides means to influence the width of the first, the third and the fourth
% skill matrix column. The second column containg the output of \cvskill remains fixed width. The last column,
% skill matrix column. The second column containing the output of \cvskill remains fixed width. The last column,
% the comment column gets recalculated according to the setting of the other columns.
%
% Input
@ -417,12 +418,12 @@
% \setcvskillcolumns[][0.45][]% adjust third (skill) column. Same as \setcvskillcolumns[][0.45]
% \setcvskillcolumns[][][\widthof{``Year''}]% adjust fourth (years) column.
% \setcvskillcolumns[\widthof{``Language''}][0.48][]% adjust 1st and 3rd columns. Same as \setcvskillcolumns[\widthof{``Language''}][0.45]
% \setcvskillcolumns[\widthof{``Management Tools''}][0.6][3em]% ajust all at once.
% \setcvskillcolumns[\widthof{``Management Tools''}][0.6][3em]% adjust all at once.
%
% Note
% - For the styles 'classic' and 'casual' the first column is set to hintscolumnwidth such that
% it aligns with the rest of the entries. A readjustment of the first column should therefor
% be avoided. It is recomended to only use \setcvskillcolumns in the form of
% it aligns with the rest of the entries. A readjustment of the first column should therefore
% be avoided. It is recommended to only use \setcvskillcolumns in the form of
% \setcvskillcolumns[][<factor>][<width>], thereby leaving the defaults in place for the first column.
%
\def\arg@new@hintscolumnwidth{#1}% <-- all these terminal % signs are necessary for the fancy style to not show weird spaces!!!
@ -502,7 +503,7 @@
% such that the default english and german examples look good.
% However, depending on the user input (translation) and the style that is used some adjustment might be needed.
% The \setcvskilllegendcolumns command provides means to influence all columns except the ones containing
% \cvskill commands. The second column containg the output of \cvskill remains fixed width. The last column,
% \cvskill commands. The second column containing the output of \cvskill remains fixed width. The last column,
% the comment column gets recalculated according to the setting of the other columns.
%
% Input
@ -510,24 +511,24 @@
% where depending on the style the legend_string gets printed. In case the
% string is left empty adjusting this width allows moving the legend horizontally.
% Default <\skilllegend@hintscolumnwidth>
% Input_2 (optional): float between 0 and 1 influencing the width of the left legend descritor column,
% aka \cvskilllegend@leftdescriptorwidth. The desriptor column on the right,
% Input_2 (optional): float between 0 and 1 influencing the width of the left legend descriptor column,
% aka \cvskilllegend@leftdescriptorwidth. The descriptor column on the right,
% \cvskilllegend@rightdescriptorwidth is influenced by the factor 1-<factor>.
% Default <\skilllegend@leftdesriptorfactor>
%
% Example usage
% \setcvskilllegendcolumns[][0.45]%% adjust left desriptor column.
% \setcvskilllegendcolumns[][0.45]%% adjust left descriptor column.
% \setcvskilllegendcolumns[\widthof{``Legend''}][0.45]% adjust both left descriptor column and string column
%
% Note
% - Due to implementation of \cvskilllegend for style 'fancy' (moderncvbodyv)
% the first optional variable has no effect in this case.
% - For the styles 'classic' and 'casual' the first column is set to hintscolumnwidth such that
% it aligns with the rest of the entries. A readjustment of the first column should therefor
% be avoided. It is recomended to only use \cvskilllegend in the form of
% it aligns with the rest of the entries. A readjustment of the first column should therefore
% be avoided. It is recommended to only use \cvskilllegend in the form of
% \cvskilllegend[][<factor>], thereby leaving the defaults in place for the first column.
% - For style 'banking' the first column is set to align with the rest of the \cvskillentry entries
% Therefor adjusting the first column can be used to widen the table while moving it around. If no
% Therefore adjusting the first column can be used to widen the table while moving it around. If no
% legend string is used, setting \cvskilllegend[0em] maximises the real enstate for the legend.
%
\def\arg@new@legend@hintscolumnwidth{#1}%
@ -593,7 +594,7 @@
% Note:
% -The width of the columns can be adjusted by the \setcvskilllegendcolumns, see \setcvskilllegendcolumns
% -The design of the table is such that the <second_level> entry stands in the first column but
% occupies rows two and three. This has been done to accomodate english and german defaults.
% occupies rows two and three. This has been done to accommodate english and german defaults.
% An alternative is provided by \cvskillplainlegend
% declare default legend entries
@ -767,7 +768,7 @@
% -The width of the columns can be adjusted by the \setcvskilllegendcolumns, see \setcvskilllegendcolumns
% declare default legend entries
\NewDocumentCommand\skillPlainLegend@defaultLevelOne{}{basic knowlegde}
\NewDocumentCommand\skillPlainLegend@defaultLevelOne{}{basic knowledge}
\NewDocumentCommand\skillPlainLegend@defaultLevelTwo{}{intermediate knowledge, some project experience}
\NewDocumentCommand\skillPlainLegend@defaultLevelThree{}{extensive project experience}
\NewDocumentCommand\skillPlainLegend@defaultLevelFour{}{deepened expert knowledge}
@ -914,7 +915,7 @@
% Input:
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2 (optional): string naming the level column (2nd column), default: <Level>
% input_3 (optional): string naming the skill column (3nd column), default: <Skill>
% input_3 (optional): string naming the skill column (3rd column), default: <Skill>
% input_4 (optional): string naming the experience-in-years column (4th column), default: <Years>
% input_5 (optional): string naming the comment column (5th column), default: <Comment>
%
@ -979,11 +980,11 @@
% asterix (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style.
% For the fancy style, the asterix has no meaning.
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2: string, naming skill cathegory, default: <>
% input_2: string, naming skill category, default: <>
% input_3: integer between 0 and 5, describing level of skill. \cvskill{input_2} is called internally, default: <>
% input_4: string, naming the skill, default: <>
% input_5: positive real number, stating the number of years of experience with this skill , default: <>
% input_6: string, explaining details w.r.t. that particual skill default: <>
% input_6: string, explaining details w.r.t. that particular skill default: <>
%
% Example usages:
% \cvskillentry*{Language:}{3}{Python}{2}{I have done a million projects with Python}

View file

@ -1,5 +1,5 @@
%% start of file `moderncvstylebanking.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvstylebanking}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: banking]
\ProvidesPackage{moderncvstylebanking}[2026-01-31 v2.5.1 modern curriculum vitae and letter style scheme: banking]
% body rules type options: "fullrules", "shortrules", "mixedrules" (default) or "norules"
\@initializecommand{\moderncvstylebodyoptions}{}

View file

@ -1,5 +1,5 @@
%% start of file `moderncvstylecasual.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvstylecasual}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: casual]
\ProvidesPackage{moderncvstylecasual}[2026-01-31 v2.5.1 modern curriculum vitae and letter style scheme: casual]
% head section alignment options: "left" (default) or "right"
\@initializecommand{\moderncvstyleheadoptions}{}

View file

@ -1,5 +1,5 @@
%% start of file `moderncvstyleclassic.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvstyleclassic}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: classic]
\ProvidesPackage{moderncvstyleclassic}[2026-01-31 v2.5.1 modern curriculum vitae and letter style scheme: classic]
% head section alignment options: "left" (default) or "right"
\@initializecommand{\moderncvstyleheadoptions}{}

View file

@ -1,6 +1,6 @@
%% start of file `moderncvstylecontemporary.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me), 2024-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -11,7 +11,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvstylecontemporary}[2023/11/24 v2.0.0 modern curriculum vitae and letter style scheme: contemporary]
\ProvidesPackage{moderncvstylecontemporary}[2026-01-31 v2.5.1 modern curriculum vitae and letter style scheme: contemporary]
% head section alignment options: "left" (default) or "right"
\@initializecommand{\moderncvstyleheadoptions}{}
@ -39,7 +39,7 @@
%\fi
% symbols
\providecolor{default-socialicon-color}{named}{headtext}
\definecolor{default-socialicon-color}{named}{headtext}
\moderncvicons{symbols}
%-------------------------------------------------------------------------------

View file

@ -1,5 +1,5 @@
%% start of file `moderncvstyleempty.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvstyleempty}[2024-07-18 v2.4.1 modern curriculum vitae scheme: empty]
\ProvidesPackage{moderncvstyleempty}[2026-01-31 v2.5.1 modern curriculum vitae scheme: empty]
%-------------------------------------------------------------------------------
% required packages

View file

@ -1,5 +1,5 @@
%% start of file `moderncvstylefancy.sty'.
%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvstylefancy}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: fancy]
\ProvidesPackage{moderncvstylefancy}[2026-01-31 v2.5.1 modern curriculum vitae and letter style scheme: fancy]
% headoptions
\@initializecommand{\moderncvstyleheadoptions}{}

View file

@ -1,5 +1,5 @@
%% start of file `moderncvstyleoldstyle.sty'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvstyleoldstyle}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: oldstyle]
\ProvidesPackage{moderncvstyleoldstyle}[2026-01-31 v2.5.1 modern curriculum vitae and letter style scheme: oldstyle]
% headoptions
\@initializecommand{\moderncvstyleheadoptions}{}
@ -47,11 +47,7 @@
% symbols
\if@symbols
\ifxetexorluatex
\moderncvicons{awesome} % use font-awesome symbols if lualatex or xelatex is used
\else
\moderncvicons{marvosym} % use marvosym symbols pdflatex is used
\fi
\moderncvicons{symbols} % use marvosym symbols pdflatex is used
\else
\moderncvicons{letters} % do not use symbols, use letters
\fi

View file

@ -1,5 +1,5 @@
%% start of file `moderncvverticaltimeline.sty'.
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me), 2024-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -10,13 +10,14 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvverticaltimeline}[2023/11/29 v2.0.0 modern curriculum vitae vertical timeline]
\ProvidesPackage{moderncvverticaltimeline}[2026-01-31 v2.5.1 modern curriculum vitae vertical timeline]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
\RequirePackage{tikz}
\usetikzlibrary{babel}
%-------------------------------------------------------------------------------
% vertical timeline implementation

View file

@ -1,5 +1,5 @@
%% start of file `publications.bib'.
%% Copyright 2006-2012 Xavier Danaux (xdanaux at gmail.com).
%% Copyright 2006-2012 Xavier Danaux (xdanaux at gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,

View file

@ -1,5 +1,5 @@
%% start of file `template.tex'.
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@ -79,6 +79,8 @@
\social[researcherid]{jdoe} % optional, remove / comment the line if not wanted
\social[googlescholar]{googlescholarid} % optional, remove / comment the line if not wanted
\social[medium]{jdoe} % optional, remove / comment the line if not wanted
\social[twitter]{ji\_doe} % optional, remove / comment the line if not wanted
\social[mastodon]{mastodon.social/web/@user} % optional, remove / comment the line if not wanted
\social[telegram]{jdoe} % optional, remove / comment the line if not wanted
@ -103,8 +105,10 @@
\social[xbox]{jdoe} % optional, remove / comment the line if not wanted
\social[playstation]{jdoe} % optional, remove / comment the line if not wanted
\social[battlenet]{jdoe\#0000} % optional, remove / comment the line if not wanted
\social[arxiv]{doe\_j\_1} % optional, remove / comment the line if not wanted
\social[inspire]{0000000} % optional, remove / comment the line if not wanted
\social[arxiv]{doe\_j\_1} % optional, remove / comment the line if not wanted
\social[inspire]{0000000} % optional, remove / comment the line if not wanted
\social[simplex]{0000000} % optional, remove / comment the line if not wanted
\social[threema]{0000000} % optional, remove / comment the line if not wanted
\extrainfo{additional information} % optional, remove / comment the line if not wanted
@ -118,7 +122,7 @@
% to redefine the bibliography heading string ("Publications")
%\renewcommand{\refname}{Articles}
% bibliography with mutiple entries
% bibliography with multiple entries
%\usepackage{multibib}
%\newcites{book,misc}{{Books},{Others}}
%----------------------------------------------------------------------------------
@ -194,7 +198,7 @@ Detailed achievements:
%% Examples:
% \setcvskilllegendcolumns[][0.45]
% \setcvskilllegendcolumns[\widthof{``Legend''}][0.45]
% \setcvskilllegendcolumns[0ex][0.46]% this is usefull for the banking style
% \setcvskilllegendcolumns[0ex][0.46]% this is useful for the banking style
%% Add a legend if you are using \cvskill{<1-5>} command or \cvskillentry
%% Usage \cvskilllegend[*][<post_padding>][<first_level>][<second_level>][<third_level>][<fourth_level>][<fifth_level>]{<name>}
@ -279,9 +283,9 @@ Detailed achievements:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis ullamcorper neque sit amet lectus facilisis sed luctus nisl iaculis. Vivamus at neque arcu, sed tempor quam. Curabitur pharetra tincidunt tincidunt. Morbi volutpat feugiat mauris, quis tempor neque vehicula volutpat. Duis tristique justo vel massa fermentum accumsan. Mauris ante elit, feugiat vestibulum tempor eget, eleifend ac ipsum. Donec scelerisque lobortis ipsum eu vestibulum. Pellentesque vel massa at felis accumsan rhoncus.
Suspendisse commodo, massa eu congue tincidunt, elit mauris pellentesque orci, cursus tempor odio nisl euismod augue. Aliquam adipiscing nibh ut odio sodales et pulvinar tortor laoreet. Mauris a accumsan ligula. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse vulputate sem vehicula ipsum varius nec tempus dui dapibus. Phasellus et est urna, ut auctor erat. Sed tincidunt odio id odio aliquam mattis. Donec sapien nulla, feugiat eget adipiscing sit amet, lacinia ut dolor. Phasellus tincidunt, leo a fringilla consectetur, felis diam aliquam urna, vitae aliquet lectus orci nec velit. Vivamus dapibus varius blandit.
Suspendisse commodo, massa eu congue tincidunt, elit mauris pellentesque orci, cursus tempor odio nisl euismod augue. Aliquam adipiscing nibh ut odio sodales et pulvinar tortor laoreet. Mauris a accumsan ligula. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse vulputate sem vehicula ipsum various nec tempus dui dapibus. Phasellus et est urna, ut auctor erat. Sed tincidunt odio id odio aliquam mattis. Donec sapien nulla, feugiat eget adipiscing sit amet, lacinia ut dolor. Phasellus tincidunt, leo a fringilla consectetur, felis diam aliquam urna, vitae aliquet lectus orci nec velit. Vivamus dapibus various blandit.
Duis sit amet magna ante, at sodales diam. Aenean consectetur porta risus et sagittis. Ut interdum, enim varius pellentesque tincidunt, magna libero sodales tortor, ut fermentum nunc metus a ante. Vivamus odio leo, tincidunt eu luctus ut, sollicitudin sit amet metus. Nunc sed orci lectus. Ut sodales magna sed velit volutpat sit amet pulvinar diam venenatis.
Duis sit amet magna ante, at sodales diam. Aenean consectetur porta risus et sagittis. Ut interdum, enim various pellentesque tincidunt, magna libero sodales tortor, ut fermentum nunc metus a ante. Vivamus odio leo, tincidunt eu luctus ut, sollicitudin sit amet metus. Nunc sed orci lectus. Ut sodales magna sed velit volutpat sit amet pulvinar diam venenatis.
Albert Einstein discovered that $e=mc^2$ in 1905.

View file

@ -1,6 +1,6 @@
%% start of file `tweaklist.sty'.
%% Original by Jakob Schiotz, downloaded from http://dcwww.camd.dtu.dk/~schiotz/comp/LatexTips/tweaklist.sty; not found on ctan.
%% Modified by Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%% Modified by Xavier Danaux (xdanaux@gmail.com), 2020-2026 moderncv maintainers (github.com/moderncv).
%
% The tweaklist.sty package redefines the itemize, enumerate and description packages, so that all parameters can be adjusted.
% This was done by copying the original definitions, and adding "hook commands" that are executed when entering the environment.