CTAN Comprehensive TeX Archive Network

Direc­tory support/synctex-parser


The Sync parser li­brary.

Since 2008, the Syn­chro­niza­tion nol­ogy named Sync is a fea­ture of en­gines. It al­lows to syn­chro­nize be­tween in­put and out­put, which means to nav­i­gate from the source doc­u­ment to the type­set ma­te­rial and vice versa. Here is how it works: dur­ing the type­set­ting pro­cess of foo.tex, the en­gines writes some ge­o­met­ri­cal in­for­ma­tion in an aux­il­iary file named foo.synctex, this in­for­ma­tion is then used by ed­i­tors or view­ers to nav­i­gate be­tween in­put and out­put.

Pack­age con­tents

This pack­age con­tains a Sync parser li­brary in C to help de­vel­op­ers to em­bed in their viewer or ed­i­tor the nav­i­ga­tion fea­ture be­tween source and out­put. It con­sists in

  • synctex_parser.c
  • synctex_parser.h
  • synctex_parser_advanced.h
  • synctex_parser_c-auto.h
  • synctex_parser_local.h
  • synctex_parser_readme.md
  • synctex_parser_readme.txt
  • synctex_parser_utils.c
  • synctex_parser_utils.h
  • synctex_parser_version.txt

The header file synctex_parser.h con­tains de­tailed us­age ex­pla­na­tions.


The ver­sion of the .synctex file for­mat is ac­tu­ally 1. The ver­sion of the Sync parser li­brary or the Sync tool are in synctex_parser_version.txt (1.21 as of Oct 2017). The very lat­est sta­ble sources are al­ways avail­able from the Live svn repos­i­tory.

More de­tails

This tech­nol­ogy is three­fold:

1) the spec­i­fi­ca­tions of the .synctex aux­il­iary files is avail­able as a man page: man 5 synctex

2) the code for writ­ing down the .synctex aux­il­iary file, as part of a en­gine, is avail­able from Live source repos­i­tory at


It con­tains code for var­i­ous en­gines in­clud­ing pdf and . How­ever, this folder may not con­tain the whole Lua re­lated code.

3) the C li­brary in this pack­age.

There is a CLI tool sim­ply named synctex, avail­able in Live dis­tri­bu­tions, that im­ple­ments the nav­i­ga­tion us­ing this li­brary. See the man page or synctex --help for us­age ex­pla­na­tions.

Prob­lems and bug re­ports.

Prob­lems at the en­gine level should be re­ported to the de­vel­op­ment team. Prob­lems con­cern­ing the Sync parser li­brary should be re­ported on the GitHub project page:



Sync was de­signed by Jérôme Lau­rens. From the very be­gin­ning, he re­ceived use­ful re­marks from pdf de­vel­op­ers, de­vel­op­ers and other mem­bers of the com­mu­nity. View­ers or ed­i­tors de­vel­op­ers have con­tributed to the Sync parser li­brary.

Nota Bene:

If you in­clude or use a sig­nif­i­cant part of the sync­tex pack­age into a soft­ware, I would ap­pre­ci­ate to be listed as con­trib­u­tor and see "Sync" high­lighted.

Copy­right (c) 2017 jerome DOT lau­rens AT u-bour­gogne DOT fr

Down­load the con­tents of this pack­age in one zip archive (77.8k).

sync­tex-parser – Sync out­put file parser

Th­ese are the sources (in C) of a parser mod­ule for Sync out­put.

Home pagehttps://github.com/jlau­rens/sync­tex/
Ver­sion1.21 2017-10-15
Li­censesFree li­cense not oth­er­wise listed
Copy­right2008–2017 Jérôme Lau­rens
Main­tainerJérôme Lau­rens
TopicsDe­bug supp
Guest Book Sitemap Contact Contact Author