├── .github ├── dependabot.yml └── workflows │ └── CI_build.yml ├── .gitignore ├── .scripts └── update2p1.pl ├── .validators ├── autoCompletion.xsd ├── autoCompletion_swgmike.xsd ├── functionList.xsd ├── udl.schema ├── userDefineLangs.xsd ├── validator_json.py └── validator_xml.py ├── CONTRIBUTING.md ├── README.md ├── Test ├── doUnitTests.py ├── functionList │ ├── Cython_byFrederikLauf │ │ └── unitTest.expected.result │ ├── LSL_byKimpaTammas │ │ └── unitTest.expected.result │ ├── STL-3dObject-ASCII.byPryrt │ │ └── unitTest.expected.result │ ├── Vimscript_by_rdipardo │ │ └── unitTest.expected.result │ ├── dBASEPlus_DarkTheme_byLycanThrope │ │ └── unitTest.expected.result │ └── dBASEPlus_LightTheme_byLycanThrope │ │ └── unitTest.expected.result └── localUnitTestLauncher.ps1 ├── UDL-samples ├── ABAQUS_6.13-5_ObsidianTheme.inp ├── AlgolW_by_PolitePolarBear.alm ├── Amiga_E_bydmcoles.e ├── Amiga_E_dark_bydmcoles.e ├── AsmForMIPS-R2000_byJoãoRicardoRosa.s ├── AutoCAD-LPSS.udl.lin ├── AutoCAD-LPSS.udl.pat ├── AutoCAD-LPSS.udl.scr ├── AutoCAD-LPSS.udl.shp ├── Bicep_by_richardsondev.bicep ├── Cython_byFrederikLauf.pyx ├── ExcelFormula_ThemeDark_byOlivierMarche.txt ├── Fobagraph_Script_by_HelloWorldFR.bia ├── GCODE-Sinumerik_bySergioGU.SPF ├── HLASM_byAbeKornelis.mac ├── HLASM_byAbeKornelis.mlc ├── IBM_SBI_mapper_example.txt ├── Icinga_DSL_by_robweber.conf ├── LSL_byKimpaTammas.lsl ├── Lean_byJzPan.lean ├── Log_darkMode_byS0UGATA.stl ├── NC-DSTV_NC1_byJeffMiller.nc1 ├── NppExec_byAndreasHeim.exec ├── SIL-Power-Scripts-for-Jira_byHaydenSingleton.sil ├── SQL_Manifold9_byRKolka.sql ├── STL-3dObject-ASCII.byPryrt.stl ├── Vimscript_by_rdipardo.vimrc ├── YARA_byM0N4.yar ├── dBASEPlus_byLycanThrope.wfm ├── ezproxy_byABoze_config.txt ├── vkosuri_resource.robot └── yang_by-gribok.yang ├── UDLs ├── 3GL_byDrezzzz.xml ├── 4GL_SageX3.xml ├── 4GL_SageX3_Dark.xml ├── 6502Assembly_byCarlMyerholtz.xml ├── 68K_Assembly_byAmix73.xml ├── ABAP_by_ChristianKosasih.xml ├── ABAP_by_MithunKumar.xml ├── ABAQUS_6.13-5_ObsidianTheme.xml ├── AMPscript_byPatricioSapir.xml ├── AMXX_1.8.3_OciXCrom.xml ├── ANSYS_byEmiklo.xml ├── AOS-CX-10.09_byMaiKiMax94.xml ├── AVISynth_byRustamMusa.xml ├── Abaqus_byMarianMeinhard.xml ├── Ada202x_byspr93.xml ├── AlgolW_by_PolitePolarBear.xml ├── Alloy_by-lausdahl.xml ├── Amiga_E_bydmcoles.xml ├── Amiga_E_dark_bydmcoles.xml ├── Apache2_by_AlfonsoEncisoP_ThemeDefault.xml ├── Apache2_by_IsaacSalgueiro_ThemeZenBurn.xml ├── Arbortext_byDjenandjijg.xml ├── ArcInfoAML_byJakobNisell.xml ├── AriaTemplates_themeBespin_byAriaTemplates.xml ├── AriaTemplates_themeStandard_byAriaTemplates.xml ├── ArubaOS-16.10_byMaiKiMax94.xml ├── AsciiDocWebPage_byEduardoSantana.xml ├── AsmForAtmelAvr_byBrianTullio.xml ├── AsmForAvr2_byArtemZorin.xml ├── AsmForIntel8051_byJackMaynard.xml ├── AsmForMIPS-R2000_byJoaoRicardoRosa.xml ├── AsmForPIC16F628A_byIceborg.xml ├── AsmForPdp11_s11_byElisherer.xml ├── AssemblyMIPS_Stedman.xml ├── AsteriskConfig_byBrotherGabriel-Marie.xml ├── AsteriskExtensionLanguage-AEL_by-eyzel.xml ├── AsteriskSys_byBrotherGabriel-Marie.xml ├── AuditCommandLanguage-ACL_byJChen.xml ├── AutoCAD-LPSS.udl.xml ├── AutoHotKey_V2.udl.xml ├── AutoHotKey_byBrotherGabriel-Marie.xml ├── AutoLISPforAutoCAD_MichaelPuckett.xml ├── Awk_byVitaliyDovgan.xml ├── BB_Code_by_Efrit.xml ├── BIND-Config_by_JeremyLaidman.xml ├── Beef_DarkModeDefault_by_AndrewPozenel.xml ├── CIL_ECMA-335_byEdJobe.xml ├── CMTS_byTiGeRNet.xml ├── CONF_byDavidHaslam.xml ├── CS2_CFG_by_Nightcr4wler.xml ├── CUDA_byWeihangZhu.xml ├── CadenceSkill_byEvanShultz.xml ├── Cesil_byMajor25.xml ├── Chilli_byCliveToms.xml ├── Cisco_ACL_byChristophWempe.xml ├── Cisco_ASA_by_NickBettison.xml ├── Cisco_COS_byChristophWempe.xml ├── Cisco_IOS_Darkmode_by_YlloNieR.xml ├── Cisco_IOS_byLuisPisco.xml ├── CoCoA_5_Dark_byHyperSpeeed.xml ├── CoCoA_5_byHyperSpeeed.xml ├── CoffeeScript_by-blakmatrix.xml ├── ColdfusionCF9_bySpenster.xml ├── ConfigIni_byThomasAglassinger.xml ├── CueSheet_byDavidR.xml ├── Curv_byTimAyres.xml ├── Cython_byFrederikLauf.xml ├── DAX_bySaschaKasper.xml ├── DCL_by-wolfxx.xml ├── DML-Gembase_byDubMatrix.xml ├── DNS-Zone_byJeremyLaidman.xml ├── Dart_Catpuccin-Macchiato.xml ├── Dart_DarkModeDefault.xml ├── Dart_by_thiagovscoelho.xml ├── DatcomIO_by_StuartBowman.xml ├── DelphiForms_by-ewgbel.xml ├── DinkC_by-sparrowhawk76.xml ├── Dot_by-major25.xml ├── DriveMaster_byNiallByrne.xml ├── ESLNotepad_byJohnPearce.xml ├── ESPRIT_Post_Processer_byTitusRyker.xml ├── EasytrievePlus_byThomasAglassinger.xml ├── EisenScript_bySygwindFeamir.xml ├── Elf_byMarkkobo.xml ├── Emailheader_byPeterFisk.xml ├── Erdas-MDL_by-meelmaar.xml ├── EssbaseSuite_byCelvinKattookaran.xml ├── ExcelFormula_ThemeDark_byOlivierMarche.xml ├── ExcelFormula_byOlivierMarche.xml ├── ExcelForumlas-xlf_byDickKusleika.xml ├── FEKO_byClintScarborough.xml ├── FHEM_byChristophWempe.xml ├── Fanuc_by-mar_tech.xml ├── FileMakerPro_Calculation_byDanSmith.xml ├── Fobagraph_Script_(.bia)_DarkMode_by_HelloWorldFR.xml ├── Fobagraph_Script_(.bia)_LightMode_by_HelloWorldFR.xml ├── FontForge_Project_byAndrewMiller.xml ├── FontForge_Script_byAndrewMiller.xml ├── FormCalc_byJeremyEvanchesky.xml ├── Fortinet_FortiOS_FGT_by_DPBarbosa.xml ├── Fortinet_FortiOS_FGT_by_SSavaso_6_4_14.xml ├── Fortran_FreeFormat_SebastianHoelz.xml ├── Fsharp_byJamesJensen.xml ├── GCODE-3d-MostCNC_byMikeLohmeyer.xml ├── GCODE-3d-OkumaLathes_byHarveyShrock.xml ├── GCODE-3d_by_AndresHermes.xml ├── GCODE-Sinumerik_bySergioGU.xml ├── GIFT-Format_byMatthewKuznia.xml ├── GISDK_byFranciscoFerreira.xml ├── GLSL3.3_by_yash_eng.xml ├── GNUARM_ASM_byLeehaedong.xml ├── GNU_MathProg_by_third_maths.xml ├── GameMonkey_byJanSchreiber.xml ├── Geomatica_EASI_byPhilippeCote.xml ├── Gherkin_byFrankRalf.xml ├── Gnuplot_byJohanWild.xml ├── GoogleProtocolBuffers-GPB_byBradWehmeier.xml ├── GraphViz_by-signmotion.xml ├── Gregorio_byBrotherGabriel-Marie.xml ├── Groovy_byGyrm.xml ├── HL7_StackOverflow-ChrisK.xml ├── HL7_StackOverflow-GrittyRooster.xml ├── HL7_StackOverflow-Phaxmohdem.xml ├── HLASM_byAbeKornelis.xml ├── HLSL_byUniversal.xml ├── HQL_byAkeelUdar.xml ├── HSpice_by-sahjakjebndmns.xml ├── Htaccess_bySilasBrill.xml ├── IDEAScript_byMuPp3t33r.xml ├── IDL_byAlexisBietti.xml ├── ITT_IDL-dat_by-pocaracas.xml ├── ITT_IDL-pro_byDavidHiggins.xml ├── IceBreak-RPG_byNielsLiisberg.xml ├── Icinga_DSL_by_robweber.xml ├── Icon_byOlegBakharev.xml ├── Informix4GL_byHarryChen.xml ├── JBossDroolsRules_byArulPrashanth.xml ├── JCL_byThomasAglassinger.xml ├── JScript-WSH-PanelMod_byLSI-N.xml ├── Javascript-alt_byMarkRamirez.xml ├── Juniper_JunOS_byHansTendrup.xml ├── Klipper-GCODE-Dark-by-Iron3eagle.xml ├── LDIF_by-gambazinho.xml ├── LS-DYNA_byTimHartman.xml ├── LSL_byKimpaTammas.xml ├── Lean_byJzPan.xml ├── LilyPond_byMarSoft.xml ├── Liquid_dark_byFabbroDan.xml ├── Log4Net_byCatherineDusa.xml ├── Log_darkMode_byS0UGATA.xml ├── LotusNotesFormula_byPaulGoodwin.xml ├── LotusScript_byUdoJunghans.xml ├── LoycExpressionSyntax-les_Dark_byDavidPiepgrass.xml ├── MEL_AutodeskMaya_NeilRHagre.xml ├── MQL4_byMichaelMargolese.xml ├── MSC-Nastran_by-onurarifyasa.xml ├── MSC-Patran_by-onurarifyasa.xml ├── MSC-adams_car_by_ARRK.xml ├── MSL_byAnonymous_in2009.xml ├── Magpie_bySilectis.udl.xml ├── Maniascript_byMagnetiK.xml ├── Mathematica-mma_byAkater.xml ├── MediaWiki_userDefineLang__Obsidian_Theme_.xml ├── MediawikiMarkup_Improved_bySaurabhPatil.xml ├── Mediawiki_SL.xml ├── Mercury_byAnatolySova.xml ├── Metastock_byPietroDellaSaggezza.xml ├── Mikrotik_5.19_rsc.xml ├── MortScript_byJustusWogerbauer.xml ├── MotoMan_Ladder_byArnaudMonnier.xml ├── MotoMan_byArnaudMonnier.xml ├── Mumps-GTM_byMarcoMedeiros.xml ├── Mumps_byMarcoMedeiros.xml ├── MyDefrag_byGSchlag.xml ├── NC-DSTV_NC1_byJeffMiller.xml ├── NM-TRAN_byStephenCOlson.xml ├── NagiosCFG_byRobertFults.xml ├── NeoSignOfMisery_byRustamMusa.xml ├── Net.Data-IBM_byMarkus.xml ├── NetInstall_bySimonNeitzel.xml ├── NetLogo_byMattDurak.xml ├── Netcool_Rules_byJessPetty.xml ├── NppExec_themeDefault_byAndreasHeim.xml ├── NppExec_themeMaterial_byAndreasHeim.xml ├── Nuke_byMichalM.xml ├── OBMM-Script_byAnonymous_in2006.xml ├── OCI_Terraform_by_robin_s_chatterjee.xml ├── OMP_OPAL_BY_TIMPEC.xml ├── OSL_byEdawan.xml ├── Objective-C++_byLattHsiang.xml ├── Occam2_byWilliamLuitje.xml ├── Odin_2024_12.xml ├── Ogre3DOverlay_byMortenASteinsland.xml ├── OpenCL-v1p0_by-yash-eng.xml ├── Oracle-UCL-iDoc_byArnoudKoot.xml ├── OracleWorkflow_byAndrewMiller.xml ├── OsirisNotepadSetup.xml ├── PARI-GP_by-third_maths.xml ├── PIG_byErezSegal.xml ├── PL-SQL_byAnonymous_in2010.xml ├── PL1_by_GaborMarkon.xml ├── POVRay_byMisto423.xml ├── PPL_byOscarHenryTejera.xml ├── PROC_V1_byArmandoHerrazDurango.xml ├── Paradox45forDOS_byBrianMalone.xml ├── Parallax-PBASIC25-v1p1_byBruceSnyder.xml ├── PennMUSH_SoftCode_byKougyoku.xml ├── Pep8-Simulator_byLouisRousseau.xml ├── Picoblaze_byMichaelKishinevsky.xml ├── Polycom_byBrotherGabriel-Marie.xml ├── PolyhedraCL_byDaveStow.xml ├── PortableObject_LightMode_byGreenGoblin.xml ├── PowerBuilder_DM_byFa0lin.xml ├── PowerBuilder_byCarlSaunders.xml ├── PowerFx_PowerAppsStyle.xml ├── Powerpro_byBrotherGabriel-Marie.xml ├── Powershell_by-jongalloway.xml ├── Progress4GL_by-jefb.xml ├── Prolog-GNU_byDanielDiaz.xml ├── Prolog-SWI_byAnthonyBonnier.xml ├── PyInstaller_Spec_Darkmode_byTnhung2011.xml ├── PyInstaller_Spec_byTnhung2011.xml ├── QLingo_byJohnCyprich.xml ├── QML-QT_byWoazim.xml ├── Qik_byStevenCraft.xml ├── QtProject_byStingX.xml ├── R2RML_byFranckMichel.xml ├── RAPID_byDanVenema.xml ├── REXX-SeveralDialects_byGertMassheimer.xml ├── REXX_TSOE_byMadan.xml ├── RISCV-Light_byAidanDempsey.xml ├── RPL_byHGJ.xml ├── RPM-SpecFiles_byMatthewKruer.xml ├── R_by-halpo.xml ├── Rebol_byMasaruYamabashi.xml ├── RenderMan-RSL_byStefanGustavson.xml ├── RichText-RTF_byFrankRalf.xml ├── RouterOS-Script_byNieL_TM.xml ├── Rules_Language_byNimadDeshpande.xml ├── Rust_byPaoloFalabella.xml ├── SAP-ABAP_byFrancoCapetta.xml ├── SAP-NetWeaver-IdM-v7p1_byFrankBuchholz.xml ├── SAP-WebIntelligenceFormula_byIvanRubil.xml ├── SAS_StyleDark_byMatthiasBoege.xml ├── SAS_StyleLight_byMatthiasBoege.xml ├── SAS_byCathLawrence.xml ├── SAS_withPseudocode_byJeffFoarde.xml ├── SBI Mapper (Dark Mode).xml ├── SBI Mapper.xml ├── SCL_TIAPortal_dark_byCrankdad.udl.xml ├── SEBOL_generic-dark.xml ├── SIL-Power-Scripts-for-Jira_byHaydenSingleton.xml ├── SLAX_byTravisWaltz.xml ├── SPARQL-v1p1_byFranckMichel.xml ├── SPiiPlus_ACSPL+_bySROMSE.xml ├── SQL_Manifold9_byRKolka.xml ├── SQL_snowflake_ThemeDefault_anthian.udl.xml ├── SQR_byJames.xml ├── STAPL_byMichaelWalker.xml ├── STL-3dObject-ASCII.byPryrt.xml ├── STOL_byPeterNell.xml ├── Samcef_by-moleculext.xml ├── Scala_byMihailJP.xml ├── SchlumbergerEclipse-slb_by-juanbretti.xml ├── SciLab_bySamuelGougeon.xml ├── ShadeLab_by-redcool007.xml ├── Siebel_eScript_byGiuseppeGarofalo.xml ├── Siemens-SCL_byTizianoSartini.xml ├── Skyrim-Papyrus_byJohnKostrzewski.xml ├── Smali_byJasi2169.xml ├── SmallWorldMagik_byChristianTaton.xml ├── Smartsheet_byKevinDickinson.xml ├── Smarty_byHelge-deVries.xml ├── Snort_byAnonymous_in2012.xml ├── SplunkConfig_by-httpstergeek.xml ├── StringTemplate3_byAnnaCzerwiec.xml ├── StructuredText-PLC-B-R_byBradleyBaber.xml ├── SubRip_byAndreyEfremov.xml ├── SubStation_Alpha_byAndrewMiller.xml ├── Substation_alpha_subtitles_byJackyHE.xml ├── Susan_byMahderGebremedhin.xml ├── SystemRDL2_byKeithBrady.xml ├── SystemVerilog1_byKapilPatel.xml ├── T-SQL-MSServer2008r2_bySergeyIvanov.xml ├── TACL_byAdamWoofrom.xml ├── TNT_phylogenetics.xml ├── TOML_byTimendum.xml ├── TSL_byTorkelLindahl.xml ├── TableauDesktop_bySP3NGL3R.xml ├── TemplateToolkit-TT_byAndreyEfremov.xml ├── TeraTermLanguage_allCmdsV4.xml ├── TeradataMacroLanguage-Term_byPatrickDruley.xml ├── TeradataTools-v13_byTrevorOGrady.xml ├── Teradyne_byJohannRetzlaff.xml ├── TexCnc_by-fixus971.xml ├── TinyFugue_byYrwin.xml ├── TodoDotTxt_byTimDrub.xml ├── TradeStation_EasyLanguage_byCharlesToepfer.xml ├── Turtle-RDF_byFranckMichel.xml ├── Twig-HTML_byPaoloPriotto.xml ├── TypeScript_byJoshuaBeall.xml ├── USFM_byDavidHaslam.xml ├── UniBASIC_byJustinKobylarz.xml ├── VENOM_byAlainLicona.xml ├── VRML_byJordiRCardona.xml ├── VectorScript_byMaarten.xml ├── Vimscript_Obsidian_by_rdipardo.xml ├── Vimscript_by_rdipardo.xml ├── VirtualConnect_byJosephCasalinoIII.xml ├── VisualFoxPro_by-jgoh.xml ├── VisualStudioProject_byCADbloke.xml ├── VisualStudioSolution-sln_byCADbloke.xml ├── Visual_DataFlex_byBernhardVeit.xml ├── Wavefront-OBJ_by-aperezm.xml ├── WebFOCUS_by-thomas-aglassinger.xml ├── WikiVKontakte_by-ordorub.xml ├── WinBatch_byNicolasCourthouis.xml ├── WinDev-WLanguage_by-alpha3i.xml ├── X3D_ClassicEncoding_byJordiRCardona.xml ├── XMOS-xCORE-XC_by-johned02.xml ├── YARA_byM0N4.xml ├── Zebra_Printing_Language.xml ├── ansible-play.xml ├── ansible-play_DM.xml ├── arc86_h2fooko.xml ├── arm32-gas-assembly.udl.xml ├── arm32-gas-assembly_DM.udl.xml ├── asmMips64_byRyanKane.xml ├── aya.udl.xml ├── bibTeX2_by_WilliamDVolterman.xml ├── c-al_by-ccris.xml ├── clojure_byDanielCotter.xml ├── cobol_2_byAlainChappuis.xml ├── consize_byCarstenEllwein.xml ├── csound_byNikitaMozziconin.xml ├── dBASEPlus_DarkTheme_byLycanThrope.xml ├── dBASEPlus_LightTheme_byLycanThrope.xml ├── erlang_byMikeKaganski.xml ├── ezproxy_dark_byABoze.xml ├── ezproxy_light_byABoze.xml ├── gedcom55_byAnonymous_in2010.xml ├── gnuplot_2023.xml ├── go_byAnthonyStarks.xml ├── iCalendar_by-jfreundo.xml ├── iMacros_byDanielSteinberg.xml ├── interlis_byStefanBurckhardt.xml ├── jBaseBasic-jbc_byGene.xml ├── jQuery_byJamesAllardice.xml ├── jai.udl.xml ├── kiXtart_byAnonymous_in2005.xml ├── less-js_byAsiaSun.xml ├── mIRC_byAnonymous_in2009.xml ├── mShell_byToolman.xml ├── mql5_by_andydoc.udl.xml ├── nesC_bySugiryo.xml ├── nessus-compliance-checks_by_amurren.xml ├── nginx-config_byDarrenSlatten.xml ├── plm86_by-h2fooko.xml ├── qs_byFiorixF1.xml ├── reStructuredText.bySteenhulthin.xml ├── smali_by_enjoyop.xml ├── thrift_by-mail507.xml ├── twinBASIC_by_sokinkeso.xml ├── twinBASIC_dark_by_sokinkeso.xml ├── userDefineLang_Mustache.xml ├── velocity_byPrasannaKumar.xml ├── vislcg3_by-ginlennon.xml ├── vkosuri_lang-robot.xml ├── xcbasic3_byAlanBourke.xml ├── yang_by-gribok.xml └── zig_by-tgschultz.xml ├── appveyor.yml ├── autoCompletion ├── Amiga_E.xml ├── Amiga_E_dark.xml ├── AutoCAD-LPSS.xml ├── DAX.xml ├── INTERLIS.xml ├── LSL.xml ├── OCI_Terraform_by_robin_s_chatterjee.xml ├── RSL.xml ├── Robotframework.xml ├── Smartsheet.xml ├── Vim script.xml ├── dBASEPlus (Dark Theme).xml ├── dBASEPlus (Light Theme).xml ├── ezproxy dark.xml ├── ezproxy light.xml ├── fobagraph.xml └── smali5.xml ├── functionList ├── Cython_byFrederikLauf.xml ├── LSL_byKimpaTammas.xml ├── STL-3dObject-ASCII.byPryrt.xml ├── Vimscript_by_rdipardo.xml └── dbaseplus.xml ├── requirements.txt ├── udl-list.json └── udl-list.md /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | 9 | # Maintain dependencies for GitHub Actions 10 | - package-ecosystem: "github-actions" 11 | directory: "/" 12 | schedule: 13 | interval: "weekly" 14 | 15 | - package-ecosystem: "pip" 16 | directory: "/" 17 | schedule: 18 | interval: "weekly" -------------------------------------------------------------------------------- /.github/workflows/CI_build.yml: -------------------------------------------------------------------------------- 1 | name: CI_build 2 | 3 | on: 4 | # was [push, pull_request, workflow_dispatch] 5 | # separated because want to add schedule, which needs a 6 | 7 | # normal conditions 8 | push: 9 | pull_request: 10 | 11 | # on demand, from Actions tab 12 | workflow_dispatch: 13 | 14 | # on schedule (using cron syntax) 15 | # 16:00 UTC (8:00am PST) on 6=Saturday 16 | schedule: 17 | - cron: "0 16 * * 6" 18 | 19 | jobs: 20 | validate: 21 | runs-on: windows-latest 22 | steps: 23 | - name: Checkout repo 24 | uses: actions/checkout@v4 25 | 26 | - name: Install python modules 27 | working-directory: . 28 | run: python -m pip install -r requirements.txt 29 | 30 | - name: Validate folders of XML types (UDLs, autoCompletion, functionList) 31 | working-directory: . 32 | run: python .validators\validator_xml.py 33 | 34 | - name: Validate json and rebuild udl-list.md 35 | working-directory: . 36 | run: python .validators\validator_json.py 37 | 38 | - name: Rebuild Markdown 39 | uses: stefanzweifel/git-auto-commit-action@v5 40 | if: contains('push workflow_dispatch', github.event_name) 41 | with: 42 | commit_message: Automatically re-build udl-list.md 43 | 44 | unitTest: 45 | runs-on: windows-latest 46 | needs: validate 47 | steps: 48 | - name: Checkout repo 49 | uses: actions/checkout@v4 50 | - name: Install Notepad++ 51 | uses: crazy-max/ghaction-chocolatey@v3 52 | with: 53 | args: install -y notepadplusplus 54 | - name: Run FunctionList Unit Tests 55 | working-directory: .\Test 56 | run: | 57 | $PowerEditorSource = "C:\Program Files\Notepad++\" 58 | $PowerEditorLocal = ".\PowerEditor" 59 | Copy-Item "$PowerEditorSource" -Destination "$PowerEditorLocal\bin" -Recurse -Force 60 | New-Item "$PowerEditorLocal\bin\doLocalConf.xml" > $nul 61 | New-Item "$PowerEditorLocal\bin\userDefineLangs" -ItemType Directory -ea 0 > $nul 62 | python doUnitTests.py $PowerEditorLocal\bin 63 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | PowerEditor 2 | **/unitTest 3 | **/unitTest.result.json 4 | -------------------------------------------------------------------------------- /.validators/autoCompletion.xsd: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /.validators/udl.schema: -------------------------------------------------------------------------------- 1 | { 2 | "type": "object", 3 | "required": [ 4 | "name", 5 | "version", 6 | "UDLs" 7 | ], 8 | "properties": { 9 | "name": { "enum": ["npp-UDL-list"] }, 10 | "version": { 11 | "type": "string", 12 | "pattern": "^\\d+(\\.\\d+){,3}$" 13 | }, 14 | "UDLs": { 15 | "type": "array", 16 | "items": { "$ref": "#/definitions/udl" } 17 | } 18 | }, 19 | "definitions": { 20 | "udl": { 21 | "type": "object", 22 | "required": [ 23 | "id-name", 24 | "display-name", 25 | "version", 26 | "repository", 27 | "description", 28 | "author" 29 | ], 30 | "properties": { 31 | "id-name": { 32 | "type": "string", 33 | "minLength": 1 34 | }, 35 | "display-name": { 36 | "type": "string", 37 | "minLength": 1 38 | }, 39 | "version": { 40 | "type": "string" 41 | }, 42 | "repository": { 43 | "oneOf": [ 44 | {"type": "string", "maxLength": 0}, 45 | {"format": "uri"} 46 | ] 47 | }, 48 | "description": { 49 | "type": "string" 50 | }, 51 | "author": { 52 | "type": "string" 53 | }, 54 | "homepage": { 55 | "oneOf": [ 56 | {"type": "string", "maxLength": 0}, 57 | {"format": "uri"} 58 | ] 59 | }, 60 | "autoCompletion": { 61 | "oneOf": [ 62 | { "type": "boolean" }, 63 | { "type": "string", "minLength": 1} 64 | ] 65 | }, 66 | "autoCompletionAuthor": { 67 | "type": "string", 68 | "minLength": 1 69 | }, 70 | "functionList": { 71 | "oneOf": [ 72 | { "type": "boolean" }, 73 | { "type": "string", "minLength": 1} 74 | ] 75 | }, 76 | "functionListAuthor": { 77 | "type": "string", 78 | "minLength": 1 79 | } 80 | } 81 | } 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /.validators/userDefineLangs.xsd: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | -------------------------------------------------------------------------------- /.validators/validator_xml.py: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/python3 2 | 3 | import os 4 | import io 5 | import sys 6 | 7 | import requests 8 | from hashlib import sha256 9 | from lxml import etree 10 | 11 | api_url = os.environ.get('APPVEYOR_API_URL') 12 | has_error = False 13 | 14 | 15 | def post_error(message): 16 | global has_error 17 | 18 | has_error = True 19 | 20 | message = { 21 | "message": message, 22 | "category": "error", 23 | "details": "" 24 | } 25 | 26 | if api_url: 27 | requests.post(api_url + "api/build/messages", json=message) 28 | else: 29 | from pprint import pprint 30 | pprint(message) 31 | 32 | 33 | def parse_xml_file(filename_xml, filename_xsd = None): 34 | 35 | print(filename_xml) 36 | 37 | # parse xml 38 | try: 39 | doc = etree.parse(filename_xml) 40 | #print(f'{filename_xml} XML well formed, syntax ok.') 41 | 42 | # check for file IO error 43 | except IOError: 44 | #print('Invalid File') 45 | post_error(f'{filename_xml}: IOError Invalid File') 46 | return 47 | 48 | 49 | # check for XML syntax errors 50 | except etree.XMLSyntaxError as err: 51 | #print('XML Syntax Error, see error_syntax.log') 52 | post_error(f'{filename_xml}: {str(err.error_log)}: XMLSyntaxError Invalid File') 53 | return 54 | 55 | except: 56 | #print('Unknown error.') 57 | post_error(f'{filename_xml}: Unknown error. Maybe check that no xml version is in the first line.') 58 | return 59 | 60 | # open and read schema file 61 | # https://lxml.de/validation.html#xmlschema 62 | if filename_xsd is not None: 63 | try: 64 | xmlschema_doc = etree.parse(filename_xsd) 65 | #print(f'{filename_xml} | {filename_xsd} XML well formed, syntax ok.') 66 | 67 | # error reading XSD 68 | except IOError: 69 | post_error(f'{filename_xml} | {filename_xsd}: IOError Invalid File') 70 | return 71 | 72 | # error parsing XSD 73 | except etree.XMLSyntaxError as err: 74 | post_error(f'{filename_xml} | {filename_xsd}: {str(err.error_log)}: XMLSyntaxError Invalid File') 75 | return 76 | 77 | # other error 78 | except Exception as err: 79 | post_error(f'{filename_xml} | {filename_xsd}: Unknown error {str(err.error_log)} reading Schema .xsd file.') 80 | return 81 | 82 | # Next, extract the schema object from the schema_doc 83 | try: 84 | xmlschema = etree.XMLSchema(xmlschema_doc) 85 | #print(f'{filename_xml} | {filename_xsd}: SCHEMA OBJECT OK') 86 | 87 | # error with Schema 88 | except etree.XMLSchemaError as err: 89 | post_error(f'{filename_xml} | {filename_xsd}: {str(err.error_log)}: XMLSchemaError') 90 | return 91 | 92 | # other error 93 | except Exception as err: 94 | post_error(f'{filename_xml} | {filename_xsd}: Unknown error {str(err.error_log)} obtaining schema object') 95 | return 96 | 97 | # finally, validate the XML against the schema 98 | if not xmlschema.validate(doc): 99 | post_error(f'{filename_xml} | {filename_xsd}: Validation error {str(xmlschema.error_log)}') 100 | return 101 | #else: 102 | # print(f'{filename_xml} | {filename_xsd}: VALIDATION OK') 103 | 104 | def parse_xml_files_from_udls_dir(): 105 | 106 | for file in os.listdir("UDLs"): 107 | if file.endswith(".xml"): 108 | #print(os.path.join("UDLs", file)) 109 | parse_xml_file(os.path.join("UDLs", file), '.validators/userDefineLangs.xsd') 110 | 111 | def parse_xml_files_from_autoCompletion_dir(): 112 | 113 | for file in os.listdir("autoCompletion"): 114 | if file.endswith(".xml"): 115 | #print(os.path.join("autoCompletion", file)) 116 | parse_xml_file(os.path.join("autoCompletion", file), '.validators/autoCompletion.xsd') 117 | 118 | def parse_xml_files_from_functionList_dir(): 119 | 120 | for file in os.listdir("functionList"): 121 | if file.endswith(".xml"): 122 | #print(os.path.join("functionList", file)) 123 | parse_xml_file(os.path.join("functionList", file), '.validators/functionList.xsd') 124 | 125 | parse_xml_files_from_udls_dir() 126 | parse_xml_files_from_autoCompletion_dir() 127 | parse_xml_files_from_functionList_dir() 128 | 129 | if has_error: 130 | sys.exit(-2) 131 | else: 132 | sys.exit() 133 | -------------------------------------------------------------------------------- /Test/functionList/Cython_byFrederikLauf/unitTest.expected.result: -------------------------------------------------------------------------------- 1 | {"leaves":["int myCyFunction(int i, int j)","int myOtherCyFunction(int i, int j)","myPyFunction()"],"nodes":[{"leaves":["public double[:] myCyClassMethod(self)","myPyClassMethod(self)"],"name":"MyCythonClass"},{"leaves":["_visibleNestedClassMethod(self)","myPyClassMethod(self)"],"name":"MyPythonClass"}],"root":"unitTest"} -------------------------------------------------------------------------------- /Test/functionList/LSL_byKimpaTammas/unitTest.expected.result: -------------------------------------------------------------------------------- 1 | {"leaves":["next_line","doMenu","mainMenu","posMenu","rotateMenu","init","state_entry","touch_start","on_rez","timer","listen","changed","run_time_permissions","dataserver"],"root":"unitTest"} 2 | -------------------------------------------------------------------------------- /Test/functionList/STL-3dObject-ASCII.byPryrt/unitTest.expected.result: -------------------------------------------------------------------------------- 1 | {"leaves":["solid cube"],"root":"unitTest"} 2 | -------------------------------------------------------------------------------- /Test/functionList/Vimscript_by_rdipardo/unitTest.expected.result: -------------------------------------------------------------------------------- 1 | {"leaves":["build_go_files","F","Baz","g","H","foo","namespaced#function","Another#namespaced#function"],"root":"unitTest"} -------------------------------------------------------------------------------- /Test/functionList/dBASEPlus_DarkTheme_byLycanThrope/unitTest.expected.result: -------------------------------------------------------------------------------- 1 | {"leaves":["function combobox_onChange"],"nodes":[{"leaves":[" FUNCTION normalizedValue"],"name":"NumSeeker"}],"root":"unitTest"} -------------------------------------------------------------------------------- /Test/functionList/dBASEPlus_LightTheme_byLycanThrope/unitTest.expected.result: -------------------------------------------------------------------------------- 1 | {"leaves":["function combobox_onChange"],"nodes":[{"leaves":[" FUNCTION normalizedValue"],"name":"NumSeeker"}],"root":"unitTest"} -------------------------------------------------------------------------------- /Test/localUnitTestLauncher.ps1: -------------------------------------------------------------------------------- 1 | cd Test 2 | 3 | $PowerEditorSource = "c:\Program Files\Notepad++\" 4 | $PowerEditorLocal = ".\PowerEditor" 5 | 6 | if ( !(Test-Path $PowerEditorLocal) ) { 7 | # to be more efficient, only copy from PowerEditorSource if we 8 | # don't already have the PowerEditorLocal hierarchy 9 | # (that also lets me keep a customized local 10 | Copy-Item "$PowerEditorSource" -Destination "$PowerEditorLocal\bin" -Recurse -Force 11 | } 12 | New-Item "$PowerEditorLocal\bin\doLocalConf.xml" -ea 0 > $nul 13 | New-Item "$PowerEditorLocal\bin\userDefineLangs" -ItemType Directory -ea 0 > $nul 14 | python doUnitTests.py $PowerEditorLocal\bin 15 | 16 | cd .. 17 | -------------------------------------------------------------------------------- /UDL-samples/ABAQUS_6.13-5_ObsidianTheme.inp: -------------------------------------------------------------------------------- 1 | *INCLUDE, INPUT = NFB_Low_Roof_FrontMirror.inp 2 | **HMNAME LOADSTEP 1 BOLT CLAMP-UP 3 | *STEP, NAME = BOLT CLAMP-UP, NLGEOM = YES, UNSYMM = YES, CONVERT SDI = YES 4 | *STATIC 5 | 1.,,, 6 | *CONTROLS, PARAMETERS = TIME INCREMENTATION 7 | 8,10,,,12,6,,,,,75,, 8 | **HWNAME LOADCOL 1 SPC 9 | **HWCOLOR LOADCOL 1 11 10 | *BOUNDARY, OP = NEW 11 | NSET_PIN,PINNED 12 | NSET_SYM,YSYMM 13 | **HWNAME LOADCOL 1 BOLT CLAMP-UP 14 | **HWCOLOR LOADCOL 1 1 15 | ******************************************************************************** 16 | ** Clamp force adjusted based on PDM 2S2 864 (T=7Nm+-1) ** 17 | ******************************************************************************** 18 | *CLOAD 19 | NSET_M6,1,7000. 20 | *OUTPUT, FIELD, FREQUENCY = 999 21 | *NODE OUTPUT 22 | U, 23 | *ELEMENT OUTPUT 24 | S, 25 | *CONTACT OUTPUT 26 | CSTRESS, 27 | CSTATUS, 28 | *NODE PRINT, NSET = NSET_M6, FREQUENCY = 999, SUMMARY = NO 29 | TF, 30 | *RESTART, WRITE, FREQUENCY = 999, OVERLAY 31 | *END STEP 32 | ***** 33 | -------------------------------------------------------------------------------- /UDL-samples/AlgolW_by_PolitePolarBear.alm: -------------------------------------------------------------------------------- 1 | BEGIN 2 | STRING(72) ARRAY r(-3::10); 3 | r(-3) := " r( "; 4 | r(-2) := ") := "; 5 | r(-1) := "; "; 6 | r( 0) := "BEGIN "; 7 | r( 1) := " STRING(72) ARRAY r(-3::10); "; 8 | r( 2) := " I_W := 2; "; 9 | r( 3) := " S_W := 0; "; 10 | r( 4) := " FOR i:=0 UNTIL 1 DO "; 11 | r( 5) := " WRITE(r(i)); "; 12 | r( 6) := " FOR j:=-3 UNTIL 10 DO "; 13 | r( 7) := " WRITE(r(-3)(0|4),j,r(-2)(0|5),CODE(127),r(j),CODE(127), r(-1)(0|1));"; 14 | r( 8) := " FOR k:=2 UNTIL 10 DO "; 15 | r( 9) := " WRITE(r(k)); "; 16 | r(10) := "END. "; 17 | I_W := 2; 18 | S_W := 0; 19 | FOR i:=0 UNTIL 1 DO 20 | WRITE(r(i)); 21 | FOR j:=-3 UNTIL 10 DO 22 | WRITE(r(-3)(0|4),j,r(-2)(0|5),CODE(127),r(j),CODE(127), r(-1)(0|1)); 23 | FOR k:=2 UNTIL 10 DO 24 | WRITE(r(k)); 25 | END. 26 | -------------------------------------------------------------------------------- /UDL-samples/Amiga_E_bydmcoles.e: -------------------------------------------------------------------------------- 1 | -> gradientslider in E! 2 | 3 | MODULE 'intuition/intuition', 'intuition/gadgetclass', 'intuition/icclass', 4 | 'gadgets/gradientslider' 5 | 6 | DEF w:PTR TO window, grad:PTR TO gadget, gradbase, class, val 7 | 8 | PROC main() 9 | IF w:=OpenWindowTagList(NIL,[WA_FLAGS,$E,WA_IDCMP,$268,WA_WIDTH,400,WA_HEIGHT,80,WA_TITLE,'Gradients in E!',0]) 10 | SetStdRast(w.rport) 11 | IF gradbase:=OpenLibrary('gadgets/gradientslider.gadget',39) 12 | IF grad:=NewObjectA(NIL,'gradientslider.gadget',[GA_TOP,20,GA_LEFT,20,GA_WIDTH,350,GA_HEIGHT,30,GA_ID,1,GRAD_PENARRAY,[0,7,-1]:INT,GRAD_KNOBPIXELS,20,0]) 13 | AddGList(w,grad,-1,-1,NIL) 14 | RefreshGList(grad,w,NIL,-1) 15 | WHILE (class:=WaitIMessage(w))<>IDCMP_CLOSEWINDOW 16 | GetAttr(GRAD_CURVAL,grad,{val}) 17 | TextF(20,60,'gradient value = \z$\h[4]',val) 18 | ENDWHILE 19 | RemoveGList(w,grad,-1) 20 | DisposeObject(grad) 21 | ELSE 22 | WriteF('Could not create GradientSlider!\n') 23 | ENDIF 24 | CloseLibrary(gradbase) 25 | ELSE 26 | WriteF('Could not open "gradientslider.gadget"\n') 27 | ENDIF 28 | CloseWindow(w) 29 | ELSE 30 | WriteF('No Window!\n') 31 | ENDIF 32 | ENDPROC 33 | -------------------------------------------------------------------------------- /UDL-samples/Amiga_E_dark_bydmcoles.e: -------------------------------------------------------------------------------- 1 | -> gradientslider in E! 2 | 3 | MODULE 'intuition/intuition', 'intuition/gadgetclass', 'intuition/icclass', 4 | 'gadgets/gradientslider' 5 | 6 | DEF w:PTR TO window, grad:PTR TO gadget, gradbase, class, val 7 | 8 | PROC main() 9 | IF w:=OpenWindowTagList(NIL,[WA_FLAGS,$E,WA_IDCMP,$268,WA_WIDTH,400,WA_HEIGHT,80,WA_TITLE,'Gradients in E!',0]) 10 | SetStdRast(w.rport) 11 | IF gradbase:=OpenLibrary('gadgets/gradientslider.gadget',39) 12 | IF grad:=NewObjectA(NIL,'gradientslider.gadget',[GA_TOP,20,GA_LEFT,20,GA_WIDTH,350,GA_HEIGHT,30,GA_ID,1,GRAD_PENARRAY,[0,7,-1]:INT,GRAD_KNOBPIXELS,20,0]) 13 | AddGList(w,grad,-1,-1,NIL) 14 | RefreshGList(grad,w,NIL,-1) 15 | WHILE (class:=WaitIMessage(w))<>IDCMP_CLOSEWINDOW 16 | GetAttr(GRAD_CURVAL,grad,{val}) 17 | TextF(20,60,'gradient value = \z$\h[4]',val) 18 | ENDWHILE 19 | RemoveGList(w,grad,-1) 20 | DisposeObject(grad) 21 | ELSE 22 | WriteF('Could not create GradientSlider!\n') 23 | ENDIF 24 | CloseLibrary(gradbase) 25 | ELSE 26 | WriteF('Could not open "gradientslider.gadget"\n') 27 | ENDIF 28 | CloseWindow(w) 29 | ELSE 30 | WriteF('No Window!\n') 31 | ENDIF 32 | ENDPROC 33 | -------------------------------------------------------------------------------- /UDL-samples/AsmForMIPS-R2000_byJoãoRicardoRosa.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notepad-plus-plus/userDefinedLanguages/0bfe30cbfd3230a75bf20f96b39e6cb44bed778f/UDL-samples/AsmForMIPS-R2000_byJoãoRicardoRosa.s -------------------------------------------------------------------------------- /UDL-samples/AutoCAD-LPSS.udl.lin: -------------------------------------------------------------------------------- 1 | ; This is an example Linetype file for Notepad++ AutoCAD-LPSS UDL 2 | 3 | ; Simple custom linetype 4 | *DASHDOT,Dash dot __ . __ . __ . __ . __ . __ . __ . __ 5 | A,.5,-.25,0,-.25 6 | 7 | ; Text in custom linetype 8 | *HOT_WATER_SUPPLY,---- HW ---- HW ---- HW ---- HW ---- HW ---- 9 | A,.5,-.2,["HW",STANDARD,S=.1,R=0.0,X=-0.1,Y=-.05],-.2 10 | 11 | ; Shapes in custom linetype 12 | *CON1LINE, --- [CON1] --- [CON1] --- [CON1] 13 | A,1.0,-0.25,[CON1,ep.shx],-1.0 14 | -------------------------------------------------------------------------------- /UDL-samples/AutoCAD-LPSS.udl.pat: -------------------------------------------------------------------------------- 1 | ; This is an example Hatch Pattern file for Notepad++ AutoCAD-LPSS UDL 2 | 3 | *ANSI31, ANSI Iron, Brick, Stone masonry 4 | 45, 0,0, 0,.125 5 | *ANSI33, ANSI Bronze, Brass, Copper 6 | 45, .176776695,0, 0,.25, .125,-.0625 7 | -------------------------------------------------------------------------------- /UDL-samples/AutoCAD-LPSS.udl.scr: -------------------------------------------------------------------------------- 1 | ; This is an example Script file for Notepad++ AutoCAD-LPSS UDL 2 | 3 | ; Turn grid on 4 | grid on 5 | ; Set scale for linetypes 6 | ltscale 3.0 7 | ; Set current layer and its color 8 | layer set 0 color red 0 9 | 10 | ; Blank line above to end LAYER command 11 | -------------------------------------------------------------------------------- /UDL-samples/AutoCAD-LPSS.udl.shp: -------------------------------------------------------------------------------- 1 | ; This is an example Shape file for Notepad++ AutoCAD-LPSS UDL 2 | 3 | *1,6,DBOX 4 | 014,010,01C,018,012,0 5 | *2,22,ucd 6 | 2,14,8,(-2, 6),1,030,012,044,016,038,2,010,1,06C,2,050, 7 | 14,8,(-4,-3),0 8 | -------------------------------------------------------------------------------- /UDL-samples/Bicep_by_richardsondev.bicep: -------------------------------------------------------------------------------- 1 | /* 2 | Test Bicep File for UDL Highlighting 3 | Keywords: metadata, targetScope, resource, module, param, var, output, for, in, if, existing, import, as, type, with, using, extends, func, assert, extension 4 | Also includes: true, false, null, and, or, not, any, concat, format, replace, split, uniqueString, resourceId, reference, json, int, bool, string, array, object, union, intersection, length, substring 5 | */ 6 | 7 | #disable-next-line what-if-short-circuiting 8 | 9 | // Set the target scope for the deployment. 10 | targetScope = 'subscription' 11 | 12 | @description('The deployment location') 13 | param location string = 'eastus' 14 | 15 | @secure() 16 | param adminPassword string 17 | 18 | param adminUsername string = 'adminUser' 19 | 20 | // Variable using built-in functions (Keywords8) and Keywords1 (concat, uniqueString) 21 | var storageName = toLower(concat('stor', uniqueString(resourceGroup().id))) 22 | 23 | // Examples of built-in functions (Keywords8) 24 | var formattedString = format('Storage Account: {0}', storageName) 25 | var replacedString = replace('Hello World', 'World', 'Bicep') 26 | var splittedArray = split('a,b,c', ',') 27 | var resId = resourceId('Microsoft.Storage/storageAccounts', storageName) 28 | var refResult = reference(resId) 29 | var jsonResult = json('{ "key": "value" }') 30 | var intValue = int('123') 31 | var boolValue = bool('true') 32 | var stringValue = string(456) 33 | var arrayValue = array(789) 34 | var objectValue = object('{ "a": 1 }') 35 | var unionResult = union([1,2,3], [4,5,6]) 36 | var intersectionResult= intersection([1,2,3,4], [3,4,5,6]) 37 | var lengthValue = length([10,20,30]) 38 | var substringValue = substring('Bicep${resId}', 1, 3) 39 | var base64Text = base64(inputString) 40 | 41 | // Logical expressions using Keywords2 (true, false, null) and Keywords3 (and, or, not) 42 | var condition = (location == 'eastus') ? true : false 43 | var logicTest = (true and false) or not(true) 44 | var anyValue = any([null, false, 0]) 45 | var multiplication = 5*5 46 | 47 | // Using a for-expression with Keywords1 (for, in) 48 | var arrayOfValues = [for i in range(0, 3): i] 49 | 50 | // Resource declaration using Keywords1 (resource, metadata) 51 | resource storageAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = { 52 | name: storageName 53 | location: location 54 | kind: 'StorageV2' 55 | sku: { 56 | name: 'Standard_LRS' 57 | } 58 | // (metadata used here as a comment for demonstration) 59 | /* metadata: This resource uses standard settings */ 60 | } 61 | 62 | // Conditional resource deployment using Keywords1 (if) 63 | resource conditionalResource 'Microsoft.Storage/storageAccounts@2021-04-01' = if (location == 'eastus') { 64 | name: concat(storageName, 'east') 65 | location: location 66 | kind: 'StorageV2' 67 | sku: { 68 | name: 'Standard_LRS' 69 | } 70 | } 71 | 72 | // Referencing an existing resource using Keywords1 (existing) 73 | resource existingVNet 'Microsoft.Network/virtualNetworks@2021-02-01' existing = { 74 | name: 'myVnet' 75 | } 76 | 77 | // Module deployment using Keywords1 (module) 78 | module networkModule 'network.bicep' = { 79 | name: 'networkDeploy' 80 | params: { 81 | location: location 82 | } 83 | } 84 | 85 | // Output declaration using Keywords1 (output) 86 | output storageAccountId string = storageAccount.id 87 | 88 | // Additional keywords (import, as, with, using, extends, func, assert, extension) 89 | // are added here in comments for highlighting purposes. 90 | // 91 | // import, as, with, using, extends, func, assert, extension: These keywords are here solely for testing highlighting. 92 | -------------------------------------------------------------------------------- /UDL-samples/Cython_byFrederikLauf.pyx: -------------------------------------------------------------------------------- 1 | cdef double myVariable = 5.5 2 | 3 | cdef int myCyFunction(int i, int j): 4 | if i == j: 5 | return 1 6 | else: 7 | return 0 8 | 9 | cpdef int myOtherCyFunction(int i, int j): 10 | if i == j: 11 | return 1 12 | else: 13 | return 0 14 | 15 | def myPyFunction(): 16 | pass 17 | 18 | cdef class MyCythonClass(): 19 | 20 | cdef public int invisible_variable 21 | 22 | cdef public double[:] myCyClassMethod(self): 23 | pass 24 | 25 | def myPyClassMethod(self): 26 | pass 27 | 28 | class MyPythonClass(): 29 | 30 | class _invisibleNestedClass: 31 | def _visibleNestedClassMethod(self): 32 | pass 33 | 34 | def myPyClassMethod(self): 35 | pass 36 | -------------------------------------------------------------------------------- /UDL-samples/ExcelFormula_ThemeDark_byOlivierMarche.txt: -------------------------------------------------------------------------------- 1 | =IF( 2 | ISNA( 3 | MATCH( 4 | LEFT([@[xxx]];3)&[@[code]];table[column];0 5 | ) 6 | ) 7 | ; 8 | IF( 9 | [@[xxx]]="R" 10 | ;SUBSTITUTE([@yyy];"-zzz";"") 11 | ;[@yyy] 12 | ) 13 | ; 14 | IF( 15 | LEN([@yyy])<=3 16 | ;[@yyy] 17 | ;LEFT([@yyy];LEN([@yyy])-4) 18 | ) 19 | ) 20 | 21 | =IF(ISBLANK([@[ttt]]);"";IF(AND(OR(LEFT([@[ttt]];2)="GB";RIGHT([@[ttt]];2)="GB");[@[xxx]]="E");"A";IF(AND(OR(LEFT([@[ttt]];2)="GB";RIGHT([@[ttt]];2)="GB");[@[xxx]]="R");"B";"No"))) 22 | 23 | =IF([@[hhh]]="aaa";"000";IF(IFERROR(FIND("11";[@[ggg]]);FALSE);"11";IF([@[column 24 | (anotherText)]]<>0;"Export";IF([@column1]="no";IF(ISNA(VLOOKUP([@[mmmm]];SgtG_DromCom[#All];1;0));LEFT([@[code]];3);"dts");IF([@[ggg]]="099";LEFT([@[code]];3);"local"))))) 25 | 26 | =IF(CHOOSE('choice'!$O$3;AO4="nothing";P4="nothing");0;IF(ISNA(VLOOKUP(AE4;'AnotherTab'!C:G;5;0));0;VLOOKUP(AE4;'AnotherTab'!C:G;5;0))*CHOOSE('choice'!$O$3;AO4;P4))+IF(ISNA(VLOOKUP(AF4;'AnotherTab'!C:G;5;0));0;VLOOKUP(AF4;'AnotherTab'!C:G;5;0)*CHOOSE('choice'!$O$3;AO4;P4))+IF(ISNA(VLOOKUP(AG4;'AnotherTab'!C:G;5;0));0;VLOOKUP(AG4;'AnotherTab'!C:G;5;0)*CHOOSE('choice'!$O$3;AO4;P4))+IF(ISNA(VLOOKUP(AH4;'AnotherTab'!C:G;5;0));0;VLOOKUP(AH4;'AnotherTab'!C:G;5;0)*CHOOSE('choice'!$O$3;AO4;P4))+IF(ISNA(VLOOKUP(AI4;'AnotherTab'!C:G;5;0));0;VLOOKUP(AI4;'AnotherTab'!C:G;5;0)*CHOOSE('choice'!$O$3;AO4;P4))+IF(ISNA(VLOOKUP(AB4;'AnotherTab'!A:A;1;0));0;VLOOKUP(AB4;'AnotherTab'!A:G;7;0)*CHOOSE('choice'!$O$3;AO4;P4)) 27 | 28 | 29 | right -------------------------------------------------------------------------------- /UDL-samples/Fobagraph_Script_by_HelloWorldFR.bia: -------------------------------------------------------------------------------- 1 | *{small exemple file by HelloWorldFR}* 2 | 3 | *param=parameter* 4 | 5 | *aci=20 ra=35 ci* 6 | *ra=26.5 r*radius 7 | *rer=20,10,5.5* 8 | *pause=5.8* 9 | 10 | *for a=0 to 6 do begin* 11 | *print a* 12 | *end* -------------------------------------------------------------------------------- /UDL-samples/GCODE-Sinumerik_bySergioGU.SPF: -------------------------------------------------------------------------------- 1 | PROC POINT_MEAS SAVE ;DISPLOF 2 | ;VAR Definitions 3 | DEF REAL IncX,IncY,IncZ,IncUniX,IncUniY,IncUniZ 4 | DEF REAL I_X, I_Y, I_Z, F_REACH, LF, F_RAPID, F_MEAS 5 | DEF REAL OvtX,OvtY,OvtZ,CheckX,CheckY,CheckZ,MODUL,OVTR 6 | DEF REAL PPX, PPY, PPZ 7 | DEF REAL _I1, _J1, _K1 8 | DEF REAL rep_x, rep_y, rep_z, rep_xt, rep_yt, rep_zt, rep_i, rep_j, rep_k, rep_it, rep_jt, rep_kt 9 | DEF INT rep_type, rep_index, rep_points 10 | DEF string[4] rep_ind00, rep_points00 11 | DEF BOOL MEAS_FINE, MEAS_CONTOUR, rep_isfile 12 | DEF INT _er, _er1 13 | 14 | STOPRE 15 | ;------------------------------------------------------- 16 | LnIni: 17 | IF $P_SEARCH GOTOF LNSEARCH 18 | IF $P_ISTEST GOTOF LNTEST 19 | IF $P_DRYRUN GOTOF LNDRY 20 | 21 | STOPRE 22 | ;-------------------------------------------------------- 23 | ;VAR Initialitation 24 | PPX=R211 PPY=R212 PPZ=R213 25 | MEAS_FINE=1 ;measure twice 26 | OVTR=50 ; mm 27 | MEAS_FINE=1 ;Measuring slow movement 28 | 29 | ; Speeds (mm/min) 30 | F_RAPID = 8000 31 | F_REACH = 400 32 | F_MEAS = 50 33 | LF=$P_F ; Memo last F 34 | 35 | 36 | $AA_MW[X]=0 $AA_MM[X]=0 $AA_MW[Y]=0 $AA_MM[Y]=0 $AA_MW[Z]=0 $AA_MM[Z]=0 37 | ;----------------------------------------------------------------- 38 | ; Memo starting point 39 | I_X=$AA_IW[X] I_Y=$AA_IW[Y] I_Z=$AA_IW[Z] 40 | STOPRE 41 | ;------------------------------------------------------- 42 | ;CHECK_POINT Calculation 43 | IncX=(PPX-I_X) IncY=(PPY-I_Y) IncZ=(PPZ-I_Z) 44 | STOPRE 45 | MODUL=SQRT(POT(IncX)+POT(IncY)+POT(IncZ)) 46 | STOPRE 47 | IncUniX=(IncX/MODUL) IncUniY=(IncY/MODUL) IncUniZ=(IncZ/MODUL) 48 | STOPRE 49 | OvtX=(IncUniX*OVTR) OvtY=(IncUniY*OVTR) OvtZ=(IncUniZ*OVTR) 50 | STOPRE 51 | CheckX=(PPX+OvtX) CheckY=(PPY+OvtY) CheckZ=(PPZ+OvtZ) 52 | STOPRE 53 | 54 | ;----------------------------------------------------------------- 55 | G710 ; mm units 56 | M13 ; Switch-on Probe 57 | STOPRE 58 | M46 ; Cycle on 59 | 60 | ;------------------------------------------------------- 61 | ;MEASURE Cycle 62 | G90 G01 F=F_REACH X=CheckX Y=CheckY Z=CheckZ MEAS=-1 ;Measuring movement 63 | 64 | ;Check probe was triggered 65 | ERROR_PP: 66 | IF $AC_MEA[1]==0 67 | MSG("Probe not triggered. Program terminated") 68 | M0 69 | GOTOB ERROR_PP 70 | ENDIF 71 | IF MEAS_FINE 72 | G91 G01 F=F_MEAS X=-OvtX Y=-OvtY Z=-OvtZ MEAS=1 ;Measuring movement out 73 | G91 G01 F=F_MEAS/10 X=OvtX Y=OvtY Z=OvtZ MEAS=-1 ;Measuring movement in 74 | ENDIF 75 | 76 | ;----------------------------------------------------------------- 77 | ;----------------------------------------------------------------- 78 | ;Log file 79 | STOPRE 80 | rep_x=round($AA_MW[X]*100000)/100000 rep_i=round(R214*1000000)/1000000 81 | rep_y=round($AA_MW[Y]*100000)/100000 rep_j=round(R215*1000000)/1000000 82 | rep_z=round($AA_MW[Z]*100000)/100000 rep_k=round(R216*1000000)/1000000 83 | rep_xt=round(PPX*100000)/100000 rep_it=round(R217*1000000)/1000000 84 | rep_yt=round(PPY*100000)/100000 rep_jt=round(R218*1000000)/1000000 85 | rep_zt=round(PPZ*100000)/100000 rep_kt=round(R219*1000000)/1000000 86 | rep_type=TRUNC(R210) 87 | rep_index=TRUNC(R209) 88 | rep_points=TRUNC(R201) 89 | 90 | ;--------------------------------------------------------------------- 91 | ; Index String fillup sequence. E.g: index=1, result="001" 92 | if rep_index<10 93 | rep_ind00="00" 94 | endif 95 | if (rep_index>9) AND (rep_index<100) 96 | rep_ind00="0" 97 | endif 98 | if (rep_index>99) 99 | rep_ind00="" 100 | endif 101 | ;----------------------- 102 | ; Max.Points string fillup sequence. E.g: maxpoints=54, result="054" 103 | if (rep_points<10) 104 | rep_points00="00" 105 | endif 106 | if (rep_points>9) AND (rep_points<100) 107 | rep_points00="0" 108 | endif 109 | if (rep_points>99) 110 | rep_points00="" 111 | endif 112 | 113 | 114 | ; File Header 115 | rep_isfile=ISFILE( "/_N_MPF_DIR/_N_TABCOR_TBL_MPF" ) 116 | IF rep_isfile==FALSE 117 | WRITE (_er, "/_N_MPF_DIR/_N_TABCOR_TBL_MPF" , "Numero de elementos array de correcciones lineales: 0") 118 | WRITE (_er, "/_N_MPF_DIR/_N_TABCOR_TBL_MPF" , " n� elem:"< $(LineCharWidth) goto :ForLoopEnd 91 | set local $(TemplateStr) = $(TemplateStr)W 92 | set local $(Cnt) ~ $(Cnt) + 1 93 | goto :ForLoopStart 94 | 95 | :ForLoopEnd 96 | sci_sendmsg SCI_TEXTWIDTH STYLE_DEFAULT "$(TemplateStr)" 97 | set local $(LinePixelWidth) = $(MSG_RESULT) 98 | 99 | :DoWrap 100 | sci_sendmsg SCI_TARGETFROMSELECTION 101 | sci_sendmsg SCI_LINESSPLIT $(LinePixelWidth) 102 | 103 | 104 | 105 | ::DeleteLinesFrom2ndView 106 | npp_console keep 107 | npp_console disable 108 | npe_console -- m- 109 | 110 | sci_sendmsg SCI_DOCUMENTSTART 111 | npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW 112 | sci_sendmsg SCI_DOCUMENTSTART 113 | 114 | npp_sendmsg NPPM_GETCURRENTVIEW 115 | 116 | if $(MSG_RESULT) == 0 then 117 | npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW 118 | endif 119 | 120 | sci_sendmsg SCI_GETLINECOUNT 121 | set local $(LineCount) = $(MSG_RESULT) 122 | set local $(LineIdx) = 0 123 | 124 | :ProcessSearchTerms 125 | if $(LineIdx) >= $(LineCount) goto :End 126 | sci_sendmsg SCI_GETLINE $(LineIdx) @"" 127 | set local $(CurLine) = $(MSG_LPARAM) 128 | 129 | if "$(CurLine)" == "" goto :AdvanceToNextLine 130 | 131 | npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW 132 | 133 | sci_sendmsg SCI_GETCURRENTPOS 134 | sci_sendmsg SCI_LINEFROMPOSITION $(MSG_RESULT) 135 | set local $(StartLineIdx) = $(MSG_RESULT) 136 | 137 | set local $(Flags) ~ NPE_SF_SETPOS 138 | 139 | :ReplaceLoop 140 | sci_find $(Flags) "$(CurLine)" 141 | if $(MSG_RESULT) == -1 goto :ReplaceLoopEnd 142 | 143 | sci_sendmsg SCI_LINEFROMPOSITION $(MSG_RESULT) 144 | set local $(FoundLineIdx) = $(MSG_RESULT) 145 | 146 | sci_sendmsg SCI_GETLINE $(FoundLineIdx) @"" 147 | set local $(FoundLine) = $(MSG_LPARAM) 148 | 149 | set local $(FoundLineLC) ~ strlower "$(FoundLine)" 150 | set local $(CurLineLC) ~ strlower "$(CurLine)" 151 | 152 | if "$(FoundLineLC)" == "$(CurLineLC)" then 153 | sci_sendmsg SCI_GOTOLINE $(FoundLineIdx) 154 | sci_sendmsg SCI_LINEDELETE 155 | endif 156 | 157 | set local $(Flags) ~ $(Flags) | NPE_SF_NEXT 158 | goto :ReplaceLoop 159 | 160 | :ReplaceLoopEnd 161 | sci_sendmsg SCI_GOTOLINE $(StartLineIdx) 162 | npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW 163 | 164 | :AdvanceToNextLine 165 | set local $(LineIdx) ~ $(LineIdx) + 1 166 | goto :ProcessSearchTerms 167 | 168 | :End 169 | sci_sendmsg SCI_DOCUMENTSTART 170 | npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW 171 | sci_sendmsg SCI_DOCUMENTSTART 172 | 173 | npp_sendmsg NPPM_GETCURRENTVIEW 174 | 175 | if $(MSG_RESULT) == 1 then 176 | npp_sendmsg NPPM_MENUCOMMAND 0 IDM_VIEW_SWITCHTO_OTHER_VIEW 177 | endif 178 | 179 | npp_console enable 180 | 181 | 182 | 183 | ::ReadLongText 184 | npp_console keep 185 | 186 | npp_sendmsg WM_COMMAND IDM_VIEW_CLONE_TO_ANOTHER_VIEW 187 | sci_sendmsg SCI_PAGEDOWN 188 | npp_sendmsg WM_COMMAND IDM_VIEW_SYNSCROLLV 189 | 190 | 191 | 192 | ::TrimTrailingSpace 193 | npp_console keep 194 | npp_sendmsg WM_COMMAND IDM_EDIT_TRIMTRAILING 195 | -------------------------------------------------------------------------------- /UDL-samples/SIL-Power-Scripts-for-Jira_byHaydenSingleton.sil: -------------------------------------------------------------------------------- 1 | string k; 2 | 3 | assignee = "admin"; 4 | reporter = assignee; 5 | description = "some description"; 6 | dueDate = currentDate() + "1d"; 7 | env = "environment"; 8 | estimate = "2d" + "3h"; 9 | originalEstimate = "1d 4h" + "21h"; 10 | priority = "Critical"; 11 | 12 | if(not contains(summary, "test")){ 13 | summary = "test " + summary; 14 | } else { 15 | summary = "random summary assigned"; 16 | } 17 | 18 | spent = "2d"; 19 | updated = currentDate() - "1d"; 20 | votes = votes + 1; 21 | 22 | //Custom fields here 23 | UPPG = "admin"; 24 | 25 | //time interval custom field 26 | if(isNull(tt1)) { 27 | tt1 = estimate + "1h"; 28 | } else { 29 | tt1 = tt1 + "1h"; 30 | } 31 | 32 | //number custom field 33 | if(isNull(cfnumber)){ 34 | cfnumber = 1; 35 | } else { 36 | cfnumber = cfnumber + 1; 37 | } 38 | 39 | //create routine 40 | k = createIssue("TSTP", "", issueType, "auto-created issue"); 41 | %k%.votes = %k%.votes + 1; 42 | 43 | //autotransition 44 | autotransition(721,key); 45 | //or: 46 | //autotransition("Send report","PRJ-123"); 47 | 48 | 49 | string boolean number integer byte date interval 50 | - ! ( ) * , . / : ? [ ] { } + < = > 51 | 52 | string[1] 53 | 54 | Person[0] [cat] [] <> 55 | 56 | function zero() { 57 | int x = nil; 58 | return 0; 59 | } 60 | 61 | include "math.sil" 62 | 63 | print("hello world") -------------------------------------------------------------------------------- /UDL-samples/STL-3dObject-ASCII.byPryrt.stl: -------------------------------------------------------------------------------- 1 | solid cube 2 | facet normal 0 0 0 3 | outer loop 4 | vertex 0 0 0 5 | vertex 0 1 0 6 | vertex 1 1 0 7 | endloop 8 | endfacet 9 | facet normal 0 0 0 10 | outer loop 11 | vertex 0 0 0 12 | vertex 1 1 0 13 | vertex 1 0 0 14 | endloop 15 | endfacet 16 | facet normal 0 0 0 17 | outer loop 18 | vertex 0 0 0 19 | vertex 0 0 1 20 | vertex 0 1 1 21 | endloop 22 | endfacet 23 | facet normal 0 0 0 24 | outer loop 25 | vertex 0 0 0 26 | vertex 0 1 1 27 | vertex 0 1 0 28 | endloop 29 | endfacet 30 | facet normal 0 0 0 31 | outer loop 32 | vertex 0 0 0 33 | vertex 1 0 0 34 | vertex 1 0 1 35 | endloop 36 | endfacet 37 | facet normal 0 0 0 38 | outer loop 39 | vertex 0 0 0 40 | vertex 1 0 1 41 | vertex 0 0 1 42 | endloop 43 | endfacet 44 | facet normal 0 0 0 45 | outer loop 46 | vertex 0 0 1 47 | vertex 1 0 1 48 | vertex 1 1 1 49 | endloop 50 | endfacet 51 | facet normal 0 0 0 52 | outer loop 53 | vertex 0 0 1 54 | vertex 1 1 1 55 | vertex 0 1 1 56 | endloop 57 | endfacet 58 | facet normal 0 0 0 59 | outer loop 60 | vertex 1 0 0 61 | vertex 1 1 0 62 | vertex 1 1 1 63 | endloop 64 | endfacet 65 | facet normal 0 0 0 66 | outer loop 67 | vertex 1 0 0 68 | vertex 1 1 1 69 | vertex 1 0 1 70 | endloop 71 | endfacet 72 | facet normal 0 0 0 73 | outer loop 74 | vertex 0 1 0 75 | vertex 0 1 1 76 | vertex 1 1 1 77 | endloop 78 | endfacet 79 | facet normal 0 0 0 80 | outer loop 81 | vertex 0 1 0 82 | vertex 1 1 1 83 | vertex 1 1 0 84 | endloop 85 | endfacet 86 | endsolid cube 87 | -------------------------------------------------------------------------------- /UDL-samples/Vimscript_by_rdipardo.vimrc: -------------------------------------------------------------------------------- 1 | " Edited, with additions to demonstrate more highlighting features 2 | " from https://github.com/fatih/vim-go-tutorial/blob/master/vimrc 3 | " 4 | " Copyright (c) 2016, Fatih Arslan All rights reserved. 5 | " 6 | " Redistribution and use in source and binary forms, with or without 7 | " modification, are permitted provided that the following conditions are met: 8 | " 9 | " * Redistributions of source code must retain the above copyright notice, this 10 | " list of conditions and the following disclaimer. 11 | " 12 | " * Redistributions in binary form must reproduce the above copyright notice, 13 | " this list of conditions and the following disclaimer in the documentation 14 | " and/or other materials provided with the distribution. 15 | " 16 | " * Neither the name of the copyright holder nor the names of its 17 | " contributors may be used to endorse or promote products derived from 18 | " this software without specific prior written permission. 19 | " 20 | " THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 | " AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 | " IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 23 | " DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 24 | " FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25 | " DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 26 | " SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 27 | " CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 | " OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | " OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | 31 | plug#begin() 32 | Plug 'fatih/vim-go' 33 | Plug 'fatih/molokai' 34 | call plug#end() 35 | 36 | """""""""""""""""""""" 37 | " Settings " 38 | """""""""""""""""""""" 39 | set nocompatible " Enables us Vim specific features 40 | filetype off " Reset filetype detection first ... 41 | filetype plugin indent on " ... and enable filetype detection 42 | set laststatus=2 " Show status line always 43 | set backspace=indent,eol,start " Makes backspace key more powerful. 44 | set number " Show line numbers 45 | set hidden " Buffer should still exist if window is closed 46 | set fileformats=unix,dos,mac " Prefer Unix over Windows over OS 9 formats 47 | set ignorecase " Search case insensitive... 48 | set smartcase " ... but not it begins with upper case 49 | set completeopt=menu,menuone " Show popup menu, even if there is one entry 50 | 51 | " This enables us to undo files even if you exit Vim. 52 | if has('persistent_undo') && empty(&undodir) 53 | set undofile 54 | set undodir='~/.config/vim/tmp/undo/' 55 | endif 56 | 57 | " Colorscheme 58 | syntax enable 59 | set t_Co=256 60 | highlight Visual cterm=NONE ctermbg=76 ctermfg=16 gui=NONE guibg=#5fd700 guifg=#000000 61 | highlight StatusLine cterm=NONE ctermbg=0xE7 ctermfg=0xa0 gui=NONE guibg=#ffffff guifg=#d70000 62 | highlight Normal cterm=NONE ctermbg=0o21 gui=NONE guibg=#00005f 63 | highlight NonText cterm=NONE ctermbg=0b00010001 gui=NONE guibg=#00005f 64 | colorscheme molokai 65 | 66 | """""""""""""""""""""" 67 | " Mappings " 68 | """""""""""""""""""""" 69 | " Set leader shortcut to a comma ','. By default it's the backslash 70 | let mapleader = ',' 71 | nmap :cnext 72 | nmap :cprevious 73 | nnoremap a :cclose 74 | 75 | " Enter automatically into the files directory 76 | autocmd BufEnter * silent! lcd %:p:h 77 | 78 | """"""""""""""""""""" 79 | " Plugins " 80 | """"""""""""""""""""" 81 | func! s:build_go_files() abort 82 | let l:file = expand('%') 83 | if l:file =~# '^\f\+_test\.go$' 84 | call go#test#Test(0, 1) 85 | elseif l:file =~# '^\f\+\.go$' 86 | call go#cmd#Build(0) 87 | endif 88 | endfunc 89 | 90 | """"""""""""""""""" 91 | " Tests " 92 | """"""""""""""""""" 93 | function F(x) 94 | echom 'Pass' 95 | endfunction 96 | 97 | func Baz(x, y) 98 | echom 'Pass' 99 | endfunc 100 | 101 | function! s:g(x) 102 | echom 'Pass' 103 | endfunction 104 | 105 | function! s:H(x) 106 | echom 'Pass' 107 | endfunction 108 | 109 | func! s:foo(x, y) 110 | echom 'Pass' 111 | endfunc 112 | 113 | func! namespaced#function(...) 114 | echom 'Pass' 115 | endfunc 116 | 117 | func! Another#namespaced#function(...) 118 | echom 'Pass' 119 | endfunc 120 | 121 | " func IgnoreMe() 122 | " endfunc 123 | 124 | " vim: syntax=vim 125 | -------------------------------------------------------------------------------- /UDL-samples/YARA_byM0N4.yar: -------------------------------------------------------------------------------- 1 | /* 2 | Welcome to YARA's documentation! 3 | https://github.com/Yara-Rules/rules 4 | */ 5 | 6 | rule silent_banker : banker 7 | { 8 | meta: 9 | description = "This is just an example" 10 | threat_level = 3 11 | in_the_wild = true 12 | strings: 13 | $a = {6A 40 68 00 30 00 00 6A 14 8D 91} 14 | $b = {8D 4D B0 2B C1 83 C0 27 99 6A 4E 59 F7 F9} 15 | $c = "UVODFRYSIHLNWPEJXQZAKCBGMT" 16 | condition: 17 | $a or $b or $c 18 | } 19 | 20 | // more rules: https://github.com/Yara-Rules/rules -------------------------------------------------------------------------------- /UDL-samples/dBASEPlus_byLycanThrope.wfm: -------------------------------------------------------------------------------- 1 | // from https://www.dbase.com/Knowledgebase/beg/plustutorial/04CLASSES.HTM 2 | function combobox_onChange 3 | // this = combobox 4 | // datalink = field 5 | // parent = field array 6 | // parent = rowset 7 | if this.datalink.parent.parent.state == 1 8 | this.value = this.savedValue 9 | this.datalink.parent.parent.modified = false 10 | this.datalink.parent.parent.abandon() 11 | endif 12 | return 13 | 14 | // from https://www.dbase.com/Knowledgebase/beg/ShippingCustom/ShippingCustomClasses.htm 15 | CLASS NumSeeker( fArg ) of Seeker( fArg ) from :FormControls:Seeker.cc CUSTOM 16 | FUNCTION normalizedValue 17 | // Here we override the super's method. Instead of returning 18 | // upper( trim( this.value )), we'll convert this.value to numeric 19 | RETURN val( this.value ) 20 | ENDCLASS 21 | -------------------------------------------------------------------------------- /UDL-samples/vkosuri_resource.robot: -------------------------------------------------------------------------------- 1 | *** Setting *** 2 | Library SeleniumLibrary run_on_failure=Nothing implicit_wait=0.2 seconds 3 | Library Collections 4 | Library OperatingSystem 5 | Library DateTime 6 | 7 | *** Variable *** 8 | ${SERVER}= localhost:7000 9 | ${BROWSER}= firefox 10 | ${REMOTE_URL}= ${NONE} 11 | ${DESIRED_CAPABILITIES}= ${NONE} 12 | ${ROOT}= http://${SERVER}/html 13 | ${FRONT_PAGE}= ${ROOT}/ 14 | ${SPEED}= 0 15 | 16 | *** Keyword *** 17 | Open Browser To Start Page 18 | [Documentation] This keyword also tests 'Set Selenium Speed' and 'Set Selenium Timeout' 19 | ... against all reason. 20 | ${default speed} ${default timeout}= Open Browser To Start Page Without Testing Default Options 21 | # FIXME: We shouldn't test anything here. If this stuff isn't tested elsewhere, new *tests* needs to be added. 22 | # FIXME: The second test below verifies a hard coded return value!!?! 23 | Should Be Equal ${default speed} 0 seconds 24 | Should Be Equal ${default timeout} 5 seconds 25 | 26 | Open Browser To Start Page Without Testing Default Options 27 | [Documentation] Open Browser To Start Page Without Testing Default Options 28 | Open Browser ${FRONT PAGE} ${BROWSER} remote_url=${REMOTE_URL} 29 | ... desired_capabilities=${DESIRED_CAPABILITIES} 30 | ${orig speed} = Set Selenium Speed ${SPEED} 31 | ${orig timeout} = Set Selenium Timeout 10 seconds 32 | [Return] ${orig speed} 5 seconds 33 | 34 | Cannot Be Executed In IE 35 | [Documentation] Cannot Be Executed In IE 36 | ${runsInIE}= Set Variable If "${BROWSER}".replace(' ', '').lower() in ['ie', '*iexplore', 'internetexplorer'] ${TRUE} 37 | Run Keyword If ${runsInIE} Set Tags ie-incompatible 38 | Run Keyword If ${runsInIE} Fail And Set Non-Critical 39 | ... This test does not work in Internet Explorer 40 | 41 | Fail And Set Non-Critical 42 | [Arguments] ${msg} 43 | [Documentation] Fails And Set Non-Critical 44 | Remove Tags regression 45 | Fail ${msg} 46 | 47 | Go to Front Page 48 | [Documentation] Goes to front page 49 | Go To ${FRONT PAGE} 50 | 51 | Go To Page "${relative url}" 52 | [Documentation] Goes to page 53 | Go To ${ROOT}/${relative url} 54 | 55 | Set ${level} Loglevel 56 | [Documentation] Sets loglevel 57 | Set Log Level ${level} 58 | 59 | Verify Location Is "${relative url}" 60 | [Documentation] Verifies location 61 | Wait Until Keyword Succeeds 5 1 Location Should Be ${ROOT}/${relative url} 62 | 63 | Set Global Timeout 64 | [Arguments] ${timeout} 65 | ${previous} = Set Selenium timeout ${timeout} 66 | Set Suite Variable ${PREVIOUS TIMEOUT} ${previous} 67 | 68 | Restore Global Timeout 69 | Set Selenium timeout ${PREVIOUS TIMEOUT} 70 | -------------------------------------------------------------------------------- /UDL-samples/yang_by-gribok.yang: -------------------------------------------------------------------------------- 1 | module example { 2 | 3 | namespace "http://example.com/ns/interfaces"; 4 | 5 | prefix exam; 6 | 7 | typedef itf-status-type { 8 | description "Interface status"; 9 | type enumeration { 10 | enum ok; 11 | enum 'waking up'; 12 | enum 'not feeling so good'; 13 | enum 'better check it out'; 14 | enum 'better call for help'; 15 | } 16 | default ok; 17 | } 18 | 19 | container interfaces { 20 | description "Example interfaces group"; 21 | 22 | list interface { 23 | description "Example interface entry"; 24 | key name; 25 | 26 | leaf name { 27 | description 28 | "The administrative name of the interface. 29 | This is an identifier which is only unique 30 | within the scope of this list, and only 31 | within a specific server."; 32 | type string { 33 | length "1 .. max"; 34 | } 35 | } 36 | 37 | leaf mtu { 38 | description 39 | "The maximum transmission unit (MTU) value assigned to 40 | this interface."; 41 | type uint32; 42 | default 1500; 43 | } 44 | 45 | leaf itf-status { 46 | description 47 | "The current status of this interface."; 48 | type itf-status-type; 49 | config false; 50 | } 51 | } 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /UDLs/AlgolW_by_PolitePolarBear.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00@ 01 02 03comment 03% 04; 04(( % ; )) 9 | 10 | # 11 | 12 | 13 | 14 | LL IL L I 15 | 16 | ' , ; : . ( ) ++ + - * / // ** : | <= := < = > >= :: := # ~ ~= ¬ ¬= 17 | 18 | begin 19 | 20 | end 21 | 22 | 23 | 24 | 25 | 26 | 27 | true false null array procedure record begin end if then else case of div rem shr shl is abs short and or goto "go to" for step until do while value result assert algol fortran not 28 | integer real logical bits string reference long complex 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00" 01 02" 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/Alloy_by-lausdahl.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00// 01 02 03/* 04*/ 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | # , . [ ] { | } 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | abstract all and assert as but check disjoint disj else enum exactly exhaustive exh expect extends fact for fun iden iff implies Int int in let lone module none not no one open or partition part pred private run seq set sig some String sum this univ 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/Beef_DarkModeDefault_by_AndrewPozenel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 00// 01 02 03/* 04*/ 10 | + - * / % = == != < > <= >= && || ! & | ^ ~ 11 | { 12 | } 13 | if else while for do switch case default return break continue 14 | class struct enum namespace using static const inline new delete 15 | int uint float double bool char void String Object Array List Dictionary 16 | public private protected internal static extern virtual override sealed abstract 17 | true false null delegate event operator explicit implicit 18 | var let auto ref out mut this base typeof sizeof typeof 19 | printf scanf malloc free memcpy memset strlen strcmp 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /UDLs/Cesil_byMajor25.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00* 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | % 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | load store out print in jump jineg jizero halt line subtract add multiply divide 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00" 01 02" 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/Cisco_ACL_byChristophWempe.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00remark ; 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | permit 28 | deny dynamic any 29 | ahp eigrp esp gre icmp igmp ip ipinip nos ospf pcp pim tcp udp 30 | host 31 | 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/Fortinet_FortiOS_FGT_by_DPBarbosa.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00# 00" 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | config edit 22 | 23 | end next 24 | 25 | 26 | 27 | set 28 | unset 29 | ENC 30 | 31 | 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/Fortinet_FortiOS_FGT_by_SSavaso_6_4_14.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 00# 01 02 03 04 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | edit config 23 | 24 | next end 25 | 26 | 27 | 28 | "set config -1" "set end " set 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /UDLs/GCODE-3d-MostCNC_byMikeLohmeyer.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00; 00// 00( 01 02) 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | % 17 | 18 | O 19 | 20 | M30 M99 21 | 22 | 23 | 24 | 25 | 26 | 27 | G 28 | M00 M0 M01 M1 M02 M2 29 | M O L 30 | S F 31 | A B C X Y Z I J K U V W 32 | D E H P Q R 33 | T 34 | / 35 | 00{ 01 02} 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/GCODE-3d_by_AndresHermes.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00; 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | X Y E 17 | 18 | G21 19 | 20 | M84 21 | 22 | 23 | 24 | "END START GCODE" 25 | 26 | "END GCODE" 27 | G 28 | M 29 | Z 30 | S 31 | F 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/GIFT-Format_byMatthewKuznia.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00// 01 02 03 04 9 | 10 | 11 | 12 | 13 | = ~ :: % 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 00= 01\ 02((EOL)) 03~%50% 04 05((EOL)) 06:: 07 08:: 09#### 10 11((EOL)) 12~%- 13 14((EOL)) 15~ 16 17((EOL)) 18{ 19 20} 21 22 23 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /UDLs/MSL_byAnonymous_in2009.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00; 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | ( ) [ ] { } 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | menu % alias 28 | echo msg say remove 29 | # *! @ 30 | $ 31 | 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/MotoMan_Ladder_byArnaudMonnier.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | GSTR STR STR-NOT 28 | GOUT OUT 29 | AND AND-NOT OR OR-NOT 30 | #2 31 | #0 32 | #3 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/NC-DSTV_NC1_byJeffMiller.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00** 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | o v u h s + 17 | 18 | ST 19 | 20 | EN 21 | 22 | BO SI AK IK PU KO SC TO UE PR KA 23 | 24 | I L U B RU RO M C T SO 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/NetInstall_bySimonNeitzel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | > 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | Action 28 | E Warning 29 | Currently no permission 30 | user is not registered Failed 31 | 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/PortableObject_LightMode_byGreenGoblin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00# 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | [ ] 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | msgctxt msgid msgid_plural msgstr 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00" 01 02" 03' 04 05' 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/PyInstaller_Spec_Darkmode_byTnhung2011.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | True False None 17 | 18 | ( { [ 19 | 20 | ) } ] 21 | 22 | 23 | 24 | 25 | 26 | 27 | block_cipher exe pyz coll 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00' 01\ 02' 03" 04\ 05" 06# 07 08((EOL)) 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/PyInstaller_Spec_byTnhung2011.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | True False None 17 | 18 | ( { [ 19 | 20 | ) } ] 21 | 22 | 23 | 24 | 25 | 26 | 27 | block_cipher exe pyz coll 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00' 01\ 02' 03" 04\ 05" 06# 07 08((EOL)) 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/SLAX_byTravisWaltz.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00/* 01* 02*/ 03/* 04*/ 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | var param 28 | $ 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00< 01 02> 03" 04 05" 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/STL-3dObject-ASCII.byPryrt.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | solid facet "outer loop" 22 | 23 | endsolid endfacet endloop 24 | 25 | 26 | 27 | vertex normal 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/TNT_phylogenetics.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00 01 02 03/* 04*/ 9 | # % 10 | / | { } ( ) [ ] * : ; = ! + - @ > < 11 | absincl agroup alltrees ancstates apo bbreak beep best blength blocks break bsupport ccode cdir change chkmoves chomo ckeep cls clbuffer cnames collapse comcomp condense constrain costs cscores cstree dcomp dmerge drift edit echo export fit fillsank force freqdifs help hifile hold hybrid ienum incltax info log keep kleex length lik lmark lmbox lmrealign lquote lset majority matchtax map minmax mixtrees mkmap mono mrp mult mxram mxproc naked nelsen nstates outgroup proc procedure pause pcrprune pfijo piwe pruncom prunmajor prunnelsen pruntax prupdn qcollapse qnelsen quote quit randtrees ratchet rcompl rdir rebuild recons report reroot resample resols rfreqs riddup rseed run runc save screen scores sectsch shortread shpcomp silent slfwt smatrix sort sprdiff subopt svtxt system tables taxcode taxlabels taxonomy taxname tchoose tcomp tequal tfuse tgroup thanks timeout tnodes tplot tread tsave tshrink tsize ttag ttags tvault txtsize tzert view vversion warn watch xcomp xgroup xinact xmult xperm xpiwe xread xwipe unique unshared usminmax zzz 12 | chkbreak progress macfloat macro report resettime set silent var 13 | continue end endloop else goto if iterrecs label loop setloop sprit stop tbrit travtree ; 14 | 00' 01\ 02' 03lquote 03quote 04 05; 05; 06opendlg 07 08closedlg 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /UDLs/TOML_byTimendum.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 00# 01 02 03"" 04"" 10 | 0b 11 | 0x 0o 0 1 2 3 4 5 6 7 8 9 12 | A B C D E F a b c d e f , T : - _ 13 | 14 | 15 | 16 | 17 | = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | true false ,true true, ,false false, 29 | nan ,nan nan, -nan ,-nan -nan, +nan ,+nan +nan, inf ,inf inf, -inf ,-inf -inf, +inf ,+inf +inf, 30 | 31 | 32 | 33 | 34 | 35 | 36 | 00[ 01 02] 03" 04\ 05" 06' 07\ 08' 09[[ 10 11]] 12{ 13 14} 15 16 17 18 19 20 21 22 23 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /UDLs/TodoDotTxt_byTimDrub.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00x 01 02((EOL)) 03 04 9 | 10 | 11 | 12 | 13 | - 14 | 15 | - 16 | (E) (F) (G) (H) (I) (J) (K) (L) (M) (N) (O) (P) (Q) (R) (S) (T) (U) (V) (W) (X) (Y) (Z) 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | + 28 | @ 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00(A) 00(B) 01 02((EOL)) 02((EOL)) 03(C) 03(D) 04 05((EOL)) 05((EOL)) 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/Turtle-RDF_byFranckMichel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00# 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | : ; . ^^ , ( ) 17 | 18 | [ 19 | 20 | ] 21 | 22 | 23 | 24 | 25 | 26 | 27 | @prefix @base base true false string integer boolean decimal double xsd rdf nil 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00< 01 02> 03 04 05 06" 07\ 08" 09' 10\ 11' 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/VisualStudioSolution-sln_byCADbloke.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 03 04 00# 01 02 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | . | = 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | Project EndProject Global EndGlobal GlobalSection EndGlobalSection Build ActiveCfg 28 | Any CPU x86 x64 29 | Paid Version Trial 30 | Debug 31 | Release 32 | 33 | 34 | 35 | 00" 01 02" 03{ 04 05} 06( 07 08) 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/Zebra_Printing_Language.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00^FX 01 02((EOL)) 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | ^FD 19 | 20 | ^FS 21 | 22 | 23 | 24 | 25 | 26 | 27 | ^XA ^XZ 28 | ^ 29 | ~ 30 | 31 | 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/ansible-play.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00ok: 01 02((EOL)) 03changed: 04 05((EOL)) 06((skipping: included:)) 07 08((EOL)) 09[WARNING]: 10 11((EOL)) 12((failed: fatal)) 13 14((EOL)) 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/ansible-play_DM.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00ok: 01 02((EOL)) 03changed: 04 05((EOL)) 06((skipping: included:)) 07 08((EOL)) 09[WARNING]: 10 11((EOL)) 12((failed: fatal)) 13 14((EOL)) 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/aya.udl.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00// 01/ 02((EOL)) 03/* 04*/ 9 | 10 | 0x 11 | A B C D E F a b c d e f 12 | 13 | 14 | 15 | 16 | : -- == != _in_ ! + - * / = && || , . > < % 17 | 18 | { 19 | 20 | } 21 | 22 | 23 | 24 | 25 | 26 | 27 | void if else elseif case when others foreach return while for 28 | a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 29 | _ 30 | 31 | 32 | 33 | 34 | 35 | 00[ 01 02] 03"/ 03" 04 05((" /" \n/")) 05((EOL " /" \n/")) 06%( 07 08(( )/ ) )) 09'/ 09' 10 11((' /' \n/')) 11((EOL ' /' \n/')) 12( 13 14) 15((\n/ \n\x/ \n[50]/ \n[75]/ \n[150]/ \n[200]/ \n[half]/ ]/ \1/ \0/)) 16 17((EOL)) 18#globaldefine 18#define 19 20((EOL)) 21%( 22 23(( )/ ) ')) 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/erlang_byMikeKaganski.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 00% 01 02 03 04 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | - ! # ( ) , . / : ; [ \ ] { | } + < = > 16 | 17 | begin case fun if receive try 18 | 19 | end 20 | 21 | 22 | 23 | 24 | 25 | 26 | after and andalso band behaviour bnot bor bsl bsr bxor catch cond define div export include let module not of or orelse query record rem throw when xor 27 | ? 28 | A B C D E F G H I J K L M N O P Q R S T U V W X Y Z _ 29 | 30 | 31 | 32 | 33 | 34 | 00" 01 02" 03' 04 05' 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | -------------------------------------------------------------------------------- /UDLs/mIRC_byAnonymous_in2009.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 00; 01 02 03 04 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | ( ) [ ] { } 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | menu % alias 28 | echo msg say remove 29 | # *! @ 30 | $ 31 | 32 | 33 | 34 | 35 | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /UDLs/userDefineLang_Mustache.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 00{{# 01 02}} 03{{/ 04 05}} 06{{^ 07 08}} 09{{> 10 11}} 12{{! 13 14}} 15 16 17 18 19 20 21{{ 22 23}} 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /appveyor.yml: -------------------------------------------------------------------------------- 1 | version: 1.0.{build} 2 | image: Visual Studio 2022 3 | 4 | 5 | environment: 6 | matrix: 7 | - PYTHON: "C:\\Python310" 8 | 9 | install: 10 | - SET PATH=%PYTHON%;%PYTHON%\Scripts;%PATH% 11 | - python -m pip install -r requirements.txt 12 | 13 | build_script: 14 | - cd "%APPVEYOR_BUILD_FOLDER%" 15 | - call python validator_xml.py 16 | - call python validator_json.py 17 | 18 | after_build: 19 | # artifacts 20 | - ps: | 21 | cd "$env:APPVEYOR_BUILD_FOLDER" 22 | Push-AppveyorArtifact "udl-list.md" -FileName "udl-list.md" 23 | -------------------------------------------------------------------------------- /autoCompletion/dBASEPlus (Light Theme).xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notepad-plus-plus/userDefinedLanguages/0bfe30cbfd3230a75bf20f96b39e6cb44bed778f/autoCompletion/dBASEPlus (Light Theme).xml -------------------------------------------------------------------------------- /functionList/Cython_byFrederikLauf.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 11 | 12 | 13 | 18 | 21 | 22 | 23 | 24 | 27 | 28 | 29 | 30 | 31 | 32 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /functionList/LSL_byKimpaTammas.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 11 | 12 | 13 | 14 | 19 | 24 | 25 | 26 | 27 | 28 | 31 | 32 | 33 | 34 | 35 | 36 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /functionList/STL-3dObject-ASCII.byPryrt.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 19 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /functionList/Vimscript_by_rdipardo.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 20 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | jsonschema==4.24.0 2 | lxml==5.4.0 3 | pywin32==310 4 | requests==2.32.4 5 | rfc3987==1.3.8 6 | # urllib # not needed to be listed (builtin module) 7 | # hashlib # not needed to be listed (builtin module) 8 | pathlib 9 | --------------------------------------------------------------------------------