rendercv/rendercv

Allow for seperate design and rendercv settings from the CV data.

Closed this issue · 1 comments

It would be helpful to be able to quickly switch between themes when looking for one that works.

Allowing for a separation of display instructions from the data layer would solve this and can be done by creating a file for each of the top level keys in the CV file definition.

Currently the input file looks like this:

cv: # Content
  name: John Doe
  sections:
    test_section:
    - this is a text entry.
design: # Layout
  theme: classic
rendercv_settings: # Runtime Instructions
  render_command:
    dont_generate_html: true

Splitting these sections into their own individual files allows for quicker iteration and options. With this, a person can try multiple themes quickly without having to edit any files and can also apply the same theme options to multiple CVs w/o having to copy and paste. Additionally common options can be kept easily between runs. One might generate a CV only infrequently and trying to remember all the flags passed to the render command would be hard to keep track of.

The files described here are:

input_file.yaml

cv: # Content
  name: John Doe
  sections:
    test_section:
    - this is a text entry.

design_settings.yaml

design: # Layout
  theme: classic

rendercv_settings.yaml

rendercv_settings: # Runtime Instructions
  render_command:
    dont_generate_html: true

The render command would allow for mixing and matching of these files. In this case using the classic template and a preset of render settings that turns off html, md and html file generation.

rendercv John_Doe.yaml  --design-settings classic_template_design_settings.yaml --rendercv-settings-path only_pdf_rendercv_settings.yaml 

or with settings for sb2nov theme and a preset that changes the output directory to a different location.

rendercv John_Doe.yaml  --design-settings sb2nov_template_design_settings.yaml --rendercv-settings-path outfile_rendercv_settings.yaml 

Settings would render in this priority
cmdline > file > defaults

Users could continue to use the single file input_file.yaml definition if they wish.

PR #220 is an implementation of this.

This issue has been resolved with #220.