summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/support
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-01-02 21:06:57 +0000
committerKarl Berry <karl@freefriends.org>2022-01-02 21:06:57 +0000
commit5ca8fd7bb0fd87085acc7cbb918d980bd894f4de (patch)
tree3c7584faa15237e4902dd9a14315811383fe6b70 /Master/texmf-dist/doc/support
parent628fe74043183071cf40daa229bc7e27b649386d (diff)
latexindent (2jan22)
git-svn-id: svn://tug.org/texlive/trunk@61477 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/support')
-rw-r--r--Master/texmf-dist/doc/support/latexindent/README2
-rw-r--r--Master/texmf-dist/doc/support/latexindent/appendices.tex57
-rw-r--r--Master/texmf-dist/doc/support/latexindent/latexindent-yaml-schema.json1484
-rw-r--r--Master/texmf-dist/doc/support/latexindent/latexindent.pdfbin1059745 -> 1074008 bytes
-rw-r--r--Master/texmf-dist/doc/support/latexindent/latexindent.tex2
-rw-r--r--Master/texmf-dist/doc/support/latexindent/sec-default-user-local.tex3
-rw-r--r--Master/texmf-dist/doc/support/latexindent/settings-alt.json5
-rw-r--r--Master/texmf-dist/doc/support/latexindent/settings-alt1.json5
-rw-r--r--Master/texmf-dist/doc/support/latexindent/settings.json6
-rw-r--r--Master/texmf-dist/doc/support/latexindent/title.tex4
10 files changed, 1556 insertions, 12 deletions
diff --git a/Master/texmf-dist/doc/support/latexindent/README b/Master/texmf-dist/doc/support/latexindent/README
index 8663a930005..99ae485f0a4 100644
--- a/Master/texmf-dist/doc/support/latexindent/README
+++ b/Master/texmf-dist/doc/support/latexindent/README
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- latexindent.pl, version 3.13.4, 2021-12-22
+ latexindent.pl, version 3.13.5, 2022-01-02
PERL script to indent code within environments, and align delimited
environments in .tex files.
diff --git a/Master/texmf-dist/doc/support/latexindent/appendices.tex b/Master/texmf-dist/doc/support/latexindent/appendices.tex
index 1788270a3c2..bea35044056 100644
--- a/Master/texmf-dist/doc/support/latexindent/appendices.tex
+++ b/Master/texmf-dist/doc/support/latexindent/appendices.tex
@@ -207,17 +207,60 @@ echo %path%
To \emph{remove} the directory from your \lstinline!%path%!, run
\texttt{remove-from-path.bat} as administrator.
- \section{Using conda}
- If you use conda you'll only need
+ \section{latexindent-yaml-schema.json}
- \begin{commandshell}
+ \texttt{latexindent.pl}
+ \announce*{2022-01-02}{latexindent-yaml-schema.json} ships with
+ \texttt{latexindent-yaml-schema.json}
+ which might help you when constructing your YAML files.
+
+ \subsection{VSCode demonstration}
+ To use \texttt{latexindent-yaml-schema.json} with \texttt{VSCode}, you can use the
+ following steps:
+ \begin{enumerate}
+ \item download \texttt{latexindent-yaml-schema.json} from the \texttt{documentation} folder of
+ \cite{latexindent-home}, save it in whichever directory you would like, noting it for
+ reference;
+ \item following the instructions from \cite{vscode-yaml-demo}, for example, you should install
+ the VSCode YAML extension \cite{vscode-yaml-extentions};
+ \item set up your \texttt{settings.json} file using the directory you saved the file by
+ adapting \cref{lst:settings.json}; on my Ubuntu laptop this file lives at
+ \texttt{/home/cmhughes/.config/Code/User/settings.json}.
+ \end{enumerate}
+
+ \begin{widepage}
+ \cmhlistingsfromfile*{settings.json}[yaml-TCB]{\texttt{settings.json}}{lst:settings.json}
+ \end{widepage}
+
+ Alternatively, if you would prefer not to download the json file, you might be able to
+ use an adapted version of \cref{lst:settings-alt.json}.
+
+ \begin{widepage}
+ \cmhlistingsfromfile*{settings-alt.json}[yaml-TCB]{\texttt{settings-alt.json}}{lst:settings-alt.json}
+ \end{widepage}
+
+ Finally, if your TeX distribution is up to date, then
+ \texttt{latexindent-yaml-schema.json} \emph{should} be in the documentation folder of
+ your installation, so an adapted version of \cref{lst:settings-alt1.json} may work.
+
+ \begin{widepage}
+ \cmhlistingsfromfile*{settings-alt1.json}[yaml-TCB]{\texttt{settings-alt1.json}}{lst:settings-alt1.json}
+ \end{widepage}
+
+ If you have details of how to implement this schema in other editors, please feel
+ encouraged to contribute to this documentation.
+
+ \section{Using conda}
+ If you use conda you'll only need
+
+ \begin{commandshell}
conda install latexindent.pl -c conda-forge
\end{commandshell}
-this will install the executable and all its dependencies (including perl) in the activate environment.
-You don't even have to worry about \texttt{defaultSettings.yaml} as it included too,
-you can thus skip \cref{sec:requiredmodules,sec:updating-path}.
+ this will install the executable and all its dependencies (including perl) in the
+ activate environment. You don't even have to worry about \texttt{defaultSettings.yaml} as
+ it included too, you can thus skip \cref{sec:requiredmodules,sec:updating-path}.
-You can get a conda installation for example from \cite{conda} or from \cite{anacoda}.
+ You can get a conda installation for example from \cite{conda} or from \cite{anacoda}.
\section{logFilePreferences}\label{app:logfile-demo}
\Vref{lst:logFilePreferences} describes the options for customising the information given
diff --git a/Master/texmf-dist/doc/support/latexindent/latexindent-yaml-schema.json b/Master/texmf-dist/doc/support/latexindent/latexindent-yaml-schema.json
new file mode 100644
index 00000000000..5c274242945
--- /dev/null
+++ b/Master/texmf-dist/doc/support/latexindent/latexindent-yaml-schema.json
@@ -0,0 +1,1484 @@
+{
+ "$schema": "http://json-schema.org/schema",
+ "$id": "latexindent-yaml-schema.json",
+ "title": "latexindent.pl YAML schema",
+ "description": "latexindent.pl YAML schema helper, V3.13.5 2022-01-02",
+ "type": "object",
+ "properties": {
+ "fileExtensionPreference": {
+ "description": "calling latexindent.pl to operate on myfile (without extension) is fine, and in which case the file extensions from this field will be used in order",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "integer, specifying the order in which latexindent.pl will search for myfile ending with this extension",
+ "type": "integer"
+ }
+ }
+ },
+ "backupExtension": {
+ "description": "when the -w, --overwrite switch is active, a back-up file is created with this extension",
+ "type": "string"
+ },
+ "onlyOneBackUp": {
+ "description": "when the -w, --overwrite switch is active, the default is to create a back-up file for each call to latexindent.pl. Changing onlyOneBackUp to 1 means that only one back-up file is created",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "maxNumberOfBackUps": {
+ "description": "when the -w, --overwrite switch is active, the default is to create a back-up file for each call to latexindent.pl. This field sets the maximum number of back-up files",
+ "type": "integer",
+ "minimum": 0
+ },
+ "cycleThroughBackUps": {
+ "description": "when the -w, --overwrite switch is active, back-up files can be overwritten in order; see also maxNumberOfBackUps",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "logFilePreferences": {
+ "description": "latexindent.pl will write logging information to indent.log; the appearance of some of the information can be customised",
+ "type": "object",
+ "properties": {
+ "showEveryYamlRead": {
+ "description": "0/1, binary switch to show every YAML file's settings in indent.log",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "showAmalgamatedSettings": {
+ "description": "0/1, binary switch to show the overall/amalgamated settings in indent.log",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "showDecorationStartCodeBlockTrace": {
+ "description": "0/1, binary switch to show decorations at *start* of code block in indent.log when -t, -tt switches active",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "showDecorationFinishCodeBlockTrace": {
+ "description": "0/1, binary switch to show decorations at *finish* of code block in indent.log when -t, -tt switches active",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "endLogFileWith": {
+ "description": "string decoration to finish indent.log",
+ "type": "string"
+ },
+ "showGitHubInfoFooter": {
+ "description": "0/1, binary switch to show GitHub information in footer of indent.log",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "Dumper": {
+ "description": "options to be passed to the Dumper module; most helpful when -t, -tt active.",
+ "type": "object",
+ "properties": {
+ "Terse":{
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "Indent":{
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "Useqq":{
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "Deparse":{
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "Quotekeys":{
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "Sortkeys":{
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "Pair":{
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "verbatimEnvironments": {
+ "description": "specify the names of verbatim environments in this field",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1, binary switch to mean don't look for/look for this *environment*",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "verbatimCommands": {
+ "description": "specify the names of verbatim *commands* in this field",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1, binary switch to mean don't look for/look for this *command*",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "noIndentBlock": {
+ "description": "specify the names of *noIndentBlock* in this field",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1, binary switch to mean don't look for/look for this *noIndentBlock*",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "fileContentsEnvironments": {
+ "description": "specify the names of *filecontents* in this field",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1, binary switch to mean don't look for/look for this *filecontents* environment",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "indentPreamble": {
+ "description": "0/1, binary switch to instruct latexindent.pl to operate on preamble or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "lookForPreamble": {
+ "description": "list of extensions detailing which files latexindent.pl should look for preamble",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1, binary switch for preamble search for this file type",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "preambleCommandsBeforeEnvironments": {
+ "description": "0/1, binary switch to instruct latexindent.pl to search for commands before environments in preamble",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "defaultIndent": {
+ "description": "default indentation, needs to be specified as horizontal space",
+ "type": "string"
+ },
+ "removeTrailingWhitespace": {
+ "description": "remove horizontal space at the *end* of lines",
+ "type": "object",
+ "properties": {
+ "beforeProcessing": {
+ "description": "0/1, binary switch to remove horizontal space *before* indenting",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "afterProcessing": {
+ "description": "0/1, binary switch to remove horizontal space *after* indenting",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "lookForAlignDelims": {
+ "description": "list of names of code blocks detailing that latexindent.pl should align at delimiters",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1 binary switch to detail if this code block has delimiters. Option to specify this field in 'advanced' form",
+ "type": ["integer","object"],
+ "properties": {
+ "delims": {
+ "description": "0/1, binary switch to look for delimiters",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "alignDoubleBackSlash": {
+ "description": "0/1, binary switch to align the \\\\",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "spacesBeforeDoubleBackSlash": {
+ "description": "integer detailing number of spaces *before* \\\\",
+ "type": "integer",
+ "minimum": 0
+ },
+ "multiColumnGrouping": {
+ "description": "0/1, binary switch to group alignment under \\multicolumn command",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "alignRowsWithoutMaxDelims": {
+ "description": "0/1, binary switch to align rows without the maximum number of delimiters",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "spacesBeforeAmpersand": {
+ "description": "integer detailing number of spaces *before* delimiter",
+ "type": "integer",
+ "minimum": 0
+ },
+ "spacesAfterAmpersand": {
+ "description": "integer detailing number of spaces *after* delimiter",
+ "type": "integer",
+ "minimum": 0
+ },
+ "justification": {
+ "description": "justification of cell",
+ "type": "string",
+ "enum": ["left", "right"]
+ },
+ "alignFinalDoubleBackSlash": {
+ "description": "0/1, binary switch to align final \\\\",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "dontMeasure": {
+ "description": "entries not to be measured in the alignment routine",
+ "type": ["integer","string","array"],
+ "items": {
+ "type": ["string","object"],
+ "description": "entry not to be measured",
+ "properties": {
+ "this": {
+ "type": "string",
+ "description": "string containing the cell *not* to be measured"
+ },
+ "applyTo": {
+ "type": "string",
+ "enum": ["cell", "row"],
+ "description": "detail cell or row"
+ },
+ "regex": {
+ "type": "string",
+ "description": "regular expression to match cell or row"
+ }
+ }
+ }
+ },
+ "delimiterRegEx": {
+ "description": "delimiter regex. NOTE: the capturing ()",
+ "type": "string"
+ },
+ "delimiterJustification": {
+ "description": "delimiter justification",
+ "type": "string",
+ "enum": ["left", "right"]
+ },
+ "lookForChildCodeBlocks": {
+ "description": "0/1. binary switch to look for child code blocks",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ }
+ }
+ },
+ "indentAfterItems": {
+ "description": "specify the names of environments that contain items",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1, binary switch to mean don't look for/look for items in this environment",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "itemNames": {
+ "description": "names of items",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1, binary switch to mean don't look for/look for items",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "specialBeginEnd": {
+ "description": "special code blocks have begin, end, and optionally 'middle' specified as regular expressions",
+ "type": "object",
+ "properties": {
+ "specialBeforeCommand": {
+ "description": "0/1, binary switch to look for commands before special code blocks",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "name of special code block",
+ "type": "object",
+ "properties": {
+ "begin":{
+ "type": "string",
+ "description": "regular expression containing the *beginning* part"
+ },
+ "middle":{
+ "type": "string",
+ "description": "optional: regular expression containing the *middle* part"
+ },
+ "end":{
+ "type": "string",
+ "description": "regular expression containing the *ending* part"
+ },
+ "lookForThis":{
+ "type": "integer",
+ "description": "optional 0/1, binary switch detailing look for this or not. Default is 1 if not specified",
+ "enum": [0,1]
+ }
+ }
+ }
+ }
+ },
+ "indentAfterHeadings": {
+ "description": "indentation after headings",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "name of heading",
+ "type": "object",
+ "properties": {
+ "indentAfterThisHeading":{
+ "type": "integer",
+ "description": "0/1, binary switch to look for heading or not",
+ "enum": [0,1]
+ },
+ "level":{
+ "type": "integer",
+ "description": "level of the heading (minimum is 1)",
+ "minimum": 1
+ }
+ }
+ }
+ }
+ },
+ "maximumIndentation": {
+ "description": "maximum value of indentation; specify as horizontal space",
+ "type": ["string","integer"]
+ },
+ "noAdditionalIndent": {
+ "description": "names of code blocks to not have additional indentation",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "0/1, binary switch to mean code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "indentRules": {
+ "description": "per-code block indentation rule",
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "description": "indentation/horizontal space per-code block",
+ "type": "string"
+ }
+ }
+ },
+ "noAdditionalIndentGlobal": {
+ "description": "*types* of code blocks to not have additional indentation",
+ "type": "object",
+ "properties": {
+ "environments": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "commands": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "optionalArguments": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "mandatoryArguments": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "ifElseFi": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "items": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "keyEqualsValuesBracesBrackets": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "namedGroupingBracesBrackets": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "UnNamedGroupingBracesBrackets": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "specialBeginEnd": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "afterHeading": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "filecontents": {
+ "description": "0/1, binary switch to mean *type* of code block does not have/has additional indentation",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ },
+ "indentRulesGlobal": {
+ "description": "*types* of code blocks indentation rules",
+ "type": "object",
+ "properties": {
+ "environments": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "commands": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "optionalArguments": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "mandatoryArguments": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "ifElseFi": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "items": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "keyEqualsValuesBracesBrackets": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "namedGroupingBracesBrackets": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "UnNamedGroupingBracesBrackets": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "specialBeginEnd": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "afterHeading": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ },
+ "filecontents": {
+ "description": "indentation rules per *type* of code block",
+ "type": ["integer","string"]
+ }
+ }
+ },
+ "commandCodeBlocks": {
+ "description": "command code blocks need some particular attention",
+ "type": "object",
+ "properties": {
+ "roundParenthesesAllowed": {
+ "description": "0/1, binary switch to not allow/allow round parenthesis () between arguments",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "stringsAllowedBetweenArguments": {
+ "description": "strings allowed between arguments",
+ "type": ["integer","array"],
+ "items": {
+ "type": ["string" ,"object"],
+ "description": "entry to be allowed between arguments"
+ }
+ },
+ "commandNameSpecial": {
+ "description": "there are some particular commands that need individual attention",
+ "type": ["integer","array"],
+ "items": {
+ "type": ["string" ,"object"],
+ "description": "entry for particular attention"
+ }
+ }
+ }
+ },
+ "dos2unixlinebreaks": {
+ "description": "0/1, binary switch to convert dos line breaks to unix line breaks",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "modifyLineBreaks": {
+ "description": "when -m switch active, latexindent.pl has ability to modify line breaks",
+ "type": "object",
+ "properties": {
+ "preserveBlankLines": {
+ "description": "0/1, binary switch to preserve blank lines or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "condenseMultipleBlankLinesInto": {
+ "description": "condense multiple blank lines into this many blank lines",
+ "type": "integer",
+ "minimum": 0
+ },
+ "oneSentencePerLine": {
+ "properties": {
+ "manipulateSentences": {
+ "description": "0/1, binary switch to perform one sentence per line routine or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "removeSentenceLineBreaks": {
+ "description": "0/1, binary switch to remove line breaks from within sentences or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "textWrapSentences": {
+ "description": "0/1, binary switch to text wrap sentences or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "sentenceIndent": {
+ "description": "horizontal space representing indentation within sentences",
+ "type": "string"
+ },
+ "sentencesFollow":{
+ "description": "things that sentences can follow",
+ "properties": {
+ "par": {
+ "description": "0/1, binary switch to determine if sentences can follow \\par or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "blankLine": {
+ "description": "0/1, binary switch to determine if sentences can follow blank lines or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "fullStop": {
+ "description": "0/1, binary switch to determine if sentences can follow blank lines or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "exclamationMark": {
+ "description": "0/1, binary switch to determine if sentences can follow ! or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "questionMark": {
+ "description": "0/1, binary switch to determine if sentences can follow ? or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "rightBrace": {
+ "description": "0/1, binary switch to determine if sentences can follow } or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "commentOnPreviousLine": {
+ "description": "0/1, binary switch to determine if sentences can follow % on previous line or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "other": {
+ "description": "regular expression detailing what else sentences can follow",
+ "type": ["integer","string"]
+ }
+ }
+ },
+ "sentencesBeginWith":{
+ "description": "things that sentences can begin with",
+ "properties": {
+ "A-Z": {
+ "description": "0/1, binary switch to determine if sentences can begin upper case letters or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "a-z": {
+ "description": "0/1, binary switch to determine if sentences can begin lower case letters or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "other": {
+ "description": "regular expression detailing what else sentences can begin with",
+ "type": ["integer","string"]
+ }
+ }
+ },
+ "sentencesEndWith":{
+ "description": "things that sentences can end with",
+ "properties": {
+ "basicFullStop": {
+ "description": "0/1, binary switch to determine if sentences can end with basic full stop (period) or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "betterFullStop": {
+ "description": "0/1, binary switch to determine if sentences can end with better full stop (period) or not (RECOMMENDED)",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "exclamationMark": {
+ "description": "0/1, binary switch to determine if sentences can end with ! or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "questionMark": {
+ "description": "0/1, binary switch to determine if sentences can end with ? or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "other": {
+ "description": "regular expression detailing what else sentences can end with",
+ "type": ["integer","string"]
+ }
+ }
+ }
+ }
+ },
+ "textWrapOptions":{
+ "description": "options for the text wrap routine",
+ "type":"object",
+ "properties": {
+ "columns": {
+ "description": "integer > 0 sets the number of columns for the text wrap routine",
+ "type": "integer",
+ "minimum": 0
+ },
+ "huge": {
+ "description": "WARNING: I don't recommend changing this from overflow",
+ "type": "string"
+ },
+ "separator": {
+ "description": "can be any string, but I haven't found a good use case to change this from ''",
+ "type": "string"
+ },
+ "perCodeBlockBasis": {
+ "description": "0/1, binary switch to determine if text wrap should operate on a per-code-block basis or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "beforeFindingChildCodeBlocks": {
+ "description": "0/1, binary switch to determine if text wrap should operate *before* finding code-blocks or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "all": {
+ "description": "0/1, binary switch to determine if text wrap should operate on *all* code blocks or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "alignAtAmpersandTakesPriority": {
+ "description": "0/1, binary switch to determine if align at ampersand (lookForAlignDelims) takes priority over text wrap routine or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "environments": {
+ "description": "can either be 0/1 (for all environments or not) or otherwise list of environments",
+ "type": ["integer","object"]
+ },
+ "ifElseFi": {
+ "description": "can either be 0/1 (for all ifElseFi or not) or otherwise list of ifElseFi",
+ "type": ["integer","object"]
+ },
+ "optionalArguments": {
+ "description": "can either be 0/1 (for all optionalArguments or not) or otherwise list of optionalArguments",
+ "type": ["integer","object"]
+ },
+ "mandatoryArguments": {
+ "description": "can either be 0/1 (for all mandatoryArguments or not) or otherwise list of mandatoryArguments",
+ "type": ["integer","object"]
+ },
+ "items": {
+ "description": "can either be 0/1 (for all items or not) or otherwise list of items",
+ "type": ["integer","object"]
+ },
+ "specialBeginEnd": {
+ "description": "can either be 0/1 (for all specialBeginEnd or not) or otherwise list of specialBeginEnd",
+ "type": ["integer","object"]
+ },
+ "afterHeading": {
+ "description": "can either be 0/1 (for all afterHeading or not) or otherwise list of headings",
+ "type": ["integer","object"]
+ },
+ "preamble": {
+ "description": "0/1, binary switch to determine if text wrap to operate on preamble or not",
+ "type": ["integer","object"]
+ },
+ "filecontents": {
+ "description": "can either be 0/1 (for all filecontents or not) or otherwise list of filecontents",
+ "type": ["integer","object"]
+ },
+ "mainDocument": {
+ "description": "0/1, binary switch to determine if text wrap to operate on mainDocument or not",
+ "type": ["integer","object"]
+ }
+ }
+ },
+ "removeParagraphLineBreaks":{
+ "description": "options for the remove paragraph line breaks routine",
+ "type":"object",
+ "properties": {
+ "all": {
+ "description": "0/1, binary switch to determine if remove paragraph line breaks should operate on *all* code blocks or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "beforeTextWrap": {
+ "description": "0/1, binary switch to determine if remove paragraph line breaks should operate *before* text wrap routine",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "alignAtAmpersandTakesPriority": {
+ "description": "0/1, binary switch to determine if align at ampersand (lookForAlignDelims) takes priority over remove paragraph line break routine or not",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "environments": {
+ "description": "can either be 0/1 (for all environments or not) or otherwise list of environments",
+ "type": ["integer","object"]
+ },
+ "ifElseFi": {
+ "description": "can either be 0/1 (for all ifElseFi or not) or otherwise list of ifElseFi",
+ "type": ["integer","object"]
+ },
+ "optionalArguments": {
+ "description": "can either be 0/1 (for all optionalArguments or not) or otherwise list of optionalArguments",
+ "type": ["integer","object"]
+ },
+ "mandatoryArguments": {
+ "description": "can either be 0/1 (for all mandatoryArguments or not) or otherwise list of mandatoryArguments",
+ "type": ["integer","object"]
+ },
+ "items": {
+ "description": "can either be 0/1 (for all items or not) or otherwise list of items",
+ "type": ["integer","object"]
+ },
+ "specialBeginEnd": {
+ "description": "can either be 0/1 (for all specialBeginEnd or not) or otherwise list of specialBeginEnd",
+ "type": ["integer","object"]
+ },
+ "afterHeading": {
+ "description": "can either be 0/1 (for all afterHeading or not) or otherwise list of headings",
+ "type": ["integer","object"]
+ },
+ "preamble": {
+ "description": "0/1, binary switch to determine if text wrap to operate on preamble or not",
+ "type": ["integer","object"]
+ },
+ "filecontents": {
+ "description": "can either be 0/1 (for all filecontents or not) or otherwise list of filecontents",
+ "type": ["integer","object"]
+ },
+ "mainDocument": {
+ "description": "0/1, binary switch to determine if text wrap to operate on mainDocument or not",
+ "type": ["integer","object"]
+ },
+ "paragraphsStopAt": {
+ "description": "list of binary switches to determine the points at which paragraphs stop",
+ "type": "object",
+ "properties": {
+ "environments": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at environments",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "verbatim": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at verbatim",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "commands": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at commands",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "ifElseFi": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at ifElseFi",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "items": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at items",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "specialBeginEnd": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at specialBeginEnd",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "heading": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at heading",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "filecontents": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at filecontents",
+ "type": "integer",
+ "enum": [0,1]
+ },
+ "comments": {
+ "description": "0/1, binary switch to determine if paragraphStopsAt stops at comments",
+ "type": "integer",
+ "enum": [0,1]
+ }
+ }
+ }
+ }
+ },
+ "environments": {
+ "description": "poly-switches for environments (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "BeginStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of environments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "BodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of environments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "EndStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of environments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "EndFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of environments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for environments (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "BeginStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of environments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "BodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of environments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "EndStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of environments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "EndFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of environments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "specialBeginEnd": {
+ "description": "poly-switches for specialBeginEnd (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "SpecialBeginStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of specialBeginEnd (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "SpecialBodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of specialBeginEnd (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "SpecialEndStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of specialBeginEnd (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "SpecialEndFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of specialBeginEnd (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for specialBeginEnd (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "SpecialBeginStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of specialBeginEnd (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "SpecialBodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of specialBeginEnd (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "SpecialEndStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of specialBeginEnd (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "SpecialEndFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of specialBeginEnd (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "keyEqualsValuesBracesBrackets": {
+ "description": "poly-switches for key equals value (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "KeyStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of key equals value (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "EqualsStartsOnOwnLine":{
+ "description": "poly-switch for line break before = of key equals value (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "EqualsFinishesWithLineBreak":{
+ "description": "poly-switch for line break after = of key equals value (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for key equals value (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "KeyStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of key equals value (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "EqualsStartsOnOwnLine":{
+ "description": "poly-switch for line break before = of key equals value (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "EqualsFinishesWithLineBreak":{
+ "description": "poly-switch for line break after = of key equals value (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "ifElseFi": {
+ "description": "poly-switches for ifElseFi (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "IfStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of ifElseFi (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "BodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of ifElseFi (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "OrStartsOnOwnLine":{
+ "description": "poly-switch for line break before or statement of ifElseFi (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "OrFinishesWithLineBreak":{
+ "description": "poly-switch for line break after or statement of ifElseFi (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "ElseStartsOnOwnLine":{
+ "description": "poly-switch for line break before else statement of ifElseFi (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "ElseFinishesWithLineBreak":{
+ "description": "poly-switch for line break after else statement of ifElseFi (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "FiStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of ifElseFi (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "FiFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of ifElseFi (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for ifElseFi (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "IfStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of ifElseFi (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "BodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of ifElseFi (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "OrStartsOnOwnLine":{
+ "description": "poly-switch for line break before or statement of ifElseFi (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "OrFinishesWithLineBreak":{
+ "description": "poly-switch for line break after or statement of ifElseFi (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "ElseStartsOnOwnLine":{
+ "description": "poly-switch for line break before else statement of ifElseFi (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "ElseFinishesWithLineBreak":{
+ "description": "poly-switch for line break after else statement of ifElseFi (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "FiStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of ifElseFi (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "FiFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of ifElseFi (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "commands": {
+ "description": "poly-switches for commands (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "CommandStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of commands (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "CommandNameFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of commands (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for commands (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "CommandStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of commands (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "CommandNameFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of commands (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "verbatim": {
+ "description": "poly-switches for verbatim (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "VerbatimBeginStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of verbatim (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "VerbatimEndFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of verbatim (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for verbatim (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "VerbatimBeginStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of verbatim (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "VerbatimEndFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of verbatim (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "namedGroupingBracesBrackets": {
+ "description": "poly-switches for namedGroupingBracesBrackets (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "NameStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of namedGroupingBracesBrackets (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "NameFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of namedGroupingBracesBrackets (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for commands (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "NameStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of namedGroupingBracesBrackets (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "NameFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of namedGroupingBracesBrackets (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "items": {
+ "description": "poly-switches for items (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "ItemStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of items (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "ItemFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of items (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for items (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "ItemStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of items (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "ItemFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of items (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "optionalArguments": {
+ "description": "poly-switches for optional arguments (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "LSqBStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of optional arguments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "OptArgBodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of optional arguments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "RSqBStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of optional arguments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "RSqBFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of optional arguments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for optional arguments (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "LSqBStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of optional arguments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "OptArgBodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of optional arguments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "RSqBStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of optional arguments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "RSqBFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of optional arguments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ },
+ "mandatoryArguments": {
+ "description": "poly-switches for mandatory arguments (GLOBAL)",
+ "type":"object",
+ "properties": {
+ "LCuBStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of mandatory arguments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "MandArgBodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of mandatory arguments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "RCuBStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of mandatory arguments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "RCuBFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of mandatory arguments (GLOBAL)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ },
+ "patternProperties": {
+ ".*": {
+ "description": "poly-switches for mandatory arguments (PER-NAME)",
+ "type": "object",
+ "properties": {
+ "LCuBStartsOnOwnLine":{
+ "description": "poly-switch for line break before beginning of mandatory arguments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "MandArgBodyStartsOnOwnLine":{
+ "description": "poly-switch for line break before body of mandatory arguments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "RCuBStartsOnOwnLine":{
+ "description": "poly-switch for line break before end of mandatory arguments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ },
+ "RCuBFinishesWithLineBreak":{
+ "description": "poly-switch for line break after end of mandatory arguments (PER-NAME)",
+ "type": "integer",
+ "enum": [-1,0,1,2,3,4]
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "replacements":{
+ "description": "replacements to be made; requires -r, -rr or -rv switch",
+ "type": "array"
+ },
+ "fineTuning":{
+ "description": "fine tuning, proceed with caution!",
+ "type":"object",
+ "properties": {
+ "environments":{
+ "description": "fine tuning, for environments",
+ "type":"object",
+ "properties": {
+ "name":{
+ "description": "regular expression for environment name",
+ "type": "string"
+ }
+ }
+ },
+ "ifElseFi":{
+ "description": "fine tuning, for ifElseFi",
+ "type":"object",
+ "properties": {
+ "name":{
+ "description": "regular expression for ifElseFi name",
+ "type": "string"
+ }
+ }
+ },
+ "commands":{
+ "description": "fine tuning, for commands",
+ "type":"object",
+ "properties": {
+ "name":{
+ "description": "regular expression for commands name",
+ "type": "string"
+ }
+ }
+ },
+ "items":{
+ "description": "fine tuning, for items",
+ "type":"object",
+ "properties": {
+ "canBeFollowedBy":{
+ "description": "regular expression for what can follow items",
+ "type": "string"
+ }
+ }
+ },
+ "keyEqualsValuesBracesBrackets":{
+ "description": "fine tuning, for keyEqualsValuesBracesBrackets",
+ "type":"object",
+ "properties": {
+ "name":{
+ "description": "regular expression for key = value name",
+ "type": "string"
+ },
+ "follow":{
+ "description": "regular expression for what key = values follow",
+ "type": "string"
+ }
+ }
+ },
+ "namedGroupingBracesBrackets":{
+ "description": "fine tuning, for namedGroupingBracesBrackets",
+ "type":"object",
+ "properties": {
+ "name":{
+ "description": "regular expression for named grouping braces name",
+ "type": "string"
+ },
+ "follow":{
+ "description": "regular expression for what named grouping braces follow",
+ "type": "string"
+ }
+ }
+ },
+ "UnNamedGroupingBracesBrackets":{
+ "description": "fine tuning, for UnNamedGroupingBracesBrackets",
+ "type":"object",
+ "properties": {
+ "follow":{
+ "description": "regular expression for what UN named grouping braces follow",
+ "type": "string"
+ }
+ }
+ },
+ "arguments":{
+ "description": "fine tuning, for arguments",
+ "type":"object",
+ "properties": {
+ "before":{
+ "description": "regular expression for what can come BEFORE arguments",
+ "type": "string"
+ },
+ "between":{
+ "description": "regular expression for what can come BETWEEN arguments",
+ "type": "string"
+ }
+ }
+ },
+ "trailingComments":{
+ "description": "fine tuning, for trailing comments",
+ "type":"object",
+ "properties": {
+ "notPreceededBy":{
+ "description": "regular expression for what can NOT come before %, for example \\%",
+ "type": "string"
+ }
+ }
+ },
+ "modifyLineBreaks":{
+ "description": "fine tuning for some of the -m switch based features",
+ "type":"object",
+ "properties": {
+ "betterFullStop":{
+ "description": "regular expression for the 'better full stop' in the one-sentence-per-line routine",
+ "type": "string"
+ },
+ "doubleBackSlash":{
+ "description": "regular expression for the double back slash used in the DBS poly-switches",
+ "type": "string"
+ },
+ "comma":{
+ "description": "regular expression for the comma used in the comma-based poly-switches",
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
diff --git a/Master/texmf-dist/doc/support/latexindent/latexindent.pdf b/Master/texmf-dist/doc/support/latexindent/latexindent.pdf
index a686affb341..40747a7ab4a 100644
--- a/Master/texmf-dist/doc/support/latexindent/latexindent.pdf
+++ b/Master/texmf-dist/doc/support/latexindent/latexindent.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/support/latexindent/latexindent.tex b/Master/texmf-dist/doc/support/latexindent/latexindent.tex
index e79d89fa088..5a50dad577d 100644
--- a/Master/texmf-dist/doc/support/latexindent/latexindent.tex
+++ b/Master/texmf-dist/doc/support/latexindent/latexindent.tex
@@ -837,7 +837,7 @@
\input{sec-conclusions-know-limitations}
\input{references}
\input{appendices}
- {\clearpage\small\lstlistoflistings}
+ {\clearpage\addcontentsline{toc}{section}{List of listings}\small\lstlistoflistings}
\printindex
\fi
\end{document}
diff --git a/Master/texmf-dist/doc/support/latexindent/sec-default-user-local.tex b/Master/texmf-dist/doc/support/latexindent/sec-default-user-local.tex
index 8b56eb1cc3c..74c36b48c53 100644
--- a/Master/texmf-dist/doc/support/latexindent/sec-default-user-local.tex
+++ b/Master/texmf-dist/doc/support/latexindent/sec-default-user-local.tex
@@ -453,7 +453,8 @@ lookForAlignDelims:
specifies the justification for the alignment delimeters (default: left); note that this
feature is only useful if you have delimiters of different lengths in the same column,
discussed in \cref{sec:delimiter-reg-ex};
- \item \announce*{2021-12-13}{lookForChildCodeBlocks feature} optionally instructs
+ \item \announce*{2021-12-13}{lookForChildCodeBlocks feature}{lookForChildCodeBlocks} optionally
+ instructs
\texttt{latexindent.pl}
to search for child code blocks or not (default: 1), discussed in
\cref{sec:lookForChildCodeBlocks}.
diff --git a/Master/texmf-dist/doc/support/latexindent/settings-alt.json b/Master/texmf-dist/doc/support/latexindent/settings-alt.json
new file mode 100644
index 00000000000..63719f74a62
--- /dev/null
+++ b/Master/texmf-dist/doc/support/latexindent/settings-alt.json
@@ -0,0 +1,5 @@
+{
+ "yaml.schemas": {
+ "https://raw.githubusercontent.com/cmhughes/latexindent.pl/main/documentation/latexindent-yaml-schema.json": "/home/cmhughes/projects/latexindent/defaultSettings.yaml"
+ }
+}
diff --git a/Master/texmf-dist/doc/support/latexindent/settings-alt1.json b/Master/texmf-dist/doc/support/latexindent/settings-alt1.json
new file mode 100644
index 00000000000..cdd10add4aa
--- /dev/null
+++ b/Master/texmf-dist/doc/support/latexindent/settings-alt1.json
@@ -0,0 +1,5 @@
+{
+ "yaml.schemas": {
+ "/usr/local/texlive/2021/texmf-dist/doc/support/latexindent/latexindent-yaml-schema.json": "/home/cmhughes/projects/latexindent/defaultSettings.yaml"
+ }
+}
diff --git a/Master/texmf-dist/doc/support/latexindent/settings.json b/Master/texmf-dist/doc/support/latexindent/settings.json
new file mode 100644
index 00000000000..7c3084347f9
--- /dev/null
+++ b/Master/texmf-dist/doc/support/latexindent/settings.json
@@ -0,0 +1,6 @@
+{
+ "yaml.schemas": {
+ "/home/cmhughes/projects/latexindent/documentation/latexindent-yaml-schema.json": "/home/cmhughes/projects/latexindent/defaultSettings.yaml"
+ },
+ "redhat.telemetry.enabled": true
+} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/support/latexindent/title.tex b/Master/texmf-dist/doc/support/latexindent/title.tex
index 6a535b74405..eb85f22363c 100644
--- a/Master/texmf-dist/doc/support/latexindent/title.tex
+++ b/Master/texmf-dist/doc/support/latexindent/title.tex
@@ -8,14 +8,14 @@
sharp corners,
enhanced,
overlay={\node[anchor=north east,outer sep=2pt] at ([xshift=3cm,yshift=4mm]frame.north east) {\includegraphics[width=3cm]{logo}}; }]
- \centering\ttfamily\bfseries latexindent.pl\\[1cm] Version 3.13.4
+ \centering\ttfamily\bfseries latexindent.pl\\[1cm] Version 3.13.5
\end{tcolorbox}
}
\author{Chris Hughes \thanks{and contributors!
See \vref{sec:contributors}.
For
all communication, please visit \cite{latexindent-home}.}}
-\date{2021-12-22}
+\date{2022-01-02}
\maketitle
\begin{adjustwidth}{1cm}{1cm}
\small