Add latexindent config
This commit is contained in:
2
config/latex/.indentconfig.yaml
Normal file
2
config/latex/.indentconfig.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
paths:
|
||||
- /home/christoph/.indentsettings.yaml
|
608
config/latex/.indentsettings.yaml
Normal file
608
config/latex/.indentsettings.yaml
Normal file
@ -0,0 +1,608 @@
|
||||
# defaultSettings.yaml for latexindent.pl, version 3.8.1, 2020-05-05
|
||||
# a script that aims to
|
||||
# beautify .tex, .sty, .cls files
|
||||
#
|
||||
# (or latexindent.exe if you're on Windows)
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# See http://www.gnu.org/licenses/.
|
||||
#
|
||||
# Chris Hughes, 2017
|
||||
#
|
||||
# For all communication, please visit: https://github.com/cmhughes/latexindent.pl
|
||||
|
||||
|
||||
# You should feel encouraged to change anything you like in these settings, but
|
||||
# it would probably be better to have your own user settings
|
||||
# files somewhere else - remember that this file may be overwritten
|
||||
# when you update your tex distribution. Please see the manual linked from:
|
||||
#
|
||||
# https://github.com/cmhughes/latexindent.pl
|
||||
#
|
||||
# for details of how to create and configure your own settings files.
|
||||
#
|
||||
# Please read the manual (linked from above) first to understand what each switch does.
|
||||
|
||||
# latexindent can be called to act on a file without using the file's extension,
|
||||
# e.g, simply
|
||||
# latexindent myfile
|
||||
# in which case the choice of file extension is chosen
|
||||
# according to the choices made in fileExtensionPreference
|
||||
# Other file extensions can be added.
|
||||
fileExtensionPreference:
|
||||
.tex: 1
|
||||
.sty: 2
|
||||
.cls: 3
|
||||
.bib: 4
|
||||
|
||||
# default file extension of backup file (if -w switch is active)
|
||||
# for example, if your .tex file is called
|
||||
# myfile.tex
|
||||
# and you specify the backupExtension as BACKUP.bak then your
|
||||
# backup file will be
|
||||
# myfileBACKUP.bak
|
||||
backupExtension: .bak
|
||||
|
||||
# only one backup per file:
|
||||
# - if onlyOneBackUp is 0 then, as a safety measure,
|
||||
# the number on the extension increments by 1 each time:
|
||||
#
|
||||
# myfile.bak0, myfile.bak1, myfile.bak2
|
||||
# - if you set onlyOnebackUp to 1, then the backup file will
|
||||
# be overwritten each time (not recommended until you trust the script)
|
||||
onlyOneBackUp: 0
|
||||
|
||||
# some users may want a finite number of backup files,
|
||||
# say at most 3; in which case, they can change this maxNumberOfBackUps.
|
||||
#
|
||||
# If maxNumberOfBackUps is set to 0 (or less) then infinitely
|
||||
# many backups are possible, unless onlyOneBackUp is switched on
|
||||
maxNumberOfBackUps: 0
|
||||
|
||||
# some users may wish to cycle through back up files.
|
||||
#
|
||||
# for example, with maxNumberOfBackUps: 4, they may
|
||||
# wish to delete the oldest back up file, and keep only the most recent.
|
||||
#
|
||||
# copy myfile.bak1 to myfile.bak0
|
||||
# copy myfile.bak2 to myfile.bak1
|
||||
# copy myfile.bak3 to myfile.bak2
|
||||
# copy myfile.bak4 to myfile.bak3
|
||||
#
|
||||
# the back up will be written to myfile.bak4
|
||||
cycleThroughBackUps: 0
|
||||
|
||||
# preferences for information displayed in the log file
|
||||
logFilePreferences:
|
||||
showEveryYamlRead: 1
|
||||
showAmalgamatedSettings: 0
|
||||
showDecorationStartCodeBlockTrace: 0
|
||||
showDecorationFinishCodeBlockTrace: 0
|
||||
endLogFileWith: '--------------'
|
||||
showGitHubInfoFooter: 1
|
||||
PatternLayout:
|
||||
default: "%A%n"
|
||||
trace: "%A%n"
|
||||
ttrace: "%A%n"
|
||||
|
||||
# verbatim environments specified
|
||||
# in this field will not be changed at all!
|
||||
verbatimEnvironments:
|
||||
verbatim: 1
|
||||
lstlisting: 1
|
||||
minted: 1
|
||||
|
||||
# verbatim commands such as \verb! body !, \lstinline$something else$
|
||||
verbatimCommands:
|
||||
verb: 1
|
||||
lstinline: 1
|
||||
|
||||
# no indent blocks (not necessarily verbatim
|
||||
# environments) which are marked as %\begin{noindent}
|
||||
# or anything else that you detail in the following
|
||||
noIndentBlock:
|
||||
noindent: 1
|
||||
cmhtest: 1
|
||||
|
||||
# remove trailing whitespace from all lines
|
||||
removeTrailingWhitespace:
|
||||
beforeProcessing: 0
|
||||
afterProcessing: 1
|
||||
|
||||
# \begin{document} and \end{document} are treated differently
|
||||
# by latexindent within filecontents environments
|
||||
fileContentsEnvironments:
|
||||
filecontents: 1
|
||||
filecontents*: 1
|
||||
|
||||
# indent preamble
|
||||
indentPreamble: 0
|
||||
|
||||
# assume no preamble in cls, sty, by default
|
||||
lookForPreamble:
|
||||
.tex: 1
|
||||
.sty: 0
|
||||
.cls: 0
|
||||
.bib: 0
|
||||
|
||||
# some preambles can contain \begin and \end statements
|
||||
# that are not in their 'standard environment block', for example,
|
||||
# consider the following key = values:
|
||||
# preheadhook={\begin{mdframed}[style=myframedstyle]},
|
||||
# postfoothook=\end{mdframed},
|
||||
preambleCommandsBeforeEnvironments: 0
|
||||
|
||||
# default value of indentation
|
||||
# defaultIndent: "\t"
|
||||
defaultIndent: " "
|
||||
|
||||
# name of code blocks that should have their body aligned at ampersand delimiters
|
||||
lookForAlignDelims:
|
||||
tabular:
|
||||
delims: 1
|
||||
alignDoubleBackSlash: 1
|
||||
spacesBeforeDoubleBackSlash: 1
|
||||
multiColumnGrouping: 0
|
||||
alignRowsWithoutMaxDelims: 1
|
||||
spacesBeforeAmpersand: 1
|
||||
spacesAfterAmpersand: 1
|
||||
justification: left
|
||||
alignFinalDoubleBackSlash: 0
|
||||
dontMeasure: 0
|
||||
delimiterRegEx: '(?<!\\)(&)'
|
||||
delimiterJustification: left
|
||||
tabularx:
|
||||
delims: 1
|
||||
longtable: 1
|
||||
tabu: 1
|
||||
array: 1
|
||||
matrix: 1
|
||||
bmatrix: 1
|
||||
Bmatrix: 1
|
||||
pmatrix: 1
|
||||
vmatrix: 1
|
||||
Vmatrix: 1
|
||||
align: 1
|
||||
align*: 1
|
||||
alignat: 1
|
||||
alignat*: 1
|
||||
aligned: 1
|
||||
cases: 1
|
||||
dcases: 1
|
||||
listabla: 1
|
||||
|
||||
# if you want the script to look for \item commands
|
||||
# and format it, as follows (for example),
|
||||
# \begin{itemize}
|
||||
# \item content here
|
||||
# next line is indented
|
||||
# next line is indented
|
||||
# \item another item
|
||||
# \end{itemize}
|
||||
# then populate indentAfterItems. See also itemNames
|
||||
indentAfterItems:
|
||||
itemize: 1
|
||||
enumerate: 1
|
||||
description: 1
|
||||
list: 1
|
||||
|
||||
# if you want to use other names for your items (for example, \part)
|
||||
# then populate them here; note that you can trick latexindent.pl
|
||||
# into indenting all kinds of commands (within environments specified in
|
||||
# indentAfterItems) using this technique.
|
||||
itemNames:
|
||||
item: 1
|
||||
myitem: 1
|
||||
|
||||
# specialBeginEnd is, by default, mathmode focus, although
|
||||
# there's no restrictions
|
||||
specialBeginEnd:
|
||||
displayMath:
|
||||
begin: '\\\['
|
||||
end: '\\\]'
|
||||
lookForThis: 1
|
||||
inlineMath:
|
||||
begin: '(?<!\$)(?<!\\)\$(?!\$)'
|
||||
end: '(?<!\\)\$(?!\$)'
|
||||
lookForThis: 1
|
||||
displayMathTeX:
|
||||
begin: '\$\$'
|
||||
end: '\$\$'
|
||||
lookForThis: 1
|
||||
specialBeforeCommand: 0
|
||||
|
||||
# if you want to add indentation after
|
||||
# a heading, such as \part, \chapter, etc
|
||||
# then populate it in here - you can add
|
||||
# an indent rule to indentRules if you would
|
||||
# like something other than defaultIndent
|
||||
#
|
||||
# you can also change the level if you like,
|
||||
# or add your own title command
|
||||
indentAfterHeadings:
|
||||
part:
|
||||
indentAfterThisHeading: 0
|
||||
level: 1
|
||||
chapter:
|
||||
indentAfterThisHeading: 0
|
||||
level: 2
|
||||
section:
|
||||
indentAfterThisHeading: 0
|
||||
level: 3
|
||||
subsection:
|
||||
indentAfterThisHeading: 0
|
||||
level: 4
|
||||
subsection*:
|
||||
indentAfterThisHeading: 0
|
||||
level: 4
|
||||
subsubsection:
|
||||
indentAfterThisHeading: 0
|
||||
level: 5
|
||||
paragraph:
|
||||
indentAfterThisHeading: 0
|
||||
level: 6
|
||||
subparagraph:
|
||||
indentAfterThisHeading: 0
|
||||
level: 7
|
||||
|
||||
# maximum indentation, off by default
|
||||
maximumIndentation: -1
|
||||
|
||||
# if you don't want to have additional indentation
|
||||
# in a code block, then add it to noAdditionalIndent; note that
|
||||
# code blocks in this field will inherit
|
||||
# the *current* level of indentation they just won't
|
||||
# get any *additional* indentation
|
||||
noAdditionalIndent:
|
||||
myexample: 1
|
||||
mydefinition: 1
|
||||
problem: 1
|
||||
exercises: 1
|
||||
mysolution: 1
|
||||
foreach: 0
|
||||
widepage: 1
|
||||
comment: 1
|
||||
document: 1
|
||||
frame: 0
|
||||
|
||||
# if you have indent rules for particular code blocks
|
||||
# then you can populate them in indentRules; for example, you might just want
|
||||
# to use a space " " or maybe a double tab "\t\t"
|
||||
indentRules:
|
||||
myenvironment: "\t\t"
|
||||
anotherenvironment: "\t\t\t\t"
|
||||
chapter: " "
|
||||
section: " "
|
||||
item: " "
|
||||
myitem: " "
|
||||
|
||||
# set noAdditionalIndent globally for codeblocks
|
||||
noAdditionalIndentGlobal:
|
||||
environments: 0
|
||||
commands: 1
|
||||
optionalArguments: 0
|
||||
mandatoryArguments: 0
|
||||
ifElseFi: 0
|
||||
items: 0
|
||||
keyEqualsValuesBracesBrackets: 0
|
||||
namedGroupingBracesBrackets: 0
|
||||
UnNamedGroupingBracesBrackets: 0
|
||||
specialBeginEnd: 0
|
||||
afterHeading: 0
|
||||
filecontents: 0
|
||||
|
||||
# set indentRules globally for codeblocks; these need
|
||||
# to be horizontal spaces, if they are to be used
|
||||
indentRulesGlobal:
|
||||
environments: 0
|
||||
commands: 0
|
||||
optionalArguments: 0
|
||||
mandatoryArguments: 0
|
||||
ifElseFi: 0
|
||||
items: 0
|
||||
keyEqualsValuesBracesBrackets: 0
|
||||
namedGroupingBracesBrackets: 0
|
||||
UnNamedGroupingBracesBrackets: 0
|
||||
specialBeginEnd: 0
|
||||
afterHeading: 0
|
||||
filecontents: 0
|
||||
|
||||
# command code block details
|
||||
commandCodeBlocks:
|
||||
roundParenthesesAllowed: 1
|
||||
stringsAllowedBetweenArguments:
|
||||
-
|
||||
amalgamate: 1
|
||||
- 'node'
|
||||
- 'at'
|
||||
- 'to'
|
||||
- 'decoration'
|
||||
- '\+\+'
|
||||
- '\-\-'
|
||||
commandNameSpecial:
|
||||
-
|
||||
amalgamate: 1
|
||||
- '@ifnextchar\['
|
||||
|
||||
# modifyLineBreaks will only be searched if the -m
|
||||
# switch is active
|
||||
#
|
||||
# poly-switch examples:
|
||||
#
|
||||
# BeginStartsOnOwnLine:
|
||||
# modify line breaks before a begin statement
|
||||
#
|
||||
# when set to -1, e.g
|
||||
# some text some text
|
||||
# \begin{myenvironment}
|
||||
# will be changed to
|
||||
# some text some text \begin{myenvironment}
|
||||
# when set to 0, the switch is ignored
|
||||
# when set to 1, e.g
|
||||
# some text some text \begin{myenvironment}
|
||||
# will be changed to
|
||||
# some text some text
|
||||
# \begin{myenvironment}
|
||||
# when set to 2, e.g
|
||||
# some text some text \begin{myenvironment}
|
||||
# will be changed to
|
||||
# some text some text%
|
||||
# \begin{myenvironment}
|
||||
# when set to 3, e.g
|
||||
# some text some text \begin{myenvironment}
|
||||
# will be changed to
|
||||
# some text some text
|
||||
#
|
||||
# \begin{myenvironment}
|
||||
#
|
||||
# BodyStartsOnOwnLine:
|
||||
# modify line breaks before the beginning of the body
|
||||
#
|
||||
# when set to -1, e.g
|
||||
# \begin{myenv}
|
||||
# body text body text
|
||||
# will be changed to
|
||||
# \begin{myenv}body text body text
|
||||
# when set to 0, the switch is ignored
|
||||
# when set to 1, e.g
|
||||
# \begin{myenv}body text body text
|
||||
# will be changed to
|
||||
# \begin{myenv}
|
||||
# body text body text
|
||||
# when set to 2, e.g
|
||||
# \begin{myenv}body text body text
|
||||
# will be changed to
|
||||
# \begin{myenv}%
|
||||
# body text body text
|
||||
# when set to 3, e.g
|
||||
# \begin{myenv}body text body text
|
||||
# will be changed to
|
||||
# \begin{myenv}
|
||||
#
|
||||
# body text body text
|
||||
#
|
||||
# EndStartsOnOwnLine:
|
||||
# modify line breaks before the end statement
|
||||
#
|
||||
# when set to -1, e.g
|
||||
# some text some text
|
||||
# \end{myenvironment}
|
||||
# will be changed to
|
||||
# some text some text \end{myenvironment}
|
||||
# when set to 0, the switch is ignored
|
||||
# when set to 1, e.g
|
||||
# some text some text \end{myenvironment}
|
||||
# will be changed to
|
||||
# some text some text
|
||||
# \end{myenvironment}
|
||||
# when set to 2, e.g
|
||||
# some text some text \end{myenvironment}
|
||||
# will be changed to
|
||||
# some text some text%
|
||||
# \end{myenvironment}
|
||||
# when set to 3, e.g
|
||||
# some text some text \end{myenvironment}
|
||||
# will be changed to
|
||||
# some text some text
|
||||
#
|
||||
# \end{myenvironment}
|
||||
#
|
||||
# EndFinishesWithLineBreak:
|
||||
# modify line breaks after the end statement
|
||||
#
|
||||
# when set to -1, e.g
|
||||
# \end{myenvironment}
|
||||
# some text some text
|
||||
# will be changed to
|
||||
# \end{myenvironment}some text some text
|
||||
# when set to 0, the switch is ignored
|
||||
# when set to 1, e.g
|
||||
# \end{myenvironment}some text some text
|
||||
# will be changed to
|
||||
# \end{myenvironment}
|
||||
# some text some text
|
||||
# when set to 2, e.g
|
||||
# \end{myenvironment}some text some text
|
||||
# will be changed to
|
||||
# \end{myenvironment}%
|
||||
# some text some text
|
||||
# when set to 3, e.g
|
||||
# \end{myenvironment}some text some text
|
||||
# will be changed to
|
||||
# \end{myenvironment}
|
||||
#
|
||||
# some text some text
|
||||
#
|
||||
# you can specify settings on a per-name basis
|
||||
modifyLineBreaks:
|
||||
preserveBlankLines: 1
|
||||
condenseMultipleBlankLinesInto: 1
|
||||
oneSentencePerLine:
|
||||
manipulateSentences: 0
|
||||
removeSentenceLineBreaks: 1
|
||||
textWrapSentences: 0
|
||||
sentenceIndent: ""
|
||||
sentencesFollow:
|
||||
par: 1
|
||||
blankLine: 1
|
||||
fullStop: 1
|
||||
exclamationMark: 1
|
||||
questionMark: 1
|
||||
rightBrace: 1
|
||||
commentOnPreviousLine: 1
|
||||
other: 0
|
||||
sentencesBeginWith:
|
||||
A-Z: 1
|
||||
a-z: 0
|
||||
other: 0
|
||||
sentencesEndWith:
|
||||
basicFullStop: 0
|
||||
betterFullStop: 1
|
||||
exclamationMark: 1
|
||||
questionMark: 1
|
||||
other: 0
|
||||
textWrapOptions:
|
||||
columns: 100
|
||||
separator: ""
|
||||
perCodeBlockBasis: 0
|
||||
all: 0
|
||||
alignAtAmpersandTakesPriority: 1
|
||||
environments:
|
||||
quotation: 0
|
||||
ifElseFi: 0
|
||||
optionalArguments: 0
|
||||
mandatoryArguments: 0
|
||||
items: 0
|
||||
specialBeginEnd: 0
|
||||
afterHeading: 0
|
||||
preamble: 0
|
||||
filecontents: 0
|
||||
masterDocument: 0
|
||||
removeParagraphLineBreaks:
|
||||
all: 0
|
||||
beforeTextWrap: 0
|
||||
alignAtAmpersandTakesPriority: 1
|
||||
environments:
|
||||
quotation: 0
|
||||
ifElseFi: 0
|
||||
optionalArguments: 0
|
||||
mandatoryArguments: 0
|
||||
items: 0
|
||||
specialBeginEnd: 0
|
||||
afterHeading: 0
|
||||
preamble: 0
|
||||
filecontents: 0
|
||||
masterDocument: 0
|
||||
paragraphsStopAt:
|
||||
environments: 1
|
||||
verbatim: 1
|
||||
commands: 0
|
||||
ifElseFi: 0
|
||||
items: 0
|
||||
specialBeginEnd: 0
|
||||
heading: 0
|
||||
filecontents: 0
|
||||
comments: 0
|
||||
environments:
|
||||
BeginStartsOnOwnLine: 0
|
||||
BodyStartsOnOwnLine: 0
|
||||
EndStartsOnOwnLine: 0
|
||||
EndFinishesWithLineBreak: 0
|
||||
equation*:
|
||||
BeginStartsOnOwnLine: 0
|
||||
BodyStartsOnOwnLine: 0
|
||||
EndStartsOnOwnLine: 0
|
||||
EndFinishesWithLineBreak: 0
|
||||
ifElseFi:
|
||||
IfStartsOnOwnLine: 0
|
||||
BodyStartsOnOwnLine: 0
|
||||
OrStartsOnOwnLine: 0
|
||||
OrFinishesWithLineBreak: 0
|
||||
ElseStartsOnOwnLine: 0
|
||||
ElseFinishesWithLineBreak: 0
|
||||
FiStartsOnOwnLine: 0
|
||||
FiFinishesWithLineBreak: 0
|
||||
ifnum:
|
||||
IfStartsOnOwnLine: 0
|
||||
BodyStartsOnOwnLine: 0
|
||||
OrStartsOnOwnLine: 0
|
||||
OrFinishesWithLineBreak: 0
|
||||
ElseStartsOnOwnLine: 0
|
||||
ElseFinishesWithLineBreak: 0
|
||||
FiStartsOnOwnLine: 0
|
||||
FiFinishesWithLineBreak: 0
|
||||
commands:
|
||||
CommandStartsOnOwnLine: 0
|
||||
CommandNameFinishesWithLineBreak: 0
|
||||
optionalArguments:
|
||||
LSqBStartsOnOwnLine: 0
|
||||
OptArgBodyStartsOnOwnLine: 0
|
||||
RSqBStartsOnOwnLine: 0
|
||||
RSqBFinishesWithLineBreak: 0
|
||||
mandatoryArguments:
|
||||
LCuBStartsOnOwnLine: 0
|
||||
MandArgBodyStartsOnOwnLine: 0
|
||||
RCuBStartsOnOwnLine: 0
|
||||
RCuBFinishesWithLineBreak: 0
|
||||
keyEqualsValuesBracesBrackets:
|
||||
KeyStartsOnOwnLine: 0
|
||||
EqualsStartsOnOwnLine: 0
|
||||
EqualsFinishesWithLineBreak: 0
|
||||
items:
|
||||
ItemStartsOnOwnLine: 0
|
||||
ItemFinishesWithLineBreak: 0
|
||||
namedGroupingBracesBrackets:
|
||||
NameStartsOnOwnLine: 0
|
||||
NameFinishesWithLineBreak: 0
|
||||
specialBeginEnd:
|
||||
SpecialBeginStartsOnOwnLine: 0
|
||||
SpecialBodyStartsOnOwnLine: 0
|
||||
SpecialEndStartsOnOwnLine: 0
|
||||
SpecialEndFinishesWithLineBreak: 0
|
||||
verbatim:
|
||||
VerbatimBeginStartsOnOwnLine: 0
|
||||
VerbatimEndFinishesWithLineBreak: 0
|
||||
|
||||
# replacements, only active when either -r or -rr switches are active
|
||||
replacements:
|
||||
-
|
||||
amalgamate: 1
|
||||
-
|
||||
this: 'latexindent.pl'
|
||||
that: 'pl.latexindent'
|
||||
lookForThis: 1
|
||||
when: before
|
||||
|
||||
# fineTuning allows you to tweak the internal pattern matching that
|
||||
# is central to latexindent.pl
|
||||
fineTuning:
|
||||
environments:
|
||||
name: '[a-zA-Z@\*0-9_\\]+'
|
||||
ifElseFi:
|
||||
name: '@?if[a-zA-Z@]*?'
|
||||
commands:
|
||||
name: '[+a-zA-Z@\*0-9_\:]+?'
|
||||
keyEqualsValuesBracesBrackets:
|
||||
name: '[a-zA-Z@\*0-9_\/.\h\{\}:\#-]+?'
|
||||
follow: '(?:(?<!\\)\{)|,|(?:(?<!\\)\[)'
|
||||
NamedGroupingBracesBrackets:
|
||||
name: '[0-9\.a-zA-Z@\*><]+?'
|
||||
follow: '\h|\R|\{|\[|\$|\)|\('
|
||||
UnNamedGroupingBracesBrackets:
|
||||
follow: '\{|\[|,|&|\)|\(|\$'
|
||||
arguments:
|
||||
before: '(?:#\d\h*;?,?\/?)+|\<.*?\>'
|
||||
between: '_|\^|\*'
|
||||
modifyLineBreaks:
|
||||
betterFullStop: '(?:\.\)(?!\h*[a-z]))|(?:(?<!(?:(?:e\.g)|(?:i\.e)|(?:etc))))\.(?!(?:[a-z]|[A-Z]|\-|~|\,|[0-9]))'
|
||||
doubleBackSlash: '\\\\(?:\h*\[\h*\d+\h*[a-zA-Z]+\h*\])?'
|
||||
comma: ','
|
Reference in New Issue
Block a user