Repository files navigation

Notepad++ User Defined Languages Collection

Notepad++ supports around 80 programming languages for syntax highlighting & folding. For languages that are not in the list of languages with built-in support, someone may have created a User Defined Language (UDL) for adding syntax highlighting to the language and added it to this collection, or you can submit a UDL to this collection for others to use.

To learn all about User Defined Languages:

https://npp-user-manual.org/docs/user-defined-language-system/

Here is the UDL list and from where you can download:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/udl-list.md

Using a UDL from this Collection

For now, you have to manually install a new User Defined Language.

  1. Use Notepad++'s Language > User Defined Language > Open User Defined Language folder... menu entry to easily find the right userDefineLangs\ folder to place your UDL definition file. (You can copy the path from the file Explorer location bar, for pasting into the Save As dialog in step 2)
  2. Download the XML file from the UDL list of this Collection.
    • From the UDL list, click on the name of the file.
    • From the file's page, use the button labled "Raw" to open the source of the UDL.
      image
      From that raw file, you can either:
      • you can use your browser's Right Click > Save As... feature to save the raw XML file to the userDefineLangs\ folder found in step 1
      • copy the text of the file's contents, and paste it into a new file in Notepad++, and save it as an XML file to the userDefineLangs\ folder found in step 1
    • Warning: Do not just right click to try to download the file from either the UDL list or the directory listing on GitHub links, as either of those right-click actions will download the GitHub web page for that file (which HTML, and not the UDL's XML file and will not work).
    • Alternatives to step 2 can be found in the "Import a UDL" section of the official online user manual. But this version here is the easiest for those who haven't worked much with UDLs or GitHub.
  3. Restart Notepad++
    • Without this restart, Notepad++ will not know about the new UDL.
  4. If the UDL author provided an autoCompletion XML file for that UDL, you may download it from the autoCompletions folder of the repository (using similar download procedure as described in step 2 above), and put it in a file in the autoCompletion\ sub-folder of your Notepad++ installation directory. More details can be found in the online User Manual in the "autoCompletion" and "configuration files details" sections.
  5. If the UDL author provided an sample file that uses that UDL, you may download that from the UDL-samples folder of the repository. If you open that sample in Notepad++ after the restart from step 3, it should apply the UDL highlighting.

Submitting your UDL to the Collection

You can submit your UDL file(s) into this repo, or a (some) link(s) to where your UDL file(s) is (are) hosted. In both cases, you have to do a Pull Request on this repository.

More information about submitting your UDL to the Collection, please refer to:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/CONTRIBUTING.md

We populated the initial UDLs in this Collection based on the old NppWiki++ list of UDLs (archived at archive.org)

The original author of any UDL in this Collection may request that we remove it from the Collection (or submit a PR to do the same), and we will oblige.

About

Notepad++ User Defined Languages Collection

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

Notepad++ User Defined Languages Collection

Notepad++ supports around 80 programming languages for syntax highlighting & folding. For languages that are not in the list of languages with built-in support, someone may have created a User Defined Language (UDL) for adding syntax highlighting to the language and added it to this collection, or you can submit a UDL to this collection for others to use.

To learn all about User Defined Languages:

https://npp-user-manual.org/docs/user-defined-language-system/

Here is the UDL list and from where you can download:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/udl-list.md

Using a UDL from this Collection

For now, you have to manually install a new User Defined Language.

  1. Use Notepad++'s Language > User Defined Language > Open User Defined Language folder... menu entry to easily find the right userDefineLangs\ folder to place your UDL definition file. (You can copy the path from the file Explorer location bar, for pasting into the Save As dialog in step 2)
  2. Download the XML file from the UDL list of this Collection.
    • From the UDL list, click on the name of the file.
    • From the file's page, use the button labled "Raw" to open the source of the UDL.
      image
      From that raw file, you can either:
      • you can use your browser's Right Click > Save As... feature to save the raw XML file to the userDefineLangs\ folder found in step 1
      • copy the text of the file's contents, and paste it into a new file in Notepad++, and save it as an XML file to the userDefineLangs\ folder found in step 1
    • Warning: Do not just right click to try to download the file from either the UDL list or the directory listing on GitHub links, as either of those right-click actions will download the GitHub web page for that file (which HTML, and not the UDL's XML file and will not work).
    • Alternatives to step 2 can be found in the "Import a UDL" section of the official online user manual. But this version here is the easiest for those who haven't worked much with UDLs or GitHub.
  3. Restart Notepad++
    • Without this restart, Notepad++ will not know about the new UDL.
  4. If the UDL author provided an autoCompletion XML file for that UDL, you may download it from the autoCompletions folder of the repository (using similar download procedure as described in step 2 above), and put it in a file in the autoCompletion\ sub-folder of your Notepad++ installation directory. More details can be found in the online User Manual in the "autoCompletion" and "configuration files details" sections.
  5. If the UDL author provided an sample file that uses that UDL, you may download that from the UDL-samples folder of the repository. If you open that sample in Notepad++ after the restart from step 3, it should apply the UDL highlighting.

Submitting your UDL to the Collection

You can submit your UDL file(s) into this repo, or a (some) link(s) to where your UDL file(s) is (are) hosted. In both cases, you have to do a Pull Request on this repository.

More information about submitting your UDL to the Collection, please refer to:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/CONTRIBUTING.md

We populated the initial UDLs in this Collection based on the old NppWiki++ list of UDLs (archived at archive.org)

The original author of any UDL in this Collection may request that we remove it from the Collection (or submit a PR to do the same), and we will oblige.

About

Notepad++ User Defined Languages Collection

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Notepad++ User Defined Languages Collection

Notepad++ supports around 80 programming languages for syntax highlighting & folding. For languages that are not in the list of languages with built-in support, someone may have created a User Defined Language (UDL) for adding syntax highlighting to the language and added it to this collection, or you can submit a UDL to this collection for others to use.

To learn all about User Defined Languages:

https://npp-user-manual.org/docs/user-defined-language-system/

Here is the UDL list and from where you can download:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/udl-list.md

Using a UDL from this Collection

For now, you have to manually install a new User Defined Language.

  1. Use Notepad++'s Language > User Defined Language > Open User Defined Language folder... menu entry to easily find the right userDefineLangs\ folder to place your UDL definition file. (You can copy the path from the file Explorer location bar, for pasting into the Save As dialog in step 2)
  2. Download the XML file from the UDL list of this Collection.
    • From the UDL list, click on the name of the file.
    • From the file's page, use the button labled "Raw" to open the source of the UDL.
      image
      From that raw file, you can either:
      • you can use your browser's Right Click > Save As... feature to save the raw XML file to the userDefineLangs\ folder found in step 1
      • copy the text of the file's contents, and paste it into a new file in Notepad++, and save it as an XML file to the userDefineLangs\ folder found in step 1
    • Warning: Do not just right click to try to download the file from either the UDL list or the directory listing on GitHub links, as either of those right-click actions will download the GitHub web page for that file (which HTML, and not the UDL's XML file and will not work).
    • Alternatives to step 2 can be found in the "Import a UDL" section of the official online user manual. But this version here is the easiest for those who haven't worked much with UDLs or GitHub.
  3. Restart Notepad++
    • Without this restart, Notepad++ will not know about the new UDL.
  4. If the UDL author provided an autoCompletion XML file for that UDL, you may download it from the autoCompletions folder of the repository (using similar download procedure as described in step 2 above), and put it in a file in the autoCompletion\ sub-folder of your Notepad++ installation directory. More details can be found in the online User Manual in the "autoCompletion" and "configuration files details" sections.
  5. If the UDL author provided an sample file that uses that UDL, you may download that from the UDL-samples folder of the repository. If you open that sample in Notepad++ after the restart from step 3, it should apply the UDL highlighting.

Submitting your UDL to the Collection

You can submit your UDL file(s) into this repo, or a (some) link(s) to where your UDL file(s) is (are) hosted. In both cases, you have to do a Pull Request on this repository.

More information about submitting your UDL to the Collection, please refer to:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/CONTRIBUTING.md

We populated the initial UDLs in this Collection based on the old NppWiki++ list of UDLs (archived at archive.org)

The original author of any UDL in this Collection may request that we remove it from the Collection (or submit a PR to do the same), and we will oblige.

About

Notepad++ User Defined Languages Collection

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Notepad++ User Defined Languages Collection

Notepad++ supports around 80 programming languages for syntax highlighting & folding. For languages that are not in the list of languages with built-in support, someone may have created a User Defined Language (UDL) for adding syntax highlighting to the language and added it to this collection, or you can submit a UDL to this collection for others to use.

To learn all about User Defined Languages:

https://npp-user-manual.org/docs/user-defined-language-system/

Here is the UDL list and from where you can download:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/udl-list.md

Using a UDL from this Collection

For now, you have to manually install a new User Defined Language.

  1. Use Notepad++'s Language > User Defined Language > Open User Defined Language folder... menu entry to easily find the right userDefineLangs\ folder to place your UDL definition file. (You can copy the path from the file Explorer location bar, for pasting into the Save As dialog in step 2)
  2. Download the XML file from the UDL list of this Collection.
    • From the UDL list, click on the name of the file.
    • From the file's page, use the button labled "Raw" to open the source of the UDL.
      image
      From that raw file, you can either:
      • you can use your browser's Right Click > Save As... feature to save the raw XML file to the userDefineLangs\ folder found in step 1
      • copy the text of the file's contents, and paste it into a new file in Notepad++, and save it as an XML file to the userDefineLangs\ folder found in step 1
    • Warning: Do not just right click to try to download the file from either the UDL list or the directory listing on GitHub links, as either of those right-click actions will download the GitHub web page for that file (which HTML, and not the UDL's XML file and will not work).
    • Alternatives to step 2 can be found in the "Import a UDL" section of the official online user manual. But this version here is the easiest for those who haven't worked much with UDLs or GitHub.
  3. Restart Notepad++
    • Without this restart, Notepad++ will not know about the new UDL.
  4. If the UDL author provided an autoCompletion XML file for that UDL, you may download it from the autoCompletions folder of the repository (using similar download procedure as described in step 2 above), and put it in a file in the autoCompletion\ sub-folder of your Notepad++ installation directory. More details can be found in the online User Manual in the "autoCompletion" and "configuration files details" sections.
  5. If the UDL author provided an sample file that uses that UDL, you may download that from the UDL-samples folder of the repository. If you open that sample in Notepad++ after the restart from step 3, it should apply the UDL highlighting.

Submitting your UDL to the Collection

You can submit your UDL file(s) into this repo, or a (some) link(s) to where your UDL file(s) is (are) hosted. In both cases, you have to do a Pull Request on this repository.

More information about submitting your UDL to the Collection, please refer to:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/CONTRIBUTING.md

We populated the initial UDLs in this Collection based on the old NppWiki++ list of UDLs (archived at archive.org)

The original author of any UDL in this Collection may request that we remove it from the Collection (or submit a PR to do the same), and we will oblige.

About

Notepad++ User Defined Languages Collection

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

Notepad++ User Defined Languages Collection

Notepad++ supports around 80 programming languages for syntax highlighting & folding. For languages that are not in the list of languages with built-in support, someone may have created a User Defined Language (UDL) for adding syntax highlighting to the language and added it to this collection, or you can submit a UDL to this collection for others to use.

To learn all about User Defined Languages:

https://npp-user-manual.org/docs/user-defined-language-system/

Here is the UDL list and from where you can download:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/udl-list.md

Using a UDL from this Collection

For now, you have to manually install a new User Defined Language.

  1. Use Notepad++'s Language > User Defined Language > Open User Defined Language folder... menu entry to easily find the right userDefineLangs\ folder to place your UDL definition file. (You can copy the path from the file Explorer location bar, for pasting into the Save As dialog in step 2)
  2. Download the XML file from the UDL list of this Collection.
    • From the UDL list, click on the name of the file.
    • From the file's page, use the button labled "Raw" to open the source of the UDL.
      image
      From that raw file, you can either:
      • you can use your browser's Right Click > Save As... feature to save the raw XML file to the userDefineLangs\ folder found in step 1
      • copy the text of the file's contents, and paste it into a new file in Notepad++, and save it as an XML file to the userDefineLangs\ folder found in step 1
    • Warning: Do not just right click to try to download the file from either the UDL list or the directory listing on GitHub links, as either of those right-click actions will download the GitHub web page for that file (which HTML, and not the UDL's XML file and will not work).
    • Alternatives to step 2 can be found in the "Import a UDL" section of the official online user manual. But this version here is the easiest for those who haven't worked much with UDLs or GitHub.
  3. Restart Notepad++
    • Without this restart, Notepad++ will not know about the new UDL.
  4. If the UDL author provided an autoCompletion XML file for that UDL, you may download it from the autoCompletions folder of the repository (using similar download procedure as described in step 2 above), and put it in a file in the autoCompletion\ sub-folder of your Notepad++ installation directory. More details can be found in the online User Manual in the "autoCompletion" and "configuration files details" sections.
  5. If the UDL author provided an sample file that uses that UDL, you may download that from the UDL-samples folder of the repository. If you open that sample in Notepad++ after the restart from step 3, it should apply the UDL highlighting.

Submitting your UDL to the Collection

You can submit your UDL file(s) into this repo, or a (some) link(s) to where your UDL file(s) is (are) hosted. In both cases, you have to do a Pull Request on this repository.

More information about submitting your UDL to the Collection, please refer to:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/CONTRIBUTING.md

We populated the initial UDLs in this Collection based on the old NppWiki++ list of UDLs (archived at archive.org)

The original author of any UDL in this Collection may request that we remove it from the Collection (or submit a PR to do the same), and we will oblige.

About

Notepad++ User Defined Languages Collection

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Notepad++ User Defined Languages Collection

Notepad++ supports around 80 programming languages for syntax highlighting & folding. For languages that are not in the list of languages with built-in support, someone may have created a User Defined Language (UDL) for adding syntax highlighting to the language and added it to this collection, or you can submit a UDL to this collection for others to use.

To learn all about User Defined Languages:

https://npp-user-manual.org/docs/user-defined-language-system/

Here is the UDL list and from where you can download:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/udl-list.md

Using a UDL from this Collection

For now, you have to manually install a new User Defined Language.

  1. Use Notepad++'s Language > User Defined Language > Open User Defined Language folder... menu entry to easily find the right userDefineLangs\ folder to place your UDL definition file. (You can copy the path from the file Explorer location bar, for pasting into the Save As dialog in step 2)
  2. Download the XML file from the UDL list of this Collection.
    • From the UDL list, click on the name of the file.
    • From the file's page, use the button labled "Raw" to open the source of the UDL.
      image
      From that raw file, you can either:
      • you can use your browser's Right Click > Save As... feature to save the raw XML file to the userDefineLangs\ folder found in step 1
      • copy the text of the file's contents, and paste it into a new file in Notepad++, and save it as an XML file to the userDefineLangs\ folder found in step 1
    • Warning: Do not just right click to try to download the file from either the UDL list or the directory listing on GitHub links, as either of those right-click actions will download the GitHub web page for that file (which HTML, and not the UDL's XML file and will not work).
    • Alternatives to step 2 can be found in the "Import a UDL" section of the official online user manual. But this version here is the easiest for those who haven't worked much with UDLs or GitHub.
  3. Restart Notepad++
    • Without this restart, Notepad++ will not know about the new UDL.
  4. If the UDL author provided an autoCompletion XML file for that UDL, you may download it from the autoCompletions folder of the repository (using similar download procedure as described in step 2 above), and put it in a file in the autoCompletion\ sub-folder of your Notepad++ installation directory. More details can be found in the online User Manual in the "autoCompletion" and "configuration files details" sections.
  5. If the UDL author provided an sample file that uses that UDL, you may download that from the UDL-samples folder of the repository. If you open that sample in Notepad++ after the restart from step 3, it should apply the UDL highlighting.

Submitting your UDL to the Collection

You can submit your UDL file(s) into this repo, or a (some) link(s) to where your UDL file(s) is (are) hosted. In both cases, you have to do a Pull Request on this repository.

More information about submitting your UDL to the Collection, please refer to:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/CONTRIBUTING.md

We populated the initial UDLs in this Collection based on the old NppWiki++ list of UDLs (archived at archive.org)

The original author of any UDL in this Collection may request that we remove it from the Collection (or submit a PR to do the same), and we will oblige.

About

Notepad++ User Defined Languages Collection

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Notepad++ User Defined Languages Collection

Notepad++ supports around 80 programming languages for syntax highlighting & folding. For languages that are not in the list of languages with built-in support, someone may have created a User Defined Language (UDL) for adding syntax highlighting to the language and added it to this collection, or you can submit a UDL to this collection for others to use.

To learn all about User Defined Languages:

https://npp-user-manual.org/docs/user-defined-language-system/

Here is the UDL list and from where you can download:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/udl-list.md

Using a UDL from this Collection

For now, you have to manually install a new User Defined Language.

  1. Use Notepad++'s Language > User Defined Language > Open User Defined Language folder... menu entry to easily find the right userDefineLangs\ folder to place your UDL definition file. (You can copy the path from the file Explorer location bar, for pasting into the Save As dialog in step 2)
  2. Download the XML file from the UDL list of this Collection.
    • From the UDL list, click on the name of the file.
    • From the file's page, use the button labled "Raw" to open the source of the UDL.
      image
      From that raw file, you can either:
      • you can use your browser's Right Click > Save As... feature to save the raw XML file to the userDefineLangs\ folder found in step 1
      • copy the text of the file's contents, and paste it into a new file in Notepad++, and save it as an XML file to the userDefineLangs\ folder found in step 1
    • Warning: Do not just right click to try to download the file from either the UDL list or the directory listing on GitHub links, as either of those right-click actions will download the GitHub web page for that file (which HTML, and not the UDL's XML file and will not work).
    • Alternatives to step 2 can be found in the "Import a UDL" section of the official online user manual. But this version here is the easiest for those who haven't worked much with UDLs or GitHub.
  3. Restart Notepad++
    • Without this restart, Notepad++ will not know about the new UDL.
  4. If the UDL author provided an autoCompletion XML file for that UDL, you may download it from the autoCompletions folder of the repository (using similar download procedure as described in step 2 above), and put it in a file in the autoCompletion\ sub-folder of your Notepad++ installation directory. More details can be found in the online User Manual in the "autoCompletion" and "configuration files details" sections.
  5. If the UDL author provided an sample file that uses that UDL, you may download that from the UDL-samples folder of the repository. If you open that sample in Notepad++ after the restart from step 3, it should apply the UDL highlighting.

Submitting your UDL to the Collection

You can submit your UDL file(s) into this repo, or a (some) link(s) to where your UDL file(s) is (are) hosted. In both cases, you have to do a Pull Request on this repository.

More information about submitting your UDL to the Collection, please refer to:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/CONTRIBUTING.md

We populated the initial UDLs in this Collection based on the old NppWiki++ list of UDLs (archived at archive.org)

The original author of any UDL in this Collection may request that we remove it from the Collection (or submit a PR to do the same), and we will oblige.

About

Notepad++ User Defined Languages Collection

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

Notepad++ User Defined Languages Collection

Notepad++ supports around 80 programming languages for syntax highlighting & folding. For languages that are not in the list of languages with built-in support, someone may have created a User Defined Language (UDL) for adding syntax highlighting to the language and added it to this collection, or you can submit a UDL to this collection for others to use.

To learn all about User Defined Languages:

https://npp-user-manual.org/docs/user-defined-language-system/

Here is the UDL list and from where you can download:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/udl-list.md

Using a UDL from this Collection

For now, you have to manually install a new User Defined Language.

  1. Use Notepad++'s Language > User Defined Language > Open User Defined Language folder... menu entry to easily find the right userDefineLangs\ folder to place your UDL definition file. (You can copy the path from the file Explorer location bar, for pasting into the Save As dialog in step 2)
  2. Download the XML file from the UDL list of this Collection.
    • From the UDL list, click on the name of the file.
    • From the file's page, use the button labled "Raw" to open the source of the UDL.
      image
      From that raw file, you can either:
      • you can use your browser's Right Click > Save As... feature to save the raw XML file to the userDefineLangs\ folder found in step 1
      • copy the text of the file's contents, and paste it into a new file in Notepad++, and save it as an XML file to the userDefineLangs\ folder found in step 1
    • Warning: Do not just right click to try to download the file from either the UDL list or the directory listing on GitHub links, as either of those right-click actions will download the GitHub web page for that file (which HTML, and not the UDL's XML file and will not work).
    • Alternatives to step 2 can be found in the "Import a UDL" section of the official online user manual. But this version here is the easiest for those who haven't worked much with UDLs or GitHub.
  3. Restart Notepad++
    • Without this restart, Notepad++ will not know about the new UDL.
  4. If the UDL author provided an autoCompletion XML file for that UDL, you may download it from the autoCompletions folder of the repository (using similar download procedure as described in step 2 above), and put it in a file in the autoCompletion\ sub-folder of your Notepad++ installation directory. More details can be found in the online User Manual in the "autoCompletion" and "configuration files details" sections.
  5. If the UDL author provided an sample file that uses that UDL, you may download that from the UDL-samples folder of the repository. If you open that sample in Notepad++ after the restart from step 3, it should apply the UDL highlighting.

Submitting your UDL to the Collection

You can submit your UDL file(s) into this repo, or a (some) link(s) to where your UDL file(s) is (are) hosted. In both cases, you have to do a Pull Request on this repository.

More information about submitting your UDL to the Collection, please refer to:

https://github.com/notepad-plus-plus/userDefinedLanguages/blob/master/CONTRIBUTING.md

We populated the initial UDLs in this Collection based on the old NppWiki++ list of UDLs (archived at archive.org)

The original author of any UDL in this Collection may request that we remove it from the Collection (or submit a PR to do the same), and we will oblige.

About

Notepad++ User Defined Languages Collection

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages