Automated way to check for PGF version

This is one way to check for the version of PGF that is installed in an automated way. First create a tex file with the following contents:

\documentclass{article}
\usepackage{tikz}
\batchmode
\makeatletter
\typeout{PGFVersion=\pgfversion
}
\@@end

Say you named it test-pgf-version.tex. Then:

pdflatex test-pgf-version.tex
cat test-pgf-verson.log | grep PGFVersion | sed ‘s/PGFVersion=//’

should display the version number. I happen to need to do this from R so using similar logic:

logFile <- ‘test-pgf-version.log‘    
logContents <- readLines( logFile )
match <- logContents[ grep(‘PGFVersion=‘, logContents) ]
version <- gsub([=A-Za-z-]‘,”,match)
print(version)

which accomplishes the same task as the second line above.

2 thoughts on “Automated way to check for PGF version

    1. As far as I understand, \makeatletter makes the @ symbol useable in commands, this is necessary to use the \@@end command which unceremoniously stops all compilation and exits tex.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>