The conditions of a package for TeX Live can be found at this page:
TeX Live package contributions
I will quote some of the page to discuss the conditions.
Disclaimer: I am not part of the TeX Live team. This is just my way to see the licensing conditions and my interpretation might not be correct.
Questions can be asked in the TeX Live mailing list (texlive
at tug
dot org
), see TeX Live mailing lists.
1. a) First, the package must be free (as in freedom) software, available under, for example, the LaTeX Project Public License or GNU
General Public License. Please state the license explicitly in your
package's source code, README, and/or other documentation. Those
licenses (and others) contain instructions for how to apply them to
your code.
matlab-prettifier
is licensed under LPPL 1.3 or any later version.
2. a) The package must be useful in itself, or useful in conjunction with free software. In other words, we won't install a
package that exists only to support something nonfree, even when it is
free itself (e.g., LPPL'd macro support for a proprietary font). That
doesn't help the free software world, and would rightly be rejected by
free distros in any case.
Problematic, because MATLAB is AFAIK a commercial software and the sole purpose of matlab-prettifier
is the MATLAB language.
TeX Live has the condition, that a package must be useful on a system, which consists and uses entirely free software. This condition differs TeX Live from MiKTeX. It is a concise decision of the Maintainers of TeX Live, which do not want to spend their spare voluntary time on commercial software.
However, it is acceptable for TeX Live AFAIK, if a package is additionally useful for free software. There are some free alternatives to MATLAB: GNU Octave, FreeLab, ... If at least some of them also support the MATLAB language (more or less), or if the package can also support free alternatives, then the red cross might turn to a green check mark.
2. b) We very strongly recommend using an existing license; devising your own will certainly delay any inclusion in TeX Live. We
also strongly recommend using a clause “or any later version” with any
license. The licensing conditions for TeX Live go into more detail
about what is and isn't acceptable.
LPPL 1.3 or any later version.
3. The source for any generated documentation files (e.g., pdf) must also be available for the generated documentation to be included
in TeX Live. We won't refuse to install the package itself, but we
must refrain from installing generated documentation when there is no
source. Free documentation is as important as free software.
Source for the package and documentation is given by the .dtx
file.
4. If you haven't uploaded your package to CTAN, please do that. Virtually all TL packages come from CTAN and that is by far the
easiest place for us to update from. It's a good thing in general for
CTAN to be as comprehensive as possible.
CTAN location: CTAN:macros/latex/contrib/matlab-prettifier/
5. The @ character cannot be used in any filenames. Our tools are not prepared to handle this, and since it's trivial to avoid we'd
rather not spend time on it.
matlab-prettifier
does not contain @
. The use of -
is ok.
6. The package should not create (the likelihood of) any new runtime filename conflicts; in other words, all names should be
reasonably expected to remain unique; using the package name as a
prefix often works well. In addition to conflicts in the TeX tree, new
executables should have names that are reasonably distinctive, and not
just within the TeX world—most executables will end up being installed
in system-wide directories as part of os distributions.
The only run-time file matlab-prettifier.sty
does not conflict with any other file in TeX Live.
Summary:
- Most conditions pass without doubt.
- In case of 2.a), I would ask on the TeX Live mailing list. It would help, if the package can show its usefulness for free software.
- The package might just be overlooked, also a reason to ask on the TeX Live mailing list.
As mentioned in the comments, it is probably best to use your editor's facilities. Anyway here is one possible, more general, solution to your question 1. It might not be pretty as I'm not actually professional TeX user.
If you use XeLaTeX or LuaLaTeX you could define one of the unused character, that don't have any special use in latex, to be a second control character. For example in Finnish/Swedish keyboard there is a currency sign (¤) shift+4 that I have never heard anyone using anywhere. It is in more convenient place than backslash.
%\RequirePackage{luatex85}%currently required when using luatex and standalone
\documentclass[varwidth=160mm]{standalone}
\catcode`\¤=0%defines ¤ to be a control character
\def\deo{Deoxyribonucleotide}
¤def¤lsaa{Lentokonesuihkuturbiinimoottoriapumekaanikkoaliupseerioppilas}
¤def¤gtov{Grundstücksverkehrsgenehmigungszuständigkeitsübertragungsverordnung}
\begin{document}
¤deo
\lsaa
¤gtov
\end{document}
I don't know if this is possible to achieve with pdflatex. Maybe you could redefine one of the rarely used ascii characters without bad consequences.
Best Answer
Do check and see if
\thanum
is inadertently being defined twice.And, as Joseph Wright has already noted in a comment, you should be using
\SI
rather than\num
and\si
individually when typesetting combined numbers and units.Also, consider using
\newcommand
rather than\def
to define the shorthand macros. That way, you can define the macros to take an optional argument which, by default, is unused or empty. Doing so makes it easy, if necessary, to override some of the formatting settings "on the fly".