m (→lualatex) |
(→texmf: bothering me) |
||
(16 intermediate revisions by 2 users not shown) | |||
Line 70: | Line 70: | ||
\mathbb{R}^n\xrightarrow[\mathbf{J}_{f\circ g}\atop l\times n]{f\circ g}\mathbb{R}^l | \mathbb{R}^n\xrightarrow[\mathbf{J}_{f\circ g}\atop l\times n]{f\circ g}\mathbb{R}^l | ||
\end{gather} | \end{gather} | ||
+ | |||
+ | == Underline == | ||
+ | |||
+ | <tt>\underline</tt> doesn't work great. | ||
+ | |||
+ | But <tt>\uline</tt> from the <tt>soul</tt> package does! | ||
+ | |||
+ | One can also use [https://alexwlchan.net/2017/latex-underlines/ axelwlchan's trick], but it doesn't work for sentences breaking over several lines: | ||
+ | |||
+ | <pre> | ||
+ | \usepackage{contour} | ||
+ | \usepackage[normalem]{ulem} | ||
+ | |||
+ | \renewcommand{\ULdepth}{1.8pt} | ||
+ | \contourlength{0.8pt} | ||
+ | |||
+ | \newcommand{\myuline}[1]{% | ||
+ | \uline{\phantom{#1}}% | ||
+ | \llap{\contour{white}{#1}}% | ||
+ | } | ||
+ | </pre> | ||
== International accents == | == International accents == | ||
Line 266: | Line 287: | ||
<center><wz tip="Please!">[[File:pleasewrite10mum.jpeg|250px]]</wz></center> | <center><wz tip="Please!">[[File:pleasewrite10mum.jpeg|250px]]</wz></center> | ||
− | |||
− | |||
To write '''inverse unit''', use \per: | To write '''inverse unit''', use \per: | ||
Line 291: | Line 310: | ||
(that would be giga-bits per seconds). | (that would be giga-bits per seconds). | ||
+ | |||
+ | It is also possible to empower the package with extra options, e.g.: | ||
+ | |||
+ | <pre> | ||
+ | \usepackage[alsoload=astro]{siunitx} | ||
+ | </pre> | ||
+ | |||
+ | to have parsec and lightyears, e.g., Proxima Centauri is $\SI{4.2465}{\lightyear}$ away. | ||
+ | |||
+ | There is also a <tt>SIUnits</tt> which is however deprecated [http://tex.stackexchange.com/questions/21936/differences-between-siunits-and-siunitx-packages]. Sometimes it came in handy, for instance to add non-numerical inputs (though siunitx should be able to allow that as well). | ||
+ | |||
+ | == Mathematical hacks == | ||
+ | |||
+ | === Small matrices === | ||
+ | |||
+ | For small matrices, such as $\sigma_z=\left(\begin{smallmatrix}1&0\\0&-1\end{smallmatrix}\right)$, one can use | ||
+ | |||
+ | <pre> | ||
+ | \left(\begin{smallmatrix}1&0\\0&-1\end{smallmatrix}\right) | ||
+ | </pre> | ||
== Symbols == | == Symbols == | ||
− | To use <tt>\mathbb{1}</tt> produce the "identity" [[File:identity.jpg|16px|bottom]] | + | To use <tt>\mathbb{1}</tt> produce the "identity" [[File:identity.jpg|16px|bottom]]: |
<pre> | <pre> | ||
\usepackage{bbold} | \usepackage{bbold} | ||
</pre> | </pre> | ||
+ | |||
+ | To use ornaments, like [[File:fingerpoint.png|28px|bottom]] or [[File:suggestion.png|16px|bottom]]: | ||
+ | |||
+ | <pre> | ||
+ | \usepackage[object=vectorian]{pgfornament} | ||
+ | \newcommand{\selectedpub}{\pgfornament[anchor=south, width=.25cm]{152}} | ||
+ | </pre> | ||
+ | |||
+ | (152 for the finger, 5 for the heart, etc.) | ||
+ | |||
+ | If desperate, you can try to [https://detexify.kirelabs.org/classify.html de{{TeX}}ify] your input. | ||
== Bold letters == | == Bold letters == | ||
Line 339: | Line 389: | ||
} | } | ||
</pre> | </pre> | ||
+ | |||
+ | == Editing/Proofreading (copy-editing) == | ||
+ | |||
+ | There are two ways to strike out text: (soul seems better) | ||
+ | |||
+ | <pre> | ||
+ | \usepackage{soul} | ||
+ | \st{This can't be!} | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | \usepackage[normalem]{ulem} | ||
+ | \sout{This neither!} | ||
+ | </pre> | ||
+ | |||
+ | In section titles, there might be problem of upcasing the color name, in which case add: | ||
+ | <pre> | ||
+ | \colorlet{RED}{red} | ||
+ | </pre> | ||
+ | |||
+ | The use of <tt>\st</tt> might require <tt>\protect</tt>. | ||
+ | |||
+ | See also [[Blog:Hacks/Emacs_Proofing_LaTeX|Emacs proofing {{LaTeX}} (red and strike-throughs)]]. | ||
+ | |||
+ | == Seamless for computation == | ||
+ | <center><wz tip="Seamless page; not to print but to scroll through. Here showing calculations for Stefan Lichtmannecker's two-level system in two cavities.">[[File:Screenshot_20230616_150740.png|thumb]]</wz></center> | ||
+ | These options allow to have an infinite page large enough to work on without page interruptions nor limitations from the finite widths. As a result, it is convenient to have equations flushed left. | ||
+ | |||
+ | <pre> | ||
+ | \documentclass[preview, leqno, border=1cm, fleqn]{standalone} | ||
+ | \usepackage[total={20cm, 20cm}]{geometry} | ||
+ | </pre> | ||
+ | |||
+ | There is apparently a bug with align that adds extra spacing for the 16th line! | ||
== texmf == | == texmf == | ||
Line 346: | Line 430: | ||
<pre> | <pre> | ||
texhash /home/laussy/comp/texmf | texhash /home/laussy/comp/texmf | ||
+ | </pre> | ||
+ | |||
+ | To check the destination is where it should: | ||
+ | <pre> | ||
+ | kpsewhich -var-value TEXMFLOCAL | ||
+ | </pre> | ||
+ | |||
+ | One should have, for this, defined <tt>TEXMFHOME</tt> in <tt>texmf.cnf</tt>, itself potentially identifiable with | ||
+ | |||
+ | <pre> | ||
+ | kpsewhich texmf.cnf | ||
+ | </pre> | ||
+ | |||
+ | but which can, however, bring you to some dummy file. The option to use <tt>tlmgr</tt>[https://tex.stackexchange.com/questions/30494/how-to-make-latex-see-local-texmf-tree] may also not work. Simplest is to <tt>locate texmf.cnf</tt> and see if editing there the <tt>TEXMFHOME</tt> variable there. This worked for me (I also do not want texmf in my home). | ||
+ | |||
+ | To check that a local sty file is installed (is available): | ||
+ | |||
+ | <pre> | ||
+ | kpsewhich laussy.sty | ||
</pre> | </pre> | ||
Line 363: | Line 466: | ||
</pre> | </pre> | ||
− | but if you want the real proprietary | + | or, for Calibri, the Carlito font which is almost identical (in particular, it has the same metrics): |
+ | |||
+ | <pre> | ||
+ | \usepackage[sfdefault]{carlito} | ||
+ | </pre> | ||
+ | |||
+ | but if you want the real proprietary fonts, you have to <wz tagtotip=microsoftagreement width=600px>commit your soul to some endt-user license agreement</wz><span id="microsoftagreement">[[File:Screenshot_20220718_110611.png|600px]]</span> which is however easily done through | ||
<pre> | <pre> | ||
Line 379: | Line 488: | ||
BoldFont =calibrib.ttf, | BoldFont =calibrib.ttf, | ||
ItalicFont =calibrii.ttf]{calibri.ttf} | ItalicFont =calibrii.ttf]{calibri.ttf} | ||
+ | </pre> | ||
+ | |||
+ | Compilation is either from the command line: | ||
+ | |||
+ | <pre> | ||
+ | lualatex text.tex | ||
+ | </pre> | ||
+ | |||
+ | or from [[Emacs]] with AucTeX's specification of the TeX-engine at the end of the file: | ||
+ | |||
+ | <pre> | ||
+ | %%% Local Variables: | ||
+ | %%% mode: latex | ||
+ | %%% TeX-master: t | ||
+ | %%% TeX-engine: luatex | ||
+ | %%% End: | ||
</pre> | </pre> | ||
Line 396: | Line 521: | ||
== Links == | == Links == | ||
− | + | * [http://tug.ctan.org/info/symbols/comprehensive/symbols-a4.pdf The Comprehensive $\LaTeX$ Symbol List] of November 2015 (331 pages of glyphs). | |
− | + | * [https://tug.org/texshowcase/ Showcases 1] and [https://tex.stackexchange.com/questions/1319/showcase-of-beautiful-typography-done-in-tex-friends 2]. | |
* [http://tex.stackexchange.com/questions/168169/options-for-supplementary-materials-in-preprint-version-revtex-arxiv Options for supplementary material on the arXiv]. | * [http://tex.stackexchange.com/questions/168169/options-for-supplementary-materials-in-preprint-version-revtex-arxiv Options for supplementary material on the arXiv]. | ||
− | |||
− | |||
− | |||
− |
$\mathrm{\TeX}$ is one of the masterpieces of Don Knuth.
It is the uppercase version of $\tau\epsilon\chi$, a Greek word for Tech, which is how $\mathrm{\TeX}$ should be pronounced (!?).
At some point in the early 2000, I switched to $\mathrm{\LaTeX}$ for convenience, and almost exclusively use the latter now.
Splitting equations within an aligned set can be done as followed~[1]:
\begin{align} a &= \begin{aligned}[t] &b + c + d +\\ &c + e + f + g + h + i \end{aligned}\\ k &= \begin{aligned}[t] &l + m + n\\ &+ o + p + q \end{aligned} \end{align} |
\begin{align} a &= \begin{aligned}[t] &b + c + d +\\ &c + e + f + g + h + i \end{aligned}\\ k &= \begin{aligned}[t] &l + m + n\\ &+ o + p + q \end{aligned} \end{align} |
To align equations as if in a table (?!), one can use [2] This is to integrate $\int x\sin(k\pi x)dx$ by parts.
\begin{align} u&=x & v&=-\frac{1}{k\pi}\cos(k\pi x)\\ u'&=1 & v'&=\sin(k\pi x) \end{align} |
\begin{align} u&=x & v&=-\frac{1}{k\pi}\cos(k\pi x)\\ u'&=1 & v'&=\sin(k\pi x) \end{align} |
To gather equations (from the Wolverhampton Lectures on Physics on Mathematics):
\begin{gather} \mathbb{R}^n\xrightarrow[\mathbf{J}_g\atop m\times n]{g}\mathbb{R}^m\xrightarrow[\mathbf{J}_f\atop l\times m]{f}\mathbb{R}^l\\ \mathbb{R}^n\xrightarrow[\mathbf{J}_{f\circ g}\atop l\times n]{f\circ g}\mathbb{R}^l \end{gather}
\begin{gather} \mathbb{R}^n\xrightarrow[\mathbf{J}_g\atop m\times n]{g}\mathbb{R}^m\xrightarrow[\mathbf{J}_f\atop l\times m]{f}\mathbb{R}^l\\ \mathbb{R}^n\xrightarrow[\mathbf{J}_{f\circ g}\atop l\times n]{f\circ g}\mathbb{R}^l \end{gather}
\underline doesn't work great.
But \uline from the soul package does!
One can also use axelwlchan's trick, but it doesn't work for sentences breaking over several lines:
\usepackage{contour} \usepackage[normalem]{ulem} \renewcommand{\ULdepth}{1.8pt} \contourlength{0.8pt} \newcommand{\myuline}[1]{% \uline{\phantom{#1}}% \llap{\contour{white}{#1}}% }
We try to write your name properly when we quote it. Here are the most common glyphs and the code needed to do so:
$?`$Does this work?
and a more comprehensive list of accentuated characters.
See Will Robertson preambles to use different fontsets.
Useful shortcuts, include:
Using the package
\usepackage[svgnames]{xcolor}
One can then use \textcolor{red}{this is red} or \color{red} to turn everything red (until next escape).
The predefined colors are:
black, blue, brown, cyan, darkgray, gray, green, lightgray, lime, magenta, olive, orange, pink, purple, red, teal, violet, white, yellow.
but some of them are horrible! like this horrible #00ff00 pure green (so-called lime) (what it calls lime is even less visible). The svgnames gives access to about 150 additional, and pretty, colors. Use capitals letters. Here are the most useful with a short name:
|
|
|
And here are all of them.
Unicode can be supported (at least to some extent) with
\usepackage[mathletters]{ucs} \usepackage[utf8x]{inputenc}
It works at least for the Greek letters.
\addtolength{\itemsep}{-0.5\baselineskip}
\begin{enumerate}
\setcounter{enumi}{4}
\item fifth element
\end{enumerate}
\renewcommand{\theenumi}{\Roman{enumi}} \renewcommand{\theenumi}{\roman{enumi}}
\usepackage{enumitem}% http://ctan.org/pkg/enumitem \begin{document} \begin{enumerate}[label={[\arabic*]}] \item First item \item Second item \item \ldots \item Last item \end{enumerate} \end{document}
There is a $\mathrm{\LaTeX}$ package, footmisc, that is useful for manipulating footnote formatting.
%\footnotesep is the space between footnotes:
\setlength{\footnotesep}{-0.5\baselineskip}
%\footins is the space between the text body and the footnotes:
\setlength{\skip\footins}{1cm}
\makeatletter \renewcommand{\@makefnmark} %{\@textsuperscript{\textit{\tiny{\@thefnmark}}}} {[\@thefnmark]} \renewcommand\@makefntext[1]{% \parindent 1em \noindent [\@thefnmark]\enspace #1} \makeatother
(I left, commented, the original definition of the footnote).
\usepackage[a4paper, total={6in, 8in}]{geometry}
To use "infinite"-width page to accommodate single-line long formulas, use the package standalone:
\documentclass[border=1in]{standalone} \usepackage{lipsum} \begin{document} \begin{minipage}{66cm} \lipsum[1-150] \end{minipage} \end{document}
This is, unfortunately, incompatible with the RevTeX package or amsmath tools in general. In this case one has to use geometry:
\documentclass[preview, border=1cm]{standalone} \usepackage[total={50cm, 20cm}]{geometry} \usepackage{amsmath} \begin{document} \begin{subequations} \begin{align} \sigma_1^{(1)}&=\sqrt{\frac{\gamma_a^4+2\gamma_a^3\Gamma+6\gamma_a^2\Gamma^2+2\gamma_a\Gamma^3+\Gamma ^4}{\gamma_a^2\Gamma^2(\gamma_a+\Gamma)^2}}\\ ... \end{align} \end{subequations} \end{document}
We use the siunitx package:
\usepackage{siunitx}
It'd take \SI{500}{\milli\second} to understand.
Please write \SI{10}{\micro\meter} and not 10$\mu\mathrm{m}$
To write inverse unit, use \per:
shows the PL emission of a \SI{3}{\micro\meter} wire, where one can observe the splitting between the two first confined subbands, the polarization splitting, and the crossing of the X and Y (labelled TE and TM here) polarized lines around \SI{2.6}{\per\micro\meter}, whereas the value given by the formula above is \SI{2.1}{\per\micro\meter}.
The powers of ten can be counter-$\mathrm{\LaTeX}$-intuitive:
with a density of $\SI{e-3}{\per\square\micro\meter}$
If you do not use SI units, then omit the slash:
repetition rate of SI{3}{gb/s}
(that would be giga-bits per seconds).
It is also possible to empower the package with extra options, e.g.:
\usepackage[alsoload=astro]{siunitx}
to have parsec and lightyears, e.g., Proxima Centauri is $\SI{4.2465}{\lightyear}$ away.
There is also a SIUnits which is however deprecated [7]. Sometimes it came in handy, for instance to add non-numerical inputs (though siunitx should be able to allow that as well).
For small matrices, such as $\sigma_z=\left(\begin{smallmatrix}1&0\\0&-1\end{smallmatrix}\right)$, one can use
\left(\begin{smallmatrix}1&0\\0&-1\end{smallmatrix}\right)
To use \mathbb{1} produce the "identity" :
\usepackage{bbold}
\usepackage[object=vectorian]{pgfornament} \newcommand{\selectedpub}{\pgfornament[anchor=south, width=.25cm]{152}}
(152 for the finger, 5 for the heart, etc.)
If desperate, you can try to de$\mathrm{\TeX}$ify your input.
Greek letters can be typeset with the bm package
\usepackage{bm}
which produce $\bm{\alpha}$, $\bm{\beta}$, $\bm{\gamma}$ as.
It's useful to number profusely manuscripts of which you are discussing every line. Package lineno does that.
\usepackage{lineno} \linenumbers
It may have a hard time cohabiting with amsmath, however. It appears that if you include this monstrosity somewhere in your preamble, it'll perform well enough for line-dropping with your co-authors:
\newcommand*\patchAmsMathEnvironmentForLineno[1]{% \expandafter\let\csname old#1\expandafter\endcsname\csname #1\endcsname \expandafter\let\csname oldend#1\expandafter\endcsname\csname end#1\endcsname \renewenvironment{#1}% {\linenomath\csname old#1\endcsname}% {\csname oldend#1\endcsname\endlinenomath}}% \newcommand*\patchBothAmsMathEnvironmentsForLineno[1]{% \patchAmsMathEnvironmentForLineno{#1}% \patchAmsMathEnvironmentForLineno{#1*}}% \AtBeginDocument{% \patchBothAmsMathEnvironmentsForLineno{equation}% \patchBothAmsMathEnvironmentsForLineno{align}% \patchBothAmsMathEnvironmentsForLineno{flalign}% \patchBothAmsMathEnvironmentsForLineno{alignat}% \patchBothAmsMathEnvironmentsForLineno{gather}% \patchBothAmsMathEnvironmentsForLineno{multline}% }
There are two ways to strike out text: (soul seems better)
\usepackage{soul} \st{This can't be!}
\usepackage[normalem]{ulem} \sout{This neither!}
In section titles, there might be problem of upcasing the color name, in which case add:
\colorlet{RED}{red}
The use of \st might require \protect.
See also Emacs proofing $\mathrm{\LaTeX}$ (red and strike-throughs).
These options allow to have an infinite page large enough to work on without page interruptions nor limitations from the finite widths. As a result, it is convenient to have equations flushed left.
\documentclass[preview, leqno, border=1cm, fleqn]{standalone} \usepackage[total={20cm, 20cm}]{geometry}
There is apparently a bug with align that adds extra spacing for the 16th line!
Local files (such as laussy.sty) are to be put in a local version of the texmf directory (texmf stands for $\mathrm{\TeX}$ and Metafont). This is to be declared to the system as follows:
texhash /home/laussy/comp/texmf
To check the destination is where it should:
kpsewhich -var-value TEXMFLOCAL
One should have, for this, defined TEXMFHOME in texmf.cnf, itself potentially identifiable with
kpsewhich texmf.cnf
but which can, however, bring you to some dummy file. The option to use tlmgr[8] may also not work. Simplest is to locate texmf.cnf and see if editing there the TEXMFHOME variable there. This worked for me (I also do not want texmf in my home).
To check that a local sty file is installed (is available):
kpsewhich laussy.sty
To use fonts such as Arial or Colibri, one can use lualatex. This requires the installation of:
sudo apt install texlive-luatex
as well as the installation of the fonts themselves. Note that still within $\mathrm{\LaTeX}$, one can use the package helvet to use a look-alike free font (Nimbus Sans font):
\usepackage{helvet} \renewcommand{\familydefault}{\sfdefault}
or, for Calibri, the Carlito font which is almost identical (in particular, it has the same metrics):
\usepackage[sfdefault]{carlito}
but if you want the real proprietary fonts, you have to commit your soul to some endt-user license agreement which is however easily done through
sudo apt install ttf-mscorefonts-installer
If the fonts you want are not part of this, such as calibri, then you need to find it elsewhere (for instance, here), and then you can declare your choice of font as follows (un/comment as needed; you may have to declare the exact path to the files as shown below):
\usepackage{fontspec} %\setmainfont{Arial} %\setmainfont{calibri.ttf} \setmainfont[Path=/usr/local/share/fonts/c/, BoldItalicFont=calibriz.ttf, BoldFont =calibrib.ttf, ItalicFont =calibrii.ttf]{calibri.ttf}
Compilation is either from the command line:
lualatex text.tex
or from Emacs with AucTeX's specification of the TeX-engine at the end of the file:
%%% Local Variables: %%% mode: latex %%% TeX-master: t %%% TeX-engine: luatex %%% End:
Use texfot to get rid of the flood of output generated by compilation and retain only the warnings:
texfot pdflatex Microcavities.tex