[Tex/LaTex] convert moderncv to html

conversionhtmllatex2htmlmoderncv

I've written my CV in moderncv template.

Now I'm looking for a fast way to create an HTML version of my CV in order to use it in my website.

Any idea?

Best Answer

I'm afraid there's no easy solution. As Marco stated, a CV requires attention and better control. I'll present a solution I use, though it's not totally LaTeX based. Here comes sphinx.

According to the website, sphinx is a tool that makes it easy to create intelligent and beautiful documentation, written by Georg Brandl and licensed under the BSD license. It requires Python.

sphinx is mainly used for documentation, but it's generic enough to be used everywhere.

It's a very straighforward process. Let's say I want to create an online CV for John Doe. I simply run sphinx-quickstart and answer a few questions. After running it, you will have index.rst - we put the content here - and conf.py - the configuration file. sphinx also creates both Makefile and make.bat for generating the outputs we want.

The rst format stands for reStructuredText, plain text markup syntax, very similar to Markdown. You will see, there's no secret.

Now, I'll open my index.rst file and type the following content:

.. My Curriculum Vitae documentation master file, created by
   sphinx-quickstart on Wed Nov 30 11:04:16 2011.
   You can adapt this file completely to your liking, but it should at least
   contain the root `toctree` directive.

John Doe
========

:Currently: PhD in Cat Physics

Publications
------------

* John Doe. *How to make a cat levitate*. In *Cat Symposium 2011*,
  pages 110--125. CS, 2011.

* John Doe, Jin Doe. *Violence against lolcats*. In *Cat Symposium 2009*,
  pages 98--101. CS, 2009.

Reports
-------

* 2008-2009: Growth of cats around the world. *Tech. report*.

* 2006-2007: Cats are dangerous? *Tech. report*.

Contributions
-------------

* `GCat <http://www.google.com/>`_ : a Google-based browser for cats.

Contact
-------

| John Doe
| john.doe@catsociety.com

.. toctree::
   :hidden:

That's it, plain and simple. Now I just need to run make html. The output:

John Doe 1

If you want to change the theme, there are some predefined ones, say, nature. Open conf.py and find the following line:

# The theme to use for HTML and HTML Help pages.  See the documentation for
# a list of builtin themes.
html_theme = 'default'

Simply replace default by nature. The new output:

John Doe 2

Note: You can tweak all elements of the page, e.g. removing the search box, but I can't remember right now. :)

sphinx can also generate a tex file. Go with make latex and the .tex file (and other styles) will be generated:

John Doe 3

OK, LaTeX output doesn't look so great. :) As I said, the most common use of sphinx is to generate documentation, but we can easily tweak our tex file to look more pleasant to the eye.

I've seen entire sites written with sphinx. You can create great looking HTML pages with ease. Use one of the predefined themes or come up with our own. :)