diff --git a/docs/user_guide/cli.md b/docs/user_guide/cli.md new file mode 100644 index 0000000..99701df --- /dev/null +++ b/docs/user_guide/cli.md @@ -0,0 +1,178 @@ +# Command Line Interface (CLI) + +This page lists all the available commands and options of the RenderCV CLI. + +## Options of the `rendercv` command + +- `#!bash --version` or `#!bash -v` + + Shows the version of RenderCV. + + ```bash + rendercv --version + ``` + +- `#!bash --help` or `#!bash -h` + + Shows the help message. + + ```bash + rendercv --help + ``` + +## Options of the `rendercv new` command + +- `#!bash --theme "THEME_NAME"` + + Generates files for a specific built-in theme, instead of the default `classic` theme. Currently, the available themes are: {{available_themes}}. + + ```bash + rendercv new "Full Name" --theme "THEME_NAME" + ``` + +- `#!bash --dont-create-theme-source-files` or `#!bash -nolatex` + + Prevents the creation of the theme source files. By default, the theme source files are created. + + ```bash + rendercv new "Full Name" --dont-create-theme-source-files + ``` + +- `#!bash --dont-create-markdown-source-files` or `#!bash -nomd` + + Prevents the creation of the Markdown source files. By default, the Markdown source files are created. + + ```bash + rendercv new "Full Name" --dont-create-markdown-source-files + ``` + +- `#!bash --help` or `#!bash -h` + + Shows the help message. + + ```bash + rendercv new --help + ``` + + +## Options of the `rendercv render` command + +- `#!bash --use-local-latex-command "LATEX_COMMAND"` or `#!bash -use "LATEX_COMMAND"` + + Generates the CV with the local $\LaTeX$ installation, i.e., runs `LATEX_COMMAND`. By default, RenderCV uses its own TinyTeX distribution. + + ```bash + rendercv render "Full_Name_CV.yaml" --use-local-latex-command "pdflatex" + ``` + +- `#!bash --output-folder-name "OUTPUT_FOLDER_NAME"` or `#!bash -o "OUTPUT_FOLDER_NAME"` + + Generates the output files in a folder with the given name. By default, the output folder name is `rendercv_output`. The output folder will be created in the current working directory. + + ```bash + rendercv render "Full_Name_CV.yaml" --output-folder-name "OUTPUT_FOLDER_NAME" + ``` + +- `#!bash --latex-path "PATH"` or `#!bash -latex "PATH"` + + Copies the generated $\LaTeX$ source code from the output folder and pastes it to the specified path. + + ```bash + rendercv render "Full_Name_CV.yaml" --latex-path "PATH" + ``` + +- `#!bash --pdf-path "PATH"` or `#!bash -pdf "PATH"` + + Copies the generated PDF file from the output folder and pastes it to the specified path. + + ```bash + rendercv render "Full_Name_CV.yaml" --pdf-path "PATH" + ``` + +- `#!bash --markdown-path "PATH"` or `#!bash -md "PATH"` + + Copies the generated Markdown file from the output folder and pastes it to the specified path. + + ```bash + rendercv render "Full_Name_CV.yaml" --markdown-path "PATH" + ``` + +- `#!bash --html-path "PATH"` or `#!bash -html "PATH"` + + Copies the generated HTML file from the output folder and pastes it to the specified path. + + ```bash + rendercv render "Full_Name_CV.yaml" --html-path "PATH" + ``` + +- `#!bash --png-path "PATH"` or `#!bash -png "PATH"` + + Copies the generated PNG files from the output folder and pastes them to the specified path. + + ```bash + rendercv render "Full_Name_CV.yaml" --png-path "PATH" + ``` + +- `#!bash --dont-generate-markdown` or `#!bash -nomd` + + Prevents the generation of the Markdown file. + + ```bash + rendercv render "Full_Name_CV.yaml" --dont-generate-markdown + ``` + +- `#!bash --dont-generate-html` or `#!bash -nohtml` + + Prevents the generation of the HTML file. + + ```bash + rendercv render "Full_Name_CV.yaml" --dont-generate-html + ``` + +- `#!bash --dont-generate-png` or `#!bash -nopng` + + Prevents the generation of the PNG files. + + ```bash + rendercv render "Full_Name_CV.yaml" --dont-generate-png + ``` + +- `#!bash --ANY.LOCATION.IN.THE.YAML.FILE "VALUE"` + + Overrides the value of `ANY.LOCATION.IN.THE.YAML.FILE` with `VALUE`. This option can be used to avoid storing sensitive information in the YAML file. Sensitive information, like phone numbers, can be passed as a command-line argument with environment variables. This method is also beneficial for creating multiple CVs using the same YAML file by changing only a few values. Here are a few examples: + + ```bash + rendercv render "Full_Name_CV.yaml" --cv.phone "+905555555555" + ``` + + ```bash + rendercv render "Full_Name_CV.yaml" --cv.sections.education.1.institution "Your University" + ``` + + Multiple `#!bash --ANY.LOCATION.IN.THE.YAML.FILE "VALUE"` options can be used in the same command. + +- `#!bash --help` or `#!bash -h` + + Shows the help message. + + ```bash + rendercv render --help + ``` + +## Options of the `rendercv create-theme` command + +- `#!bash --based-on "THEME_NAME"` + + Generates a custom theme based on the specified built-in theme, instead of the default `classic` theme. Currently, the available themes are: {{available_themes}}. + + ```bash + rendercv create-theme "mycustomtheme" --based-on "THEME_NAME" + ``` + +- `#!bash --help` or `#!bash -h` + + Shows the help message. + + ```bash + rendercv create-theme --help + ``` diff --git a/docs/user_guide/index.md b/docs/user_guide/index.md index 69cb418..bfb65a2 100644 --- a/docs/user_guide/index.md +++ b/docs/user_guide/index.md @@ -1,6 +1,6 @@ # User Guide -This document provides everything you need to know about the usage of RenderCV. +This page provides everything you need to know about the usage of RenderCV. ## Installation @@ -35,24 +35,7 @@ This command will create the following files: This directory contains the Markdown source code of RenderCV's default Markdown template. You can update its contents to tweak the Markdown and HTML output of the CV. -### Options of the `new` command - -The `new` command has some options: - -- `#!bash --theme "THEME_NAME"`: Generates files for a specific built-in theme, instead of the default `classic` theme. Currently, the available themes are: {{available_themes}}. -```bash -rendercv new "Your Full Name" --theme "THEME_NAME" -``` - -- `#!bash --dont-create-theme-source-files`: Prevents the creation of the theme source files. By default, the theme source files are created. -```bash -rendercv new "Your Full Name" --dont-create-theme-source-files -``` - -- `#!bash --dont-create-markdown-source-files`: Prevents the creation of the Markdown source files. By default, the Markdown source files are created. -```bash -rendercv new "Your Full Name" --dont-create-markdown-source-files -``` +Please refer to the [here](cli.md#options-of-the-rendercv-new-command) for the complete list of CLI options available for the `new` command. ## Structure of the YAML input file @@ -78,68 +61,7 @@ This command will generate a directory called `rendercv_output`, which contains If the theme and Markdown source files are found in the directory, they will override the default built-in theme and Markdown template. You don't need to provide all the source files; you can just provide the ones you want to override. -### Options of the `render` command - -The `render` command has some options: - -- `#!bash --use-local-latex-command "LATEX_COMMAND"`: Generates the CV with the local $\LaTeX$ installation, i.e., runs `LATEX_COMMAND`. By default, RenderCV uses its own TinyTeX distribution. -```bash -rendercv render "Your_Name_CV.yaml" --use-local-latex-command "pdflatex" -``` -- `#!bash --output-folder-name "OUTPUT_FOLDER_NAME"`: Generates the output files in a folder with the given name. By default, the output folder name is `rendercv_output`. The output folder will be created in the current working directory. -```bash -rendercv render "Your_Name_CV.yaml" --output-folder-name "OUTPUT_FOLDER_NAME" -``` - -- `#!bash --latex-path LATEX_PATH`: Copies the generated $\LaTeX$ source code from the output folder and pastes it to the specified path. -```bash -rendercv render "Your_Name_CV.yaml" --latex-path "PATH" -``` - -- `#!bash --pdf-path PDF_PATH`: Copies the generated PDF file from the output folder and pastes it to the specified path. -```bash -rendercv render "Your_Name_CV.yaml" --pdf-path "PATH" -``` - -- `#!bash --markdown-path MARKDOWN_PATH`: Copies the generated Markdown file from the output folder and pastes it to the specified path. -```bash -rendercv render "Your_Name_CV.yaml" --markdown-path "PATH" -``` - -- `#!bash --html-path HTML_PATH`: Copies the generated HTML file from the output folder and pastes it to the specified path. -```bash -rendercv render "Your_Name_CV.yaml" --html-path "PATH" -``` - -- `#!bash --png-path PNG_PATH`: Copies the generated PNG files from the output folder and pastes them to the specified path. -```bash -rendercv render "Your_Name_CV.yaml" --png-path "PATH" -``` - -- `#!bash --dont-generate-markdown`: Prevents the generation of the Markdown file. -```bash -rendercv render "Your_Name_CV.yaml" --dont-generate-markdown -``` - -- `#!bash --dont-generate-html`: Prevents the generation of the HTML file. -```bash -rendercv render "Your_Name_CV.yaml" --dont-generate-html -``` - -- `#!bash --dont-generate-png`: Prevents the generation of the PNG files. -```bash -rendercv render "Your_Name_CV.yaml" --dont-generate-png -``` - -- `#!bash --ANY.LOCATION.IN.THE.YAML.FILE "VALUE"`: Overrides the value of `ANY.LOCATION.IN.THE.YAML.FILE` with `VALUE`. This option can be used to avoid storing sensitive information in the YAML file. Sensitive information, like phone numbers, can be passed as a command-line argument with environment variables. This method is also beneficial for creating multiple CVs using the same YAML file by changing only a few values. Here are a few examples: -```bash -rendercv render "Your_Name_CV.yaml" --cv.phone "+905555555555" -``` -```bash -rendercv render "Your_Name_CV.yaml" --cv.sections.education.1.institution "Your University" -``` - - Multiple `#!bash --ANY.LOCATION.IN.THE.YAML.FILE "VALUE"` options can be used in the same command. +Please refer to the [here](cli.md#options-of-the-rendercv-render-command) for the complete list of CLI options available for the `render` command. ## Creating custom themes with the `create-theme` command @@ -230,11 +152,4 @@ Then, RenderCV will parse your custom design options from the YAML input, and yo ((* endif *)) ``` -### Options of the `create-theme` command - -The `create-theme` command has some options: - -- `#!bash --based-on "THEME_NAME"`: Generates a custom theme based on the specified built-in theme, instead of the default `classic` theme. Currently, the available themes are: {{available_themes}}. -```bash -rendercv create-theme "mycustomtheme" --based-on "THEME_NAME" -``` +Please refer to the [here](cli.md#options-of-the-rendercv-create-theme-command) for the complete list of CLI options available for the `create-theme` command. diff --git a/docs/user_guide/structure_of_the_yaml_input_file.md b/docs/user_guide/structure_of_the_yaml_input_file.md index c30fe3c..15dce9f 100644 --- a/docs/user_guide/structure_of_the_yaml_input_file.md +++ b/docs/user_guide/structure_of_the_yaml_input_file.md @@ -118,7 +118,7 @@ cv: There are seven different entry types in RenderCV. Different types of entries cannot be mixed under the same section, so for each section, you can only use one type of entry. -The available entry types are: [`EducationEntry`](#education-entry), [`ExperienceEntry`](#experience-entry), [`PublicationEntry`](#publication-entry), [`NormalEntry`](#normal-entry), [`OneLineEntry`](#one-line-entry), [`BulletEntry`](#bullet-entry) and [`TextEntry`](#text-entry). +The available entry types are: [`EducationEntry`](#education-entry), [`ExperienceEntry`](#experience-entry), [`PublicationEntry`](#publication-entry), [`NormalEntry`](#normal-entry), [`OneLineEntry`](#one-line-entry), [`BulletEntry`](#bullet-entry), and [`TextEntry`](#text-entry). Each entry type is a different object (a dictionary). Below, you can find all the entry types along with their optional/mandatory fields and how they appear in each built-in theme. diff --git a/mkdocs.yaml b/mkdocs.yaml index bcab5ee..31fc9de 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -52,6 +52,7 @@ nav: - User Guide: - User Guide: user_guide/index.md - Structure of the YAML input file: user_guide/structure_of_the_yaml_input_file.md + - CLI: user_guide/cli.md - FAQ: user_guide/faq.md - Developer Guide: - Developer Guide: developer_guide/index.md @@ -93,7 +94,6 @@ markdown_extensions: plugins: - search - - offline - macros: # mkdocs-macros-plugin module_name: docs/update_rendercv_files - mkdocstrings: @@ -120,4 +120,4 @@ extra_css: extra: analytics: provider: google - property: G-7D7Y8D5Q4W \ No newline at end of file + property: G-7D7Y8D5Q4W