Discussion:
[MiKTeX] Add cm-super as default package
Oliver Kopp
2016-11-18 17:08:16 UTC
Permalink
Hi,

I am a huge fan of the microtype package, as this is a unique selling
point of LaTeX. However, with the default install of MiKTeX it does
not work out of the box: "auto expansion is only possible with
scalable fonts, microtype package, "

The solution is to install the cm-super package and to run "initexmf
--mkmaps" (Source: http://tex.stackexchange.com/a/310169/9075). Is it
possible to install cm-super as default or add it as dependency to the
microtype package? Meaning: If a user uses \usepackage{microtype}, the
cm-super package should be installed, too.

Cheers,

Oliver
David Allsopp
2016-11-20 10:41:30 UTC
Permalink
Post by Oliver Kopp
Hi,
I am a huge fan of the microtype package, as this is a unique selling
point of LaTeX. However, with the default install of MiKTeX it does not
work out of the box: "auto expansion is only possible with scalable fonts,
microtype package, "
I'm not seeing this with the example at https://gist.githubusercontent.com/AndiH/8b65adbeb77b00c4b970/raw/2f97ea76a74bf8a729603d26461c9b888d9454be/microtypeExample.tex. On a fresh basic install with only microtype added, I commented out the \usepackage[bitstream-charter]{mathdesign} and that file seems to compile fine with pdflatex?
Post by Oliver Kopp
The solution is to install the cm-super package and to run "initexmf --
mkmaps" (Source: http://tex.stackexchange.com/a/310169/9075). Is it
possible to install cm-super as default or add it as dependency to the
microtype package? Meaning: If a user uses \usepackage{microtype}, the cm-
super package should be installed, too.
Adding cm-super as a default would increase the size of the basic installer by nearly a third. It would be bad to have it as a dependency of microtype. At best, what's really wanted here is "package recommendations" which is something that a lot of Linux package managers can do but not something which I think MiKTeX's can do. That previous example works perfectly as intended with the mathdesign package, providing at least one example of why cm-super is not an appropriate *dependency* of microtype.


David
Ulrike Fischer
2016-11-20 21:15:08 UTC
Permalink
Post by David Allsopp
Post by Oliver Kopp
I am a huge fan of the microtype package, as this is a unique selling
point of LaTeX. However, with the default install of MiKTeX it does not
work out of the box: "auto expansion is only possible with scalable fonts,
microtype package, "
I'm not seeing this with the example at
https://gist.githubusercontent.com/AndiH/8b65adbeb77b00c4b970/raw/2f97ea76a74bf8a729603d26461c9b888d9454be/microtypeExample.tex.
On a fresh basic install with only microtype added, I commented
out the \usepackage[bitstream-charter]{mathdesign} and that file
seems to compile fine with pdflatex?
The example doesn't use T1-encoding and so doesn't need cm-super.
Add \usepackage[T1]{fontenc}. T1-encoding is needed for languages
with accents and umlaut, like french and german, so we also always
need cm-super.
--
Ulrike Fischer
http://www.troubleshooting-tex.de/
David Allsopp
2016-11-22 11:15:38 UTC
Permalink
Post by David Allsopp
Post by David Allsopp
Post by Oliver Kopp
I am a huge fan of the microtype package, as this is a unique selling
point of LaTeX. However, with the default install of MiKTeX it does
not work out of the box: "auto expansion is only possible with
scalable fonts, microtype package, "
I'm not seeing this with the example at
https://gist.githubusercontent.com/AndiH/8b65adbeb77b00c4b970/raw/2f97ea76
a74bf8a729603d26461c9b888d9454be/microtypeExample.tex.
Post by David Allsopp
On a fresh basic install with only microtype added, I commented out
the \usepackage[bitstream-charter]{mathdesign} and that file seems to
compile fine with pdflatex?
The example doesn't use T1-encoding and so doesn't need cm-super.
Add \usepackage[T1]{fontenc}. T1-encoding is needed for languages with
accents and umlaut, like french and german, so we also always need cm-
super.
Ah, yes, I can see that now. But, in this instance, isn't the better course of action that the automatic installer could detect this combination and suggest it (i.e. rather than the error message from microtype, a hook just like the one which suggests installing microtype at \usepackage{microtype}?)

Is it not the case that T1 is only *needed* if you also require hyphenation? My own mix of TeX (not LaTeX) documents using a non-Computer Modern T1-encoded font have plenty of Cyrillic, Greek and other accented Latin languages - including English with diaresis accents, etc. - and typeset just fine. Is there a case for saying that such a huge package should definitely part of the out-of-the-box (default) experience?


David
Ulrike Fischer
2016-11-22 11:46:08 UTC
Permalink
Post by David Allsopp
Post by Ulrike Fischer
The example doesn't use T1-encoding and so doesn't need cm-super.
Add \usepackage[T1]{fontenc}. T1-encoding is needed for languages with
accents and umlaut, like french and german, so we also always need cm-
super.
Ah, yes, I can see that now. But, in this instance, isn't the
better course of action that the automatic installer could detect
this combination and suggest it (i.e. rather than the error
message from microtype, a hook just like the one which suggests
installing microtype at \usepackage{microtype}?)
The automatic installer can not detect the need for cm-super. It can
detect missing files, but there is no tfm missing. Microtype can
imho do no much either. The error message is from the engine.
Post by David Allsopp
Is it not the case that T1 is only *needed* if you also require
hyphenation?
No. It e.g. affects also copy and paste. Try it out

\documentclass{article}
%\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\begin{document}
öäü
\end{document}

And OT1-encoding has some other curious side-effect:

\documentclass{article}
%\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\begin{document}
<a \texttt{£}
\end{document}

See
https://tex.stackexchange.com/questions/71517/do-i-need-fontenc-and-inputenc/
Post by David Allsopp
My own mix of TeX (not LaTeX) documents using a
non-Computer Modern T1-encoded font have plenty of Cyrillic,
Greek and other accented Latin languages - including English with
diaresis accents, etc. - and typeset just fine. Is there a case
for saying that such a huge package should definitely part of the
out-of-the-box (default) experience?
Imho T1 should be the default encoding, type1 fonts the default font
format. So either latex uses lmodern by default of cm-super should
be installed. Also I don't think that it matters much today -- some
years ago this was different - I always imported cm-super from older
miktex versions to save download time.
--
Ulrike Fischer
http://www.troubleshooting-tex.de/
Oliver Kopp
2017-01-27 07:50:58 UTC
Permalink
Hi,
The automatic installer cannot detect the need for cm-super. It can
detect missing files, but there is no tfm missing. Microtype can
imho do no much either. The error message is from the engine.
Is it possible to create a fake (tfm?) file, where microtype depends
on and which is provided by the cm-super package? I think, users are
used that miktex install packages on-the-fly.

I am aware that using the [pslatex](https://www.ctan.org/pkg/pslatex)
package, there is no need for cm-super. In default settings, one does
not include that package and has the issues with cm-super and
microtype. -- I really wonder why not more people hit the respective
stackoverflow question http://tex.stackexchange.com/q/310120/9075.

Cheers,

Oliver

Loading...