|
1 | 1 | % ----------------------------------------------------------------------------- |
2 | | -% Formatting.sty - Custom formatting and commands for a modular resume |
| 2 | +% Formatting.sty - Custom Formatting and Commands for a Modular Resume |
3 | 3 | % ----------------------------------------------------------------------------- |
4 | 4 | % Purpose: |
5 | | -% This file contains styling and commands for creating a professional resume. |
| 5 | +% This file provides styling and commands for creating a professional resume. |
6 | 6 | % It is designed to be modular, allowing easy maintenance and reuse. |
7 | 7 | % ----------------------------------------------------------------------------- |
8 | 8 |
|
9 | 9 | % ----------------------------------------------------------------------------- |
10 | 10 | % Required Packages |
11 | 11 | % ----------------------------------------------------------------------------- |
12 | | -\RequirePackage[T1]{fontenc} % T1 font encoding for proper hyphenation |
13 | | -\RequirePackage[utf8]{inputenc} % UTF-8 input encoding |
14 | | -\RequirePackage{enumitem} % Customization of list environments |
15 | | -\RequirePackage[hidelinks]{hyperref} % Hyperlinks without visible borders |
16 | | -\RequirePackage{titlesec} % Custom section titles |
17 | | -\RequirePackage{XCharter} % Professional font family |
18 | | -\RequirePackage{xstring} % String manipulation (e.g., URL processing) |
19 | | -\RequirePackage{geometry} % Page layout and margins |
20 | | -\RequirePackage{etoolbox} % Enhanced conditional and command tools |
21 | | -\RequirePackage{fancyhdr} % Custom headers and footers |
| 12 | +\RequirePackage[T1]{fontenc} % T1 font encoding for proper hyphenation |
| 13 | +\RequirePackage[utf8]{inputenc} % UTF-8 input encoding |
| 14 | +\RequirePackage{enumitem} % Customization of list environments |
| 15 | +\RequirePackage[hidelinks]{hyperref} % Hyperlinks without visible borders |
| 16 | +\RequirePackage{titlesec} % Custom section titles formatting |
| 17 | +\RequirePackage{XCharter} % Professional font family (XCharter) |
| 18 | +\RequirePackage{xstring} % String manipulation (e.g., URL processing) |
| 19 | +\RequirePackage{geometry} % Page layout and margins |
| 20 | +\RequirePackage{fancyhdr} % Custom headers and footers |
| 21 | +\RequirePackage{etoolbox} % Enhanced conditional and command tools |
22 | 22 |
|
23 | 23 | % ----------------------------------------------------------------------------- |
24 | 24 | % Page Layout and Margins |
25 | 25 | % ----------------------------------------------------------------------------- |
26 | | -\geometry{a4paper, margin=0.5in} % A4 paper with 0.5in margins |
| 26 | +\geometry{a4paper, margin=0.5in} % A4 paper with 0.5in margins |
27 | 27 |
|
28 | 28 | % ----------------------------------------------------------------------------- |
29 | 29 | % Global Text and Page Settings |
30 | 30 | % ----------------------------------------------------------------------------- |
31 | | -\raggedright % Left-align text |
32 | | -\pagestyle{empty} % Disable page numbering |
33 | | -\input{glyphtounicode} % Enable machine-readable PDF output |
34 | | -\pdfgentounicode=1 |
| 31 | +\raggedright % Left-align text |
| 32 | +\pagestyle{empty} % Disable page numbering |
| 33 | +\input{glyphtounicode} % Enable machine-readable PDF output |
| 34 | +\pdfgentounicode=1 % Unicode output |
35 | 35 |
|
36 | 36 | % ----------------------------------------------------------------------------- |
37 | 37 | % Section Title Formatting |
38 | 38 | % ----------------------------------------------------------------------------- |
39 | | -\titleformat{\section} |
40 | | - {\bfseries\large}{}{0pt}{}[\vspace{1pt}\titlerule\vspace{-6.5pt}] |
41 | | -% Bold, large section titles with a horizontal line below |
| 39 | +\titleformat{\section} % Custom section title format |
| 40 | + {\bfseries\large}{}{}{}[\vspace{1pt}\titlerule\vspace{-6.5pt}] % Bold, large section titles with a horizontal line |
42 | 41 |
|
43 | 42 | % ----------------------------------------------------------------------------- |
44 | 43 | % List Formatting |
45 | 44 | % ----------------------------------------------------------------------------- |
46 | | -\renewcommand\labelitemi{$\vcenter{\hbox{\small$\bullet$}}$} |
47 | | -\setlist[itemize]{ |
48 | | - itemsep=-2pt, % Space between items |
49 | | - leftmargin=12pt, % Indentation |
50 | | - topsep=7pt % Space above list |
| 45 | +\renewcommand\labelitemi{$\vcenter{\hbox{\small$\bullet$}}$} % Custom bullet for itemized lists |
| 46 | +\setlist[itemize]{ % Customization for itemized lists |
| 47 | + itemsep=-2pt, % Space between items |
| 48 | + leftmargin=12pt, % Indentation |
| 49 | + topsep=7pt % Space above list |
51 | 50 | } |
52 | 51 |
|
53 | 52 | % ----------------------------------------------------------------------------- |
54 | 53 | % Spacing Adjustments |
55 | 54 | % ----------------------------------------------------------------------------- |
56 | | -\setlength{\parskip}{0pt} % No extra space between paragraphs |
57 | | -\setlength{\parindent}{0pt} % No paragraph indentation |
| 55 | +\setlength{\parskip}{0pt} % No extra space between paragraphs |
| 56 | +\setlength{\parindent}{0pt} % No paragraph indentation |
58 | 57 |
|
59 | 58 | % ----------------------------------------------------------------------------- |
60 | 59 | % Custom Commands |
|
70 | 69 | \StrSubstitute{#1}{https://}{}[\Result]% |
71 | 70 | \StrSubstitute{\Result}{http://}{}[\Result]% |
72 | 71 | \StrSubstitute{\Result}{mailto:}{}[\Result]% |
73 | | - \href{#1}{\Result}% |
| 72 | + \href{#1}{\Result} % Converts to clickable link with a clean URL display |
74 | 73 | } |
75 | 74 |
|
76 | 75 | % Command: Skills List |
|
105 | 104 | } |
106 | 105 |
|
107 | 106 | % ----------------------------------------------------------------------------- |
108 | | -% Documentation |
| 107 | +% Documentation for Users |
109 | 108 | % ----------------------------------------------------------------------------- |
110 | | -% This package provides: |
111 | | -% - \skills: Create a list of skills with a type and list of skills. |
112 | | -% - \technologies: List technologies used in a project. |
113 | | -% - \shorturl: Display a shortened URL without the protocol. |
114 | | -% - \project: Define a project with name, URL, technologies, and details. |
115 | | -% - \experience: Add work experience with role, company, time period, location, and responsibilities. |
116 | | -% - \education: Add education details with degree, institution, URL, and graduation date. |
| 109 | +% This package provides the following commands: |
| 110 | +% - \skills: Creates a list of skills with type and list of skills. |
| 111 | +% - \technologies: Displays technologies used in a project. |
| 112 | +% - \shorturl: Creates a clickable URL with the protocol stripped out. |
| 113 | +% - \project: Defines a project with name, URL, technologies, and details. |
| 114 | +% - \experience: Adds work experience with role, company, time period, location, and responsibilities. |
| 115 | +% - \education: Adds education details with degree, institution, URL, and graduation date. |
117 | 116 |
|
118 | 117 | % ----------------------------------------------------------------------------- |
119 | 118 | % Notes: |
120 | 119 | % - Adjust spacing, margins, and list styles as needed for different templates. |
121 | | -% - All sections should be imported from separate files for better modularity. |
| 120 | +% - Sections should be imported from separate files for better modularity and reuse. |
122 | 121 | % ----------------------------------------------------------------------------- |
0 commit comments