Compare commits
19 Commits
release/0.
...
release/0.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
74e939cfda | ||
|
|
bfa22cf89a | ||
|
|
67e8c4ec7f | ||
|
|
d6ac41a03b | ||
|
|
07f2e2a6f6 | ||
|
|
b661a92801 | ||
|
|
f6f1e6f019 | ||
|
|
be02c50e20 | ||
|
|
23d4691994 | ||
|
|
08f72ca1e5 | ||
|
|
79a53ee9c1 | ||
|
|
8c6071a82d | ||
|
|
f26afed219 | ||
|
|
9e65c85a0d | ||
|
|
9d2dff3a5b | ||
|
|
4e71f1db53 | ||
|
|
4346e36a8d | ||
|
|
41131cbb86 | ||
|
|
d2aa55b889 |
@@ -27,7 +27,7 @@ See `typst fonts --help` for more information on configuring fonts for `typst` t
|
||||
Below is a basic example for a simple resume:
|
||||
|
||||
```typst
|
||||
#import "@preview/modern-cv:0.4.0": *
|
||||
#import "@preview/modern-cv:0.5.0": *
|
||||
|
||||
#show: resume.with(
|
||||
author: (
|
||||
|
||||
@@ -56,3 +56,11 @@ cover-letter = "Сопроводительное письмо"
|
||||
attached = "Прилагается"
|
||||
curriculum-vitae = "Биографическая справка"
|
||||
sincerely = "Искренне"
|
||||
|
||||
[lang.zh]
|
||||
resume = "简历"
|
||||
dear = "亲爱的"
|
||||
cover-letter = "求职信"
|
||||
attached = "附件"
|
||||
curriculum-vitae = "简历"
|
||||
sincerely = "真诚的"
|
||||
|
||||
114
lib.typ
114
lib.typ
@@ -21,9 +21,13 @@
|
||||
#let google-scholar-icon = box(
|
||||
fa-icon("google-scholar", fill: color-darknight),
|
||||
)
|
||||
#let orcid-icon = box(
|
||||
fa-icon("orcid", fill: color-darknight),
|
||||
)
|
||||
#let phone-icon = box(fa-icon("square-phone", fill: color-darknight))
|
||||
#let email-icon = box(fa-icon("envelope", fill: color-darknight))
|
||||
#let birth-icon = box(fa-icon("cake", fill: color-darknight))
|
||||
#let homepage-icon = box(fa-icon("home", fill: color-darknight))
|
||||
|
||||
/// Helpers
|
||||
|
||||
@@ -59,6 +63,50 @@
|
||||
]
|
||||
}
|
||||
|
||||
#let __coverletter_footer(author, language, date, lang_data) = {
|
||||
set text(
|
||||
fill: gray,
|
||||
size: 8pt,
|
||||
)
|
||||
__justify_align_3[
|
||||
#smallcaps[#date]
|
||||
][
|
||||
#smallcaps[
|
||||
#if language == "zh" or language == "ja" [
|
||||
#author.firstname#author.lastname
|
||||
] else [
|
||||
#author.firstname#sym.space#author.lastname
|
||||
]
|
||||
#sym.dot.c
|
||||
#linguify("cover-letter", from: lang_data)
|
||||
]
|
||||
][
|
||||
#counter(page).display()
|
||||
]
|
||||
}
|
||||
|
||||
#let __resume_footer(author, language, lang_data, date) = {
|
||||
set text(
|
||||
fill: gray,
|
||||
size: 8pt,
|
||||
)
|
||||
__justify_align_3[
|
||||
#smallcaps[#date]
|
||||
][
|
||||
#smallcaps[
|
||||
#if language == "zh" or language == "ja" [
|
||||
#author.firstname#author.lastname
|
||||
] else [
|
||||
#author.firstname#sym.space#author.lastname
|
||||
]
|
||||
#sym.dot.c
|
||||
#linguify("resume", from: lang_data)
|
||||
]
|
||||
][
|
||||
#counter(page).display()
|
||||
]
|
||||
}
|
||||
|
||||
/// Show a link with an icon, specifically for Github projects
|
||||
/// *Example*
|
||||
/// #example(`resume.github-link("DeveloperPaul123/awesome-resume")`)
|
||||
@@ -142,7 +190,9 @@
|
||||
date: datetime.today().display("[month repr:long] [day], [year]"),
|
||||
accent-color: default-accent-color,
|
||||
colored-headers: true,
|
||||
show-footer: true,
|
||||
language: "en",
|
||||
font: ("Source Sans Pro", "Source Sans 3"),
|
||||
body,
|
||||
) = {
|
||||
if type(accent-color) == "string" {
|
||||
@@ -157,7 +207,7 @@
|
||||
)
|
||||
|
||||
set text(
|
||||
font: ("Source Sans Pro", "Source Sans 3"),
|
||||
font: font,
|
||||
lang: language,
|
||||
size: 11pt,
|
||||
fill: color-darkgray,
|
||||
@@ -167,27 +217,7 @@
|
||||
set page(
|
||||
paper: "a4",
|
||||
margin: (left: 15mm, right: 15mm, top: 10mm, bottom: 10mm),
|
||||
footer: [
|
||||
#set text(
|
||||
fill: gray,
|
||||
size: 8pt,
|
||||
)
|
||||
#__justify_align_3[
|
||||
#smallcaps[#date]
|
||||
][
|
||||
#smallcaps[
|
||||
#if language == "zh" or language == "ja" [
|
||||
#author.firstname#author.lastname
|
||||
] else [
|
||||
#author.firstname#sym.space#author.lastname
|
||||
]
|
||||
#sym.dot.c
|
||||
#linguify("resume", from: lang_data)
|
||||
]
|
||||
][
|
||||
#counter(page).display()
|
||||
]
|
||||
],
|
||||
footer: if show-footer [#__resume_footer(author, language, lang_data, date)] else [],
|
||||
footer-descent: 0pt,
|
||||
)
|
||||
|
||||
@@ -321,6 +351,11 @@
|
||||
#email-icon
|
||||
#box[#link("mailto:" + author.email)[#author.email]]
|
||||
]
|
||||
#if ("homepage" in author) [
|
||||
#separator
|
||||
#homepage-icon
|
||||
#box[#link(author.homepage)[#author.homepage]]
|
||||
]
|
||||
#if ("github" in author) [
|
||||
#separator
|
||||
#github-icon
|
||||
@@ -344,6 +379,11 @@
|
||||
#google-scholar-icon
|
||||
#box[#link("https://scholar.google.com/citations?user=" + author.scholar)[#fullname]]
|
||||
]
|
||||
#if ("orcid" in author) [
|
||||
#separator
|
||||
#orcid-icon
|
||||
#box[#link("https://orcid.org/" + author.orcid)[#author.orcid]]
|
||||
]
|
||||
]
|
||||
]
|
||||
]
|
||||
@@ -396,7 +436,9 @@
|
||||
|
||||
pad[
|
||||
#justified-header(title-content, location)
|
||||
#secondary-justified-header(description, date)
|
||||
#if description != "" or date != "" [
|
||||
#secondary-justified-header(description, date)
|
||||
]
|
||||
]
|
||||
}
|
||||
|
||||
@@ -465,6 +507,8 @@
|
||||
date: datetime.today().display("[month repr:long] [day], [year]"),
|
||||
accent-color: default-accent-color,
|
||||
language: "en",
|
||||
font: ("Source Sans Pro", "Source Sans 3"),
|
||||
show-footer: true,
|
||||
body,
|
||||
) = {
|
||||
if type(accent-color) == "string" {
|
||||
@@ -480,7 +524,7 @@
|
||||
)
|
||||
|
||||
set text(
|
||||
font: ("Source Sans Pro", "Source Sans 3"),
|
||||
font: font,
|
||||
lang: language,
|
||||
size: 11pt,
|
||||
fill: color-darkgray,
|
||||
@@ -490,27 +534,7 @@
|
||||
set page(
|
||||
paper: "a4",
|
||||
margin: (left: 15mm, right: 15mm, top: 10mm, bottom: 10mm),
|
||||
footer: [
|
||||
#set text(
|
||||
fill: gray,
|
||||
size: 8pt,
|
||||
)
|
||||
#__justify_align_3[
|
||||
#smallcaps[#date]
|
||||
][
|
||||
#smallcaps[
|
||||
#if language == "zh" or language == "ja" [
|
||||
#author.firstname#author.lastname
|
||||
] else [
|
||||
#author.firstname#sym.space#author.lastname
|
||||
]
|
||||
#sym.dot.c
|
||||
#linguify("cover-letter", from: lang_data)
|
||||
]
|
||||
][
|
||||
#counter(page).display()
|
||||
]
|
||||
],
|
||||
footer: if show-footer [#__coverletter_footer(author, language, date, lang_data)] else [],
|
||||
footer-descent: 0pt,
|
||||
)
|
||||
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
#import "@preview/modern-cv:0.5.0": *
|
||||
#import "@preview/modern-cv:0.6.0": *
|
||||
|
||||
#show: coverletter.with(
|
||||
author: (
|
||||
firstname: "John",
|
||||
lastname: "Smith",
|
||||
email: "js@gmail.com",
|
||||
homepage: "https://example.com",
|
||||
phone: "(+1) 111-111-1111",
|
||||
github: "DeveloperPaul123",
|
||||
linkedin: "John Smith",
|
||||
@@ -16,6 +17,8 @@
|
||||
),
|
||||
profile-picture: image("./profile.png"),
|
||||
language: "en",
|
||||
font: "Times New Roman",
|
||||
// show-footer: false, // Uncomment to hide footer
|
||||
)
|
||||
|
||||
#hiring-entity-info(entity-info: (
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
#import "@preview/modern-cv:0.5.0": *
|
||||
#import "@preview/modern-cv:0.6.0": *
|
||||
|
||||
#show: coverletter.with(
|
||||
author: (
|
||||
firstname: "John",
|
||||
lastname: "Smith",
|
||||
email: "js@gmail.com",
|
||||
homepage: "https://example.com",
|
||||
phone: "(+1) 111-111-1111",
|
||||
github: "DeveloperPaul123",
|
||||
linkedin: "John Smith",
|
||||
|
||||
@@ -1,14 +1,16 @@
|
||||
#import "@preview/modern-cv:0.5.0": *
|
||||
#import "@preview/modern-cv:0.6.0": *
|
||||
|
||||
#show: resume.with(
|
||||
author: (
|
||||
firstname: "John",
|
||||
lastname: "Smith",
|
||||
email: "js@example.com",
|
||||
homepage: "https://example.com",
|
||||
phone: "(+1) 111-111-1111",
|
||||
github: "DeveloperPaul123",
|
||||
twitter: "typstapp",
|
||||
scholar: "",
|
||||
orcid: "0000-0000-0000-000X",
|
||||
birth: "January 1, 1990",
|
||||
linkedin: "Example",
|
||||
address: "111 Example St. Example City, EX 11111",
|
||||
@@ -21,6 +23,7 @@
|
||||
date: datetime.today().display(),
|
||||
language: "en",
|
||||
colored-headers: true,
|
||||
show-footer: false,
|
||||
)
|
||||
|
||||
= Experience
|
||||
@@ -52,6 +55,17 @@
|
||||
- #lorem(25)
|
||||
]
|
||||
|
||||
#resume-entry(
|
||||
title: "Intern",
|
||||
location: "Example City, EX",
|
||||
)
|
||||
|
||||
#resume-item[
|
||||
- #lorem(20)
|
||||
- #lorem(15)
|
||||
- #lorem(25)
|
||||
]
|
||||
|
||||
= Projects
|
||||
|
||||
#resume-entry(
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "modern-cv"
|
||||
version = "0.5.0"
|
||||
version = "0.6.0"
|
||||
compiler = "0.11.0"
|
||||
entrypoint = "lib.typ"
|
||||
authors = ["Paul Tsouchlos <https://github.com/DeveloperPaul123>"]
|
||||
|
||||
Reference in New Issue
Block a user