Sphinx: List of supported languages for highlighting?

documentation-generation, pygments, python-sphinx

Solution

As far as I can tell, the list is in the file `pygments/lexers/_mapping.py`, in the (autogenerated) dictionary `LEXERS`. In my copy, I see a line

'ObjectiveCLexer': ('pygments.lexers.compiled', 'Objective-C', ('objective-c', 'objectivec', 'obj-c', 'objc'), ('*.m',), ('text/x-objective-c',)),

I think this should mean that any of the tags `objective-c`, `objectivec`, `obj-c`, or `objc` should work, as long as your version of Pygments is up-to-date. They work for me.

Problem

I'm using Sphinx for code documentation and use several languages within the code, I would like to setup highlighting for all of that code. Sphinx briefly mentions a few of the languages it supports (on this page), and then mentions that it uses Pygments for lexical analysis and highlighting. Sifting through the documentation for both Sphinx and Pygments yielded me no clue on how to do something like highlight objective-c code. Pygments does mention the list of languages it supports, here, however that doesn't tell me the exact syntax that I must use within Sphinx (.rst files) to tell the code block to highlight for a specific language. For example, to highlight c++ code you simply use this before your code block: `.. highlight:: c++` However after trying these I cannot seem to highlight Objective-C code: ``` .. highlight:: Objective-C .. highlight:: objective-c .. highlight:: Obj-C .. highlight:: obj-c ``` Can anyone supply me with the list of languages (as you would refer to them within documentation)?

Original source