{package-writing} is about writing packages. If your question is about choosing, installing, or using packages, choose {package} instead.

learn more… | top users | synonyms

7
votes
1answer
91 views

Error line inside a package

I've created my own package, but, when I use it in a new document, and pdflatex find an error using a custom command (defined in my own package), it shows me only the error line where this command was ...
3
votes
1answer
740 views

LuaLatex package: \dofile results in error “no such file or directory”

I've written some macros that randomly selects questions from a database to include on an exam. The start of my .sty file reads as follows: \NeedsTeXFormat{LaTeX2e} ...
8
votes
2answers
118 views

Define a command so that it is only active within the document environment

I would like to configure a custom command so that it only affects the document environment. Because the command changes a number of catcodes, it has to be included after the begin{document} tag in ...
19
votes
1answer
965 views

How does TeX actually work?

Lots of useful information for human beings, especially in academia. But, what is actually underlying the TeX engine? How does it really work? Does it parse everything and just put the stuff together? ...
7
votes
1answer
231 views

Choice keys and exception handling

Recently, I switched a self-written "bundle package" from using xkeyval to keyreader. One reason for this, beside the backward compatibility, was that the definition of keys is more convenient in ...
20
votes
1answer
633 views

How would one design a math font?

There are (some very nice) text fonts which do not have math support. Though there are ways to 'remedy' this, such as the mathastext package and some others, these are hardly satisfactory. All accents ...
3
votes
1answer
721 views

beamerposter custom style with keyval definition

I'm creating a beamerposter style accordingly to my department specification. I would like to create a theme where the definitions of the blocks can vary accordingly to a keyword in the calling of the ...
8
votes
3answers
187 views

More complicated key definitions in loops/for each statements

While writing a package with a key-value interface, I had a lot of repetitive key definitions. Naturally, one would like to express these definitions with a loop. When the definition contains ...
5
votes
1answer
124 views

Packages `fighting' for the value of a length

I've recently written some macros for typesetting certain constructs used in linguistics (Discourse Representation Structures). I hit an issue whereby the svmono class was changing the value of ...
9
votes
2answers
153 views

Is it possible to prevent users from seeing the package codes while they still can make use of its publicly exposed macros?

Assume that I have a confidential package that nobody is allowed to see the source code. The users are only allowed to use the public macros. This question is closely related to my other question. ...
9
votes
1answer
201 views

Defining synonyms for indexing

Is it possible to set things up so that indexing synonyms does not generate multiple entries? For example, if the text includes \index{cur}, \index{hound}, and \index{mutt}, can these be coalesced ...
2
votes
1answer
149 views

How to add text to beginning of body via sty file

This is my first post here. I can usually find what I'm looking for using questions other people have asked, but this time I'm stumped. Please can anyone help? I am very new to Latex. I am trying to ...
3
votes
1answer
590 views

Using qstest to implement unit tests

I was trying to figure out how to test my xpeek package (see https://github.com/jcsalomon/xpeek) and I came across What's the folk-lore on automatic testing of TeX programming? and Testing ...
0
votes
1answer
483 views

modular title pages

How to achieve having modular title pages in latex (xelatex), to only have to change one word in the .tex file and have it changed? All the files must be defined in the project's directory, not ...
12
votes
3answers
184 views

Executing a command after a package has been loaded

In my previous question I ended up with \DeclareMathSymbol{:}{\mathpunct}{operators}{"3A} But now I'm using the fontspec package which redefines : with \AtBeginDocument itself. So as my own ...
25
votes
1answer
317 views

Wrote a new package. Is there some standard place to share?

So I finished writing my package for typesetting Begriffsschrift. I think it marks a marked improvement over the package begriff, which is the only other package for the same purpose, that I can find ...
11
votes
2answers
308 views

Other than syntax what is the difference between \dimen0= and \setlength{}{}?

I have been browsing around for a while trying to find an answer to the above question, and I have found some similar questions along with there answers, so I already have a vague idea how to answer ...
4
votes
1answer
192 views

how to organise common preamble of dtx files

I have some new packages (see latexthesistemplate/trunk/packages/template which all use a shared preamble file. I want all of them to have the same packages and commands available and the same ...
38
votes
3answers
3k views

Is it really bad to use \makeatletter and \makeatother in a package or class file?

In my answer to this question What do \makeatletter and \makeatother do? I apparently wrote: The commands should not be used within .sty and .cls files themselves as they may conflict with the ...
32
votes
2answers
3k views

\newcommand vs \DeclareRobustCommand

I sort of understand the difference between the two. But that's not what I'm interested in—I just want to know, which one should I use? In general, when I'm creating commands in a package or class, ...
1
vote
0answers
77 views

Name collision in package development [duplicate]

Possible Duplicate: choosing macro names so as to avoid namespace conflicts How package developer find out whether other packages already used a specific command name or not? How do they ...
17
votes
1answer
923 views

How to write overlay-specification–aware macros that work w/o the beamer class

The LaTeX beamer class provides with \newcommand<> and \newenvironment<> an interface to define own commands that can deal with beamer's overlay specifications. Internally, commands ...
6
votes
1answer
503 views

suffix package, cannot redefine a suffixed macro

I have two local packages A and B. Package B is used occasionally to override macros defined in package A. Package A defines a macro and, using the suffix package, also defines a starred version of ...
4
votes
1answer
162 views

How to count the number of authors of a document?

I need to make a change to a Latex style (.sty) which contains the following line: {\large {\boldCondensed\color{corporate3Color}\raggedright AUTHORS: \MakeUppercase \@author\par}} The problem is ...
11
votes
1answer
2k views

Using of \usetikzlibrary in an expl3 package fails

In the example below I provided a small test package mytestpackage.sty which uses the syntax of expl3. If I use the command \usetikzlibrary inside the package I will get the error: Runaway argument? ...
7
votes
1answer
680 views

Is it possible to use \PassOptionsToClass into a package?

Context: I'm building a new package for my university. I need to set a lot of options for the document class, like twoside, a4paper, 12pt, or firstpagenum=chapter. I would like to set them by default ...
5
votes
1answer
95 views

Spaces in pfgopts options

Is there a simple way to allow spaces in the options of a package using pgfopts to process them, which is local to that package i.e. I don't have to include some package in the main document before ...
9
votes
1answer
451 views

How to make a CTAN package MiKTeX friendly?

I've heard that it is difficult to install my new statrep package using MiKTeX. The dtx file is self-extracting, but I think MiKTeX doesn't expect to work with a dtx file. Can someone provide a ...
2
votes
0answers
495 views

What is the use of @ and @@ in variables names in TeX/LaTeX? [duplicate]

Possible Duplicate: Why do LaTeX internal commands have an @ in them? What do \makeatletter and \makeatother do? What is the difference between \myname and \my@name while writing a .cls file? ...
0
votes
1answer
98 views

Creating a Matrixlist package

I haven't been able to find a suitable package that does what I want. The closest is parcolumns and I've spent several hours trying to understand TeX programming and the parcolumns style. While I got ...
0
votes
1answer
370 views

Adding border/frame around boxes [closed]

I'm trying to modify a package to suit my needs but since I'm not very familar with the tex macro language I would like to add a border around the boxes created by the package so I can see exactly ...
18
votes
3answers
1k views

Customizing LaTeX - create a document class or a package?

Are there general rules for when to create a document class vs. creating a package to customize LaTeX? Does one have benefits over the other? My specific need is to create a customized page layout, ...
21
votes
1answer
575 views

When to use “.sty” extension and when to use “.def”

I'm new to this forum and a recent LaTeX user. I state that, before posting here, I searched all the web through, but I was not succeeded to solve a doubt. I'm writing my own class (myclass.cls), ...
9
votes
2answers
264 views

Key Value option in package

I trying to write a package, and I'd like to specify whether there should be colour or not. I'd like to do: \usepackage[color=false]{foo} and have this set \RequirePackage[color=false]{hyperref} ...
18
votes
4answers
1k views

Editing the package

I didn't find anything about this issue, but if I missed something, please point me to it. The documentation on the ctan.org site is usually about how to use the packages in a LaTeX document, but ...
9
votes
1answer
314 views

Indexing Macros without a leading backslash in a dtx file

I'm documenting a file containing several biblatex bibmacros and booleans and would like to create an index via \EnableCrossrefs, but % \begin{macro}{mybibmacro} % \begin{macrocode} ...
7
votes
2answers
306 views

Emulate a “tuple” data structure (when you are free to choose the syntax)

How can a "tuple" data structure be implemented in LaTeX? The idea is to store several elements (possibly a predefined number) in one macro and then be able to extract each of these elements by index ...
6
votes
3answers
242 views

Emulate a “tuple” data structure when the syntax for creating a tuple is predefined and cannot be altered

Imagine I have a macro \createcontact that accepts three parameters. Now, instead of using these during the expansion, I would like to save them separately for later use and retrieval. The above macro ...
8
votes
2answers
580 views

Global key-value dictionary

Is there any package that implements a data structure that provides a key-value mapping (akin to Python's dict)? The keys will be user input and may contain spaces and non-ASCII characters. I would ...
10
votes
1answer
868 views

How to extend the \lstinputlisting command

With the answer from autogobble for lstinputlistings I've managed to create a command that gobbles \lstinputlisting and makes firstnumber to start by firstline. I would like to rewrite it as a ...
0
votes
0answers
99 views

Why package enumitem conflicts with Tufte-book and/or beamer [duplicate]

Possible Duplicate: Trouble combining enumitem and beamer I am trying to produce a package, combining tufte-book and beamer, in order to produce lecture slides and handout (with ...
32
votes
1answer
803 views

Macro naming best practice?

Is there a preferred or generally accepted idiom for naming user defined macros? I notice that in the change from Tufte 3.5.0 to 3.5.2, for example, the names of the debugging macros have change, for ...
4
votes
2answers
298 views

Writing/Modifying Package

There is a package I'm trying to modify that essentially displays a grid. It uses counters to increment the distance. I want to change the distance each step instead of adding a constant value. In ...
7
votes
1answer
227 views

Is there a lipsum-like package for metadata?

I know about the lipsum, blindtext and kantlipsum packages. What I would need is a variant creating dummy metadata: author name/affiliation, title, thanks etc. Does anyone know of anything like ...
11
votes
1answer
140 views

How to prevent `doc` from indexing foreign macros?

The doc package, used for documenting LaTeX packages, has the ability to produce an index of all macros used in the package. Index entries can of of three types: where the macro is described, where it ...
0
votes
0answers
84 views

How to write TikZ packages [duplicate]

Possible Duplicate: tutorial for making tikz/pgf library I want to write a TikZ-based package. What TikZ/PGF-specific things should I be aware of? For those who've written such packages, ...
6
votes
1answer
161 views

Nested parameters lost when generating new macros from package options

I've created a package which I would like to take in options and turn these into new macros (one new macro for each option). I also want these new macros to produce new macros in turn. For example, ...
6
votes
3answers
266 views

What packages are actively maintained/developed on github/bitbucket?

I would like to improve my TeX skills by following the development of actively developed packages. I findingwould like to give back by taking on some of the low hanging fruit among the ...
0
votes
1answer
394 views

conditional commands in .sty file, conditional on \documentclass [duplicate]

Possible Duplicate: Which document class is being used? I'd like to include conditional formatting in a .sty file, conditional on the document class of the document that invokes it. For ...
15
votes
3answers
670 views

How would you name these fraction macros?

I've got four macros now for typesetting fractions in text mode. The first writes them horizontally (shilling style, with a hyphen), the second writes them diagonally, the third writes them ...