Gallery
A selection of images or sample documents related to my books or packages or to code I have helped develop. For some great examples of images created using LaTeX, have a look at the TikZ and PGF gallery on texample.net, or for some examples of what can be done with TeX have a look at The TeX showcase.
The purpose of LaTeX-related sections of the gallery is to illustrate various styles that can be created with the particular package. If you want to know how to do something not illustrated here or you want to know how to adapt one of these examples, please post your query to an appropriate site such as TeX on StackExchange or The LaTeX Community Forum.
Click on the images below for details. If you would like to know whenever a new item is added to the gallery, you can subscribe to the news RSS feed or login and use the Account page to subscribe to news notifications for the “gallery” tag.
If you have a small screen, you may prefer to switch on the small image setting.
Search
File List
View alphabetical list of all .tex and .bib files used in the examples that are available for download.
glossaries
These are some sample documents that use the glossaries package. Most of these examples use dummy lorum ipsum text, one of them uses the sample image files provided by the mwe package, which is available on both MiKTeX and TeX Live, and one of them uses the sample bibliography file xampl.bib, which should be readily available in your TeX distribution. Make sure you have an up-to-date version of the glossaries package if you want to try any of these examples. For help with building the glossary see Incorporating makeglossaries or makeglossaries-lite or bib2gls into the document build.
All Predefined Styles
A list of all the styles provided by the glossaries package and the glossaries-extra extension package.
Brief Descriptions
An example glossary with brief descriptions (just one or two words long). A compact style works best for this type of list.
Long Descriptions
An example glossary with multi-sentence descriptions (but no paragraph breaks).
Multi-Paragraph Descriptions
An example glossary with multi-paragraph descriptions.
Symbols Glossary
An example glossary where the entries have a symbol in addition to the name and description.
Images in Glossary
An example glossary where the entries have an image in addition to the name and description.
Hierarchical Entries
An example glossary with hierarchical entries (sub-entries that have a different name to their parent). This approach could be used for lists of topics or categories with sub-topics or sub-categories.
Homograph Entries
An example glossary with homograph entries (where the sub-items have the same name as their parent entry). This approach could be used for a dictionary-style glossary where a term may have multiple meanings.
Citations in Glossary
An example glossary where the entries have a citation in addition to the name and description.
Cross-References
An example glossary where some entries cross-reference other entries. See also the bib2gls cross-referencing example.
URLs in Glossary
An example glossary where the entries have a URL in addition to the name and description.
Acronyms (No Descriptions)
An example list of abbreviations with no description. (The long form is assumed to be a description of the short form.)
Acronyms (With Descriptions)
An example list of abbreviations with a description. (The name field is formed from a combination of the short and long forms.)
Acronyms (With Translations)
An example list of abbreviations accompanied by translations. See also the glossaries-extra version of this example.
Mixed Glossary
An example document with a single glossary that contains a mixture of regular terms and abbreviations.
Mixed Glossary with Emphasis
An example document with a single glossary that contains a mixture of regular terms and abbreviations, where the entries are emphasized on first use (but not the short form).
Units (glossaries.sty)
This example is a modification of the Units (glossaries-extra.sty) example. The symbolic representation is in the name
field and the symbol name is now in the symbol
field. The first
field is used to alter the first use representation.
glossaries-extra
The glossaries-extra package is an extension to the glossaries package. It provides better abbreviation handling and extra features, as demonstrated by these examples. For help with building the glossary see Incorporating makeglossaries or makeglossaries-lite or bib2gls into the document build.
Initialisms
The dots in the abbreviations in this example are automatically inserted through the use of category attributes. The sentence terminator following commands like \gls
can be automatically discarded for those entries.
Abbreviations With Translations
An alternative to the base glossaries example this example uses the more convenient glossaries-extra settings.
Mixed Glossary with Emphasis (glossaries-extra.sty)
This is an alternative to the similar example with just the base package.
Mixing Styles
This rather colourful example isn’t encouraging garish documents, but is illustrating how you can apply different styles to entries according to their category and category attributes. With just the basic glossaries.sty package, different styles may only be applied per glossary type, whereas in this example all entries are in the same glossary.
Adjusting Parenthetical Style
This example adjusts the user parenthetical style so that only the long form is displayed on first use and the short form on subsequent use. Both the long and short form are emphasized. With the introduction of the long-only-short-only
style, that may now be used as an alternative.
Abbreviations with Footnotes Sample
This example compares the footnote
and postfootnote
styles (using the small-caps variant).
Adjusting the alttree
Style
The alttree
style is redefined by the glossaries-extra-stylemods package to make it more flexible. This example uses the commands provided by this package to adjust the style. The location list and associated image are placed in the right margin and the entry name is on the left.
Abbreviation Styles
This example demonstrates some of the predefined abbreviation styles.
Aliases
This example demonstrates the use of the alias
key.
Units (glossaries-extra.sty)
This example demonstrates the use of the category
key in combination with the post-link hook to append the entry’s symbol in the text on first use. This is an alternative to using the abbreviation mechanism.
Standalone Entries
Instead of displaying a sorted list, this example uses standalone entries. Since no sorting or indexing is required, the build process is quite simple.
Mini-Glossary
This example provides an environment that displays a mini list of terms at the end of it. This is in addition to the main glossary at the end of the document. There’s a similar example for bib2gls.
bib2gls
With the base glossaries package you can sort and collate using makeindex or xindy or using TeX. (See the glossaries performance page for a comparison.)
The glossaries-extra package additionally provides a way of simply listing all defined entries in the order of definition without the need for an external tool, but it also provides another sorting and collation method and that’s with bib2gls. Some of the examples below can be found in bib2gls’s examples directory and are described in more detail in the “Examples” chapter of the bib2gls user manual. For help with building the glossary see Incorporating makeglossaries or makeglossaries-lite or bib2gls into the document build.
Sorting
The default behaviour of bib2gls is to sort according to the value of the sort
field. However, typically, this field should not be explicitly set. Instead, bib2gls has a set of fallback fields that vary according to the entry type. This example demonstrates the difference between using the sort fallback and using a field that’s been set in the .bib file.
Logical Glossary Divisions (type
vs group
vs parent
)
There’s a new section added to the bib2gls manual (version 1.9) regarding this topic. This example is an abridged version of that section. If you have a document with many terms that need listing, it’s likely that you may want to divide the terms into separate blocks for easier reading, but should you use type
, group
or parent
? This example provides a guide to help you decide the answer.
Constants
In this example, all defined entries are selected (without being referenced in the document) and listed in numerical order, where the numeric value is the approximate value of the given constant.
Icons
In this example, all defined entries are selected (without being referenced in the document) and sorted according to the description field since the name is a symbol with no intuitive order.
Cross-References (bib2gls)
With makeindex and xindy, cross-referencing is limited by their syntax and by the fact that they don’t have access to all the entry data. (Information passed to the indexing applications is limited to the sort value, the location and the output markup.) Since bib2gls has access to the complete entry data (obtained from the bib file), it is better able to handle cross-references. This example uses a mixture of cross-referencing techniques.
Mini-Glossary (bib2gls)
This example is an alternative to the mini-glossary example with \makeglossaries
. It provides an environment that displays a mini list of terms at the end of it. This is in addition to the main glossary at the end of the document.
Summary of Frequently Used Terms
One of the major differences between bib2gls and makeindex/xindy is that instead of creating a file containing the commands to typeset the glossary bib2gls creates a file containing the entry definitions structured in a way that allows \printunsrtglossary
to display the glossary by simply iterating over the list of entries defined for the given glossary. This iterative approach makes it easier to filter the list so that only a subset of entries are displayed.
Inner or Nested Glossaries
As from glossaries-extra v1.44, it’s possible to have inner or nested glossaries with bib2gls. This is another way of creating logical divisions that uses the type
field but can produce similar effects to using the group
or parent
fields. This means that you can create the illusion of a hierarchical glossary with different sort methods for different levels.
Complex Field Assignments
Some fields contain duplicate content (for example, the name
, first
and text
fields are often the same). It’s tiresome to have to repeat information when typing the entry information in the bib file. Some entry types automatically fill in the duplicate content for known fields (such as first
and text
). In other cases, you can use the replicate-fields
resource option.
However, there are some cases, where the content from one field is a concatenation of values from other fields. This can’t be handled by replicate-fields
, but with bib2gls v3.3+, more complex cases can be achieved with the new assign-fields
resource option.
Performance
datatool
Documents that use the datatool package can take a long time to run, but there are ways to speed things up, especially if you use the datatooltk helper application.
glossaries
Documents that use the glossaries package can take a long time to run, but different options can improve the build time, depending on your requirements.
arara
Paulo Cereda’s cool automation tool arara has been upgraded to version 4.0 and with it comes some new localisation! Here are some screenshots. (That’s Broad Norfolk, in case you’re confused.)
That Ent Gorn Right, Ole Partner
In this example, the test file has an error in it, which arara complains about.
Help
The command line argument -help
makes arara list all the available options with brief explanations about their function.
Book Launch Photos
Photos from book launches.
Tales for Our Times Book Launch
The launch of the anthology Tales for Our Times by Ex-Cathedra on World Homeless Day, 10th October 2024, to raise funds and awareness for the St Martins Housing Trust. These are a collection of photos from the event. See the blog article for details about the event.
The Private Enemy Book Launch
The launch of the crime/speculative fiction novel The Private Enemy at Jarrolds Department Store, Norwich on 30th October 2014.
Quack, Quack, Quack. Give My Hat Back! Book Launch
Photos from the book launch of Quack, Quack, Quack. Give My Hat Back! on 17th November 2013 at Poringland.