From eacb3a0f5b3df3481ddd771dfa84e01d8218da26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=ADn=20Lucas=20Golini?= Date: Wed, 28 May 2025 23:54:34 -0300 Subject: [PATCH] Syntax Definitions are going to be loaded on-demand instead of during start-up (this allows to add as many as wanted without worrying about memory usage or load times). Added Racket syntax highlighting and LSP support (SpartanJ/ecode#459). --- bin/assets/plugins/lspclient.json | 14 +- include/eepp/ui/doc/syntaxdefinition.hpp | 38 +- .../eepp/ui/doc/syntaxdefinitionmanager.hpp | 13 +- src/eepp/ui/doc/syntaxdefinition.cpp | 6 - src/eepp/ui/doc/syntaxdefinitionmanager.cpp | 212 ++- .../src/eepp/ui/doc/languages/ada.cpp | 3 +- .../src/eepp/ui/doc/languages/ada.hpp | 4 +- .../src/eepp/ui/doc/languages/adept.cpp | 3 +- .../src/eepp/ui/doc/languages/adept.hpp | 4 +- .../src/eepp/ui/doc/languages/angelscript.cpp | 4 +- .../src/eepp/ui/doc/languages/angelscript.hpp | 4 +- .../src/eepp/ui/doc/languages/awkscript.cpp | 4 +- .../src/eepp/ui/doc/languages/awkscript.hpp | 4 +- .../src/eepp/ui/doc/languages/batchscript.cpp | 4 +- .../src/eepp/ui/doc/languages/batchscript.hpp | 4 +- .../src/eepp/ui/doc/languages/bazel.cpp | 4 +- .../src/eepp/ui/doc/languages/bazel.hpp | 4 +- .../src/eepp/ui/doc/languages/bend.cpp | 3 +- .../src/eepp/ui/doc/languages/bend.hpp | 4 +- .../src/eepp/ui/doc/languages/blade.cpp | 3 +- .../src/eepp/ui/doc/languages/blade.hpp | 4 +- .../src/eepp/ui/doc/languages/blueprint.cpp | 4 +- .../src/eepp/ui/doc/languages/blueprint.hpp | 4 +- .../src/eepp/ui/doc/languages/brainfuck.cpp | 4 +- .../src/eepp/ui/doc/languages/brainfuck.hpp | 4 +- .../src/eepp/ui/doc/languages/buzz.cpp | 3 +- .../src/eepp/ui/doc/languages/buzz.hpp | 4 +- .../src/eepp/ui/doc/languages/c3.cpp | 3 +- .../src/eepp/ui/doc/languages/c3.hpp | 4 +- .../src/eepp/ui/doc/languages/carbon.cpp | 3 +- .../src/eepp/ui/doc/languages/carbon.hpp | 4 +- .../src/eepp/ui/doc/languages/clojure.cpp | 4 +- .../src/eepp/ui/doc/languages/clojure.hpp | 4 +- .../src/eepp/ui/doc/languages/cmake.cpp | 4 +- .../src/eepp/ui/doc/languages/cmake.hpp | 4 +- .../eepp/ui/doc/languages/containerfile.cpp | 3 +- .../eepp/ui/doc/languages/containerfile.hpp | 4 +- .../src/eepp/ui/doc/languages/covscript.cpp | 3 +- .../src/eepp/ui/doc/languages/covscript.hpp | 4 +- .../src/eepp/ui/doc/languages/crystal.cpp | 4 +- .../src/eepp/ui/doc/languages/crystal.hpp | 4 +- .../src/eepp/ui/doc/languages/csharp.cpp | 3 +- .../src/eepp/ui/doc/languages/csharp.hpp | 4 +- .../src/eepp/ui/doc/languages/d.cpp | 3 +- .../src/eepp/ui/doc/languages/d.hpp | 4 +- .../src/eepp/ui/doc/languages/dart.cpp | 3 +- .../src/eepp/ui/doc/languages/dart.hpp | 4 +- .../src/eepp/ui/doc/languages/difffile.cpp | 4 +- .../src/eepp/ui/doc/languages/difffile.hpp | 4 +- .../src/eepp/ui/doc/languages/elena.cpp | 4 +- .../src/eepp/ui/doc/languages/elena.hpp | 4 +- .../src/eepp/ui/doc/languages/elixir.cpp | 4 +- .../src/eepp/ui/doc/languages/elixir.hpp | 4 +- .../src/eepp/ui/doc/languages/elm.cpp | 4 +- .../src/eepp/ui/doc/languages/elm.hpp | 4 +- .../eepp/ui/doc/languages/environmentfile.cpp | 4 +- .../eepp/ui/doc/languages/environmentfile.hpp | 4 +- .../src/eepp/ui/doc/languages/fantom.cpp | 3 +- .../src/eepp/ui/doc/languages/fantom.hpp | 4 +- .../src/eepp/ui/doc/languages/fennel.cpp | 4 +- .../src/eepp/ui/doc/languages/fennel.hpp | 4 +- .../src/eepp/ui/doc/languages/fixscript.cpp | 3 +- .../src/eepp/ui/doc/languages/fixscript.hpp | 4 +- .../src/eepp/ui/doc/languages/flow9.cpp | 3 +- .../src/eepp/ui/doc/languages/flow9.hpp | 4 +- .../src/eepp/ui/doc/languages/fortran.cpp | 3 +- .../src/eepp/ui/doc/languages/fortran.hpp | 4 +- .../src/eepp/ui/doc/languages/fstab.cpp | 4 +- .../src/eepp/ui/doc/languages/fstab.hpp | 4 +- .../src/eepp/ui/doc/languages/gdscript.cpp | 3 +- .../src/eepp/ui/doc/languages/gdscript.hpp | 4 +- .../src/eepp/ui/doc/languages/gleam.cpp | 4 +- .../src/eepp/ui/doc/languages/gleam.hpp | 4 +- .../src/eepp/ui/doc/languages/glsl.cpp | 3 +- .../src/eepp/ui/doc/languages/glsl.hpp | 4 +- .../src/eepp/ui/doc/languages/go.cpp | 3 +- .../src/eepp/ui/doc/languages/go.hpp | 4 +- .../src/eepp/ui/doc/languages/graphql.cpp | 4 +- .../src/eepp/ui/doc/languages/graphql.hpp | 4 +- .../src/eepp/ui/doc/languages/groovy.cpp | 3 +- .../src/eepp/ui/doc/languages/groovy.hpp | 4 +- .../src/eepp/ui/doc/languages/hare.cpp | 3 +- .../src/eepp/ui/doc/languages/hare.hpp | 4 +- .../src/eepp/ui/doc/languages/haskell.cpp | 4 +- .../src/eepp/ui/doc/languages/haskell.hpp | 4 +- .../src/eepp/ui/doc/languages/haxe.cpp | 25 +- .../src/eepp/ui/doc/languages/haxe.hpp | 4 +- .../src/eepp/ui/doc/languages/hlsl.cpp | 3 +- .../src/eepp/ui/doc/languages/hlsl.hpp | 4 +- .../src/eepp/ui/doc/languages/htaccess.cpp | 4 +- .../src/eepp/ui/doc/languages/htaccess.hpp | 4 +- .../src/eepp/ui/doc/languages/ignorefile.cpp | 4 +- .../src/eepp/ui/doc/languages/ignorefile.hpp | 4 +- .../src/eepp/ui/doc/languages/ispc.cpp | 3 +- .../src/eepp/ui/doc/languages/ispc.hpp | 4 +- .../src/eepp/ui/doc/languages/jai.cpp | 3 +- .../src/eepp/ui/doc/languages/jai.hpp | 4 +- .../src/eepp/ui/doc/languages/janet.cpp | 4 +- .../src/eepp/ui/doc/languages/janet.hpp | 4 +- .../src/eepp/ui/doc/languages/java.cpp | 3 +- .../src/eepp/ui/doc/languages/java.hpp | 4 +- .../src/eepp/ui/doc/languages/jsx.cpp | 3 +- .../src/eepp/ui/doc/languages/jsx.hpp | 4 +- .../src/eepp/ui/doc/languages/jule.cpp | 3 +- .../src/eepp/ui/doc/languages/jule.hpp | 4 +- .../src/eepp/ui/doc/languages/julia.cpp | 3 +- .../src/eepp/ui/doc/languages/julia.hpp | 4 +- .../src/eepp/ui/doc/languages/kotlin.cpp | 3 +- .../src/eepp/ui/doc/languages/kotlin.hpp | 4 +- .../src/eepp/ui/doc/languages/latex.cpp | 4 +- .../src/eepp/ui/doc/languages/latex.hpp | 4 +- .../src/eepp/ui/doc/languages/lbstanza.cpp | 4 +- .../src/eepp/ui/doc/languages/lbstanza.hpp | 4 +- .../src/eepp/ui/doc/languages/lisp.cpp | 3 +- .../src/eepp/ui/doc/languages/lisp.hpp | 4 +- .../src/eepp/ui/doc/languages/lobster.cpp | 4 +- .../src/eepp/ui/doc/languages/lobster.hpp | 4 +- .../src/eepp/ui/doc/languages/makefile.cpp | 4 +- .../src/eepp/ui/doc/languages/makefile.hpp | 4 +- .../src/eepp/ui/doc/languages/meson.cpp | 4 +- .../src/eepp/ui/doc/languages/meson.hpp | 4 +- .../src/eepp/ui/doc/languages/modula2.cpp | 4 +- .../src/eepp/ui/doc/languages/modula2.hpp | 4 +- .../src/eepp/ui/doc/languages/modula3.cpp | 4 +- .../src/eepp/ui/doc/languages/modula3.hpp | 4 +- .../src/eepp/ui/doc/languages/moonscript.cpp | 3 +- .../src/eepp/ui/doc/languages/moonscript.hpp | 4 +- .../src/eepp/ui/doc/languages/nelua.cpp | 3 +- .../src/eepp/ui/doc/languages/nelua.hpp | 4 +- .../src/eepp/ui/doc/languages/nim.cpp | 3 +- .../src/eepp/ui/doc/languages/nim.hpp | 4 +- .../src/eepp/ui/doc/languages/objeck.cpp | 3 +- .../src/eepp/ui/doc/languages/objeck.hpp | 4 +- .../src/eepp/ui/doc/languages/objective-c.cpp | 3 +- .../src/eepp/ui/doc/languages/objective-c.hpp | 4 +- .../src/eepp/ui/doc/languages/ocaml.cpp | 3 +- .../src/eepp/ui/doc/languages/ocaml.hpp | 4 +- .../src/eepp/ui/doc/languages/odin.cpp | 4 +- .../src/eepp/ui/doc/languages/odin.hpp | 4 +- .../src/eepp/ui/doc/languages/openscad.cpp | 4 +- .../src/eepp/ui/doc/languages/openscad.hpp | 4 +- .../src/eepp/ui/doc/languages/pascal.cpp | 4 +- .../src/eepp/ui/doc/languages/pascal.hpp | 4 +- .../src/eepp/ui/doc/languages/perl.cpp | 4 +- .../src/eepp/ui/doc/languages/perl.hpp | 4 +- .../src/eepp/ui/doc/languages/php.cpp | 3 +- .../src/eepp/ui/doc/languages/php.hpp | 4 +- .../src/eepp/ui/doc/languages/pico-8.cpp | 4 +- .../src/eepp/ui/doc/languages/pico-8.hpp | 4 +- .../src/eepp/ui/doc/languages/po.cpp | 4 +- .../src/eepp/ui/doc/languages/po.hpp | 4 +- .../src/eepp/ui/doc/languages/pony.cpp | 3 +- .../src/eepp/ui/doc/languages/pony.hpp | 4 +- .../src/eepp/ui/doc/languages/postgresql.cpp | 4 +- .../src/eepp/ui/doc/languages/postgresql.hpp | 4 +- .../src/eepp/ui/doc/languages/powershell.cpp | 4 +- .../src/eepp/ui/doc/languages/powershell.hpp | 4 +- .../src/eepp/ui/doc/languages/r.cpp | 4 +- .../src/eepp/ui/doc/languages/r.hpp | 4 +- .../src/eepp/ui/doc/languages/racket.cpp | 1527 +++++++++++++++++ .../src/eepp/ui/doc/languages/racket.hpp | 12 + .../src/eepp/ui/doc/languages/rave.cpp | 3 +- .../src/eepp/ui/doc/languages/rave.hpp | 4 +- .../src/eepp/ui/doc/languages/rescript.cpp | 4 +- .../src/eepp/ui/doc/languages/rescript.hpp | 4 +- .../src/eepp/ui/doc/languages/ring.cpp | 4 +- .../src/eepp/ui/doc/languages/ring.hpp | 4 +- .../src/eepp/ui/doc/languages/ruby.cpp | 3 +- .../src/eepp/ui/doc/languages/ruby.hpp | 4 +- .../src/eepp/ui/doc/languages/rust.cpp | 3 +- .../src/eepp/ui/doc/languages/rust.hpp | 4 +- .../src/eepp/ui/doc/languages/sass.cpp | 4 +- .../src/eepp/ui/doc/languages/sass.hpp | 4 +- .../src/eepp/ui/doc/languages/scala.cpp | 4 +- .../src/eepp/ui/doc/languages/scala.hpp | 4 +- .../src/eepp/ui/doc/languages/shellscript.cpp | 4 +- .../src/eepp/ui/doc/languages/shellscript.hpp | 4 +- .../src/eepp/ui/doc/languages/smallbasic.cpp | 4 +- .../src/eepp/ui/doc/languages/smallbasic.hpp | 4 +- .../src/eepp/ui/doc/languages/solidity.cpp | 3 +- .../src/eepp/ui/doc/languages/solidity.hpp | 4 +- .../src/eepp/ui/doc/languages/sql.cpp | 6 +- .../src/eepp/ui/doc/languages/sql.hpp | 4 +- .../src/eepp/ui/doc/languages/squirrel.cpp | 3 +- .../src/eepp/ui/doc/languages/squirrel.hpp | 4 +- .../src/eepp/ui/doc/languages/svelte.cpp | 4 +- .../src/eepp/ui/doc/languages/svelte.hpp | 4 +- .../src/eepp/ui/doc/languages/swift.cpp | 3 +- .../src/eepp/ui/doc/languages/swift.hpp | 4 +- .../src/eepp/ui/doc/languages/tcl.cpp | 4 +- .../src/eepp/ui/doc/languages/tcl.hpp | 4 +- .../src/eepp/ui/doc/languages/teal.cpp | 3 +- .../src/eepp/ui/doc/languages/teal.hpp | 4 +- .../src/eepp/ui/doc/languages/toml.cpp | 3 +- .../src/eepp/ui/doc/languages/toml.hpp | 4 +- .../src/eepp/ui/doc/languages/typescript.cpp | 5 +- .../src/eepp/ui/doc/languages/typescript.hpp | 4 +- .../src/eepp/ui/doc/languages/typst.cpp | 4 +- .../src/eepp/ui/doc/languages/typst.hpp | 4 +- .../src/eepp/ui/doc/languages/u.cpp | 3 +- .../src/eepp/ui/doc/languages/u.hpp | 4 +- .../src/eepp/ui/doc/languages/v.cpp | 3 +- .../src/eepp/ui/doc/languages/v.hpp | 4 +- .../src/eepp/ui/doc/languages/v1.cpp | 5 +- .../src/eepp/ui/doc/languages/v1.hpp | 4 +- .../src/eepp/ui/doc/languages/vala.cpp | 3 +- .../src/eepp/ui/doc/languages/vala.hpp | 4 +- .../src/eepp/ui/doc/languages/vb.cpp | 4 +- .../src/eepp/ui/doc/languages/vb.hpp | 4 +- .../src/eepp/ui/doc/languages/verilog.cpp | 4 +- .../src/eepp/ui/doc/languages/verilog.hpp | 4 +- .../src/eepp/ui/doc/languages/vue.cpp | 4 +- .../src/eepp/ui/doc/languages/vue.hpp | 4 +- .../src/eepp/ui/doc/languages/wren.cpp | 3 +- .../src/eepp/ui/doc/languages/wren.hpp | 4 +- .../src/eepp/ui/doc/languages/x86assembly.cpp | 4 +- .../src/eepp/ui/doc/languages/x86assembly.hpp | 4 +- .../src/eepp/ui/doc/languages/xit.cpp | 4 +- .../src/eepp/ui/doc/languages/xit.hpp | 4 +- .../src/eepp/ui/doc/languages/xtend.cpp | 4 +- .../src/eepp/ui/doc/languages/xtend.hpp | 4 +- .../src/eepp/ui/doc/languages/yaml.cpp | 3 +- .../src/eepp/ui/doc/languages/yaml.hpp | 4 +- .../src/eepp/ui/doc/languages/yuescript.cpp | 4 +- .../src/eepp/ui/doc/languages/yuescript.hpp | 4 +- .../src/eepp/ui/doc/languages/zephir.cpp | 4 +- .../src/eepp/ui/doc/languages/zephir.hpp | 4 +- .../src/eepp/ui/doc/languages/zig.cpp | 3 +- .../src/eepp/ui/doc/languages/zig.hpp | 4 +- .../ui/doc/languagessyntaxhighlighting.cpp | 690 ++++++-- 230 files changed, 2898 insertions(+), 475 deletions(-) create mode 100644 src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/racket.cpp create mode 100644 src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/racket.hpp diff --git a/bin/assets/plugins/lspclient.json b/bin/assets/plugins/lspclient.json index 9b46b058a..509ee70bb 100644 --- a/bin/assets/plugins/lspclient.json +++ b/bin/assets/plugins/lspclient.json @@ -59,8 +59,10 @@ "initializationOptions": { "usePlaceholders": true, "semanticTokens": true, - "noSemanticString": true, - "noSemanticNumber": true + "semanticTokenTypes": { + "string": false, + "number": false + } } }, { @@ -414,6 +416,14 @@ "command": "u.._language_server", "file_patterns": ["%.u$", "%.uh$"], "rootIndicationFileNames": [".git"] + }, + { + "language": "racket", + "name": "racket-langserver", + "url": "https://github.com/jeapostrophe/racket-langserver", + "command": "racket -l racket-langserver", + "file_patterns": ["%.rkt$"], + "rootIndicationFileNames": [".git"] } ] } diff --git a/include/eepp/ui/doc/syntaxdefinition.hpp b/include/eepp/ui/doc/syntaxdefinition.hpp index f3b209ed8..ff4110b56 100644 --- a/include/eepp/ui/doc/syntaxdefinition.hpp +++ b/include/eepp/ui/doc/syntaxdefinition.hpp @@ -134,6 +134,41 @@ struct EE_API SyntaxPattern { inline bool hasContentScope() const { return contentScopeRepoHash != 0; } }; +struct EE_API SyntaxPreDefinition { + std::string name; + std::function load; + std::vector files; + std::vector headers; + std::string lspName; + std::vector alternativeNames; + bool extensionPriority{ false }; + + SyntaxPreDefinition( const std::string& name, std::function load, + std::vector&& files, std::vector&& headers = {}, + const std::string& lspName = "", + std::vector&& alternativeNames = {}, + bool extensionPriority = false ) : + name( name ), + load( load ), + files( std::move( files ) ), + headers( std::move( headers ) ), + lspName( lspName.empty() ? String::toLower( name ) : lspName ), + alternativeNames( std::move( alternativeNames ) ), + extensionPriority( extensionPriority ) {} + + const std::string& getLanguageName() const { return name; } + + const std::vector& getAlternativeNames() const { return alternativeNames; } + + const std::string& getLSPName() const { return lspName; } + + const std::vector& getFiles() const { return files; } + + bool hasExtensionPriority() const { return extensionPriority; } + + const std::vector& getHeaders() const { return headers; } +}; + class EE_API SyntaxDefinition { public: SyntaxDefinition(); @@ -149,8 +184,6 @@ class EE_API SyntaxDefinition { std::string getLanguageNameForFileSystem() const; - const String::HashType& getLanguageId() const; - const std::vector& getFiles() const; std::string getFileExtension() const; @@ -264,7 +297,6 @@ class EE_API SyntaxDefinition { friend class SyntaxDefinitionManager; std::string mLanguageName; - String::HashType mLanguageId; std::vector mFiles; std::vector mPatterns; SyntaxDefMap mSymbols; diff --git a/include/eepp/ui/doc/syntaxdefinitionmanager.hpp b/include/eepp/ui/doc/syntaxdefinitionmanager.hpp index 2dac5e96c..0add2f70e 100644 --- a/include/eepp/ui/doc/syntaxdefinitionmanager.hpp +++ b/include/eepp/ui/doc/syntaxdefinitionmanager.hpp @@ -22,7 +22,7 @@ class EE_API SyntaxDefinitionManager { std::size_t count() const; - void reserveSpaceForLanguages( std::size_t totalLangs ); + SyntaxPreDefinition& addPreDefinition( SyntaxPreDefinition&& preDefinition ); SyntaxDefinition& add( SyntaxDefinition&& syntaxStyle ); @@ -53,20 +53,12 @@ class EE_API SyntaxDefinitionManager { const SyntaxDefinition& getByLSPName( const std::string_view& name ) const; - const SyntaxDefinition& getByLanguageId( const String::HashType& id ) const; - - SyntaxDefinition& getByLanguageNameRef( const std::string& name ); - std::vector getLanguageNames() const; std::vector getExtensionsPatternsSupported() const; - const SyntaxDefinition* getPtrByLanguageName( const std::string& name ) const; - const SyntaxDefinition* getPtrByLSPName( const std::string& name ) const; - const SyntaxDefinition* getPtrByLanguageId( const String::HashType& id ) const; - bool loadFromStream( IOStream& stream, std::vector* addedLangs ); bool loadFromStream( IOStream& stream ); @@ -81,6 +73,8 @@ class EE_API SyntaxDefinitionManager { const std::vector& getDefinitions() const; + const std::vector& getPreDefinitions() const; + /* empty = all */ bool save( const std::string& path, const std::vector& def = {} ); @@ -92,6 +86,7 @@ class EE_API SyntaxDefinitionManager { SyntaxDefinitionManager( std::size_t reserveSpaceForLanguages = 12 ); std::vector mDefinitions; + std::vector mPreDefinitions; std::map mPriorities; std::optional getLanguageIndex( const std::string& langName ); diff --git a/src/eepp/ui/doc/syntaxdefinition.cpp b/src/eepp/ui/doc/syntaxdefinition.cpp index 0030a8323..864419ade 100644 --- a/src/eepp/ui/doc/syntaxdefinition.cpp +++ b/src/eepp/ui/doc/syntaxdefinition.cpp @@ -105,7 +105,6 @@ SyntaxDefinition::SyntaxDefinition( const std::string& comment, std::vector&& headers, const std::string& lspName, std::vector>>&& repositories ) : mLanguageName( languageName ), - mLanguageId( String::hash( String::toLower( languageName ) ) ), mFiles( std::move( files ) ), mPatterns( std::move( patterns ) ), mSymbolNames( std::move( symbols ) ), @@ -314,7 +313,6 @@ SyntaxDefinition& SyntaxDefinition::setAutoCloseXMLTags( bool autoCloseXMLTags ) SyntaxDefinition& SyntaxDefinition::setLanguageName( const std::string& languageName ) { mLanguageName = languageName; mLSPName = String::toLower( languageName ); - mLanguageId = String::hash( mLSPName ); return *this; } @@ -340,10 +338,6 @@ std::string SyntaxDefinition::getLanguageNameForFileSystem() const { return lang; } -const String::HashType& SyntaxDefinition::getLanguageId() const { - return mLanguageId; -} - SyntaxPattern::SyntaxPattern( std::vector&& _patterns, const std::string& _type, const std::string& _syntax, SyntaxPatternMatchType matchType ) : patterns( std::move( _patterns ) ), diff --git a/src/eepp/ui/doc/syntaxdefinitionmanager.cpp b/src/eepp/ui/doc/syntaxdefinitionmanager.cpp index 7e1b68640..b02eb01f8 100644 --- a/src/eepp/ui/doc/syntaxdefinitionmanager.cpp +++ b/src/eepp/ui/doc/syntaxdefinitionmanager.cpp @@ -197,6 +197,10 @@ const std::vector& SyntaxDefinitionManager::getDefinitions() c return mDefinitions; } +const std::vector& SyntaxDefinitionManager::getPreDefinitions() const { + return mPreDefinitions; +} + static std::optional serializePattern( const SyntaxPattern& ptrn, const SyntaxDefinition& def ) { json pattern; @@ -434,18 +438,19 @@ std::pair SyntaxDefinitionManager::toCPP( const Syntax std::string lang( def.getLanguageNameForFileSystem() ); std::string func( funcName( lang ) ); - std::string header = "#ifndef EE_UI_DOC_" + func + "\n#define EE_UI_DOC_" + func + - "\n\nnamespace EE { namespace UI { namespace " - "Doc { namespace Language {\n\nextern void add" + - func + "();\n\n}}}}\n\n#endif\n"; + std::string header = + "#ifndef EE_UI_DOC_" + func + "\n#define EE_UI_DOC_" + func + + "\n#include \n\nnamespace EE { namespace UI { namespace " + "Doc { namespace Language {\n\nextern SyntaxDefinition& add" + + func + "();\n\n}}}}\n\n#endif\n"; std::string buf = String::format( R"cpp(#include #include namespace EE { namespace UI { namespace Doc { namespace Language { )cpp", lang.c_str() ); - buf += "\nvoid add" + func + "() {\n"; - buf += "\nSyntaxDefinitionManager::instance()->add(\n\n{"; + buf += "\nSyntaxDefinition& add" + func + "() {\n"; + buf += "\nreturn SyntaxDefinitionManager::instance()->add(\n\n{"; // lang name buf += str( def.getLanguageName() ) + ",\n"; // file types @@ -529,6 +534,12 @@ SyntaxDefinition& SyntaxDefinitionManager::add( SyntaxDefinition&& syntaxStyle ) return mDefinitions.back(); } +SyntaxPreDefinition& +SyntaxDefinitionManager::addPreDefinition( SyntaxPreDefinition&& preDefinition ) { + mPreDefinitions.emplace_back( std::move( preDefinition ) ); + return mPreDefinitions.back(); +} + const SyntaxDefinition& SyntaxDefinitionManager::getPlainDefinition() const { return mDefinitions[0]; } @@ -539,7 +550,7 @@ SyntaxDefinition& SyntaxDefinitionManager::getByExtensionRef( const std::string& const SyntaxDefinition& SyntaxDefinitionManager::getByLanguageName( const std::string_view& name ) const { - for ( auto& definition : mDefinitions ) { + for ( const auto& definition : mDefinitions ) { if ( definition.getLanguageName() == name || std::find_if( definition.getAlternativeNames().begin(), definition.getAlternativeNames().end(), @@ -547,6 +558,17 @@ SyntaxDefinitionManager::getByLanguageName( const std::string_view& name ) const definition.getAlternativeNames().end() ) return definition; } + + for ( const auto& preDefinition : mPreDefinitions ) { + if ( preDefinition.name == name || + std::find_if( preDefinition.alternativeNames.begin(), + preDefinition.alternativeNames.end(), + [name]( const std::string& altName ) { return altName == name; } ) != + preDefinition.alternativeNames.end() ) { + return preDefinition.load(); + } + } + return mDefinitions[0]; } @@ -557,7 +579,7 @@ const SyntaxDefinition& SyntaxDefinitionManager::getByLanguageIndex( const Uint3 const SyntaxDefinition& SyntaxDefinitionManager::getByLanguageNameInsensitive( const std::string_view& name ) const { - for ( auto& definition : mDefinitions ) { + for ( const auto& definition : mDefinitions ) { if ( String::iequals( definition.getLanguageName(), name ) || std::find_if( definition.getAlternativeNames().begin(), definition.getAlternativeNames().end(), @@ -566,57 +588,66 @@ SyntaxDefinitionManager::getByLanguageNameInsensitive( const std::string_view& n } ) != definition.getAlternativeNames().end() ) return definition; } + + for ( const auto& preDefinition : mPreDefinitions ) { + if ( String::iequals( preDefinition.getLanguageName(), name ) || + std::find_if( preDefinition.getAlternativeNames().begin(), + preDefinition.getAlternativeNames().end(), + [name]( const std::string& altName ) { + return String::iequals( altName, name ); + } ) != preDefinition.getAlternativeNames().end() ) + return preDefinition.load(); + } + return mDefinitions[0]; } const SyntaxDefinition& SyntaxDefinitionManager::getByLSPName( const std::string_view& name ) const { - for ( auto& definition : mDefinitions ) { + for ( const auto& definition : mDefinitions ) { if ( definition.getLSPName() == name ) return definition; } - return mDefinitions[0]; -} - -const SyntaxDefinition& -SyntaxDefinitionManager::getByLanguageId( const String::HashType& id ) const { - for ( auto& definition : mDefinitions ) { - if ( definition.getLanguageId() == id ) - return definition; + for ( const auto& preDefinition : mPreDefinitions ) { + if ( preDefinition.getLSPName() == name ) + return preDefinition.load(); } return mDefinitions[0]; } -SyntaxDefinition& SyntaxDefinitionManager::getByLanguageNameRef( const std::string& name ) { - return const_cast( getByLanguageName( name ) ); -} - std::vector SyntaxDefinitionManager::getLanguageNames() const { - std::vector names; + std::unordered_set names; for ( auto& definition : mDefinitions ) { if ( definition.isVisible() ) - names.push_back( definition.getLanguageName() ); + names.insert( definition.getLanguageName() ); } - std::sort( names.begin(), names.end() ); - return names; + for ( auto& preDefinition : mPreDefinitions ) + names.insert( preDefinition.getLanguageName() ); + std::vector vnames; + vnames.reserve( names.size() ); + for ( auto& name : names ) + vnames.emplace_back( std::move( name ) ); + std::sort( vnames.begin(), vnames.end() ); + return vnames; } std::vector SyntaxDefinitionManager::getExtensionsPatternsSupported() const { - std::vector exts; + std::unordered_set exts; exts.reserve( mDefinitions.size() ); for ( auto& definition : mDefinitions ) for ( auto& pattern : definition.getFiles() ) - exts.emplace_back( pattern ); - return exts; -} + exts.insert( pattern ); -const SyntaxDefinition* -SyntaxDefinitionManager::getPtrByLanguageName( const std::string& name ) const { - for ( const auto& definition : mDefinitions ) { - if ( definition.getLanguageName() == name ) - return &definition; - } - return nullptr; + for ( auto& preDefinition : mPreDefinitions ) + for ( auto& pattern : preDefinition.getFiles() ) + exts.insert( pattern ); + + std::vector vexts; + vexts.reserve( exts.size() ); + for ( auto& ext : exts ) + vexts.emplace_back( std::move( ext ) ); + std::sort( vexts.begin(), vexts.end() ); + return vexts; } const SyntaxDefinition* SyntaxDefinitionManager::getPtrByLSPName( const std::string& name ) const { @@ -624,14 +655,9 @@ const SyntaxDefinition* SyntaxDefinitionManager::getPtrByLSPName( const std::str if ( definition.getLSPName() == name ) return &definition; } - return nullptr; -} - -const SyntaxDefinition* -SyntaxDefinitionManager::getPtrByLanguageId( const String::HashType& id ) const { - for ( const auto& definition : mDefinitions ) { - if ( definition.getLanguageId() == id ) - return &definition; + for ( const auto& preDefinition : mPreDefinitions ) { + if ( preDefinition.getLSPName() == name ) + return &preDefinition.load(); } return nullptr; } @@ -1082,6 +1108,24 @@ SyntaxDefinitionManager::languagesThatSupportExtension( std::string extension ) } } } + + for ( const auto& preDefinition : mPreDefinitions ) { + for ( const auto& ext : preDefinition.getFiles() ) { + if ( String::startsWith( ext, "%." ) || String::startsWith( ext, "^" ) || + String::endsWith( ext, "$" ) ) { + LuaPattern words( ext ); + int start, end; + if ( words.find( extension, start, end ) ) { + langs.push_back( &preDefinition.load() ); + break; + } + } else if ( extension == ext ) { + langs.push_back( &preDefinition.load() ); + break; + } + } + } + return langs; } @@ -1091,7 +1135,7 @@ bool SyntaxDefinitionManager::extensionCanRepresentManyLanguages( std::string ex if ( extension[0] != '.' ) extension = '.' + extension; - int count = 0; + std::unordered_set count; for ( const auto& definition : mDefinitions ) { for ( const auto& ext : definition.getFiles() ) { if ( String::startsWith( ext, "%." ) || String::startsWith( ext, "^" ) || @@ -1099,17 +1143,41 @@ bool SyntaxDefinitionManager::extensionCanRepresentManyLanguages( std::string ex LuaPattern words( ext ); int start, end; if ( words.find( extension, start, end ) ) { - count++; - if ( count > 1 ) + count.insert( definition.getLanguageName() ); + if ( count.size() > 1 ) return true; + break; } } else if ( extension == ext ) { - count++; - if ( count > 1 ) + count.insert( definition.getLanguageName() ); + if ( count.size() > 1 ) return true; + break; } } } + + for ( const auto& preDefinition : mPreDefinitions ) { + for ( const auto& ext : preDefinition.getFiles() ) { + if ( String::startsWith( ext, "%." ) || String::startsWith( ext, "^" ) || + String::endsWith( ext, "$" ) ) { + LuaPattern words( ext ); + int start, end; + if ( words.find( extension, start, end ) ) { + count.insert( preDefinition.getLanguageName() ); + if ( count.size() > 1 ) + return true; + break; + } + } else if ( extension == ext ) { + count.insert( preDefinition.getLanguageName() ); + if ( count.size() > 1 ) + return true; + break; + } + } + } + return false; } @@ -1169,6 +1237,37 @@ const SyntaxDefinition& SyntaxDefinitionManager::getByExtension( const std::stri } } } + + for ( const auto& preDefinition : mPreDefinitions ) { + for ( const auto& ext : preDefinition.getFiles() ) { + if ( String::startsWith( ext, "%." ) || String::startsWith( ext, "^" ) || + String::endsWith( ext, "$" ) ) { + LuaPattern words( ext ); + int start, end; + if ( words.find( fileName, start, end ) ) { + if ( hFileAsCPP && preDefinition.getLSPName() == "c" && ext == "%.h$" ) + return getByLSPName( "cpp" ); + + if ( extHasMultipleLangs && !preDefinition.hasExtensionPriority() ) { + def = &preDefinition.load(); + continue; + } + + return preDefinition.load(); + } + } else if ( extension == ext ) { + if ( hFileAsCPP && preDefinition.getLSPName() == "c" && ext == ".h" ) + return getByLSPName( "cpp" ); + + if ( extHasMultipleLangs && !preDefinition.hasExtensionPriority() ) { + def = &preDefinition.load(); + continue; + } + + return preDefinition.load(); + } + } + } } return def != nullptr ? *def : mDefinitions[0]; @@ -1187,6 +1286,17 @@ const SyntaxDefinition& SyntaxDefinitionManager::getByHeader( const std::string& } } } + + for ( auto preDefinition = mPreDefinitions.rbegin(); + preDefinition != mPreDefinitions.rend(); ++preDefinition ) { + for ( const auto& hdr : preDefinition->getHeaders() ) { + LuaPattern words( hdr ); + int start, end; + if ( words.find( header, start, end ) ) { + return preDefinition->load(); + } + } + } } return mDefinitions[0]; } @@ -1222,8 +1332,4 @@ std::size_t SyntaxDefinitionManager::count() const { return mDefinitions.size(); } -void SyntaxDefinitionManager::reserveSpaceForLanguages( std::size_t totalLangs ) { - mDefinitions.reserve( totalLangs ); -} - }}} // namespace EE::UI::Doc diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ada.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ada.cpp index 42a16f104..a7000f0ca 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ada.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ada.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addAda() { +SyntaxDefinition& addAda() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -115,6 +115,7 @@ void addAda() { } ); sd.setCaseInsensitive( true ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ada.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ada.hpp index 1c05c4eff..0d521bae5 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ada.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ada.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_ADA #define EE_UI_DOC_ADA +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addAda(); +extern SyntaxDefinition& addAda(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/adept.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/adept.cpp index ca6ed5b87..366224df5 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/adept.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/adept.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addAdept() { +SyntaxDefinition& addAdept() { auto& sd = SyntaxDefinitionManager::instance()->add( { "Adept", { "%.adept$" }, @@ -150,6 +150,7 @@ void addAdept() { "//" } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/adept.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/adept.hpp index 2927f487f..cead6447e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/adept.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/adept.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_ADEPT #define EE_UI_DOC_ADEPT +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addAdept(); +extern SyntaxDefinition& addAdept(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/angelscript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/angelscript.cpp index 8839d0890..821030129 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/angelscript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/angelscript.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addAngelScript() { +SyntaxDefinition& addAngelScript() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -57,6 +57,8 @@ void addAngelScript() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/angelscript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/angelscript.hpp index 8f4922d8b..ce507255f 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/angelscript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/angelscript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Angelscript #define EE_UI_DOC_Angelscript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addAngelScript(); +extern SyntaxDefinition& addAngelScript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/awkscript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/awkscript.cpp index a7dece403..598ff37a7 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/awkscript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/awkscript.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addAwkScript() { +SyntaxDefinition& addAwkScript() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Awk Script", { "%.awk$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/awkscript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/awkscript.hpp index ea87be39d..3363f621b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/awkscript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/awkscript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_AWKSCRIPT #define EE_UI_DOC_AWKSCRIPT +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addAwkScript(); +extern SyntaxDefinition& addAwkScript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/batchscript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/batchscript.cpp index eb02f4ebb..047e0359d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/batchscript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/batchscript.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addBatchScript() { +SyntaxDefinition& addBatchScript() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Batch Script", { "%.bat$", "%.cmd$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/batchscript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/batchscript.hpp index de9f76e1e..1679a0c3d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/batchscript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/batchscript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Batchscript #define EE_UI_DOC_Batchscript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addBatchScript(); +extern SyntaxDefinition& addBatchScript(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bazel.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bazel.cpp index a9b3d80e6..5d9210c93 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bazel.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bazel.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addBazel() { +SyntaxDefinition& addBazel() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Bazel", { "%.bazel$", "%.bzl$", "BUILD" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bazel.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bazel.hpp index 4ceb776ec..af3addf55 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bazel.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bazel.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Bazel #define EE_UI_DOC_Bazel +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addBazel(); +extern SyntaxDefinition& addBazel(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bend.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bend.cpp index 7dafa1203..e8b33c28e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bend.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bend.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addBend() { +SyntaxDefinition& addBend() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -51,6 +51,7 @@ void addBend() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bend.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bend.hpp index 7b4409b11..ff938cc76 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bend.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/bend.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Bend #define EE_UI_DOC_Bend +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addBend(); +extern SyntaxDefinition& addBend(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blade.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blade.cpp index 1c57f55b2..edd46f2ea 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blade.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blade.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addBlade() { +SyntaxDefinition& addBlade() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -44,6 +44,7 @@ void addBlade() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blade.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blade.hpp index 199fa2edd..ff59b4ca0 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blade.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blade.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Blade #define EE_UI_DOC_Blade +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addBlade(); +extern SyntaxDefinition& addBlade(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blueprint.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blueprint.cpp index 63588d969..312dc8c12 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blueprint.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blueprint.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addBlueprint() { +SyntaxDefinition& addBlueprint() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Blueprint", { "%.blp$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blueprint.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blueprint.hpp index 4369ac0c4..4ed4e9922 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blueprint.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/blueprint.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Blueprint #define EE_UI_DOC_Blueprint +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addBlueprint(); +extern SyntaxDefinition& addBlueprint(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/brainfuck.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/brainfuck.cpp index a7e51b4e0..4d43b1dd2 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/brainfuck.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/brainfuck.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addBrainfuck() { +SyntaxDefinition& addBrainfuck() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Brainfuck", { "%.bf$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/brainfuck.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/brainfuck.hpp index d1961bdbb..33cfb07b7 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/brainfuck.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/brainfuck.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Brainfuck #define EE_UI_DOC_Brainfuck +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addBrainfuck(); +extern SyntaxDefinition& addBrainfuck(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/buzz.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/buzz.cpp index a181eed5b..929ed0a99 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/buzz.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/buzz.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addBuzz() { +SyntaxDefinition& addBuzz() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -48,6 +48,7 @@ void addBuzz() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/buzz.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/buzz.hpp index c43f17ef0..60450eb37 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/buzz.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/buzz.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Buzz #define EE_UI_DOC_Buzz +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addBuzz(); +extern SyntaxDefinition& addBuzz(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/c3.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/c3.cpp index baab7533d..9a731802c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/c3.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/c3.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addC3() { +SyntaxDefinition& addC3() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -215,6 +215,7 @@ void addC3() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/c3.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/c3.hpp index 9031145f3..1ec33dfc3 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/c3.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/c3.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_C3 #define EE_UI_DOC_C3 +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addC3(); +extern SyntaxDefinition& addC3(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/carbon.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/carbon.cpp index 11a252adf..2eb3d9ded 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/carbon.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/carbon.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addCarbon() { +SyntaxDefinition& addCarbon() { // Based in Lite-XL Rohan Vashisht implementation // https://github.com/RohanVashisht1234/carbon_syntax_highlighter_lite-xl auto& sd = SyntaxDefinitionManager::instance()->add( @@ -54,6 +54,7 @@ void addCarbon() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/carbon.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/carbon.hpp index b57eb18e8..d9e3580f7 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/carbon.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/carbon.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Carbon #define EE_UI_DOC_Carbon +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addCarbon(); +extern SyntaxDefinition& addCarbon(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/clojure.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/clojure.cpp index cff57939b..e70f3fd14 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/clojure.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/clojure.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addClojure() { +SyntaxDefinition& addClojure() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Clojure", { "%.clj$", "%.cljs$", "%.clc$", "%.edn$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/clojure.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/clojure.hpp index db8a7b64d..9e28d54a8 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/clojure.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/clojure.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Clojure #define EE_UI_DOC_Clojure +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addClojure(); +extern SyntaxDefinition& addClojure(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/cmake.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/cmake.cpp index 9c40b78d9..db1301ac6 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/cmake.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/cmake.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addCMake() { +SyntaxDefinition& addCMake() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "CMake", { "%.cmake$", "CMakeLists%.txt$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/cmake.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/cmake.hpp index b88022ae3..6f5d05810 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/cmake.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/cmake.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Cmake #define EE_UI_DOC_Cmake +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addCMake(); +extern SyntaxDefinition& addCMake(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/containerfile.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/containerfile.cpp index b32561ff5..c14e34cca 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/containerfile.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/containerfile.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addContainerFile() { +SyntaxDefinition& addContainerFile() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -43,6 +43,7 @@ void addContainerFile() { "dockerfile" } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/containerfile.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/containerfile.hpp index 49727a0bc..24c93004a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/containerfile.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/containerfile.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Containerfile #define EE_UI_DOC_Containerfile +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addContainerFile(); +extern SyntaxDefinition& addContainerFile(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/covscript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/covscript.cpp index 266a5d0f3..99c4d9418 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/covscript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/covscript.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addCovScript() { +SyntaxDefinition& addCovScript() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -61,6 +61,7 @@ void addCovScript() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/covscript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/covscript.hpp index 02c70ac9f..6dac7e9b4 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/covscript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/covscript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Covscript #define EE_UI_DOC_Covscript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addCovScript(); +extern SyntaxDefinition& addCovScript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/crystal.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/crystal.cpp index 1e395d9c5..3e4c72464 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/crystal.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/crystal.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addCrystal() { +SyntaxDefinition& addCrystal() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Crystal", { "%.cr$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/crystal.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/crystal.hpp index bbc180e6a..f1aee6b1d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/crystal.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/crystal.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Crystal #define EE_UI_DOC_Crystal +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addCrystal(); +extern SyntaxDefinition& addCrystal(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/csharp.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/csharp.cpp index dac9e8320..44c3061db 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/csharp.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/csharp.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addCSharp() { +SyntaxDefinition& addCSharp() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -66,6 +66,7 @@ void addCSharp() { "csharp" } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/csharp.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/csharp.hpp index 86eec3f11..b8ead9eb8 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/csharp.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/csharp.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Csharp #define EE_UI_DOC_Csharp +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addCSharp(); +extern SyntaxDefinition& addCSharp(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/d.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/d.cpp index bd86a8bbf..7e7c41f7d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/d.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/d.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addD() { +SyntaxDefinition& addD() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -145,6 +145,7 @@ void addD() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/d.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/d.hpp index 73329dfaf..470e55748 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/d.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/d.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_D #define EE_UI_DOC_D +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addD(); +extern SyntaxDefinition& addD(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/dart.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/dart.cpp index 09a9ec063..ee2be5749 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/dart.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/dart.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addDart() { +SyntaxDefinition& addDart() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -49,6 +49,7 @@ void addDart() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/dart.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/dart.hpp index 2d73ddc96..dc1b173da 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/dart.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/dart.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Dart #define EE_UI_DOC_Dart +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addDart(); +extern SyntaxDefinition& addDart(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/difffile.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/difffile.cpp index cf4110449..e3c685d45 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/difffile.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/difffile.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addDiff() { +SyntaxDefinition& addDiff() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Diff File", { "%.diff$", "%.patch$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/difffile.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/difffile.hpp index 5992543fc..2de0f5d45 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/difffile.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/difffile.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Difffile #define EE_UI_DOC_Difffile +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addDiff(); +extern SyntaxDefinition& addDiff(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elena.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elena.cpp index eb41e7d88..76d590c4b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elena.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elena.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addElena() { +SyntaxDefinition& addElena() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "ELENA", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elena.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elena.hpp index ac85a79ba..2782690de 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elena.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elena.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Elena #define EE_UI_DOC_Elena +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addElena(); +extern SyntaxDefinition& addElena(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elixir.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elixir.cpp index 3e2eb68ae..ac4b2ec39 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elixir.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elixir.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addElixir() { +SyntaxDefinition& addElixir() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Elixir", { "%.ex$", "%.exs$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elixir.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elixir.hpp index f42b7d95e..bc70eb307 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elixir.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elixir.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Elixir #define EE_UI_DOC_Elixir +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addElixir(); +extern SyntaxDefinition& addElixir(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elm.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elm.cpp index 259b7a8d9..d7b50074b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elm.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elm.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addElm() { +SyntaxDefinition& addElm() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Elm", { "%.elm$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elm.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elm.hpp index 953a271ec..7e8af50f6 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elm.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/elm.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Elm #define EE_UI_DOC_Elm +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addElm(); +extern SyntaxDefinition& addElm(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/environmentfile.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/environmentfile.cpp index 128bb7f8e..b9c68d373 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/environmentfile.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/environmentfile.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addEnvironmentFile() { +SyntaxDefinition& addEnvironmentFile() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Environment File", { "%.env$", "%.env.[%w%-%_]*$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/environmentfile.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/environmentfile.hpp index 5ae7b46ee..22b8a12d9 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/environmentfile.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/environmentfile.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Environmentfile #define EE_UI_DOC_Environmentfile +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addEnvironmentFile(); +extern SyntaxDefinition& addEnvironmentFile(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fantom.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fantom.cpp index 07007de49..e141fd047 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fantom.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fantom.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addFantom() { +SyntaxDefinition& addFantom() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -116,6 +116,7 @@ void addFantom() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fantom.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fantom.hpp index 4cb01b57b..1083bd055 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fantom.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fantom.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Fantom #define EE_UI_DOC_Fantom +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addFantom(); +extern SyntaxDefinition& addFantom(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fennel.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fennel.cpp index f4c963be2..881d7e6e2 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fennel.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fennel.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addFennel() { +SyntaxDefinition& addFennel() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Fennel", { "%.fnl$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fennel.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fennel.hpp index 58c00a979..7c64edadc 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fennel.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fennel.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Fennel #define EE_UI_DOC_Fennel +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addFennel(); +extern SyntaxDefinition& addFennel(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fixscript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fixscript.cpp index 3ccbb3355..a7a7d0ec6 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fixscript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fixscript.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addFixScript() { +SyntaxDefinition& addFixScript() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -58,6 +58,7 @@ void addFixScript() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fixscript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fixscript.hpp index 3494c22f9..e16e4dac9 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fixscript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fixscript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_FixScript #define EE_UI_DOC_FixScript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addFixScript(); +extern SyntaxDefinition& addFixScript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/flow9.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/flow9.cpp index 8f4344089..79c700e1e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/flow9.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/flow9.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addFlow9() { +SyntaxDefinition& addFlow9() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -37,6 +37,7 @@ void addFlow9() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/flow9.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/flow9.hpp index 23835434d..dec3052bf 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/flow9.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/flow9.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Flow9 #define EE_UI_DOC_Flow9 +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addFlow9(); +extern SyntaxDefinition& addFlow9(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fortran.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fortran.cpp index 30d79af8b..b0c5d6eef 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fortran.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fortran.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addFortran() { +SyntaxDefinition& addFortran() { // Based in Lite-XL Rohan Vashisht implementation // https://github.com/RohanVashisht1234/fortran_syntax_highlighter_lite-xl auto& sd = SyntaxDefinitionManager::instance()->add( @@ -60,6 +60,7 @@ void addFortran() { } ); sd.setCaseInsensitive( true ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fortran.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fortran.hpp index ce10ef92c..f96bd4f21 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fortran.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fortran.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Fortran #define EE_UI_DOC_Fortran +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addFortran(); +extern SyntaxDefinition& addFortran(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fstab.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fstab.cpp index d51cdf514..08039d5cf 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fstab.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fstab.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addFstab() { +SyntaxDefinition& addFstab() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "fstab", { "fstab" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fstab.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fstab.hpp index 79568b007..7f939ac78 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fstab.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/fstab.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Fstab #define EE_UI_DOC_Fstab +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addFstab(); +extern SyntaxDefinition& addFstab(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gdscript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gdscript.cpp index aac6f08f5..3a58b345e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gdscript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gdscript.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addGDScript() { +SyntaxDefinition& addGDScript() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -104,6 +104,7 @@ void addGDScript() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gdscript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gdscript.hpp index b9bce1c2c..de36c0dbf 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gdscript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gdscript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Gdscript #define EE_UI_DOC_Gdscript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addGDScript(); +extern SyntaxDefinition& addGDScript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gleam.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gleam.cpp index 0157b4932..4f504075d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gleam.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gleam.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addGleam() { +SyntaxDefinition& addGleam() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "Gleam", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gleam.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gleam.hpp index 614b9240f..0e275867d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gleam.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/gleam.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Gleam #define EE_UI_DOC_Gleam +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addGleam(); +extern SyntaxDefinition& addGleam(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/glsl.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/glsl.cpp index 1517a9d71..93832aa89 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/glsl.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/glsl.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addGLSL() { +SyntaxDefinition& addGLSL() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -370,6 +370,7 @@ void addGLSL() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/glsl.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/glsl.hpp index 7336cfbe1..b2f851218 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/glsl.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/glsl.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Glsl #define EE_UI_DOC_Glsl +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addGLSL(); +extern SyntaxDefinition& addGLSL(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/go.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/go.cpp index fb4e3c797..b23ab2f64 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/go.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/go.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addGo() { +SyntaxDefinition& addGo() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -58,6 +58,7 @@ void addGo() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/go.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/go.hpp index 21d1bd208..abcc07828 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/go.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/go.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Go #define EE_UI_DOC_Go +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addGo(); +extern SyntaxDefinition& addGo(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/graphql.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/graphql.cpp index 6b0507890..b20209e87 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/graphql.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/graphql.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addGraphQL() { +SyntaxDefinition& addGraphQL() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "GraphQL", { "%.graphql$", "%.gql$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/graphql.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/graphql.hpp index deab3a78f..d29de32a9 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/graphql.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/graphql.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Graphql #define EE_UI_DOC_Graphql +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addGraphQL(); +extern SyntaxDefinition& addGraphQL(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/groovy.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/groovy.cpp index 064e2c64b..7c29bd8a7 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/groovy.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/groovy.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addGroovy() { +SyntaxDefinition& addGroovy() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -107,6 +107,7 @@ void addGroovy() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/groovy.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/groovy.hpp index 25771cc68..facefda6d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/groovy.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/groovy.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Groovy #define EE_UI_DOC_Groovy +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addGroovy(); +extern SyntaxDefinition& addGroovy(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hare.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hare.cpp index 27f9771c0..d1b47d416 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hare.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hare.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addHare() { +SyntaxDefinition& addHare() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -64,6 +64,7 @@ void addHare() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hare.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hare.hpp index 90ae960fb..26e285d22 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hare.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hare.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Hare #define EE_UI_DOC_Hare +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addHare(); +extern SyntaxDefinition& addHare(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haskell.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haskell.cpp index 290822464..e03b27148 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haskell.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haskell.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addHaskell() { +SyntaxDefinition& addHaskell() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Haskell", { "%.hs$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haskell.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haskell.hpp index 48fb9e963..f07295abe 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haskell.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haskell.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Haskell #define EE_UI_DOC_Haskell +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addHaskell(); +extern SyntaxDefinition& addHaskell(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haxe.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haxe.cpp index 10d7ffdb0..a596abf7d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haxe.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haxe.cpp @@ -3,18 +3,19 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addHaxe() { +SyntaxDefinition& addHaxe() { - SyntaxDefinitionManager::instance()->add( - { "Haxe Compiler Arguments", - { "%.hxml$" }, - { - { { "#.*" }, "comment" }, - { { "%-[%-%w_]*" }, "keyword" }, - { { "(%.)(%u[%w_]*)" }, { "normal", "normal", "keyword2" } }, - }, - {}, - "#" } ); + SyntaxDefinitionManager::instance() + ->add( { "Haxe Compiler Arguments", + { "%.hxml$" }, + { + { { "#.*" }, "comment" }, + { { "%-[%-%w_]*" }, "keyword" }, + { { "(%.)(%u[%w_]*)" }, { "normal", "normal", "keyword2" } }, + }, + {}, + "#" } ) + .setVisible( false ); SyntaxDefinitionManager::instance() ->add( { "HaxeStringInterpolation", @@ -37,7 +38,7 @@ void addHaxe() { {} } ) .setVisible( false ); - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Haxe", { "%.hx$" }, { diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haxe.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haxe.hpp index b77930f00..8b8e00807 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haxe.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/haxe.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Haxe #define EE_UI_DOC_Haxe +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addHaxe(); +extern SyntaxDefinition& addHaxe(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hlsl.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hlsl.cpp index f3e6c34c4..5a1132bf2 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hlsl.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hlsl.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addHLSL() { +SyntaxDefinition& addHLSL() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -266,6 +266,7 @@ void addHLSL() { "//" } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hlsl.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hlsl.hpp index c9ccfa084..ab585223b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hlsl.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/hlsl.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_HLSL #define EE_UI_DOC_HLSL +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addHLSL(); +extern SyntaxDefinition& addHLSL(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/htaccess.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/htaccess.cpp index 6abc8579e..3809f327c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/htaccess.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/htaccess.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addHtaccessFile() { +SyntaxDefinition& addHtaccessFile() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { ".htaccess", { "^%.htaccess$" }, { diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/htaccess.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/htaccess.hpp index 27b05fb13..c16795133 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/htaccess.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/htaccess.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_htaccess #define EE_UI_DOC_htaccess +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addHtaccessFile(); +extern SyntaxDefinition& addHtaccessFile(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ignorefile.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ignorefile.cpp index eb47163a2..254777b04 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ignorefile.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ignorefile.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addIgnoreFile() { +SyntaxDefinition& addIgnoreFile() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { ".ignore file", { "%..*ignore$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ignorefile.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ignorefile.hpp index 96a46de0b..1e3351711 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ignorefile.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ignorefile.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Ignorefile #define EE_UI_DOC_Ignorefile +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addIgnoreFile(); +extern SyntaxDefinition& addIgnoreFile(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ispc.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ispc.cpp index e86773eba..1202c6bf5 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ispc.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ispc.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addISPC() { +SyntaxDefinition& addISPC() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -143,6 +143,7 @@ void addISPC() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ispc.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ispc.hpp index 871457319..565cb9c52 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ispc.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ispc.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_ISPC #define EE_UI_DOC_ISPC +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addISPC(); +extern SyntaxDefinition& addISPC(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jai.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jai.cpp index 6e4d65c95..70010bbbf 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jai.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jai.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addJai() { +SyntaxDefinition& addJai() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -61,6 +61,7 @@ void addJai() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jai.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jai.hpp index 8f703c39e..6ca144118 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jai.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jai.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Jai #define EE_UI_DOC_Jai +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addJai(); +extern SyntaxDefinition& addJai(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/janet.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/janet.cpp index 51e641682..89619225b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/janet.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/janet.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addJanet() { +SyntaxDefinition& addJanet() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "Janet", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/janet.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/janet.hpp index 449b9e199..90baedc21 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/janet.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/janet.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Janet #define EE_UI_DOC_Janet +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addJanet(); +extern SyntaxDefinition& addJanet(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/java.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/java.cpp index fec801bfd..e832adb57 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/java.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/java.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addJava() { +SyntaxDefinition& addJava() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -60,6 +60,7 @@ void addJava() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/java.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/java.hpp index 51a40b2c7..81fe80009 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/java.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/java.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Java #define EE_UI_DOC_Java +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addJava(); +extern SyntaxDefinition& addJava(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jsx.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jsx.cpp index 6de8c4005..ce8c1ac26 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jsx.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jsx.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addJSX() { +SyntaxDefinition& addJSX() { auto& sd = SyntaxDefinitionManager::instance() @@ -57,6 +57,7 @@ void addJSX() { .setLSPName( "javascriptreact" ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jsx.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jsx.hpp index 20ff5d497..5491b0a9c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jsx.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jsx.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Jsx #define EE_UI_DOC_Jsx +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addJSX(); +extern SyntaxDefinition& addJSX(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jule.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jule.cpp index f34e00c33..b6a755bcb 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jule.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jule.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addJule() { +SyntaxDefinition& addJule() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -61,5 +61,6 @@ void addJule() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jule.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jule.hpp index 1accff721..dd2d852bb 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jule.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/jule.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Jule #define EE_UI_DOC_Jule +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addJule(); +extern SyntaxDefinition& addJule(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/julia.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/julia.cpp index b2d4feb18..08a1bbf5d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/julia.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/julia.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addJulia() { +SyntaxDefinition& addJulia() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -68,6 +68,7 @@ void addJulia() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/julia.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/julia.hpp index f6befe5e6..d757e6116 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/julia.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/julia.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Julia #define EE_UI_DOC_Julia +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addJulia(); +extern SyntaxDefinition& addJulia(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/kotlin.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/kotlin.cpp index 73d59f984..93ac8b2b2 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/kotlin.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/kotlin.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addKotlin() { +SyntaxDefinition& addKotlin() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -72,6 +72,7 @@ void addKotlin() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/kotlin.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/kotlin.hpp index 3fbb3e8c8..3982c1ab4 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/kotlin.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/kotlin.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Kotlin #define EE_UI_DOC_Kotlin +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addKotlin(); +extern SyntaxDefinition& addKotlin(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/latex.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/latex.cpp index 4ddf57051..ee626e319 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/latex.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/latex.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addLatex() { +SyntaxDefinition& addLatex() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "LaTeX", { "%.tex$", "%.sty$", "%.ltx$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/latex.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/latex.hpp index c8808f7b4..6462ee7d8 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/latex.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/latex.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Latex #define EE_UI_DOC_Latex +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addLatex(); +extern SyntaxDefinition& addLatex(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lbstanza.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lbstanza.cpp index 3acda2594..55c305f2a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lbstanza.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lbstanza.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addLbstanza() { +SyntaxDefinition& addLbstanza() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "L.B. Stanza", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lbstanza.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lbstanza.hpp index 2a5d3aac8..b0a676b83 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lbstanza.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lbstanza.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Lbstanza #define EE_UI_DOC_Lbstanza +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addLbstanza(); +extern SyntaxDefinition& addLbstanza(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lisp.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lisp.cpp index 84dc857fa..2560858a9 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lisp.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lisp.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addLisp() { +SyntaxDefinition& addLisp() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -128,6 +128,7 @@ void addLisp() { sd.setFoldRangeType( FoldRangeType::Braces ) .setFoldBraces( { { '(', ')' }, { '{', '}' }, { '[', ']' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lisp.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lisp.hpp index 49c347062..84bbe3369 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lisp.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lisp.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Lisp #define EE_UI_DOC_Lisp +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addLisp(); +extern SyntaxDefinition& addLisp(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lobster.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lobster.cpp index de2cc8580..ab50d71f6 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lobster.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lobster.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addLobster() { +SyntaxDefinition& addLobster() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Lobster", { "%.lobster$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lobster.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lobster.hpp index b7347bcd1..97ef70fd5 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lobster.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/lobster.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Lobster #define EE_UI_DOC_Lobster +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addLobster(); +extern SyntaxDefinition& addLobster(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/makefile.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/makefile.cpp index 27ac6a383..a17ce6918 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/makefile.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/makefile.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addMakefile() { +SyntaxDefinition& addMakefile() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Makefile", { "^[Mm]akefile$", "%.mk$", "%.make$", "%.mak$", "^Makefile%.am$", "^Makefile%.in$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/makefile.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/makefile.hpp index 2b53e7ef9..b295a4b74 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/makefile.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/makefile.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Makefile #define EE_UI_DOC_Makefile +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addMakefile(); +extern SyntaxDefinition& addMakefile(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/meson.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/meson.cpp index 19e3b2d98..28426c78b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/meson.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/meson.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addMeson() { +SyntaxDefinition& addMeson() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Meson", { "meson%.build$", "^meson_options%.txt$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/meson.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/meson.hpp index 2e9539b65..d117e479e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/meson.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/meson.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Meson #define EE_UI_DOC_Meson +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addMeson(); +extern SyntaxDefinition& addMeson(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula2.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula2.cpp index 441c4fbde..ac20c5228 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula2.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula2.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addModula2() { +SyntaxDefinition& addModula2() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Modula2", { "%.def$", "%.mod$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula2.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula2.hpp index 479307228..506de723a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula2.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula2.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_MODULA2 #define EE_UI_DOC_MODULA2 +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addModula2(); +extern SyntaxDefinition& addModula2(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula3.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula3.cpp index 9ef97d271..e7c462672 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula3.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula3.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addModula3() { +SyntaxDefinition& addModula3() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Modula3", { "%.m3$", "%.i3$", "%.mg$", "%.ig$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula3.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula3.hpp index 95e3be92b..88960bf33 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula3.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/modula3.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_MODULA3 #define EE_UI_DOC_MODULA3 +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addModula3(); +extern SyntaxDefinition& addModula3(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/moonscript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/moonscript.cpp index d7a311de3..0a9b8cc04 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/moonscript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/moonscript.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addMoonscript() { +SyntaxDefinition& addMoonscript() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -49,6 +49,7 @@ void addMoonscript() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/moonscript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/moonscript.hpp index 4b147d46f..55a079248 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/moonscript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/moonscript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Moonscript #define EE_UI_DOC_Moonscript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addMoonscript(); +extern SyntaxDefinition& addMoonscript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nelua.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nelua.cpp index 3874c44de..1b9a4bf32 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nelua.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nelua.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addNelua() { +SyntaxDefinition& addNelua() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -93,6 +93,7 @@ void addNelua() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nelua.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nelua.hpp index fd4b2dcae..39975d5ef 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nelua.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nelua.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Nelua #define EE_UI_DOC_Nelua +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addNelua(); +extern SyntaxDefinition& addNelua(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nim.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nim.cpp index 5847a596f..8d33eafaa 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nim.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nim.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addNim() { +SyntaxDefinition& addNim() { std::vector nim_patterns; SyntaxDefMap nim_symbols; @@ -88,6 +88,7 @@ void addNim() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nim.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nim.hpp index 5e94e9d42..30fd9f6cf 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nim.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/nim.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Nim #define EE_UI_DOC_Nim +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addNim(); +extern SyntaxDefinition& addNim(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objeck.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objeck.cpp index 6387e8bdb..7e85af90c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objeck.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objeck.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addObjeck() { +SyntaxDefinition& addObjeck() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -100,6 +100,7 @@ void addObjeck() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objeck.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objeck.hpp index f98394728..7a9380242 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objeck.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objeck.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Objeck #define EE_UI_DOC_Objeck +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addObjeck(); +extern SyntaxDefinition& addObjeck(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objective-c.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objective-c.cpp index b1ec79314..f772b2715 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objective-c.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objective-c.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addObjectiveC() { +SyntaxDefinition& addObjectiveC() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -46,6 +46,7 @@ void addObjectiveC() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objective-c.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objective-c.hpp index 71bf6df80..209a1a3b7 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objective-c.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/objective-c.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_ObjectiveC #define EE_UI_DOC_ObjectiveC +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addObjectiveC(); +extern SyntaxDefinition& addObjectiveC(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ocaml.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ocaml.cpp index 62ad1e781..1b853efb2 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ocaml.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ocaml.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addOCaml() { +SyntaxDefinition& addOCaml() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -58,6 +58,7 @@ void addOCaml() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '(', ')' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ocaml.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ocaml.hpp index 7c8a153a1..f7cede1c9 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ocaml.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ocaml.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_OCaml #define EE_UI_DOC_OCaml +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addOCaml(); +extern SyntaxDefinition& addOCaml(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/odin.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/odin.cpp index 43bf308e0..781133df0 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/odin.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/odin.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addOdin() { +SyntaxDefinition& addOdin() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Odin", { "%.odin$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/odin.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/odin.hpp index c24cab814..66c188a16 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/odin.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/odin.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Odin #define EE_UI_DOC_Odin +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addOdin(); +extern SyntaxDefinition& addOdin(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/openscad.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/openscad.cpp index 732576754..38e3ebe4e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/openscad.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/openscad.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addOpenSCAD() { +SyntaxDefinition& addOpenSCAD() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "OpenSCAD", { "%.scad$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/openscad.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/openscad.hpp index b709a9ec9..c69c267e3 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/openscad.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/openscad.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Openscad #define EE_UI_DOC_Openscad +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addOpenSCAD(); +extern SyntaxDefinition& addOpenSCAD(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pascal.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pascal.cpp index ed3e2b5f3..d221854ad 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pascal.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pascal.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addPascal() { +SyntaxDefinition& addPascal() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Pascal", { "%.pas$", "%.dpr$", "%.dpk$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pascal.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pascal.hpp index 383a7bc3b..5f570502e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pascal.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pascal.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Pascal #define EE_UI_DOC_Pascal +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addPascal(); +extern SyntaxDefinition& addPascal(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/perl.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/perl.cpp index 4ea338688..e4077bd5b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/perl.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/perl.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addPerl() { +SyntaxDefinition& addPerl() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Perl", { "%.pm$", "%.pl$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/perl.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/perl.hpp index 9711d2858..5831d27fe 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/perl.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/perl.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Perl #define EE_UI_DOC_Perl +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addPerl(); +extern SyntaxDefinition& addPerl(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/php.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/php.cpp index 3d923b3bb..c297ca951 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/php.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/php.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addPHP() { +SyntaxDefinition& addPHP() { auto& sd = SyntaxDefinitionManager::instance() ->add( { "PHP", @@ -105,6 +105,7 @@ void addPHP() { .setVisible( false ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/php.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/php.hpp index eb0e75f3b..ecfe079db 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/php.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/php.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Php #define EE_UI_DOC_Php +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addPHP(); +extern SyntaxDefinition& addPHP(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pico-8.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pico-8.cpp index a2ecd4c9b..108ba661d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pico-8.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pico-8.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addPICO8() { +SyntaxDefinition& addPICO8() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "PICO-8", { "%.p8$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pico-8.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pico-8.hpp index f8f006e36..246606a1c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pico-8.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pico-8.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_PICO8 #define EE_UI_DOC_PICO8 +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addPICO8(); +extern SyntaxDefinition& addPICO8(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/po.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/po.cpp index ab7a39506..c63f8a95c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/po.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/po.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addPO() { +SyntaxDefinition& addPO() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "PO", { "%.po$", "%.pot$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/po.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/po.hpp index 8291ccc11..413dc9b6a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/po.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/po.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Po #define EE_UI_DOC_Po +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addPO(); +extern SyntaxDefinition& addPO(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pony.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pony.cpp index d0c3e84c1..36d6b937d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pony.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pony.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addPony() { +SyntaxDefinition& addPony() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -126,6 +126,7 @@ void addPony() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pony.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pony.hpp index b13438cff..56a704e4b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pony.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/pony.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Pony #define EE_UI_DOC_Pony +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addPony(); +extern SyntaxDefinition& addPony(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/postgresql.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/postgresql.cpp index 3d1ba9612..331133703 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/postgresql.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/postgresql.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addPostgreSQL() { +SyntaxDefinition& addPostgreSQL() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "PostgreSQL", { "%.sql$", "%.psql$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/postgresql.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/postgresql.hpp index f2aeabb69..1beaba244 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/postgresql.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/postgresql.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_PostgreSQL #define EE_UI_DOC_PostgreSQL +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addPostgreSQL(); +extern SyntaxDefinition& addPostgreSQL(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/powershell.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/powershell.cpp index 5ccf41fe0..60949cc6a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/powershell.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/powershell.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addPowerShell() { +SyntaxDefinition& addPowerShell() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "PowerShell", { "%.ps1$", "%.psm1$", "%.psd1$", "%.ps1xml$", "%.pssc$", "%.psrc$", "%.cdxml$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/powershell.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/powershell.hpp index d381ea6ea..a90bf177a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/powershell.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/powershell.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Powershell #define EE_UI_DOC_Powershell +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addPowerShell(); +extern SyntaxDefinition& addPowerShell(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/r.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/r.cpp index 9e161fde6..423d38e26 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/r.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/r.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addR() { +SyntaxDefinition& addR() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "R", { "%.r$", "%.rds$", "%.rda$", "%.rdata$", "%.R$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/r.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/r.hpp index a9fdcbd93..a21b66562 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/r.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/r.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_R #define EE_UI_DOC_R +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addR(); +extern SyntaxDefinition& addR(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/racket.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/racket.cpp new file mode 100644 index 000000000..d4b2f881b --- /dev/null +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/racket.cpp @@ -0,0 +1,1527 @@ +#include +#include + +namespace EE { namespace UI { namespace Doc { namespace Language { + +SyntaxDefinition& addRacket() { + + return SyntaxDefinitionManager::instance() + ->add( + + { "Racket", + { "%.rkt$" }, + { + { { "include", "#top-level-clause" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + }, + { + + }, + "", + {} + + } ) + .addRepositories( { + + { "syntax-unquote", + { + { { "(#,@?(?=[\\(\\[]))|((?=[\\(\\[]unquote[\\s\\{\\}\\(\\)\\[\\]#\\|,\"'´\\\\;])" + ")|((?=[\\(\\[]unquote-splicing[\\s\\{\\}\\(\\)\\[\\]#\\|,\"'´\\\\;]))", + "(?<=[\\)\\]])" }, + { "normal", "function" }, + {}, + "", + SyntaxPatternMatchType::RegEx, + { + { { "include", "#sexp" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + { { "(#,@?)(?=[^\\s\\{\\}\\(\\)\\[\\]\\|,\"'´\\\\;])", + "(?![^\\s\\{\\}\\(\\)\\[\\]\\|,\"'´\\\\;])" }, + { "normal", "function" }, + {}, + "", + SyntaxPatternMatchType::RegEx, + { + { { "include", "#atom" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + + } }, + { "parameter-with-default-value", + { + { { "\\[", "\\]" }, + { "operator" }, + { "operator" }, + "", + SyntaxPatternMatchType::RegEx, + { + { { "(?<=\\[)\\s*([^\\s\\{\\}\\(\\)\\[\\]#\\|,\"'´\\\\;]+)" }, + { "normal", "keyword3" }, + {}, + "", + SyntaxPatternMatchType::RegEx }, + { { "include", "#top-level-clause" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + + } }, + { "string", + { + { { "#(r|p)x\"", "\"" }, + { "string" }, + { "string" }, + "", + SyntaxPatternMatchType::RegEx }, + { { "#\"", "\"" }, + { "string" }, + { "string" }, + "", + SyntaxPatternMatchType::RegEx, + { + { { "include", "#escaped-char" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + { { "\"", "\"" }, + { "string" }, + { "string" }, + "", + SyntaxPatternMatchType::RegEx, + { + { { "include", "#escaped-char" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + + } }, + { "parentheses", + { + { { "\\(", "\\)" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::RegEx, + { + { { "include", "#parentheses" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + + } }, + { "top-level-clause", + { + { { "include", "#dot-operators" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#atom" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#sexp" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#vector" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#hash" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#comment" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#quotes" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + { "quoted-sexp", + { + { { "(\\()|(\\[)|(\\{)", "(\\))|(\\])|(\\})" }, + { "operator" }, + { "operator" }, + "", + SyntaxPatternMatchType::RegEx, + { + { { "include", "#dot-operators" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#quoted-sexp" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#quoted-atom" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#comment" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + + } }, + { "quoted-atom", + { + { { "[^\\.\\s][^\\s\\{\\}\\(\\)\\[\\]\\|,'´;]*" }, + "literal", + "", + SyntaxPatternMatchType::RegEx }, + + } }, + { "quotes", + { + { { "include", "#quote" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#quasiquote" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#syntax-quote" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + { { "include", "#syntax-quasiquote" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + { "value-assignment-expression", + { + { { "(\\[)\\s*([^\\s\\{\\}\\(\\)\\[\\]#\\|,\"]+)", "\\]" }, + { "normal", "operator", "normal" }, + { "operator" }, + "", + SyntaxPatternMatchType::RegEx, + { + { { "include", "#top-level-clause" }, + { "normal" }, + {}, + "", + SyntaxPatternMatchType::LuaPattern }, + + } }, + + } }, + { "quasiquoted-sexp", + { + { { "(? + +namespace EE { namespace UI { namespace Doc { namespace Language { + +extern SyntaxDefinition& addRacket(); + +}}}} // namespace EE::UI::Doc::Language + +#endif diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rave.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rave.cpp index 49b9ac14b..2caa9f1b1 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rave.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rave.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addRave() { +SyntaxDefinition& addRave() { auto& sd = SyntaxDefinitionManager::instance()->add( { "Rave", @@ -117,6 +117,7 @@ void addRave() { "//" } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rave.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rave.hpp index 5fce3edd1..70af25c69 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rave.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rave.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_RAVE #define EE_UI_DOC_RAVE +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addRave(); +extern SyntaxDefinition& addRave(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rescript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rescript.cpp index 90326fcc4..061a76763 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rescript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rescript.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addRescript() { +SyntaxDefinition& addRescript() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "ReScript", { "%.res$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rescript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rescript.hpp index 4269f8f9b..85ae5e77c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rescript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rescript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Rescript #define EE_UI_DOC_Rescript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addRescript(); +extern SyntaxDefinition& addRescript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ring.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ring.cpp index 2a4681d05..3a5a3cf2b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ring.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ring.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addRing() { +SyntaxDefinition& addRing() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Ring", { "%.ring$", "%.rh$", "%.rform$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ring.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ring.hpp index 0d3767412..9c0f379d7 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ring.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ring.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Ring #define EE_UI_DOC_Ring +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addRing(); +extern SyntaxDefinition& addRing(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ruby.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ruby.cpp index 24241e1e5..6ec634892 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ruby.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ruby.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addRuby() { +SyntaxDefinition& addRuby() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -80,6 +80,7 @@ void addRuby() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ruby.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ruby.hpp index b23480f5e..8efad3f31 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ruby.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/ruby.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Ruby #define EE_UI_DOC_Ruby +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addRuby(); +extern SyntaxDefinition& addRuby(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rust.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rust.cpp index f6fcf8c47..2752bd709 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rust.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rust.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addRust() { +SyntaxDefinition& addRust() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -56,6 +56,7 @@ void addRust() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rust.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rust.hpp index 1d51eb30b..1af48a602 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rust.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/rust.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Rust #define EE_UI_DOC_Rust +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addRust(); +extern SyntaxDefinition& addRust(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sass.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sass.cpp index 77d7d56a1..e20450bb8 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sass.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sass.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addSass() { +SyntaxDefinition& addSass() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Sass", { "%.sass$", "%.scss$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sass.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sass.hpp index b41683aa8..c21acd107 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sass.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sass.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Sass #define EE_UI_DOC_Sass +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addSass(); +extern SyntaxDefinition& addSass(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/scala.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/scala.cpp index e87b8b9e3..a41148b3e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/scala.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/scala.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addScala() { +SyntaxDefinition& addScala() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Scala", { "%.sc$", "%.scala$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/scala.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/scala.hpp index c1772f572..2a0bd2cf2 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/scala.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/scala.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Scala #define EE_UI_DOC_Scala +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addScala(); +extern SyntaxDefinition& addScala(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/shellscript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/shellscript.cpp index 615990034..eabef440a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/shellscript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/shellscript.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addShellScript() { +SyntaxDefinition& addShellScript() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "Shell script", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/shellscript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/shellscript.hpp index bade01b7c..d0cdcf7eb 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/shellscript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/shellscript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Shellscript #define EE_UI_DOC_Shellscript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addShellScript(); +extern SyntaxDefinition& addShellScript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/smallbasic.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/smallbasic.cpp index 7bd2109c0..3a7948c1b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/smallbasic.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/smallbasic.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addSmallBASIC() { +SyntaxDefinition& addSmallBASIC() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "SmallBASIC", { "%.bas$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/smallbasic.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/smallbasic.hpp index c1fd9ad6f..066b92793 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/smallbasic.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/smallbasic.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_SMALLBASIC #define EE_UI_DOC_SMALLBASIC +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addSmallBASIC(); +extern SyntaxDefinition& addSmallBASIC(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/solidity.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/solidity.cpp index 05bbb2f93..2303c4bee 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/solidity.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/solidity.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addSolidity() { +SyntaxDefinition& addSolidity() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -150,6 +150,7 @@ void addSolidity() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/solidity.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/solidity.hpp index 720826d7c..c846942be 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/solidity.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/solidity.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Solidity #define EE_UI_DOC_Solidity +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addSolidity(); +extern SyntaxDefinition& addSolidity(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sql.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sql.cpp index 9a84a559f..6d5a95ad2 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sql.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sql.cpp @@ -3,12 +3,12 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addSQL() { +SyntaxDefinition& addSQL() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "SQL", - { "%.sql$", "%.psql$" }, + { "%.sql$" }, { { { "%-%-.-\n" }, "comment" }, { { "/%*", "%*/" }, "comment" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sql.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sql.hpp index 9c436fa55..022ad873e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sql.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/sql.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Sql #define EE_UI_DOC_Sql +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addSQL(); +extern SyntaxDefinition& addSQL(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/squirrel.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/squirrel.cpp index ef74eb99b..40b5af35d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/squirrel.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/squirrel.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addSquirrel() { +SyntaxDefinition& addSquirrel() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -51,6 +51,7 @@ void addSquirrel() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/squirrel.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/squirrel.hpp index eab509ac5..9f1217245 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/squirrel.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/squirrel.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Squirrel #define EE_UI_DOC_Squirrel +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addSquirrel(); +extern SyntaxDefinition& addSquirrel(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/svelte.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/svelte.cpp index 658504988..9101b61d7 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/svelte.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/svelte.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addSvelte() { +SyntaxDefinition& addSvelte() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "Svelte", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/svelte.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/svelte.hpp index 4cb1dabb4..5eb825e8c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/svelte.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/svelte.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Svelte #define EE_UI_DOC_Svelte +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addSvelte(); +extern SyntaxDefinition& addSvelte(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/swift.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/swift.cpp index bd1dcdfe9..f67ed45d6 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/swift.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/swift.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addSwift() { +SyntaxDefinition& addSwift() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -227,6 +227,7 @@ void addSwift() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/swift.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/swift.hpp index 813dc7d02..e4a16285c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/swift.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/swift.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Swift #define EE_UI_DOC_Swift +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addSwift(); +extern SyntaxDefinition& addSwift(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/tcl.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/tcl.cpp index edc964ff0..03c56affd 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/tcl.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/tcl.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addTcl() { +SyntaxDefinition& addTcl() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Tcl", { "%.tcl$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/tcl.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/tcl.hpp index 1fd352a44..5d071170c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/tcl.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/tcl.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Tcl #define EE_UI_DOC_Tcl +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addTcl(); +extern SyntaxDefinition& addTcl(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/teal.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/teal.cpp index 3cf1b7d0f..27f2b930e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/teal.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/teal.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addTeal() { +SyntaxDefinition& addTeal() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -46,6 +46,7 @@ void addTeal() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/teal.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/teal.hpp index ba678e853..116b9dfcc 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/teal.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/teal.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Teal #define EE_UI_DOC_Teal +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addTeal(); +extern SyntaxDefinition& addTeal(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/toml.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/toml.cpp index 914bd1cd1..bc856f7cd 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/toml.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/toml.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addToml() { +SyntaxDefinition& addToml() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -41,6 +41,7 @@ void addToml() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/toml.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/toml.hpp index ae5680ee0..4b307dd40 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/toml.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/toml.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Toml #define EE_UI_DOC_Toml +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addToml(); +extern SyntaxDefinition& addToml(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typescript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typescript.cpp index f8f0b3ace..fad7ac3c0 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typescript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typescript.cpp @@ -4,7 +4,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addTypeScript() { +SyntaxDefinition& addTypeScript() { SyntaxDefinition& ts = SyntaxDefinitionManager::instance()->add( @@ -108,7 +108,8 @@ void addTypeScript() { .setLSPName( "typescriptreact" ) .setFoldRangeType( FoldRangeType::Braces ) .setFoldBraces( { { '{', '}' } } ); - ; + + return ts; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typescript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typescript.hpp index e2558b44e..c9dcb5f84 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typescript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typescript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Typescript #define EE_UI_DOC_Typescript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addTypeScript(); +extern SyntaxDefinition& addTypeScript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typst.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typst.cpp index f01dda49a..4e352df6b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typst.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typst.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addTypst() { +SyntaxDefinition& addTypst() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "typst", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typst.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typst.hpp index c3f284f9e..31e7d53e6 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typst.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/typst.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Typst #define EE_UI_DOC_Typst +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addTypst(); +extern SyntaxDefinition& addTypst(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/u.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/u.cpp index 6711993f9..47447f16a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/u.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/u.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addU() { +SyntaxDefinition& addU() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -156,6 +156,7 @@ void addU() { "ü" } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/u.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/u.hpp index 0c14c09bb..5e6b9d900 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/u.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/u.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_U #define EE_UI_DOC_U +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addU(); +extern SyntaxDefinition& addU(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v.cpp index 4ffcab3c1..d0248eb0a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addV() { +SyntaxDefinition& addV() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -60,6 +60,7 @@ void addV() { } ).setExtensionPriority( true ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v.hpp index b61f6b622..20c73ef2b 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_V #define EE_UI_DOC_V +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addV(); +extern SyntaxDefinition& addV(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v1.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v1.cpp index 1e61ffa5e..27bb20c40 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v1.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v1.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addV1() { +SyntaxDefinition& addV1() { - SyntaxDefinitionManager::instance() + auto& v1 = SyntaxDefinitionManager::instance() ->add( { "V1", { "%.v1$" }, { @@ -81,6 +81,7 @@ void addV1() { .setVisible( false ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return v1; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v1.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v1.hpp index 4b78928d8..498b75bdb 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v1.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/v1.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_V1 #define EE_UI_DOC_V1 +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addV1(); +extern SyntaxDefinition& addV1(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vala.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vala.cpp index 9368f623f..78a25965a 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vala.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vala.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addVala() { +SyntaxDefinition& addVala() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -82,6 +82,7 @@ void addVala() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vala.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vala.hpp index 78451a4cd..14ce3bb54 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vala.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vala.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Vala #define EE_UI_DOC_Vala +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addVala(); +extern SyntaxDefinition& addVala(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vb.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vb.cpp index 710f99101..4ae2f2f45 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vb.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vb.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addVisualBasic() { +SyntaxDefinition& addVisualBasic() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "Visual Basic", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vb.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vb.hpp index 433cb9fcb..f9ce6137d 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vb.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vb.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_VB #define EE_UI_DOC_VB +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addVisualBasic(); +extern SyntaxDefinition& addVisualBasic(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/verilog.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/verilog.cpp index 37d1c9f26..38658b821 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/verilog.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/verilog.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addVerilog() { +SyntaxDefinition& addVerilog() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Verilog", { "%.V$", "%.vl$", "%.vh$", "%.v$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/verilog.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/verilog.hpp index d4dbfe3db..674a78ec6 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/verilog.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/verilog.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Verilog #define EE_UI_DOC_Verilog +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addVerilog(); +extern SyntaxDefinition& addVerilog(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vue.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vue.cpp index 668fd95ae..3d8fbe0a6 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vue.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vue.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addVue() { +SyntaxDefinition& addVue() { SyntaxDefinitionManager::instance() ->add( { "Vue-HTML", @@ -30,7 +30,7 @@ void addVue() { .setVisible( false ) .setAutoCloseXMLTags( true ); - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Vue", { "%.vue?$" }, { diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vue.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vue.hpp index 2ac779c45..6747a87d1 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vue.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/vue.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Vue #define EE_UI_DOC_Vue +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addVue(); +extern SyntaxDefinition& addVue(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/wren.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/wren.cpp index c8ac34674..9cc56cd42 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/wren.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/wren.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addWren() { +SyntaxDefinition& addWren() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -38,6 +38,7 @@ void addWren() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/wren.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/wren.hpp index 8e35651d7..61856ac97 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/wren.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/wren.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Wren #define EE_UI_DOC_Wren +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addWren(); +extern SyntaxDefinition& addWren(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/x86assembly.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/x86assembly.cpp index 6051bf413..f8dceb645 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/x86assembly.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/x86assembly.cpp @@ -3,8 +3,8 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addX86Assembly() { - SyntaxDefinitionManager::instance()->add( +SyntaxDefinition& addX86Assembly() { + return SyntaxDefinitionManager::instance()->add( { "x86 Assembly", { "%.asm$", "%.[sS]$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/x86assembly.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/x86assembly.hpp index a8d797e49..c22572bfb 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/x86assembly.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/x86assembly.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_addX86Assembly #define EE_UI_DOC_addX86Assembly +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addX86Assembly(); +extern SyntaxDefinition& addX86Assembly(); }}}} diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xit.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xit.cpp index 68db2c6a3..c631b7748 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xit.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xit.cpp @@ -3,14 +3,14 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addXit() { +SyntaxDefinition& addXit() { auto dynSyntax = []( const SyntaxPattern&, const std::string_view& match ) -> std::string { return SyntaxDefinitionManager::instance() ->findFromString( String::trim( match.substr( 3 ) ) ) .getLanguageName(); }; - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "[x]it!", { "%.xit$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xit.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xit.hpp index 95b682da0..47ab1c7b5 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xit.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xit.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Xit #define EE_UI_DOC_Xit +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addXit(); +extern SyntaxDefinition& addXit(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xtend.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xtend.cpp index 4d40961e4..bb0f25b8c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xtend.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xtend.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addXtend() { +SyntaxDefinition& addXtend() { - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "Xtend", { "%.xtend$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xtend.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xtend.hpp index 6d759b3aa..8c7074b0c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xtend.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/xtend.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Xtend #define EE_UI_DOC_Xtend +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addXtend(); +extern SyntaxDefinition& addXtend(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yaml.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yaml.cpp index 26b9ab624..b7614effd 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yaml.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yaml.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addYAML() { +SyntaxDefinition& addYAML() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -49,6 +49,7 @@ void addYAML() { } ); sd.setFoldRangeType( FoldRangeType::Indentation ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yaml.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yaml.hpp index 7fdafa47a..8c9b1e69c 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yaml.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yaml.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Yaml #define EE_UI_DOC_Yaml +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addYAML(); +extern SyntaxDefinition& addYAML(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yuescript.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yuescript.cpp index 592507f46..f8a9fcbe9 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yuescript.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yuescript.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addYueScript() { +SyntaxDefinition& addYueScript() { SyntaxDefinitionManager::instance() ->add( @@ -24,7 +24,7 @@ void addYueScript() { } ) .setVisible( false ); - SyntaxDefinitionManager::instance()->add( + return SyntaxDefinitionManager::instance()->add( { "YueScript", { "%.yue$" }, diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yuescript.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yuescript.hpp index f4dd40436..d3246e597 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yuescript.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/yuescript.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_YueScript #define EE_UI_DOC_YueScript +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addYueScript(); +extern SyntaxDefinition& addYueScript(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zephir.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zephir.cpp index 92d8e0c55..d4e600aca 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zephir.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zephir.cpp @@ -3,9 +3,9 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addZephir() { +SyntaxDefinition& addZephir() { - SyntaxDefinitionManager::instance() + return SyntaxDefinitionManager::instance() ->add( { "Zephir", diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zephir.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zephir.hpp index 05df602d5..c0327dd9e 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zephir.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zephir.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Zephir #define EE_UI_DOC_Zephir +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addZephir(); +extern SyntaxDefinition& addZephir(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zig.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zig.cpp index 1b24b1f41..5109378aa 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zig.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zig.cpp @@ -3,7 +3,7 @@ namespace EE { namespace UI { namespace Doc { namespace Language { -void addZig() { +SyntaxDefinition& addZig() { auto& sd = SyntaxDefinitionManager::instance()->add( @@ -122,6 +122,7 @@ void addZig() { } ); sd.setFoldRangeType( FoldRangeType::Braces ).setFoldBraces( { { '{', '}' } } ); + return sd; } }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zig.hpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zig.hpp index 2b41f14aa..f11e6cea3 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zig.hpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languages/zig.hpp @@ -1,9 +1,11 @@ #ifndef EE_UI_DOC_Zig #define EE_UI_DOC_Zig +#include + namespace EE { namespace UI { namespace Doc { namespace Language { -extern void addZig(); +extern SyntaxDefinition& addZig(); }}}} // namespace EE::UI::Doc::Language diff --git a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languagessyntaxhighlighting.cpp b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languagessyntaxhighlighting.cpp index 0a0b2ae53..f1957a6ca 100644 --- a/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languagessyntaxhighlighting.cpp +++ b/src/modules/languages-syntax-highlighting/src/eepp/ui/doc/languagessyntaxhighlighting.cpp @@ -75,6 +75,7 @@ #include #include #include +#include #include #include #include @@ -109,122 +110,589 @@ #include #include #include + #include +#include namespace EE { namespace UI { namespace Doc { namespace Language { void LanguagesSyntaxHighlighting::load() { - addAda(); - addAdept(); - addAngelScript(); - addAwkScript(); - addBatchScript(); - addBazel(); - addBend(); - addBlade(); - addBlueprint(); - addBrainfuck(); - addBuzz(); - addC3(); - addCarbon(); - addContainerFile(); - addCovScript(); - addClojure(); - addCMake(); - addCrystal(); - addCSharp(); - addOpenSCAD(); - addRing(); - addTcl(); - addD(); - addDart(); - addDiff(); - addElena(); - addElixir(); - addElm(); - addEnvironmentFile(); - addFantom(); - addFennel(); - addFixScript(); - addFlow9(); - addFortran(); - addFstab(); - addGDScript(); - addGleam(); - addGLSL(); - addGo(); - addGraphQL(); - addGroovy(); - addHaskell(); - addHare(); - addHaxe(); - addHLSL(); - addHtaccessFile(); - addIgnoreFile(); - addISPC(); - addJai(); - addJanet(); - addJava(); - addJule(); - addJulia(); - addJSX(); - addKotlin(); - addLatex(); - addLbstanza(); - addLisp(); - addLobster(); - addMakefile(); - addMeson(); - addModula2(); - addModula3(); - addMoonscript(); - addNelua(); - addNim(); - addObjeck(); - addObjectiveC(); - addOCaml(); - addOdin(); - addPascal(); - addPerl(); - addPICO8(); - addPHP(); - addPO(); - addPony(); - addPostgreSQL(); - addPowerShell(); - addR(); - addRave(); - addRescript(); - addRuby(); - addRust(); - addSass(); - addScala(); - addShellScript(); - addSmallBASIC(); - addSolidity(); - addSQL(); - addSquirrel(); - addSvelte(); - addSwift(); - addTeal(); - addToml(); - addTypeScript(); - addTypst(); - addU(); - addV(); - addV1(); - addVala(); - addVerilog(); - addVisualBasic(); - addVue(); - addWren(); - addX86Assembly(); - addXit(); - addXtend(); - addYAML(); - addYueScript(); - addZephir(); - addZig(); + auto sdm = SyntaxDefinitionManager::instance(); + + sdm->addPreDefinition( { + "Ada", + []() -> SyntaxDefinition& { return addAda(); }, + { "%.adb$", "%.ads$", "%.ada$" }, + } ); + + sdm->addPreDefinition( + { "Adept", []() -> SyntaxDefinition& { return addAdept(); }, { "%.adept$" } } ); + + sdm->addPreDefinition( { + "AngelScript", + []() -> SyntaxDefinition& { return addAngelScript(); }, + { "%.as$", "%.asc$" }, + } ); + + sdm->addPreDefinition( { + "Awk Script", + []() -> SyntaxDefinition& { return addAwkScript(); }, + { "%.awk$" }, + } ); + + sdm->addPreDefinition( { + "Batch Script", + []() -> SyntaxDefinition& { return addBatchScript(); }, + { "%.bat$", "%.cmd$" }, + {}, + "bat", + } ); + + sdm->addPreDefinition( { + "Bazel", + []() -> SyntaxDefinition& { return addBazel(); }, + { "%.bazel$", "%.bzl$", "BUILD" }, + } ); + + sdm->addPreDefinition( + { "Bend", []() -> SyntaxDefinition& { return addBend(); }, { "%.bend$" } } ); + + sdm->addPreDefinition( + { "Blade", []() -> SyntaxDefinition& { return addBlade(); }, { "%.b$" } } ); + + sdm->addPreDefinition( { + "Blueprint", + []() -> SyntaxDefinition& { return addBlueprint(); }, + { "%.blp$" }, + } ); + + sdm->addPreDefinition( { + "Brainfuck", + []() -> SyntaxDefinition& { return addBrainfuck(); }, + { "%.bf$" }, + } ); + + sdm->addPreDefinition( + { "Buzz", []() -> SyntaxDefinition& { return addBuzz(); }, { "%.buzz$" } } ); + + sdm->addPreDefinition( { "C3", []() -> SyntaxDefinition& { return addC3(); }, { "%.c3t?$" } } ); + + sdm->addPreDefinition( { + "Carbon", + []() -> SyntaxDefinition& { return addCarbon(); }, + { "%.carbon$" }, + } ); + + sdm->addPreDefinition( { + "Containerfile", + []() -> SyntaxDefinition& { return addContainerFile(); }, + { "^[Cc]ontainerfile$", "^[dD]ockerfile$", "%.[dD]ockerfile$" }, + {}, + "dockerfile", + } ); + + sdm->addPreDefinition( { + "CovScript", + []() -> SyntaxDefinition& { return addCovScript(); }, + { "%.csc$", "%.csp$", "%.ecs$" }, + { "^#!.*[ /]covscript", "^#!.*[ /]cs" }, + + } ); + + sdm->addPreDefinition( { + "Clojure", + []() -> SyntaxDefinition& { return addClojure(); }, + { "%.clj$", "%.cljs$", "%.clc$", "%.edn$" }, + } ); + + sdm->addPreDefinition( { + "CMake", + []() -> SyntaxDefinition& { return addCMake(); }, + { "%.cmake$", "CMakeLists%.txt$" }, + { "^cmake_minimum_required.*%c" }, + + } ); + + sdm->addPreDefinition( { + "Crystal", + []() -> SyntaxDefinition& { return addCrystal(); }, + { "%.cr$" }, + } ); + + sdm->addPreDefinition( { + "C#", + []() -> SyntaxDefinition& { return addCSharp(); }, + { "%.cs$", "%.csx$" }, + {}, + "csharp", + } ); + + sdm->addPreDefinition( { + "OpenSCAD", + []() -> SyntaxDefinition& { return addOpenSCAD(); }, + { "%.scad$" }, + } ); + + sdm->addPreDefinition( { + "Ring", + []() -> SyntaxDefinition& { return addRing(); }, + { "%.ring$", "%.rh$", "%.rform$" }, + } ); + + sdm->addPreDefinition( + { "Tcl", []() -> SyntaxDefinition& { return addTcl(); }, { "%.tcl$" } } ); + + sdm->addPreDefinition( + { "D", []() -> SyntaxDefinition& { return addD(); }, { "%.d$", "%.di$" } } ); + + sdm->addPreDefinition( + { "Dart", []() -> SyntaxDefinition& { return addDart(); }, { "%.dart$" } } ); + + sdm->addPreDefinition( { + "Diff File", + []() -> SyntaxDefinition& { return addDiff(); }, + { "%.diff$", "%.patch$" }, + {}, + "diff", + } ); + + sdm->addPreDefinition( + { "ELENA", []() -> SyntaxDefinition& { return addElena(); }, { "%.l$" } } ); + + sdm->addPreDefinition( { + "Elixir", + []() -> SyntaxDefinition& { return addElixir(); }, + { "%.ex$", "%.exs$" }, + } ); + + sdm->addPreDefinition( + { "Elm", []() -> SyntaxDefinition& { return addElm(); }, { "%.elm$" } } ); + + sdm->addPreDefinition( { + "Environment File", + []() -> SyntaxDefinition& { return addEnvironmentFile(); }, + { "%.env$", "%.env.[%w%-%_]*$" }, + } ); + + sdm->addPreDefinition( { + "Fantom", + []() -> SyntaxDefinition& { return addFantom(); }, + { "%.fan$", "%.fanx$" }, + } ); + + sdm->addPreDefinition( + { "Fennel", []() -> SyntaxDefinition& { return addFennel(); }, { "%.fnl$" } } ); + + sdm->addPreDefinition( { + "FixScript", + []() -> SyntaxDefinition& { return addFixScript(); }, + { "%.fix$" }, + } ); + + sdm->addPreDefinition( + { "Flow9", []() -> SyntaxDefinition& { return addFlow9(); }, { "%.flow$" } } ); + + sdm->addPreDefinition( { + "Fortran", + []() -> SyntaxDefinition& { return addFortran(); }, + { "%.f$", "%.f90$", "%.f95$" }, + } ); + + sdm->addPreDefinition( + { "fstab", []() -> SyntaxDefinition& { return addFstab(); }, { "fstab" } } ); + + sdm->addPreDefinition( { + "GDScript", + []() -> SyntaxDefinition& { return addGDScript(); }, + { "%.gd$" }, + } ); + + sdm->addPreDefinition( + { "Gleam", []() -> SyntaxDefinition& { return addGleam(); }, { "%.gleam$" } } ); + + sdm->addPreDefinition( { + "GLSL", + []() -> SyntaxDefinition& { return addGLSL(); }, + { "%.glsl$", "%.frag$", "%.vert$", "%.fs$", "%.vs$", "%.tesc$", "%.tese$" }, + } ); + + sdm->addPreDefinition( { "Go", []() -> SyntaxDefinition& { return addGo(); }, { "%.go$" } } ); + + sdm->addPreDefinition( { + "GraphQL", + []() -> SyntaxDefinition& { return addGraphQL(); }, + { "%.graphql$", "%.gql$" }, + } ); + + sdm->addPreDefinition( { + "Groovy", + []() -> SyntaxDefinition& { return addGroovy(); }, + { "%.groovy$" }, + } ); + + sdm->addPreDefinition( { + "Haskell", + []() -> SyntaxDefinition& { return addHaskell(); }, + { "%.hs$" }, + } ); + + sdm->addPreDefinition( + { "Hare", []() -> SyntaxDefinition& { return addHare(); }, { "%.ha$" } } ); + + sdm->addPreDefinition( + { "Haxe", []() -> SyntaxDefinition& { return addHaxe(); }, { "%.hx$" } } ); + + sdm->addPreDefinition( + { "HLSL", []() -> SyntaxDefinition& { return addHLSL(); }, { "%.hlsl$" } } ); + + sdm->addPreDefinition( { + ".htaccess", + []() -> SyntaxDefinition& { return addHtaccessFile(); }, + { "^%.htaccess$" }, + } ); + + sdm->addPreDefinition( { + ".ignore file", + []() -> SyntaxDefinition& { return addIgnoreFile(); }, + { "%..*ignore$" }, + } ); + + sdm->addPreDefinition( { + "ISPC", + []() -> SyntaxDefinition& { return addISPC(); }, + { "%.ispc$", "%.isph$", "%.ih$" }, + } ); + + sdm->addPreDefinition( + { "Jai", []() -> SyntaxDefinition& { return addJai(); }, { "%.jai$" } } ); + + sdm->addPreDefinition( + { "Janet", []() -> SyntaxDefinition& { return addJanet(); }, { "%.janet$" } } ); + + sdm->addPreDefinition( { + "Java", + []() -> SyntaxDefinition& { return addJava(); }, + { "%.java$", "%.bsh$" }, + } ); + + sdm->addPreDefinition( + { "Jule", []() -> SyntaxDefinition& { return addJule(); }, { "%.jule$" } } ); + + sdm->addPreDefinition( + { "Julia", []() -> SyntaxDefinition& { return addJulia(); }, { "%.jl$" } } ); + + sdm->addPreDefinition( { + "JSX", + []() -> SyntaxDefinition& { return addJSX(); }, + { "%.jsx$" }, + {}, + "javascriptreact", + } ); + + sdm->addPreDefinition( + { "Kotlin", []() -> SyntaxDefinition& { return addKotlin(); }, { "%.kt$" } } ); + + sdm->addPreDefinition( { + "LaTeX", + []() -> SyntaxDefinition& { return addLatex(); }, + { "%.tex$", "%.sty$", "%.ltx$" }, + } ); + + sdm->addPreDefinition( { + "Lisp", + []() -> SyntaxDefinition& { return addLisp(); }, + { "%.lisp$", "%.cl$", "%.el$" }, + } ); + + sdm->addPreDefinition( { + "Lobster", + []() -> SyntaxDefinition& { return addLobster(); }, + { "%.lobster$" }, + } ); + + sdm->addPreDefinition( { + "Makefile", + []() -> SyntaxDefinition& { return addMakefile(); }, + { "^[Mm]akefile$", "%.mk$", "%.make$", "%.mak$", "^Makefile%.am$", "^Makefile%.in$" }, + } ); + + sdm->addPreDefinition( { + "Meson", + []() -> SyntaxDefinition& { return addMeson(); }, + { "meson%.build$", "^meson_options%.txt$" }, + } ); + + sdm->addPreDefinition( { + "Modula2", + []() -> SyntaxDefinition& { return addModula2(); }, + { "%.def$", "%.mod$" }, + } ); + + sdm->addPreDefinition( { + "Modula3", + []() -> SyntaxDefinition& { return addModula3(); }, + { "%.m3$", "%.i3$", "%.mg$", "%.ig$" }, + } ); + + sdm->addPreDefinition( { + "MoonScript", + []() -> SyntaxDefinition& { return addMoonscript(); }, + { "%.moon$" }, + } ); + + sdm->addPreDefinition( { + "Nelua", + []() -> SyntaxDefinition& { return addNelua(); }, + { "%.nelua$" }, + { "^#!.*[ /]nelua" }, + + } ); + + sdm->addPreDefinition( { + "Nim", + []() -> SyntaxDefinition& { return addNim(); }, + { "%.nim$", "%.nims$", "%.nimble$" }, + } ); + + sdm->addPreDefinition( + { "Objeck", []() -> SyntaxDefinition& { return addObjeck(); }, { "%.obs$" } } ); + + sdm->addPreDefinition( { + "Objective-C", + []() -> SyntaxDefinition& { return addObjectiveC(); }, + { "%.m$" }, + } ); + + sdm->addPreDefinition( { + "OCaml", + []() -> SyntaxDefinition& { return addOCaml(); }, + { "%.ml$", "%.mli$" }, + } ); + + sdm->addPreDefinition( + { "Odin", []() -> SyntaxDefinition& { return addOdin(); }, { "%.odin$" } } ); + + sdm->addPreDefinition( { + "Pascal", + []() -> SyntaxDefinition& { return addPascal(); }, + { "%.pas$", "%.dpr$", "%.dpk$" }, + } ); + + sdm->addPreDefinition( { + "Perl", + []() -> SyntaxDefinition& { return addPerl(); }, + { "%.pm$", "%.pl$" }, + { "^#!.*[ /]perl" }, + + } ); + + sdm->addPreDefinition( + { "PICO-8", []() -> SyntaxDefinition& { return addPICO8(); }, { "%.p8$" } } ); + + sdm->addPreDefinition( { + "PHP", + []() -> SyntaxDefinition& { return addPHP(); }, + { "%.php$", "%.php3$", "%.php4$", "%.php5$" }, + { "^#!.*[ /]php" }, + + } ); + + sdm->addPreDefinition( { + "PO", + []() -> SyntaxDefinition& { return addPO(); }, + { "%.po$", "%.pot$" }, + } ); + + sdm->addPreDefinition( + { "pony", []() -> SyntaxDefinition& { return addPony(); }, { "%.pony$" } } ); + + sdm->addPreDefinition( { + "PostgreSQL", + []() -> SyntaxDefinition& { return addPostgreSQL(); }, + { "%.sql$", "%.psql$" }, + } ); + + sdm->addPreDefinition( { + "PowerShell", + []() -> SyntaxDefinition& { return addPowerShell(); }, + { "%.ps1$", "%.psm1$", "%.psd1$", "%.ps1xml$", "%.pssc$", "%.psrc$", "%.cdxml$" }, + } ); + + sdm->addPreDefinition( { + "R", + []() -> SyntaxDefinition& { return addR(); }, + { "%.r$", "%.rds$", "%.rda$", "%.rdata$", "%.R$" }, + } ); + + sdm->addPreDefinition( + { "Racket", []() -> SyntaxDefinition& { return addRacket(); }, { "%.rkt$" } } ); + + sdm->addPreDefinition( + { "Rave", []() -> SyntaxDefinition& { return addRave(); }, { "%.rave$" } } ); + + sdm->addPreDefinition( { + "ReScript", + []() -> SyntaxDefinition& { return addRescript(); }, + { "%.res$" }, + } ); + + sdm->addPreDefinition( { + "Ruby", + []() -> SyntaxDefinition& { return addRuby(); }, + { "%.rb$", "%.gemspec$", "%.ruby$" }, + { "^#!.*[ /]ruby" }, + + } ); + + sdm->addPreDefinition( + { "Rust", []() -> SyntaxDefinition& { return addRust(); }, { "%.rs$" } } ); + + sdm->addPreDefinition( { + "Sass", + []() -> SyntaxDefinition& { return addSass(); }, + { "%.sass$", "%.scss$" }, + } ); + + sdm->addPreDefinition( { + "Scala", + []() -> SyntaxDefinition& { return addScala(); }, + { "%.sc$", "%.scala$" }, + } ); + + sdm->addPreDefinition( { "Shell script", + []() -> SyntaxDefinition& { return addShellScript(); }, + { "%.sh$", "%.bash$", "^%.bashrc$", "^%.bash_profile$", "^%.profile$", + "%.zsh$", "%.fish$", "^PKGBUILD$", "%.winlib$" }, + { "^#!.*[ /]bash", "^#!.*[ /]sh" }, + "shellscript", + { "bash", "zsh", "sh" } } ); + + sdm->addPreDefinition( { + "SmallBASIC", + []() -> SyntaxDefinition& { return addSmallBASIC(); }, + { "%.bas$" }, + } ); + + sdm->addPreDefinition( { + "Solidity", + []() -> SyntaxDefinition& { return addSolidity(); }, + { "%.sol$" }, + } ); + + sdm->addPreDefinition( + { "SQL", []() -> SyntaxDefinition& { return addSQL(); }, { "%.sql$" } } ); + + sdm->addPreDefinition( { + "Squirrel", + []() -> SyntaxDefinition& { return addSquirrel(); }, + { "%.nut$" }, + } ); + + sdm->addPreDefinition( { + "Svelte", + []() -> SyntaxDefinition& { return addSvelte(); }, + { "%.svelte$" }, + } ); + + sdm->addPreDefinition( + { "Swift", []() -> SyntaxDefinition& { return addSwift(); }, { "%.swift$" } } ); + + sdm->addPreDefinition( { + "Teal", + []() -> SyntaxDefinition& { return addTeal(); }, + { "%.tl$", "%.d%.tl$" }, + { "^#!.*[ /]tl" }, + + } ); + + sdm->addPreDefinition( + { "TOML", []() -> SyntaxDefinition& { return addToml(); }, { "%.toml$" } } ); + + sdm->addPreDefinition( { "TypeScript", + []() -> SyntaxDefinition& { return addTypeScript(); }, + { "%.ts$", "%.d%.ts$" }, + {}, + + { "ts" } } ); + + sdm->addPreDefinition( + { "typst", []() -> SyntaxDefinition& { return addTypst(); }, { "%.typ$" } } ); + + sdm->addPreDefinition( { + "Ü", + []() -> SyntaxDefinition& { return addU(); }, + { "%.u$", "%.uh$" }, + {}, + "ü", + } ); + + sdm->addPreDefinition( + { "V", []() -> SyntaxDefinition& { return addV(); }, { "%.v$", "%.vsh$" } } ); + + sdm->addPreDefinition( { + "V1", + []() -> SyntaxDefinition& { return addV1(); }, + { "%.v1$" }, + { "^#!.*[ /]v1" }, + + } ); + + sdm->addPreDefinition( { + "Vala", + []() -> SyntaxDefinition& { return addVala(); }, + { "%.vala$", "%.genie$" }, + } ); + + sdm->addPreDefinition( { + "Verilog", + []() -> SyntaxDefinition& { return addVerilog(); }, + { "%.V$", "%.vl$", "%.vh$", "%.v$" }, + } ); + + sdm->addPreDefinition( { + "Visual Basic", + []() -> SyntaxDefinition& { return addVisualBasic(); }, + { "%.bas$", "%.cls$", "%.ctl$", "%.dob$", "%.dsm$", "%.dsr$", "%.frm$", "%.pag$", "%.vb$", + "%.vba$", "%.vbs$" }, + } ); + + sdm->addPreDefinition( + { "Vue", []() -> SyntaxDefinition& { return addVue(); }, { "%.vue?$" } } ); + + sdm->addPreDefinition( + { "Wren", []() -> SyntaxDefinition& { return addWren(); }, { "%.wren$" } } ); + + sdm->addPreDefinition( { + "x86 Assembly", + []() -> SyntaxDefinition& { return addX86Assembly(); }, + { "%.asm$", "%.[sS]$" }, + } ); + + sdm->addPreDefinition( + { "[x]it!", []() -> SyntaxDefinition& { return addXit(); }, { "%.xit$" } } ); + + sdm->addPreDefinition( + { "Xtend", []() -> SyntaxDefinition& { return addXtend(); }, { "%.xtend$" } } ); + + sdm->addPreDefinition( { + "YAML", + []() -> SyntaxDefinition& { return addYAML(); }, + { "%.yml$", "%.yaml$" }, + { "^%%YAML %d+%.%d+" }, + + } ); + + sdm->addPreDefinition( { + "YueScript", + []() -> SyntaxDefinition& { return addYueScript(); }, + { "%.yue$" }, + } ); + + sdm->addPreDefinition( + { "Zephir", []() -> SyntaxDefinition& { return addZephir(); }, { "%.zep$" } } ); + + sdm->addPreDefinition( + { "Zig", []() -> SyntaxDefinition& { return addZig(); }, { "%.zig$" } } ); } }}}} // namespace EE::UI::Doc::Language