summaryrefslogtreecommitdiff
path: root/fonts/sourcecodepro/doc/sourcecodepro.tex
blob: b88b1080d119881db39289df8fbab1a436c5839c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
\documentclass[10pt,a4paper,english]{article}
\usepackage{geometry,hologo,hyperref,babel,mdwlist,array,multicol,graphicx}
\usepackage[default,osf]{sourcesanspro}
\usepackage[scaled=.95]{sourcecodepro}
\hypersetup{
    colorlinks,
    citecolor=blue,
    filecolor=blue,
    linkcolor=blue,
    urlcolor=blue
}
\newcommand*\file[1]{\href{run:#1.pdf}{#1}}

\title{\bfseries
	\Huge sourcecodepro\\
	\Large Adobe's Source Code Pro typeface for \LaTeX
}
\author{Silke Hofstra, \href{mailto:tex@slxh.nl}{tex@slxh.nl}}
\date{Documentation for sourcecodepro v2.7.\\ \today}

\begin{document}
\maketitle
\begin{multicols}{2}
This package provides the Source Code Pro font in an easy to use way. For \hologo{XeLaTeX} and \hologo{LuaLaTeX} users the original OpenType fonts from \href{https://github.com/adobe-fonts/source-code-pro}{GitHub} are used. The entire font family is included.

This package is also available on \href{https://github.com/silkeh/latex-sourcecodepro}{GitHub}.

\section{Options}
The package has the following options:
\begin{itemize*}
	\item \textbf{oldstyle, osf}:  use old style numbers.
	\item \textbf{lining, nf, lf}: use lining numbers.
	\item \textbf{black}:          \texttt{\textbackslash bfseries} is black.
	\item \textbf{semibold}:       \texttt{\textbackslash bfseries} is semibold.
	\item \textbf{bold}:           \texttt{\textbackslash bfseries} is bold.
	\item \textbf{light}:          \texttt{\textbackslash mdseries} is light.
	\item \textbf{extralight}:     \texttt{\textbackslash mdseries} is extra light.
	\item \textbf{regular}:        \texttt{\textbackslash mdseries} is regular.
	\item \textbf{scale, scaled}:  Change the scaling with a factor. For example:  \texttt{scale=.5}
	\item \textbf{ligatures}:      Change the ligatures used. For example: \texttt{ligatures=TeX}
	\item \textbf{default}:        Source Code Pro is set as the default font family and as the monotype family.
	\item \textbf{nottdefault}:    Source Code Pro is not set as monospaced family.
	\item \textbf{type1, t1}:      Override automatic detection and use the Type 1 fonts.
	\item \textbf{opentype, otf}:  Override automatic detection and use OpenType fonts.
\end{itemize*}
The following options are enabled by default: lining, proportional, bold and regular.

\section{Commands}
Commands for all weights are also provided for \hologo{XeTeX} and \hologo{LuaTeX} users.
\begin{itemize*}
	\item \texttt{\bfseries \textbackslash sourcecodepro}
		-- the regular and bold weights.
	\item \texttt{\bfseries \textbackslash sourcecodeprolight}
		-- the light and semibold weights.
	\item \texttt{\bfseries \textbackslash sourcecodeproextreme}
		-- the extra light and black weights.
\end{itemize*}

\section{Licence}
Adobe's Source Code Pro typeface is available under the \href{http://scripts.sil.org/OFL}{SIL Open Font License 1.1}.\\
All \LaTeX\ code is available under the \href{http://www.latex-project.org/lppl/}{\LaTeX\ project public license} v1.3 or later.

\section{Specimen}
Simple specimen can be found on page \pageref{sec:specimen}. Full specimen can be \href{http://adobe-fonts.github.io/source-code-pro/}{acquired from Adobe}. Please note that at the moment Source Code Pro doesn’t have small-caps.

\section{OpenType}
The OpenType fonts have many features, including old style numerals (\texttt{\oldstylenums{1 6 9}})
and stylistic alternatives (\texttt{{\addfontfeature{Style=Alternate}a g}}).

\subsection{Features}
A complete list of available font features is available on page \pageref{sec:otfinfo}. More information on how to use font features can be found in the \href{http://mirror.ctan.org/macros/latex/contrib/fontspec/fontspec.pdf}{fontspec documentation}.

\section{Type1}
The following Type1 font families are included:
\begin{itemize*}
	\item SourceCodePro-TLF
	\item SourceCodePro-TOsF
\end{itemize*}
With series ‘el’, ‘l’, ‘m’, ‘mb’, ‘sb’, ‘b’, ‘k’ and shapes ‘n’ and ‘i’.

\section{Version history}
\subsection*{2.7}
\begin{itemize*}
	\item Make the ligatures for the OpenType fonts configurable with the \texttt{ligatures} option.
	\item Update the fonts to Roman v2.030 and Italic v1.050.
	\item Generate fonts without f-ligatures.
\end{itemize*}

\subsection*{2.6}
\begin{itemize*}
	\item Modified the \texttt{\textbackslash liningnums} to accomodate for the missing \texttt{lnum} feature.
\end{itemize*}

\subsection*{2.5}
\begin{itemize*}
	\item Updated the fonts to 2.010R-ro/1.030R-it.
\end{itemize*}

\subsection*{2.4}
\begin{itemize*}
	\item Added the italic fonts (\emph{beta} v1.002).
	\item Added the fixed medium font (v1.020).
	\item Implemented the medium font.
\end{itemize*}

\subsection*{2.3}
\begin{itemize*}
	\item Fixed errors in weight implementation.
\end{itemize*}

\subsection*{2.2}
\begin{itemize*}
	\item Weights are now handled with the \href{http://www.ctan.org/pkg/mweights}{mweights} package.
	\item Fixed scaling.
\end{itemize*}

\subsection*{2.1}
\begin{itemize*}
	\item Added \texttt{nottdefault} option.
	\item Fixed issue in which font was set as default sans-serif family instead of the default monospaced family.
\end{itemize*}

\subsection*{2.0}
\begin{itemize*}
	\item Merged all \texttt{.sty} files into \texttt{sourcecodepro.sty}.
	\item \texttt{default} option now sets the default font family to \texttt{Source Code Pro}, not \texttt{\textbackslash sfdefault}.
	\item \texttt{type1}, \texttt{t1}, \texttt{opentype} and \texttt{otf} option added to override automatic detection.
	\item Added \texttt{OT1} to \texttt{fontspec} options.
	\item Updated fonts to 1.017.
\end{itemize*}

\subsection*{1.02}
\begin{itemize*}
	\item Removed \texttt{proportional} and \texttt{tabular} options.
	\item Changed the order of \texttt{T1} and \texttt{LY1}.
	\item Changed \texttt{lining}/\texttt{nf} behaviour.
	\item Redefined \texttt{\textbackslash oldstylenums}.
\end{itemize*}

\section{Known issues}
Issues can be reported \href{https://github.com/silkeh/latex-sourcecodepro/issues}{on GitHub}.


\newpage
\end{multicols}

\section{Specimen}
At the moment Source Code Pro doesn’t have italics or small-caps.
\label{sec:specimen}
\subsection{OpenType}
\begin{figure}[ht]
	\centering
	\includegraphics[width=\linewidth]{sourcecodepro-otf-specimen}
\end{figure}
This table can also be found in \file{sourcecodepro-otf-specimen}.

\subsection{Type1}
\begin{figure}[ht]
	\centering
	\includegraphics[width=\linewidth]{sourcecodepro-type1-specimen}
\end{figure}
This table can also be found in \file{sourcecodepro-type1-specimen}.

\newpage
\section{Opentype features}
\label{sec:otfinfo}

\newcommand*\textfeat[2]{{\sourcecodepro\addfontfeature{RawFeature=+#1}#2}}
The following font features are avalable in the font:

\begin{figure}[ht]
	\centering
	\begin{tabular}{>{\ttfamily}l l}
		case & Case-Sensitive Forms \\
		ccmp & Glyph Composition/Decomposition \\
		cv01 & Character Variants 1 - simple a \\
		cv02 & Character Variants 2 - simple g \\
		cv04 & Character Variants 4 - serifed i \\
		cv06 & Character Variants 6 - Sami \symbol{"014A} \\
		cv07 & Character Variants 7 - cursive \symbol{"03B2} \\
		cv08 & Character Variants 8 - cursive \symbol{"03B8} \\
		cv09 & Character Variants 9 - cursive \symbol{"03C6} \\
		cv10 & Character Variants 10 - Serbian \symbol{"0431} \\
		cv11 & Character Variants 11 - Cyrillic breve [\symbol{"02D8}] \\
		cv12 & Character Variants 12 - slashed zero [0] \\
		cv14 & Character Variants 14 - typographic hyphen [-] \\
		cv15 & Character Variants 15 - typographic asterisk [*] \\
		cv16 & Character Variants 16 - slashed dollar sign [\$]\\
		cv17 & Character Variants 17 - alternate numeral one [1] \\
		dnom & Denominators \\
		frac & Fractions \\
		mark & Mark Positioning \\
		mkmk & Mark to Mark Positioning \\
		numr & Numerators \\
		onum & Oldstyle Figures \\
		ordn & Ordinals \\
		salt & Stylistic Alternates \\
		sinf & Scientific Inferiors \\
		size & Optical Size \\
		ss01 & Stylistic Set 1 - typographic alternates [-,*] \\
		ss02 & Stylistic Set 2 - simple a, cursive \symbol{"03B2} \\
		ss03 & Stylistic Set 3 - simple g, cursive \symbol{"03B8}, Serbian \symbol{"0431} \\
		ss04 & Stylistic Set 4 - serifed i \\
		ss05 & Stylistic Set 5 - Sami \symbol{"014A}, cursive \symbol{"03C6} \\
		ss06 & Stylistic Set 6 - slashed dollar sign [\$] \\
		ss07 & Stylistic Set 7 - alternate numeral one [1] \\
		subs & Subscript \\
		sups & Superscript \\
		zero & Slashed Zero
	\end{tabular}
\end{figure}

\end{document}