Created
May 19, 2021 21:08
-
-
Save jpgoldberg/1b46c9d325abcf9c825629a223d42256 to your computer and use it in GitHub Desktop.
XeLaTeX friendly SOUPS 2021 sty
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
% (JPG) Modified Usenex-SOUPS style to use fontspec if running with XeLaTeX or LuaLaTeX | |
% (JPG) Comments annoted with "(JPG)" are by Jeffrey P Goldberg, | |
% (JPG) [email protected] (or [email protected]) | |
% (JPG): | |
% The goal is to make this style sheet work with using a pdftex engine, | |
% (pdflatex) as well as XeTeX or LuaTeX (xelatex, lualatex) | |
% with similar output | |
% | |
% So far, I have noticed two visible difference | |
% 1. pdftex uses frenchspacing. | |
% 2. pdftex uses a fixed-width font that is unrelated to Times. | |
% | |
% As I don't believe that these were desired design choices of the orignal | |
% style (to be used with pdftex), I am not making the {Xe,Lua}TeX versions | |
% mimic that original behavior. | |
% (JPG) The immediately visible differences between using pdflatex en | |
\usepackage{iftex} | |
\newif\iffontspecavailable % default is false | |
\ifluatex | |
\fontspecavailabletrue | |
\fi | |
\ifxetex | |
\fontspecavailabletrue | |
\fi | |
% usenix.sty - to be used with latex2e for USENIX. | |
% To use this style file, look at the template usenix_template.tex | |
% | |
% $Id: usenix.sty,v 1.2 2005/02/16 22:30:47 maniatis Exp $ | |
% | |
% The following definitions are modifications of standard article.sty | |
% definitions, arranged to do a better job of matching the USENIX | |
% guidelines. | |
% It will automatically select two-column mode and the Times-Roman | |
% font. | |
% | |
% 2018-12-19 [for ATC'19]: add packages to help embed all fonts in | |
% pdf; to improve appearance (hopefully); to make refs and citations | |
% clickable in pdf | |
% | |
% USENIX papers are two-column. | |
\if@twocolumn\else\input twocolumn.sty\fi | |
% Times-Roman font is nice if you can get it | |
% (JPG) \texttt uses very different fonts in the different cases | |
% (JPG) I am not going to tinker with the fontspec option to make | |
% (JPG) mimic the pdftex option, as the fixed width font used by | |
% (JPG) by textxtext is much more compatible with Times. | |
\iffontspecavailable | |
\usepackage{fontspec} | |
% (JPG) the following packages load Times-like clones that | |
% (JPG) should be part of any standard TeX installation. | |
% (JPG) If you have a true Times New Roman on your system | |
% (JPG) you load those instead, but those are system | |
% (JPG) dependent. | |
\usepackage{newtxtext} % Times-like text fonts | |
\usepackage{newtxmath} % Times-like math fonts | |
\else | |
% (JPG) It appears that mathptmx does not attempt to find a | |
% (JPG) Times compatable fixed-width (typewriter) font. | |
\usepackage{mathptmx} % times roman, including math (where possible) | |
% hopefully embeds all fonts in pdf | |
\usepackage[T1]{fontenc} | |
\usepackage{pslatex} | |
\fi | |
% Allow UTF input | |
\usepackage[utf8]{inputenc} | |
% appearance | |
\iffontspecavailable | |
% (JPG) We could try to mimic what was probabably _intended_ by the microtype | |
% (JPG) inclusion in the original by using fontspec's LetterSpacing features | |
% (JPG) and moving to frenchspacing. But it is too unclear what was | |
% (JPG) actually intended. | |
\usepackage{microtype} | |
\else | |
% (JPG) Loading microtype with these features doesn't do anything if | |
% (JPG) if additional commands introduced by the package aren't | |
% (JPG) used. | |
\usepackage[kerning,spacing]{microtype} % more compact and arguably nicer | |
\fi | |
\iffontspecavailable | |
% (JPG) breakurl is only needed for pdftex engines. | |
\else | |
\usepackage{breakurl} % break too-long urls in refs | |
\fi | |
\usepackage{flushend} % make cols in last page equal in size | |
% refs and bib | |
\usepackage{cite} % order multiple entries in \cite{...} | |
\usepackage{url} % allow \url in bibtex for clickable links | |
\usepackage{xcolor} % color definitions, to be use for... | |
\usepackage[pdfusetitle]{hyperref} % ...clickable refs within pdf... | |
\hypersetup{ % ...like so | |
colorlinks, | |
linkcolor={green!80!black}, | |
citecolor={red!70!black}, | |
urlcolor={blue!70!black}, | |
} | |
% USENIX wants margins of: 0.75" sides, 1" bottom, and 1" top. | |
% 0.33" gutter between columns. | |
% Gives active areas of 7" x 9" | |
% | |
\setlength{\textheight}{9.0in} | |
\setlength{\columnsep}{0.33in} | |
\setlength{\textwidth}{7.00in} | |
\setlength{\topmargin}{0.0in} | |
\setlength{\headheight}{0.0in} | |
\setlength{\headsep}{0.0in} | |
\addtolength{\oddsidemargin}{-0.25in} | |
\addtolength{\evensidemargin}{-0.25in} | |
% Usenix wants no page numbers for camera-ready papers, so that they can | |
% number them themselves. But submitted papers should have page numbers | |
% for the reviewers' convenience. | |
% | |
% | |
% \pagestyle{empty} | |
% | |
% Usenix titles are in 14-point bold type, with no date, and with no | |
% change in the empty page headers. The whole author section is 12 point | |
% italic--- you must use {\rm } around the actual author names to get | |
% them in roman. | |
% | |
\def\maketitle{\par | |
\begingroup | |
\renewcommand\thefootnote{\fnsymbol{footnote}}% | |
\def\@makefnmark{\hbox to\z@{$\m@th^{\@thefnmark}$\hss}}% | |
\long\def\@makefntext##1{\parindent 1em\noindent | |
\hbox to1.8em{\hss$\m@th^{\@thefnmark}$}##1}% | |
\if@twocolumn | |
\twocolumn[\@maketitle]% | |
\else \newpage | |
\global\@topnum\z@ | |
\@maketitle \fi\@thanks | |
\endgroup | |
\setcounter{footnote}{0}% | |
\let\maketitle\relax | |
\let\@maketitle\relax | |
\gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax | |
} | |
\def\@maketitle{\newpage | |
\vbox to 2.5in{ | |
\vspace*{\fill} | |
\vskip 2em | |
\begin{center}% | |
{\Large\bf \@title \par}% | |
\vskip 0.375in minus 0.300in | |
{\large\it | |
\lineskip .5em | |
\begin{tabular}[t]{c}\@author | |
\end{tabular}\par}% | |
\end{center}% | |
\par | |
\vspace*{\fill} | |
\hypersetup{ | |
pdfauthor = {\plainauthor}} %MLM: Put "plainauthor" into pdf metadata | |
% \vskip 1.5em | |
} | |
} | |
% | |
% The abstract is preceded by a 12-pt bold centered heading | |
\def\abstract{\begin{center}% | |
{\large\bf \abstractname\vspace{-.5em}\vspace{\z@}}% | |
\end{center}} | |
\def\endabstract{} | |
% | |
% Main section titles are 12-pt bold. Others can be same or smaller. | |
% | |
\def\section{\@startsection {section}{1}{\z@}{-3.5ex plus-1ex minus | |
-.2ex}{2.3ex plus.2ex}{\reset@font\large\bf}} | |
% set up for copyright box (adapted from ACM template used in SOUPS 2018) | |
% create a float for the copyright box | |
\usepackage{float} | |
\newfloat{soupscopyright}{b} %A new float type so it doesn't count against figures | |
\def\thecopyright{ | |
\begin{soupscopyright}[b] %declare a float of the type | |
\begin{center} | |
\setlength{\unitlength}{1pc} | |
\begin{picture}(20,6) %Space for copyright notice | |
% \put (0,-0.95){TEST} | |
\put(0,-0.95){ %"Put" adds text to the "picture" | |
\parbox[b]{20pc}{\baselineskip 9pt %parbox lets you have newlines and such | |
\footnotesize{Copyright is held by the author/owner. Permission | |
to make digital or hard copies of all or part of this work for | |
personal or classroom use is granted without fee.\par | |
\emph{USENIX Symposium on Usable Privacy and Security | |
(SOUPS)} 2021. \\ August~8--10,~2021, Vancouver,~B.C.,~Canada.} | |
}} | |
\end{picture} | |
\end{center} | |
\end{soupscopyright} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment