\label{doc_help_kdb-gen_md_md_doc_help_kdb_gen}%
\Hypertarget{doc_help_kdb-gen_md_md_doc_help_kdb_gen}%
 \hypertarget{doc_help_kdb-gen_md_autotoc_md2903}{}\doxysection{SYNOPSIS}\label{doc_help_kdb-gen_md_autotoc_md2903}
{\ttfamily kdb gen $<$template\+Name$>$ $<$parent\+Key$>$ $<$output\+Name$>$ \mbox{[}parameters...\mbox{]}}


\begin{DoxyItemize}
\item {\ttfamily $<$template\+Name$>$}\+: one of the templates listed \href{\#templates}{\texttt{ below}}
\item {\ttfamily $<$parent\+Key$>$}\+: the parent key to use, templates may have certain restrictions on e.\+g. the allowed namespaces You may also use the special value {\ttfamily -\/} (see below).
\item {\ttfamily $<$output\+Name$>$}\+: the base name of the output files. If a template produces multiple files, it will append different suffixes (e.\+g. file extensions) to this base name.
\item {\ttfamily \mbox{[}parameters...\mbox{]}}\+: a list of parameters, the supported parameters depend on the template
\end{DoxyItemize}\hypertarget{doc_help_kdb-gen_md_autotoc_md2904}{}\doxysection{DESCRIPTION}\label{doc_help_kdb-gen_md_autotoc_md2904}
This command invokes Elektra\textquotesingle{}s code-\/generator.

It supports different templates. All templates require a {\ttfamily parent\+Key} parameter, because this determines the input for the code-\/generator, as well as an {\ttfamily output\+Name} parameter to specify the output file(s).

If the given {\ttfamily parent\+Key} is {\ttfamily -\/}, instead of actually invoking the code generator, {\ttfamily kdb gen} will just print the filenames of the files that would be written with a valid {\ttfamily parent\+Key}.

For more information see the \href{\#templates}{\texttt{ list of templates}} below and the man-\/pages for each of them.\hypertarget{doc_help_kdb-gen_md_autotoc_md2905}{}\doxysection{RETURN VALUES}\label{doc_help_kdb-gen_md_autotoc_md2905}
This command will return the following values as an exit status\+:


\begin{DoxyItemize}
\item 0\+: No errors.
\item 1-\/10\+: standard exit codes, see \mbox{\hyperlink{doc_help_kdb_md}{kdb(1)}}
\end{DoxyItemize}\hypertarget{doc_help_kdb-gen_md_autotoc_md2906}{}\doxysection{OPTIONS}\label{doc_help_kdb-gen_md_autotoc_md2906}

\begin{DoxyItemize}
\item {\ttfamily -\/H}, {\ttfamily -\/-\/help}\+: Show the man page.
\item {\ttfamily -\/V}, {\ttfamily -\/-\/version}\+: Print version info.
\item {\ttfamily -\/C}, {\ttfamily -\/-\/color $<$when$>$}\+: Print never/auto(default)/always colored output.
\item {\ttfamily -\/F}, {\ttfamily -\/-\/input-\/file $<$plugin$>$=$<$file$>$}\+: Load the file {\ttfamily $<$file$>$} with plugin {\ttfamily $<$plugin$>$} instead of accessing the KDB.
\item {\ttfamily -\/p}, {\ttfamily -\/-\/profile $<$profile$>$}\+: Use a different kdb profile.
\item {\ttfamily -\/v}, {\ttfamily -\/-\/verbose}\+: Explain what is happening. Gives a complete trace of all tried keys. Very useful to debug fallback and overrides.
\item {\ttfamily -\/d}, {\ttfamily -\/-\/debug}\+: Give debug information. Prints additional debug information in case of errors/warnings.
\end{DoxyItemize}\hypertarget{doc_help_kdb-gen_md_autotoc_md2907}{}\doxysection{TEMPLATES}\label{doc_help_kdb-gen_md_autotoc_md2907}
Currently we only have one template\+:


\begin{DoxyItemize}
\item {\ttfamily highlevel}\+: Generates the files needed for using the high-\/level API with code-\/generation. More information can be found in \mbox{\hyperlink{doc_help_kdb-gen-highlevel_md}{kdb-\/gen-\/highlevel(1)}}
\end{DoxyItemize}\hypertarget{doc_help_kdb-gen_md_autotoc_md2908}{}\doxysection{EXAMPLES}\label{doc_help_kdb-gen_md_autotoc_md2908}
Examples can be found on the man-\/pages of each template.\hypertarget{doc_help_kdb-gen_md_autotoc_md2909}{}\doxysection{SEE ALSO}\label{doc_help_kdb-gen_md_autotoc_md2909}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_help_kdb_md}{kdb(1)}} for general information about the {\ttfamily kdb} tool.
\item \mbox{\hyperlink{doc_help_elektra-key-names_md}{elektra-\/key-\/names(7)}} for an explanation of key names. 
\end{DoxyItemize}