diff --git a/completion.qrc b/completion.qrc
index 3b7f4b0f69..284e1f6c03 100644
--- a/completion.qrc
+++ b/completion.qrc
@@ -204,6 +204,7 @@
completion/auto-pst-pdf.cwl
completion/auto-pst-pdf-lua.cwl
completion/autopuncitems.cwl
+completion/autotype.cwl
completion/auxhook.cwl
completion/avremu.cwl
completion/awesomebox.cwl
diff --git a/completion/autotype.cwl b/completion/autotype.cwl
new file mode 100644
index 0000000000..981c2cb798
--- /dev/null
+++ b/completion/autotype.cwl
@@ -0,0 +1,25 @@
+# autotype package
+# Matthew Bertucci 2023/10/31 for v0.4
+
+#include:luatex
+
+\autotypelangoptions{language}{options%keyvals}
+
+#keyvals:\autotypelangoptions
+hyphenation=#default,primary,weighted
+mark-hyph=#on,off
+ligbreak=#on,off
+long-s=#on,off
+#endkeyvals
+
+\autotypefontoptions{font}{options%keyvals}
+
+#keyvals:\autotypefontoptions
+long-s-codepoint=%
+round-s-codepoint=%
+final-round-s-codepoint=%
+#endkeyvals
+
+\noligbreak{text}
+\autotypelongs
+\autotyperounds
\ No newline at end of file
diff --git a/completion/class-llncs.cwl b/completion/class-llncs.cwl
index 094294434b..fbac6d4307 100644
--- a/completion/class-llncs.cwl
+++ b/completion/class-llncs.cwl
@@ -1,5 +1,5 @@
# llncs class
-# Matthew Bertucci 3/27/2022 for v2.21
+# Matthew Bertucci 2023/11/03 for v2.23
#include:aliascnt
#include:multicol
@@ -99,6 +99,9 @@ fleqn
\spnewtheorem{envname}[numbered like]{caption}{cap font}{body font}#N
\spnewtheorem*{envname}{caption}{cap font}{body font}#N
+\begin{credits}
+\end{credits}
+
#keyvals:\bibliographystyle#c
splncs04
#endkeyvals
@@ -128,6 +131,7 @@ splncs04
\contriblistname#*
\corollaryname#*
\definitionname#*
+\discintname#*
\examplename#*
\exercisename#*
\fnindent#*
@@ -184,4 +188,4 @@ splncs04
#ifOption:oribibl
\oribibl#*
-#endif
\ No newline at end of file
+#endif
diff --git a/completion/class-mitthesis.cwl b/completion/class-mitthesis.cwl
index 0275503ebc..e65a12570d 100644
--- a/completion/class-mitthesis.cwl
+++ b/completion/class-mitthesis.cwl
@@ -1,5 +1,5 @@
# mitthesis class
-# Matthew Bertucci 2023/09/23 for v1.09
+# Matthew Bertucci 2023/11/03 for v1.11
#include:class-report
#include:etoolbox
@@ -30,9 +30,13 @@ twoside
\Acceptor{name}{title%text}{thesis-related position}
\DegreeDate{month}{year}
\ThesisDate{date}
+\Tighten
\SignatureBlockSize{fontsize cmd}
+\AuthorNameSize{fontsize cmd}
+\Squash
\CClicense{license type}{URL}#U
\PDFRightsText#*
+\SuppressMonthError#*
\SuppressAcceptorError#*
\begin{nomenclature}
diff --git a/completion/hyperref.cwl b/completion/hyperref.cwl
index e430bf18af..4e789fc4f6 100644
--- a/completion/hyperref.cwl
+++ b/completion/hyperref.cwl
@@ -3,7 +3,7 @@
#modified Edson 30-12-2010
#modified Denis Bitouz\'e 14-06-2014
#modified muzimuzhi 18 Jan 2020, 8 May 2020, 8 Jul 2020
-#modified Matthew Bertucci 4 April 2023 for v7.00w
+#modified Matthew Bertucci 31 October 2023 for v7.01d
#include:iftex
#include:keyval
@@ -207,12 +207,13 @@ nextactionraw={%}
\AddToDocumentProperties[category]{property}{value}#*
\GetDocumentProperties{property}#*
-\MakeLinkTarget{counter}
-\MakeLinkTarget[prefix]{counter}
-\MakeLinkTarget*{target name}
-\NextLinkTarget{target name}
-\LinkTargetOn
-\LinkTargetOff
+## these are now in the format
+# \MakeLinkTarget{counter}
+# \MakeLinkTarget[prefix]{counter}
+# \MakeLinkTarget*{target name}
+# \NextLinkTarget{target name}
+# \LinkTargetOn
+# \LinkTargetOff
\SetLinkTargetFilter{filter code}
\url{URL}#U
diff --git a/completion/latex-dev.cwl b/completion/latex-dev.cwl
index a3c9348b6f..7dfe480640 100644
--- a/completion/latex-dev.cwl
+++ b/completion/latex-dev.cwl
@@ -1,26 +1,27 @@
# latex mode: LaTeX commands (package level)
# dani/2006-02-18
# muzimuzhi/8 Jul 2019
-# Matthew Bertucci 2023/06/08 for 2023/06/01 release
+# Matthew Bertucci 2023/11/01 release
# commands with big Letters and others
\ActivateGenericHook{hook}#*
-\AddToHook{hook}{code}#*
\AddToHook{hook}[label]{code}#*
+\AddToHook{hook}{code}#*
\AddToHookNext{hook}{code}#*
\AddToHookNextWithArguments{hook}{code}#*
-\AddToHookWithArguments{hook}{code}#*
\AddToHookWithArguments{hook}[label]{code}#*
+\AddToHookWithArguments{hook}{code}#*
\AddToNoCaseChangeList{command}#*
\AfterEndEnvironment[label]{environment}{code}#*
\AfterEndEnvironment{environment}{code}#*
-\AtBeginDocument{code}#*
+\AssignSocketPlug{socket}{socket plug}#*
\AtBeginDocument[label]{code}#*
+\AtBeginDocument{code}#*
\AtBeginDvi{code}#*
\AtBeginEnvironment[label]{environment}{code}#*
\AtBeginEnvironment{environment}{code}#*
-\AtEndDocument{code}#*
\AtEndDocument[label]{code}#*
+\AtEndDocument{code}#*
\AtEndDvi{code}#*
\AtEndEnvironment[label]{environment}{code}#*
\AtEndEnvironment{environment}{code}#*
@@ -58,6 +59,8 @@
\DebugMarksOn#*
\DebugShipoutsOff#*
\DebugShipoutsOn#*
+\DebugSocketsOff#*
+\DebugSocketsOn#*
\DeclareCaseChangeEquivalent{cmd}{replacement text}#*d
\DeclareCommandCopy{cmd}{copied cmd%definition}#d
\DeclareCurrentRelease{name}{date}#*
@@ -81,10 +84,10 @@
\DeclareFontShapeChangeRule{shape1}{shape2}{result1}{result2}#*
\DeclareFontSubstitution{encoding}{family}{series}{shape}#*
\DeclareHookRule{hook}{label1}{relation}{label2}#*
-\DeclareKeys{declarations}#*
\DeclareKeys[family]{declarations}#*
-\DeclareLowercaseMapping{codepoint}{output}#*
+\DeclareKeys{declarations}#*
\DeclareLowercaseMapping[locale]{codepoint}{output}#*
+\DeclareLowercaseMapping{codepoint}{output}#*
\DeclareMathAccent{cmd}{type}{sym-font}{slot}#*d
\DeclareMathAlphabet{math-alph%cmd}{encoding}{family}{series}{shape}#*d
\DeclareMathDelimiter{cmd}{type}{sym-font-1}{slot-1}{sym-font-2}{slot-2}#*d
@@ -118,13 +121,13 @@
\DeclareTextFontCommand{cmd}{font-switches%definition}#*d
\DeclareTextSymbol{cmd}{encoding}{slot}#*d
\DeclareTextSymbolDefault{cmd}{encoding}#*
-\DeclareTitlecaseMapping{codepoint}{output}#*
\DeclareTitlecaseMapping[locale]{codepoint}{output}#*
+\DeclareTitlecaseMapping{codepoint}{output}#*
\DeclareUnicodeCharacter{hexadecimal}{definition}#*
-\DeclareUnknownKeyHandler{code}#*
\DeclareUnknownKeyHandler[family]{code}#*
-\DeclareUppercaseMapping{codepoint}{output}#*
+\DeclareUnknownKeyHandler{code}#*
\DeclareUppercaseMapping[locale]{codepoint}{output}#*
+\DeclareUppercaseMapping{codepoint}{output}#*
\DisableGenericHook{hook}#*
\DisableHook{hook}#*
\DiscardShipoutBox#*
@@ -134,8 +137,8 @@
\ExpandArgs{spec}#*
\ExplSyntaxOff#*
\ExplSyntaxOn#*
-\FirstMark{class%plain}#*
\FirstMark[region]{class%plain}#*
+\FirstMark{class%plain}#*
\GenericError{continuation}{message%text}{help location%text}{help info%text}#*
\GenericInfo{continuation}{message%text}#*
\GenericWarning{continuation}{message%text}#*
@@ -148,13 +151,15 @@
\IfClassAtLeastTF{class}{date}{true code}{false code}#*
\IfClassLoadedTF{class}{true code}{false code}#*
\IfClassLoadedWithOptionsTF{class}{options}{true code}{false code}#*
+\IfExplAtLeastTF{date}{true code}{false code}#*
\IfFileAtLeastTF{file}{date}{true code}{false code}#*
\IfFileExists{file}{true code}{false code}#*
\IfFontSeriesContextTF{face}{true code}{false code}#*
\IfFormatAtLeastTF{date}{true code}{false code}#*
\IfHookEmptyTF{hook}{true code}{false code}#*
-\IfMarksEqualTF{class%plain}{pos1}{pos2}{true code}{false code}#*
+\IfLabelExistTF{label}{true code}{false code}#*
\IfMarksEqualTF[region]{class%plain}{pos1}{pos2}{true code}{false code}#*
+\IfMarksEqualTF{class%plain}{pos1}{pos2}{true code}{false code}#*
\IfNoValueF{arg}{ValueCode}
\IfNoValueT{arg}{-NoValue-Code}
\IfNoValueTF{arg}{-NoValue-Code}{ValueCode}
@@ -162,6 +167,8 @@
\IfPackageLoadedTF{package}{true code}{false code}#*
\IfPackageLoadedWithOptionsTF{package}{options}{true code}{false code}#*
\IfPDFManagementActiveTF{true code}{false code}#*
+\IfPropertyExistTF{property}{true code}{false code}#*
+\IfPropertyRecordedTF{label}{property}{true code}{false code}#*
\IfTargetDateBefore{date}{before code}{after code}#*
\IfValueF{arg}{-NoValue-Code}#*
\IfValueT{arg}{ValueCode}#*
@@ -171,9 +178,11 @@
\InputIfFileExists{file}{true code}{false code}#*i
\InsertMark{class%plain}{text}#*
\LastDeclaredEncoding#*
-\LastMark{class%plain}#*
\LastMark[region]{class%plain}#*
+\LastMark{class%plain}#*
\LaTeXReleaseInfo#*
+\LinkTargetOff#*
+\LinkTargetOn#*
\LoadClass[optionlist]{class}#*u
\LoadClass[optionlist]{class}[release]#*u
\LoadClass{class}#*u
@@ -182,6 +191,10 @@
\LoadClassWithOptions{class}[release]#*u
\LoadFontDefinitionFile{encoding}{family}#*
\LogHook{hook}#*
+\LogSocket{socket}#*
+\MakeLinkTarget*{target name}#*
+\MakeLinkTarget[prefix]{counter}#*
+\MakeLinkTarget{counter}#*
\MakeRobust{cmd}#*
\MessageBreak#*
\NeedsTeXFormat{format}#*
@@ -197,8 +210,12 @@
\NewMirroredHookPair{hook1}{hook2}#*
\NewMirroredHookPairWithArguments{hook1}{hook2}{number}#*
\NewModuleRelease{date}{name}#*
+\NewProperty{property%specialDef}{setpoint}{default}{code}#*s#%latexproperties
\NewReversedHook{hook}#*
\NewReversedHookWithArguments{hook}{number}#*
+\NewSocket{socket}{number of inputs}#*
+\NewSocketPlug{socket}{socket plug}{code}#*
+\NextLinkTarget{target name}#*
\OmitIndent#*
\OptionNotUsed#*
\PackageError{package name}{error text%text}{help text%text}#*
@@ -239,6 +256,10 @@
\RawParEnd#*
\RawShipout#*
\ReadonlyShipoutCounter#*
+\RecordProperties{label}{properties%keyvals}#*l
+\RefProperty[local default]{label}{property%keyvals}#*r
+\RefProperty{label}{property%keyvals}#*r
+\RefUndefinedWarn{label}{property%keyvals}#*
\RemoveFromHook{hook}#*
\RemoveFromHook{hook}[label]#*
\RenewCommandCopy{cmd}{copied cmd%definition}
@@ -254,9 +275,10 @@
\RequirePackageWithOptions{package}[release]#*u
\ReverseBoolean#*
\SetDefaultHookLabel{default label}#*
-\SetKeys{keyvals}#*
\SetKeys[family]{keyvals}#*
+\SetKeys{keyvals}#*
\SetMathAlphabet{math-alph%cmd}{version}{encoding}{family}{series}{shape}#*d
+\SetProperty{property}{setpoint}{default}{code}#*
\SetSymbolFont{sym-font}{version}{encoding}{family}{series}{shape}#*
\ShipoutBox#*
\ShipoutBoxDepth#*
@@ -266,11 +288,12 @@
\ShowEnvironment{envname}#*
\ShowFloat{identifier}#*
\ShowHook{hook}#*
+\ShowSocket{socket}#*
\SplitArgument{number}{tokens}#*
\SplitList{tokens}#*
\TextSymbolUnavailable{arg}#*
-\TopMark{class%plain}#*
\TopMark[region]{class%plain}#*
+\TopMark{class%plain}#*
\TrimSpaces#*
\UndeclareTextCommand{cmd}{encoding}#*
\UseHook{hook}#*
@@ -280,9 +303,24 @@
\UseOneTimeHook{hook}#*
\UseOneTimeHookWithArguments{%}{%}{%}%<{arg2}...%>#*
\UseRawInputEncoding#*
+\UseSocket{socket}#*
\UseTextAccent{encoding}{cmd}{text}#*
\UseTextSymbol{encoding}{cmd}#*
+#keyvals:\RecordProperties#c,\RefProperty#c,\RefUndefinedWarn#c
+abspage
+page
+pagenum
+label
+title
+target
+pagetarget
+counter
+xpos
+ypos
+%latexproperties
+#endkeyvals
+
# expl3 commands
\ExplFileDate#S
\ExplLoaderFileDate#S
@@ -626,8 +664,12 @@ debug={%}
\ltmetaversion#S
\ltparadate#S
\ltparaversion#S
+\ltpropertiesdate#S
+\ltpropertiesversion#S
\ltshipoutdate#S
\ltshipoutversion#S
+\ltsocketsdate#S
+\ltsocketsversion#S
\mathalpha#*
\mathgroup#*
\mathhexbox#*
diff --git a/completion/pst-solides3d.cwl b/completion/pst-solides3d.cwl
index 55c9c4bc97..f874f6b055 100644
--- a/completion/pst-solides3d.cwl
+++ b/completion/pst-solides3d.cwl
@@ -1,5 +1,5 @@
# pst-solides3d package
-# Matthew Bertucci 2/23/2022 for v4.34a
+# Matthew Bertucci 2023/11/03 for v4.35
#include:pstricks
#include:pst-node
@@ -38,10 +38,10 @@
\psResetSolidKeys#*
\gridIIID(x1,y1)(x2,y2)
\gridIIID[options%keyvals](x1,y1)(x2,y2)
-\psImage[file=%]
-\psImage[file=%,%]
-\psImage[file=%](x,y)
-\psImage[file=%,%](x,y)
+\psImage[filename=%]
+\psImage[filename=%,%]
+\psImage[filename=%](x,y)
+\psImage[filename=%,%](x,y)
\psImage[options%keyvals](x,y)#S
\Normale(radius,longitude,latitude)#*
\addtosolideslistobject{name}
@@ -60,7 +60,7 @@ showOrigin#true,false
#endkeyvals
#keyvals:\psSolid#c
-object=#point,line,vector,plan,grille,cube,cylindre,cylindrecreux,cone,conecreux,tronccone,troncconecreux,sphere,calottesphere,calottespherecreuse,tore,tetrahedron,octahedron,dodecahedron,icosahedron,anneau,prisme,prismecreux,parallelepiped,face,polygonregulier,ruban,surface,surface*,surfaceparametree,pie,fusion,geode,load,offfile,objfile,datfile,new,courbe,vecteur,vecteur3d
+object=#point,line,vector,plan,grille,cube,cylindre,cylindrecreux,cone,conecreux,tronccone,troncconecreux,sphere,ellipsoid,calottesphere,calottespherecreuse,tore,tetrahedron,octahedron,dodecahedron,icosahedron,anneau,prisme,prismecreux,parallelepiped,face,polygonregulier,ruban,surface,surface*,surfaceparametree,pie,fusion,geode,load,offfile,objfile,datfile,new,courbe,vecteur,vecteur3d
a=%
action=#none,draw,draw*,draw**,writesolid,writeobj,writeoff
affinage=#0,1,2,3,all
@@ -85,7 +85,7 @@ dualreg#true,false
faces={%}
fcol=%
fcolor=#%color
-file=%
+filename=%
fillcolor=#%color
fontsize=##L
function=#%pstsolides3dfunc
@@ -244,7 +244,7 @@ Zmin=%
#keyvals:\psImage#c
divisions=%
-file=%
+filename=%
normal=%
origine=%
phi=%
@@ -319,4 +319,4 @@ Brown#B
Tan#B
Gray#B
Black#B
-White#B
\ No newline at end of file
+White#B
diff --git a/completion/tagpdf.cwl b/completion/tagpdf.cwl
index 13ac588e4b..3665ddab88 100644
--- a/completion/tagpdf.cwl
+++ b/completion/tagpdf.cwl
@@ -1,11 +1,12 @@
# tagpdf package
-# Matthew Bertucci 2023/08/08 for v0.98k
+# Matthew Bertucci 2023/10/31 for v0.98m
#include:pdfmanagement-testphase
#keyvals:\usepackage/tagpdf#c
luamode
genericmode
+disabledelayedshipout
#endkeyvals
\tagpdfsetup{keyvals}