Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package highlight for openSUSE:Factory checked in at 2023-10-20 23:16:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/highlight (Old) and /work/SRC/openSUSE:Factory/.highlight.new.1945 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "highlight" Fri Oct 20 23:16:21 2023 rev:44 rq:1118940 version:4.9 Changes: -------- --- /work/SRC/openSUSE:Factory/highlight/highlight.changes 2023-08-30 10:21:31.942394632 +0200 +++ /work/SRC/openSUSE:Factory/.highlight.new.1945/highlight.changes 2023-10-20 23:17:10.743421816 +0200 @@ -1,0 +2,12 @@ +Thu Oct 19 09:20:46 UTC 2023 - antoine.belv...@opensuse.org + +- Update to version 4.9: + * Updated astyle lib to version 3.4.9. + * Added support for Elm (gl#saalen/highlight#237). + * Added support for Factor (gl#saalen/highlight#239). + * Added support for Cpp2. + * Updated c.lang to include module keywords. + * Fixed Lua nested string deprecation error + (gl#saalen/highlight#238). + +------------------------------------------------------------------- Old: ---- highlight-v4.8.tar.bz2 New: ---- highlight-v4.9.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ highlight.spec ++++++ --- /var/tmp/diff_new_pack.PaY9Lt/_old 2023-10-20 23:17:11.323442979 +0200 +++ /var/tmp/diff_new_pack.PaY9Lt/_new 2023-10-20 23:17:11.323442979 +0200 @@ -18,7 +18,7 @@ %bcond_without gui Name: highlight -Version: 4.8 +Version: 4.9 Release: 0 Summary: Universal Source Code to Formatted Text Converter License: GPL-3.0-or-later ++++++ highlight-v4.8.tar.bz2 -> highlight-v4.9.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/ChangeLog.adoc new/highlight-v4.9/ChangeLog.adoc --- old/highlight-v4.8/ChangeLog.adoc 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/ChangeLog.adoc 2023-10-18 14:46:12.000000000 +0200 @@ -6,9 +6,21 @@ :toc: left :toclevels: 1 +== highlight 4.9 + +16.10.2023 + + - updated astyle lib to version 3.4.9 + - added support for Elm (https://gitlab.com/saalen/highlight/-/issues/237) + - added support for Factor (https://gitlab.com/saalen/highlight/-/issues/239) + - added support for Cpp2 + - updated c.lang to include module keywords + - fixed Lua nested string deprecation error (https://gitlab.com/saalen/highlight/-/issues/238) + + == highlight 4.8 -25.08.2023 +28.08.2023 - updated astyle lib to version 3.4.6 - moved old yaml.lang to yaml-ansible.lang and added a new yaml definition (https://gitlab.com/saalen/highlight/-/issues/235) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/README.adoc new/highlight-v4.9/README.adoc --- old/highlight-v4.8/README.adoc 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/README.adoc 2023-10-18 14:46:12.000000000 +0200 @@ -1,6 +1,6 @@ = HIGHLIGHT MANUAL André Simon -v4.6, May 2023 +v4.9, October 2023 :lang: en :toc: left :toc-title: Contents @@ -54,25 +54,25 @@ == OVERVIEW -Highlight converts sourcecode to HTML, XHTML, RTF, ODT, LaTeX, TeX, SVG, BBCode, -Pango markup and terminal escape sequences with coloured syntax highlighting. -Syntax definitions and colour themes are customizable. +Highlight converts sourcecode to HTML, XHTML, RTF, ODT, LaTeX, TeX, SVG, +BBCode, Pango markup and terminal escape sequences with coloured syntax +highlighting. Syntax definitions and colour themes are customizable. === INTENDED PURPOSE -Highlight was designed to offer a flexible but easy to use syntax highlighter -for several output formats. No syntax or colouring information is hardcoded, -instead all relevant data is stored in configuration scripts. These Lua scripts -may be altered and enhanced with plug-ins. +Highlight was created to provide a versatile yet user-friendly syntax +highlighter for multiple output formats. Instead of hardcoding syntax and +colouring information, all necessary data is saved in configuration scripts. +These Lua scripts can be edited and enhanced with plug-ins. === FEATURE LIST -* highlighting of keywords, types, strings, numbers, escape sequences, comments, - operators and preprocessor directives -* coloured output in HTML, XHTML 1.1, RTF, TeX, LaTeX, SVG, BBCode, Pango Markup - and terminal escape sequences +* highlighting of keywords, types, strings, numbers, escape sequences, + comments, operators and preprocessor directives +* coloured output in HTML, XHTML 1.1, RTF, TeX, LaTeX, SVG, BBCode, Pango + Markup and terminal escape sequences * supports referenced stylesheet files for HTML, LaTeX, TeX or SVG output * configuration files are Lua scripts * supports plug-in scripts to tweak language definitions and themes @@ -317,23 +317,23 @@ === GUI OPTIONS -The Graphical User Interface offers a subset of the CLI's features. It includes -a dynamic preview of the output file's apperarance. Please see screenshots and -screencasts on the project website. -Invoke highlight-gui with the `--portable` option to let it save its settings -in the binary's current directory (instead of using the registry). +The GUI provides a selection of the CLI's capabilities and features a live +preview of the output file's appearance. Refer to the project website for +accompanying screenshots and screencasts. +Invoke highlight-gui with the `--portable` option to save its settings in the +binary's current directory (instead of using the registry). === INPUT AND OUTPUT -If no input or output file name is defined by `--input` and `--output` options, -highlight will use stdin and stdout for file processing. -Since version 3.44, reading from stdin can also be triggered by the `-` option. - -If no input filename is defined by `--input` or given at the prompt, highlight is -not able to determine the language type by means of the file extension (except -some scripting languages which are figured out by the shebang in the first input -line). In this case you have to pass highlight the language with `--syntax` or +If the `--input` and `--output` options are not defined, Highlight will +automatically use stdin and stdout for file processing. +Reading from stdin can also be triggered by the `-` option. + +If no input file is defined by `--input` or provided at prompt, highlight cannot +determine the language type through the file extension (excluding some scripting +languages that can be derived from the shebang on the first input line). +In this scenario, you must specify the language for highlight with `--syntax` or `--syntax-by-name` (this usually should be the file suffix of the source file or its name, respectively). Example: If you want to convert a Python file, highlight needs to load the @@ -383,12 +383,12 @@ ==== Terminal output: -Since there are limited colours defined for ANSI terminal output, there exists +As there are only a few colours defined for ANSI terminal output, there exists only one hard coded colour theme with `--out-format=ansi`. You should therefore use `--out-format=xterm256` to enable output in 256 colours. The 256 colour mode -is supported by recent releases of xterm, rxvt and Putty (among others). -The latest terminal emulators also support 16m colors, this mode is enabled -with `--out-format=truecolor`. +is supported by recent releases of xterm, rxvt and Putty (amongst others). +Recently published terminal emulators also support 16m colors, this mode is +enabled with `--out-format=truecolor`. ..................................................... highlight --out-format=ansi <inputfile> | less -R diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/README_DE.adoc new/highlight-v4.9/README_DE.adoc --- old/highlight-v4.8/README_DE.adoc 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/README_DE.adoc 2023-10-18 14:46:12.000000000 +0200 @@ -1,6 +1,6 @@ = HIGHLIGHT HANDBUCH André Simon -v4.6, Mai 2023 +v4.9, Oktober 2023 :lang: de :toc: left :toc-title: Contents @@ -61,8 +61,8 @@ === SINN UND ZWECK -Highlight wurde mit dem Ziel entworfen, einen flexiblen und einfach zu -bedienenden Syntaxhighlighter fuer mehrere Ausgabeformate anzubieten. +Highlight wurde mit dem Ziel entworfen, einen flexiblen und benutzerfreundlichen +Syntaxhighlighter fuer mehrere Ausgabeformate anzubieten. Statt hartkodierter Sprachbeschreibungen und Farbschemata sind alle wichtigen Informationen in Konfigurationsskripten enthalten. Diese Lua-Skripte koennen mit Plug-Ins angepasst und erweitert werden. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/README_LANGLIST.adoc new/highlight-v4.9/README_LANGLIST.adoc --- old/highlight-v4.8/README_LANGLIST.adoc 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/README_LANGLIST.adoc 2023-10-18 14:46:12.000000000 +0200 @@ -1,6 +1,6 @@ = HIGHLIGHT LANGUAGES LIST André Simon -v3.59, October 2020 +v4.9, October 2023 :lang: en :experimental: :icons: font @@ -44,251 +44,262 @@ |========================================== | Language | Filename | Extensions -| ABAP/4 | link:./langDefs/abap4.lang[`abap4.lang`,title="View source file"] | abp -| ABC | link:./langDefs/abc.lang[`abc.lang`,title="View source file"] | +| ABAP/4 | link:./langDefs/abap.lang[`abap.lang`,title="View source file"] | abp +| ABC | link:./langDefs/abc.lang[`abc.lang`,title="View source file"] | | Abstract | link:./langDefs/aspect.lang[`aspect.lang`,title="View source file"] | was wud | ActionScript | link:./langDefs/actionscript.lang[`actionscript.lang`,title="View source file"] | as | Active Server Pages | link:./langDefs/asp.lang[`asp.lang`,title="View source file"] | ascx ashx aspx | ADA95 | link:./langDefs/ada.lang[`ada.lang`,title="View source file"] | a adb ads gnad -| Advanced Backus-Naur Form | link:./langDefs/abnf.lang[`abnf.lang`,title="View source file"] | -| Agda | link:./langDefs/agda.lang[`agda.lang`,title="View source file"] | +| Advanced Backus-Naur Form | link:./langDefs/abnf.lang[`abnf.lang`,title="View source file"] | +| Agda | link:./langDefs/agda.lang[`agda.lang`,title="View source file"] | lagda | ALAN Interactive Fiction Language | link:./langDefs/alan.lang[`alan.lang`,title="View source file"] | alan i | ALGOL 68 | link:./langDefs/algol.lang[`algol.lang`,title="View source file"] | alg | AMPL | link:./langDefs/ampl.lang[`ampl.lang`,title="View source file"] | dat run | AMTrix | link:./langDefs/amtrix.lang[`amtrix.lang`,title="View source file"] | hnd s4 s4h s4t t4 -| Ansible YAML | link:./langDefs/yaml.lang[`yaml.lang`,title="View source file"] | yml -| Apache Config | link:./langDefs/httpd.lang[`httpd.lang`,title="View source file"] | -| AppleScript | link:./langDefs/applescript.lang[`applescript.lang`,title="View source file"] | +| Ansible YAML | link:./langDefs/yaml_ansible.lang[`yaml_ansible.lang`,title="View source file"] | +| Apache Config | link:./langDefs/httpd.lang[`httpd.lang`,title="View source file"] | +| AppleScript | link:./langDefs/applescript.lang[`applescript.lang`,title="View source file"] | | Applied Type System | link:./langDefs/ats.lang[`ats.lang`,title="View source file"] | dats -| Arc | link:./langDefs/arc.lang[`arc.lang`,title="View source file"] | -| ARM | link:./langDefs/arm.lang[`arm.lang`,title="View source file"] | -| AS/400 CL | link:./langDefs/as400cl.lang[`as400cl.lang`,title="View source file"] | +| Arc | link:./langDefs/arc.lang[`arc.lang`,title="View source file"] | +| ARM | link:./langDefs/arm.lang[`arm.lang`,title="View source file"] | +| AS/400 CL | link:./langDefs/as400cl.lang[`as400cl.lang`,title="View source file"] | | ASCEND | link:./langDefs/ascend.lang[`ascend.lang`,title="View source file"] | a4c -| AsciiDoc | link:./langDefs/asciidoc.lang[`asciidoc.lang`,title="View source file"] | +| AsciiDoc | link:./langDefs/asciidoc.lang[`asciidoc.lang`,title="View source file"] | | AutoHotKey | link:./langDefs/autohotkey.lang[`autohotkey.lang`,title="View source file"] | ahk | AutoIt | link:./langDefs/autoit.lang[`autoit.lang`,title="View source file"] | au3 -| Avenue | link:./langDefs/avenue.lang[`avenue.lang`,title="View source file"] | -| Backus-Naur Form | link:./langDefs/bnf.lang[`bnf.lang`,title="View source file"] | +| Avenue | link:./langDefs/avenue.lang[`avenue.lang`,title="View source file"] | +| Backus-Naur Form | link:./langDefs/bnf.lang[`bnf.lang`,title="View source file"] | | Ballerina | link:./langDefs/ballerina.lang[`ballerina.lang`,title="View source file"] | bal -| Bash | link:./langDefs/sh.lang[`sh.lang`,title="View source file"] | bash ebuild eclass zsh -| BBcode | link:./langDefs/bbcode.lang[`bbcode.lang`,title="View source file"] | -| BCPL | link:./langDefs/bcpl.lang[`bcpl.lang`,title="View source file"] | +| Bash | link:./langDefs/shellscript.lang[`shellscript.lang`,title="View source file"] | bash ebuild eclass sh zsh +| BBcode | link:./langDefs/bbcode.lang[`bbcode.lang`,title="View source file"] | +| BCPL | link:./langDefs/bcpl.lang[`bcpl.lang`,title="View source file"] | | BibTeX | link:./langDefs/bibtex.lang[`bibtex.lang`,title="View source file"] | bib | Biferno | link:./langDefs/biferno.lang[`biferno.lang`,title="View source file"] | bfr | Bison | link:./langDefs/bison.lang[`bison.lang`,title="View source file"] | y | Blitz Basic | link:./langDefs/blitzbasic.lang[`blitzbasic.lang`,title="View source file"] | bb -| BM Script | link:./langDefs/bms.lang[`bms.lang`,title="View source file"] | -| Boo | link:./langDefs/boo.lang[`boo.lang`,title="View source file"] | -| C and C++ | link:./langDefs/c.lang[`c.lang`,title="View source file"] | c++ cc cpp cu cxx h hh hpp hxx inl ipp -| Ceylon | link:./langDefs/ceylon.lang[`ceylon.lang`,title="View source file"] | -| Chapel | link:./langDefs/chpl.lang[`chpl.lang`,title="View source file"] | +| BM Script | link:./langDefs/bms.lang[`bms.lang`,title="View source file"] | +| Boo | link:./langDefs/boo.lang[`boo.lang`,title="View source file"] | +| C and C++ | link:./langDefs/c.lang[`c.lang`,title="View source file"] | c++ cc cpp cppm cu cxx h hh hpp hxx inl ino ipp ixx +| Carbon | link:./langDefs/carbon.lang[`carbon.lang`,title="View source file"] | +| Ceylon | link:./langDefs/ceylon.lang[`ceylon.lang`,title="View source file"] | +| Chapel | link:./langDefs/chpl.lang[`chpl.lang`,title="View source file"] | | Charmm | link:./langDefs/charmm.lang[`charmm.lang`,title="View source file"] | inp | CHILL | link:./langDefs/chill.lang[`chill.lang`,title="View source file"] | chl | Clean | link:./langDefs/clean.lang[`clean.lang`,title="View source file"] | icl | ClearBasic | link:./langDefs/clearbasic.lang[`clearbasic.lang`,title="View source file"] | cb | C# | link:./langDefs/csharp.lang[`csharp.lang`,title="View source file"] | cs -| Clipper | link:./langDefs/clipper.lang[`clipper.lang`,title="View source file"] | -| Clips | link:./langDefs/clp.lang[`clp.lang`,title="View source file"] | -| Clojure | link:./langDefs/clojure.lang[`clojure.lang`,title="View source file"] | clj cljc cljs edn -| CMake | link:./langDefs/cmake.lang[`cmake.lang`,title="View source file"] | +| Clipper | link:./langDefs/clipper.lang[`clipper.lang`,title="View source file"] | +| Clips | link:./langDefs/clp.lang[`clp.lang`,title="View source file"] | +| Clojure | link:./langDefs/clojure.lang[`clojure.lang`,title="View source file"] | boot cl2 clj cljc cljs cljscm cljx edn hic +| CMake | link:./langDefs/cmake.lang[`cmake.lang`,title="View source file"] | | COBOL | link:./langDefs/cobol.lang[`cobol.lang`,title="View source file"] | cbl cob -| Coffeescript Block Regex | link:./langDefs/cs_block_regex.lang[`cs_block_regex.lang`,title="View source file"] | -| Coffeescript | link:./langDefs/coffee.lang[`coffee.lang`,title="View source file"] | +| Coffeescript Block Regex | link:./langDefs/cs_block_regex.lang[`cs_block_regex.lang`,title="View source file"] | +| Coffeescript | link:./langDefs/coffeescript.lang[`coffeescript.lang`,title="View source file"] | cakefile cjsx coffee iced | ColdFusion MX | link:./langDefs/coldfusion.lang[`coldfusion.lang`,title="View source file"] | cfc cfm -| Crack | link:./langDefs/crk.lang[`crk.lang`,title="View source file"] | +| Cpp2 | link:./langDefs/cpp2.lang[`cpp2.lang`,title="View source file"] | +| Crack | link:./langDefs/crk.lang[`crk.lang`,title="View source file"] | +| CriticMarkup | link:./langDefs/critic.lang[`critic.lang`,title="View source file"] | | Crystal | link:./langDefs/crystal.lang[`crystal.lang`,title="View source file"] | cr -| CSS | link:./langDefs/css.lang[`css.lang`,title="View source file"] | -| Dart | link:./langDefs/dart.lang[`dart.lang`,title="View source file"] | +| CSS | link:./langDefs/css.lang[`css.lang`,title="View source file"] | +| Dart | link:./langDefs/dart.lang[`dart.lang`,title="View source file"] | | delphi | link:./langDefs/delphi.lang[`delphi.lang`,title="View source file"] | dpr pas | Device Tree Source | link:./langDefs/dts.lang[`dts.lang`,title="View source file"] | dtsi | Diff | link:./langDefs/diff.lang[`diff.lang`,title="View source file"] | patch -| D | link:./langDefs/d.lang[`d.lang`,title="View source file"] | -| Dockerfile | link:./langDefs/docker.lang[`docker.lang`,title="View source file"] | dockerfile -| Dylan | link:./langDefs/dylan.lang[`dylan.lang`,title="View source file"] | -| EBNF2 | link:./langDefs/ebnf2.lang[`ebnf2.lang`,title="View source file"] | +| D | link:./langDefs/d.lang[`d.lang`,title="View source file"] | +| Dockerfile | link:./langDefs/dockerfile.lang[`dockerfile.lang`,title="View source file"] | +| Dylan | link:./langDefs/dylan.lang[`dylan.lang`,title="View source file"] | +| EBNF2 | link:./langDefs/ebnf2.lang[`ebnf2.lang`,title="View source file"] | | Eiffel | link:./langDefs/eiffel.lang[`eiffel.lang`,title="View source file"] | e se -| Elixir | link:./langDefs/elixir.lang[`elixir.lang`,title="View source file"] | ex exs -| E-Mail treated as Markup | link:./langDefs/email.lang[`email.lang`,title="View source file"] | -| ERB Templates | link:./langDefs/erb.lang[`erb.lang`,title="View source file"] | -| Erlang | link:./langDefs/erlang.lang[`erlang.lang`,title="View source file"] | erl hrl +| Elixir | link:./langDefs/elixir.lang[`elixir.lang`,title="View source file"] | ex exs heex +| Elm | link:./langDefs/elm.lang[`elm.lang`,title="View source file"] | +| Emacs Org-Mode | link:./langDefs/org.lang[`org.lang`,title="View source file"] | +| E-Mail treated as Markup | link:./langDefs/email.lang[`email.lang`,title="View source file"] | +| ERB Templates | link:./langDefs/erb.lang[`erb.lang`,title="View source file"] | +| Erlang | link:./langDefs/erlang.lang[`erlang.lang`,title="View source file"] | erl hrl xrl yrl | Euphoria | link:./langDefs/euphoria.lang[`euphoria.lang`,title="View source file"] | eu ew exw wxu | EXAPUNKS | link:./langDefs/exapunks.lang[`exapunks.lang`,title="View source file"] | exa exapunks -| Excel Formulas | link:./langDefs/excel.lang[`excel.lang`,title="View source file"] | +| Excel Formulas | link:./langDefs/excel.lang[`excel.lang`,title="View source file"] | | Express | link:./langDefs/express.lang[`express.lang`,title="View source file"] | exp -| Extended Backus-Naur Form | link:./langDefs/ebnf.lang[`ebnf.lang`,title="View source file"] | +| Extended Backus-Naur Form | link:./langDefs/ebnf.lang[`ebnf.lang`,title="View source file"] | +| Factor | link:./langDefs/factor.lang[`factor.lang`,title="View source file"] | | FAME | link:./langDefs/fame.lang[`fame.lang`,title="View source file"] | fame | fasm | link:./langDefs/fasm.lang[`fasm.lang`,title="View source file"] | inc | Felix | link:./langDefs/felix.lang[`felix.lang`,title="View source file"] | flx -| Fish | link:./langDefs/fish.lang[`fish.lang`,title="View source file"] | +| Fish | link:./langDefs/fish.lang[`fish.lang`,title="View source file"] | | F# | link:./langDefs/fsharp.lang[`fsharp.lang`,title="View source file"] | fs fsi fsx | Fortran 77 | link:./langDefs/fortran77.lang[`fortran77.lang`,title="View source file"] | f for ftn | Fortran 90 | link:./langDefs/fortran90.lang[`fortran90.lang`,title="View source file"] | f90 f95 -| Frink | link:./langDefs/frink.lang[`frink.lang`,title="View source file"] | -| fstab config file | link:./langDefs/fstab.lang[`fstab.lang`,title="View source file"] | +| Frink | link:./langDefs/frink.lang[`frink.lang`,title="View source file"] | +| fstab config file | link:./langDefs/fstab.lang[`fstab.lang`,title="View source file"] | | Gambas | link:./langDefs/gambas.lang[`gambas.lang`,title="View source file"] | class -| (G)AWK | link:./langDefs/awk.lang[`awk.lang`,title="View source file"] | -| gdb | link:./langDefs/gdb.lang[`gdb.lang`,title="View source file"] | +| (G)AWK | link:./langDefs/awk.lang[`awk.lang`,title="View source file"] | +| gdb | link:./langDefs/gdb.lang[`gdb.lang`,title="View source file"] | | GDScript | link:./langDefs/gdscript.lang[`gdscript.lang`,title="View source file"] | gd | Generic Assembler | link:./langDefs/assembler.lang[`assembler.lang`,title="View source file"] | 29k 68s 68x a51 asm x86 | Generic config files | link:./langDefs/conf.lang[`conf.lang`,title="View source file"] | anacrontab -| GitHub Flavored Markdown | link:./langDefs/markdown.lang[`markdown.lang`,title="View source file"] | markdown md -| GitHub Flavored Markdown | link:./langDefs/md.lang[`md.lang`,title="View source file"] | -| Go | link:./langDefs/go.lang[`go.lang`,title="View source file"] | +| Generic YAML | link:./langDefs/yaml.lang[`yaml.lang`,title="View source file"] | yml +| GitHub Flavored Markdown | link:./langDefs/markdown.lang[`markdown.lang`,title="View source file"] | markdown md mdwn mdx mkd mkdn mkdown ronn workbook +| Go | link:./langDefs/go.lang[`go.lang`,title="View source file"] | | Graphviz | link:./langDefs/graphviz.lang[`graphviz.lang`,title="View source file"] | dot -| Haml (HTML Abstraction Markup Language) | link:./langDefs/haml.lang[`haml.lang`,title="View source file"] | -| Haskell LHS | link:./langDefs/lhs.lang[`lhs.lang`,title="View source file"] | +| Haml (HTML Abstraction Markup Language) | link:./langDefs/haml.lang[`haml.lang`,title="View source file"] | +| Hare | link:./langDefs/hare.lang[`hare.lang`,title="View source file"] | ha +| Haskell LHS | link:./langDefs/lhs.lang[`lhs.lang`,title="View source file"] | | Haskell | link:./langDefs/haskell.lang[`haskell.lang`,title="View source file"] | hs | haXe | link:./langDefs/haxe.lang[`haxe.lang`,title="View source file"] | hx -| Hecl | link:./langDefs/hcl.lang[`hcl.lang`,title="View source file"] | +| Hecl | link:./langDefs/hcl.lang[`hcl.lang`,title="View source file"] | | HTML | link:./langDefs/html.lang[`html.lang`,title="View source file"] | htm jinja twig xhtml | Hugo | link:./langDefs/hugo.lang[`hugo.lang`,title="View source file"] | hug | Icon | link:./langDefs/icon.lang[`icon.lang`,title="View source file"] | icn -| IDL | link:./langDefs/idl.lang[`idl.lang`,title="View source file"] | +| IDL | link:./langDefs/idl.lang[`idl.lang`,title="View source file"] | | Informix | link:./langDefs/informix.lang[`informix.lang`,title="View source file"] | 4gl | INI | link:./langDefs/ini.lang[`ini.lang`,title="View source file"] | cfg desktop doxyfile inf kdev3 reg | Inno Setup | link:./langDefs/innosetup.lang[`innosetup.lang`,title="View source file"] | iss -| Interactive Data Language | link:./langDefs/idlang.lang[`idlang.lang`,title="View source file"] | +| Interactive Data Language | link:./langDefs/idlang.lang[`idlang.lang`,title="View source file"] | | INTERLIS | link:./langDefs/interlis.lang[`interlis.lang`,title="View source file"] | ili -| IO | link:./langDefs/io.lang[`io.lang`,title="View source file"] | +| IO | link:./langDefs/io.lang[`io.lang`,title="View source file"] | +| Jam | link:./langDefs/jam.lang[`jam.lang`,title="View source file"] | ham jam | Jasmin | link:./langDefs/jasmin.lang[`jasmin.lang`,title="View source file"] | j -| Java FX | link:./langDefs/fx.lang[`fx.lang`,title="View source file"] | +| Java FX | link:./langDefs/fx.lang[`fx.lang`,title="View source file"] | | Java | link:./langDefs/java.lang[`java.lang`,title="View source file"] | gradle groovy grv jenkinsfile -| Javascript | link:./langDefs/js.lang[`js.lang`,title="View source file"] | -| Javascript Regex | link:./langDefs/js_regex.lang[`js_regex.lang`,title="View source file"] | -| JavaServer Pages | link:./langDefs/jsp.lang[`jsp.lang`,title="View source file"] | -| JSON | link:./langDefs/json.lang[`json.lang`,title="View source file"] | -| JSX | link:./langDefs/jsx.lang[`jsx.lang`,title="View source file"] | +| Javascript | link:./langDefs/javascript.lang[`javascript.lang`,title="View source file"] | js +| Javascript Regex | link:./langDefs/js_regex.lang[`js_regex.lang`,title="View source file"] | +| JavaServer Pages | link:./langDefs/jsp.lang[`jsp.lang`,title="View source file"] | +| JSON | link:./langDefs/json.lang[`json.lang`,title="View source file"] | +| JSX | link:./langDefs/jsx.lang[`jsx.lang`,title="View source file"] | | Julia | link:./langDefs/julia.lang[`julia.lang`,title="View source file"] | jl | Kotlin | link:./langDefs/kotlin.lang[`kotlin.lang`,title="View source file"] | kt kts -| LDAP | link:./langDefs/ldif.lang[`ldif.lang`,title="View source file"] | -| Less | link:./langDefs/less.lang[`less.lang`,title="View source file"] | +| LDAP | link:./langDefs/ldif.lang[`ldif.lang`,title="View source file"] | +| Less | link:./langDefs/less.lang[`less.lang`,title="View source file"] | | Lilypond | link:./langDefs/lilypond.lang[`lilypond.lang`,title="View source file"] | ly | Limbo | link:./langDefs/limbo.lang[`limbo.lang`,title="View source file"] | b | Linden Script | link:./langDefs/lindenscript.lang[`lindenscript.lang`,title="View source file"] | lsl | Lisp | link:./langDefs/lisp.lang[`lisp.lang`,title="View source file"] | cl clisp el fas fasl lsp mud sbcl scm scom | Logtalk | link:./langDefs/logtalk.lang[`logtalk.lang`,title="View source file"] | lgt -| Lotos | link:./langDefs/lotos.lang[`lotos.lang`,title="View source file"] | +| Lotos | link:./langDefs/lotos.lang[`lotos.lang`,title="View source file"] | | Lotus | link:./langDefs/lotus.lang[`lotus.lang`,title="View source file"] | ls -| Lua (for LuaTeX) | link:./langDefs/inc_luatex.lang[`inc_luatex.lang`,title="View source file"] | -| Lua | link:./langDefs/lua.lang[`lua.lang`,title="View source file"] | +| Lua (for LuaTeX) | link:./langDefs/inc_luatex.lang[`inc_luatex.lang`,title="View source file"] | +| Lua | link:./langDefs/lua.lang[`lua.lang`,title="View source file"] | | Luban | link:./langDefs/luban.lang[`luban.lang`,title="View source file"] | lbn -| Magic eXtensible Markup | link:./langDefs/mxml.lang[`mxml.lang`,title="View source file"] | -| Make | link:./langDefs/make.lang[`make.lang`,title="View source file"] | gnumakefile mak makefile mk +| Magic eXtensible Markup | link:./langDefs/mxml.lang[`mxml.lang`,title="View source file"] | +| Make | link:./langDefs/makefile.lang[`makefile.lang`,title="View source file"] | gnumakefile mak mk | Maple | link:./langDefs/maple.lang[`maple.lang`,title="View source file"] | mpl | Matlab | link:./langDefs/matlab.lang[`matlab.lang`,title="View source file"] | m -| MaxScript | link:./langDefs/ms.lang[`ms.lang`,title="View source file"] | +| MaxScript | link:./langDefs/ms.lang[`ms.lang`,title="View source file"] | | Maya | link:./langDefs/maya.lang[`maya.lang`,title="View source file"] | mel -| Mercury | link:./langDefs/mercury.lang[`mercury.lang`,title="View source file"] | -| Meson | link:./langDefs/meson.lang[`meson.lang`,title="View source file"] | -| Microsoft PowerShell | link:./langDefs/ps1.lang[`ps1.lang`,title="View source file"] | psd1 psm1 -| Miranda | link:./langDefs/miranda.lang[`miranda.lang`,title="View source file"] | +| Mercury | link:./langDefs/mercury.lang[`mercury.lang`,title="View source file"] | +| Meson | link:./langDefs/meson.lang[`meson.lang`,title="View source file"] | +| Microsoft PowerShell | link:./langDefs/powershell.lang[`powershell.lang`,title="View source file"] | ps1 psd1 psm1 +| Miranda | link:./langDefs/miranda.lang[`miranda.lang`,title="View source file"] | | mIRC Scripting | link:./langDefs/msl.lang[`msl.lang`,title="View source file"] | nbs | Modelica | link:./langDefs/modelica.lang[`modelica.lang`,title="View source file"] | mo | Modula2 | link:./langDefs/mod2.lang[`mod2.lang`,title="View source file"] | def mod | Modula3 | link:./langDefs/mod3.lang[`mod3.lang`,title="View source file"] | i3 m3 -| MoonScript | link:./langDefs/moon.lang[`moon.lang`,title="View source file"] | +| MoonScript | link:./langDefs/moon.lang[`moon.lang`,title="View source file"] | | MS DOS Batch | link:./langDefs/bat.lang[`bat.lang`,title="View source file"] | cmd -| MSSQL | link:./langDefs/mssql.lang[`mssql.lang`,title="View source file"] | +| MSSQL | link:./langDefs/mssql.lang[`mssql.lang`,title="View source file"] | | Nasal | link:./langDefs/nasal.lang[`nasal.lang`,title="View source file"] | nas | Nemerle | link:./langDefs/nemerle.lang[`nemerle.lang`,title="View source file"] | n | NetRexx | link:./langDefs/netrexx.lang[`netrexx.lang`,title="View source file"] | nrx -| NeXT Byte Codes | link:./langDefs/nbc.lang[`nbc.lang`,title="View source file"] | -| Nginx configuration | link:./langDefs/nginx.lang[`nginx.lang`,title="View source file"] | -| Nice | link:./langDefs/nice.lang[`nice.lang`,title="View source file"] | -| Nim | link:./langDefs/nim.lang[`nim.lang`,title="View source file"] | +| NeXT Byte Codes | link:./langDefs/nbc.lang[`nbc.lang`,title="View source file"] | +| Nginx configuration | link:./langDefs/nginx.lang[`nginx.lang`,title="View source file"] | +| Nice | link:./langDefs/nice.lang[`nice.lang`,title="View source file"] | +| Nim | link:./langDefs/nim.lang[`nim.lang`,title="View source file"] | nimble nimrod nims +| Nix Expression Language | link:./langDefs/nix.lang[`nix.lang`,title="View source file"] | | Notation3 (N3), N-Triples, Turtle, SPARQL | link:./langDefs/n3.lang[`n3.lang`,title="View source file"] | nt ttl -| Not eXactly C | link:./langDefs/nxc.lang[`nxc.lang`,title="View source file"] | +| Not eXactly C | link:./langDefs/nxc.lang[`nxc.lang`,title="View source file"] | | NSIS | link:./langDefs/nsis.lang[`nsis.lang`,title="View source file"] | nsh nsi | Oberon | link:./langDefs/oberon.lang[`oberon.lang`,title="View source file"] | ooc -| Objective Caml | link:./langDefs/ocaml.lang[`ocaml.lang`,title="View source file"] | ml mli -| Objective C | link:./langDefs/objc.lang[`objc.lang`,title="View source file"] | -| Object Script | link:./langDefs/os.lang[`os.lang`,title="View source file"] | -| Octave | link:./langDefs/octave.lang[`octave.lang`,title="View source file"] | -| OpenObjectRexx | link:./langDefs/oorexx.lang[`oorexx.lang`,title="View source file"] | -| OpenSCAD | link:./langDefs/scad.lang[`scad.lang`,title="View source file"] | -| Oz | link:./langDefs/oz.lang[`oz.lang`,title="View source file"] | +| Objective Caml | link:./langDefs/ocaml.lang[`ocaml.lang`,title="View source file"] | eliom eliomi ml ml4 mli mll mly +| Objective C | link:./langDefs/objc.lang[`objc.lang`,title="View source file"] | +| Object Script | link:./langDefs/os.lang[`os.lang`,title="View source file"] | +| Octave | link:./langDefs/octave.lang[`octave.lang`,title="View source file"] | +| OpenObjectRexx | link:./langDefs/oorexx.lang[`oorexx.lang`,title="View source file"] | +| OpenSCAD | link:./langDefs/scad.lang[`scad.lang`,title="View source file"] | +| Oz | link:./langDefs/oz.lang[`oz.lang`,title="View source file"] | | Paradox | link:./langDefs/paradox.lang[`paradox.lang`,title="View source file"] | sc -| Pascal | link:./langDefs/pas.lang[`pas.lang`,title="View source file"] | -| PATROL | link:./langDefs/psl.lang[`psl.lang`,title="View source file"] | +| Pascal | link:./langDefs/pas.lang[`pas.lang`,title="View source file"] | +| PATROL | link:./langDefs/psl.lang[`psl.lang`,title="View source file"] | | Perl | link:./langDefs/perl.lang[`perl.lang`,title="View source file"] | cgi perl pl plex plx pm | PHP | link:./langDefs/php.lang[`php.lang`,title="View source file"] | php3 php4 php5 php6 php7 phps phpt | Pike | link:./langDefs/pike.lang[`pike.lang`,title="View source file"] | pmod | PL/1 | link:./langDefs/pl1.lang[`pl1.lang`,title="View source file"] | bdy ff fp fpp rpp sf sp spb spe spp sps wf wp wpb wpp wps | Plain text | link:./langDefs/txt.lang[`txt.lang`,title="View source file"] | text -| PL/Perl | link:./langDefs/plperl.lang[`plperl.lang`,title="View source file"] | -| PL/Python | link:./langDefs/plpython.lang[`plpython.lang`,title="View source file"] | -| PL/SQL | link:./langDefs/sql.lang[`sql.lang`,title="View source file"] | -| PL/Tcl | link:./langDefs/pltcl.lang[`pltcl.lang`,title="View source file"] | +| PL/Perl | link:./langDefs/plperl.lang[`plperl.lang`,title="View source file"] | +| PL/Python | link:./langDefs/plpython.lang[`plpython.lang`,title="View source file"] | +| PL/SQL | link:./langDefs/sql.lang[`sql.lang`,title="View source file"] | +| PL/Tcl | link:./langDefs/pltcl.lang[`pltcl.lang`,title="View source file"] | | Polygen | link:./langDefs/polygen.lang[`polygen.lang`,title="View source file"] | grm -| Pony | link:./langDefs/pony.lang[`pony.lang`,title="View source file"] | -| Portable Document Format | link:./langDefs/pdf.lang[`pdf.lang`,title="View source file"] | -| PostScript | link:./langDefs/ps.lang[`ps.lang`,title="View source file"] | -| PO translation | link:./langDefs/po.lang[`po.lang`,title="View source file"] | -| POV-Ray | link:./langDefs/pov.lang[`pov.lang`,title="View source file"] | -| PowerPC Assembler | link:./langDefs/s.lang[`s.lang`,title="View source file"] | +| Pony | link:./langDefs/pony.lang[`pony.lang`,title="View source file"] | +| Portable Document Format | link:./langDefs/pdf.lang[`pdf.lang`,title="View source file"] | +| PostScript | link:./langDefs/ps.lang[`ps.lang`,title="View source file"] | +| PO translation | link:./langDefs/po.lang[`po.lang`,title="View source file"] | +| POV-Ray | link:./langDefs/pov.lang[`pov.lang`,title="View source file"] | +| PowerPC Assembler | link:./langDefs/s.lang[`s.lang`,title="View source file"] | | Progress | link:./langDefs/progress.lang[`progress.lang`,title="View source file"] | p w | Prolog | link:./langDefs/pro.lang[`pro.lang`,title="View source file"] | pro | PureBASIC | link:./langDefs/purebasic.lang[`purebasic.lang`,title="View source file"] | pb pbf pbi -| Pure | link:./langDefs/pure.lang[`pure.lang`,title="View source file"] | -| PureScript | link:./langDefs/purescript.lang[`purescript.lang`,title="View source file"] | +| Pure | link:./langDefs/pure.lang[`pure.lang`,title="View source file"] | +| PureScript | link:./langDefs/purescript.lang[`purescript.lang`,title="View source file"] | purs | Pyrex | link:./langDefs/pyrex.lang[`pyrex.lang`,title="View source file"] | pyx | Python | link:./langDefs/python.lang[`python.lang`,title="View source file"] | cpy gyp gypi pxd pxi py py3 pyi pyw rpy sconstruct snakefile wscript -| QMake Project | link:./langDefs/qmake.lang[`qmake.lang`,title="View source file"] | -| QML | link:./langDefs/qml.lang[`qml.lang`,title="View source file"] | -| Qore | link:./langDefs/q.lang[`q.lang`,title="View source file"] | -| Qu | link:./langDefs/qu.lang[`qu.lang`,title="View source file"] | -| Rebol | link:./langDefs/rebol.lang[`rebol.lang`,title="View source file"] | -| Relax NG | link:./langDefs/rnc.lang[`rnc.lang`,title="View source file"] | -| reStructured Text | link:./langDefs/rst.lang[`rst.lang`,title="View source file"] | +| QMake Project | link:./langDefs/qmake.lang[`qmake.lang`,title="View source file"] | +| QML | link:./langDefs/qml.lang[`qml.lang`,title="View source file"] | +| Qore | link:./langDefs/q.lang[`q.lang`,title="View source file"] | +| Qu | link:./langDefs/qu.lang[`qu.lang`,title="View source file"] | +| Rebol | link:./langDefs/rebol.lang[`rebol.lang`,title="View source file"] | +| Rego | link:./langDefs/rego.lang[`rego.lang`,title="View source file"] | +| Relax NG | link:./langDefs/rnc.lang[`rnc.lang`,title="View source file"] | +| reStructured Text | link:./langDefs/rst.lang[`rst.lang`,title="View source file"] | | Rexx | link:./langDefs/rexx.lang[`rexx.lang`,title="View source file"] | rex rx the -| R | link:./langDefs/r.lang[`r.lang`,title="View source file"] | -| RPG | link:./langDefs/rpg.lang[`rpg.lang`,title="View source file"] | -| RPL Programming Language | link:./langDefs/rpl.lang[`rpl.lang`,title="View source file"] | -| RPM Spec | link:./langDefs/spec.lang[`spec.lang`,title="View source file"] | +| R | link:./langDefs/r.lang[`r.lang`,title="View source file"] | +| RPG | link:./langDefs/rpg.lang[`rpg.lang`,title="View source file"] | +| RPL Programming Language | link:./langDefs/rpl.lang[`rpl.lang`,title="View source file"] | +| RPM Spec | link:./langDefs/spec.lang[`spec.lang`,title="View source file"] | | Ruby | link:./langDefs/ruby.lang[`ruby.lang`,title="View source file"] | appfile appraisals berksfile brewfile capfile cheffile config.ru deliverfile fastfile fcgi gemfile gemspec guardfile irbrc jbuilder podfile podspec pp prawn rabl rake rakefile rantfile rb rbx rjs ruby scanfile simplecov snapfile thor thorfile vagrantfile -| Rust | link:./langDefs/rs.lang[`rs.lang`,title="View source file"] | -| SAS | link:./langDefs/sas.lang[`sas.lang`,title="View source file"] | -| Sass/SCSS | link:./langDefs/scss.lang[`scss.lang`,title="View source file"] | -| Scala | link:./langDefs/scala.lang[`scala.lang`,title="View source file"] | +| Rust | link:./langDefs/rust.lang[`rust.lang`,title="View source file"] | rs +| SAS | link:./langDefs/sas.lang[`sas.lang`,title="View source file"] | +| Sass/SCSS | link:./langDefs/scss.lang[`scss.lang`,title="View source file"] | +| Scala | link:./langDefs/scala.lang[`scala.lang`,title="View source file"] | | Scilab | link:./langDefs/scilab.lang[`scilab.lang`,title="View source file"] | sce sci -| Sequence Alignment Map (use with sam_seq.lua plug-in) | link:./langDefs/sam.lang[`sam.lang`,title="View source file"] | -| Slim (experimental) | link:./langDefs/slim.lang[`slim.lang`,title="View source file"] | +| Sequence Alignment Map (use with sam_seq.lua plug-in) | link:./langDefs/sam.lang[`sam.lang`,title="View source file"] | +| Slim (experimental) | link:./langDefs/slim.lang[`slim.lang`,title="View source file"] | | SMALL | link:./langDefs/small.lang[`small.lang`,title="View source file"] | sma | Smalltalk | link:./langDefs/smalltalk.lang[`smalltalk.lang`,title="View source file"] | gst sq st | SNMP | link:./langDefs/snmp.lang[`snmp.lang`,title="View source file"] | mib smi | SNOBOL | link:./langDefs/snobol.lang[`snobol.lang`,title="View source file"] | sno | Solidity | link:./langDefs/solidity.lang[`solidity.lang`,title="View source file"] | sol -| SPIN SQL | link:./langDefs/spn.lang[`spn.lang`,title="View source file"] | +| SPIN SQL | link:./langDefs/spn.lang[`spn.lang`,title="View source file"] | | Squirrel | link:./langDefs/squirrel.lang[`squirrel.lang`,title="View source file"] | nut -| Standard ML | link:./langDefs/sml.lang[`sml.lang`,title="View source file"] | -| Stylus | link:./langDefs/styl.lang[`styl.lang`,title="View source file"] | -| SuperX++ | link:./langDefs/xpp.lang[`xpp.lang`,title="View source file"] | -| SVG | link:./langDefs/svg.lang[`svg.lang`,title="View source file"] | -| Swift | link:./langDefs/swift.lang[`swift.lang`,title="View source file"] | -| Sybase SQL | link:./langDefs/sybase.lang[`sybase.lang`,title="View source file"] | +| Standard ML | link:./langDefs/sml.lang[`sml.lang`,title="View source file"] | +| Stylus | link:./langDefs/styl.lang[`styl.lang`,title="View source file"] | +| SuperX++ | link:./langDefs/xpp.lang[`xpp.lang`,title="View source file"] | +| SVG | link:./langDefs/svg.lang[`svg.lang`,title="View source file"] | +| Swift | link:./langDefs/swift.lang[`swift.lang`,title="View source file"] | +| Sybase SQL | link:./langDefs/sybase.lang[`sybase.lang`,title="View source file"] | | Tcl/Tk | link:./langDefs/tcl.lang[`tcl.lang`,title="View source file"] | itcl wish -| TCSH | link:./langDefs/tcsh.lang[`tcsh.lang`,title="View source file"] | -| Terraform | link:./langDefs/terraform.lang[`terraform.lang`,title="View source file"] | +| TCSH | link:./langDefs/tcsh.lang[`tcsh.lang`,title="View source file"] | +| Terraform | link:./langDefs/terraform.lang[`terraform.lang`,title="View source file"] | | TeX and LaTeX | link:./langDefs/tex.lang[`tex.lang`,title="View source file"] | cls sty -| TOML | link:./langDefs/toml.lang[`toml.lang`,title="View source file"] | -| Transact-SQL | link:./langDefs/tsql.lang[`tsql.lang`,title="View source file"] | -| TSX (TypeScript with React) | link:./langDefs/tsx.lang[`tsx.lang`,title="View source file"] | -| TTCN3 | link:./langDefs/ttcn3.lang[`ttcn3.lang`,title="View source file"] | -| TypeScript | link:./langDefs/ts.lang[`ts.lang`,title="View source file"] | -| UPC (and C, technically) | link:./langDefs/upc.lang[`upc.lang`,title="View source file"] | -| Vala | link:./langDefs/vala.lang[`vala.lang`,title="View source file"] | +| TOML | link:./langDefs/toml.lang[`toml.lang`,title="View source file"] | +| Transact-SQL | link:./langDefs/tsql.lang[`tsql.lang`,title="View source file"] | +| TSX (TypeScript with React) | link:./langDefs/tsx.lang[`tsx.lang`,title="View source file"] | +| TTCN3 | link:./langDefs/ttcn3.lang[`ttcn3.lang`,title="View source file"] | +| TypeScript | link:./langDefs/typescript.lang[`typescript.lang`,title="View source file"] | ts +| UPC (and C, technically) | link:./langDefs/upc.lang[`upc.lang`,title="View source file"] | +| Vala | link:./langDefs/vala.lang[`vala.lang`,title="View source file"] | | Verilog | link:./langDefs/verilog.lang[`verilog.lang`,title="View source file"] | v -| VHDL | link:./langDefs/vhd.lang[`vhd.lang`,title="View source file"] | +| VHDL | link:./langDefs/vhd.lang[`vhd.lang`,title="View source file"] | | vimscript | link:./langDefs/vimscript.lang[`vimscript.lang`,title="View source file"] | gvimrc vim vimrc | Visual Basic | link:./langDefs/vb.lang[`vb.lang`,title="View source file"] | bas basic bi vbs -| vue.js (beta) | link:./langDefs/vue.lang[`vue.lang`,title="View source file"] | -| Web Assembly Text | link:./langDefs/wat.lang[`wat.lang`,title="View source file"] | -| Whiley | link:./langDefs/whiley.lang[`whiley.lang`,title="View source file"] | -| Wren | link:./langDefs/wren.lang[`wren.lang`,title="View source file"] | -| XML | link:./langDefs/xml.lang[`xml.lang`,title="View source file"] | csproj dtd ecf ent glade hdr hub jnlp nrm opml resx rss sgm sgml tld vxml wml xsd xsl -| Yaiff | link:./langDefs/yaiff.lang[`yaiff.lang`,title="View source file"] | -| Yang | link:./langDefs/yang.lang[`yang.lang`,title="View source file"] | -| Zonnon | link:./langDefs/znn.lang[`znn.lang`,title="View source file"] | +| vue.js (beta) | link:./langDefs/vue.lang[`vue.lang`,title="View source file"] | +| Web Assembly Text | link:./langDefs/wat.lang[`wat.lang`,title="View source file"] | +| Whiley | link:./langDefs/whiley.lang[`whiley.lang`,title="View source file"] | +| Wren | link:./langDefs/wren.lang[`wren.lang`,title="View source file"] | +| XML | link:./langDefs/xml.lang[`xml.lang`,title="View source file"] | csproj dtd ecf ent glade graphml hdr hub jnlp nrm opml resx rng rss sgm sgml tld vxml wml xsd xsl +| Yaiff | link:./langDefs/yaiff.lang[`yaiff.lang`,title="View source file"] | +| Yang | link:./langDefs/yang.lang[`yang.lang`,title="View source file"] | +| Zig | link:./langDefs/zig.lang[`zig.lang`,title="View source file"] | +| Zonnon | link:./langDefs/znn.lang[`znn.lang`,title="View source file"] | |========================================== [NOTE] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/filetypes.conf new/highlight-v4.9/filetypes.conf --- old/highlight-v4.8/filetypes.conf 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/filetypes.conf 2023-10-18 14:46:12.000000000 +0200 @@ -41,7 +41,7 @@ { Lang="aspect", Extensions={"was", "wud"} }, { Lang="ballerina", Extensions={"bal"} }, { Lang="bat", Extensions={"cmd"} }, - { Lang="c", Extensions={"c++", "cpp", "cxx", "cc", "h", "hh", "hxx", "hpp", "cu", "inl", "ipp", "ino"} }, + { Lang="c", Extensions={"c++", "cpp", "cxx", "cc", "h", "hh", "hxx", "hpp", "cu", "inl", "ipp", "ino", "ixx", "cppm"} }, { Lang="cmake", Filenames={"CMakeLists.txt"} }, { Lang="charmm", Extensions={"inp"} }, { Lang="clojure", Extensions={"boot", "cl2", "clj", "cljscm", "cljx", "hic"} }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/gui_files/ext/fileopenfilter.conf new/highlight-v4.9/gui_files/ext/fileopenfilter.conf --- old/highlight-v4.8/gui_files/ext/fileopenfilter.conf 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/gui_files/ext/fileopenfilter.conf 2023-10-18 14:46:12.000000000 +0200 @@ -37,7 +37,8 @@ BNF (*.bnf) Boo (*.boo) Carbon (*.carbon) -C/C++ (*.cpp *.cc *.c *.C *.hpp *.h *.cu *.ino) +C/C++ (*.cpp *.cc *.c *.C *.hpp *.h *.cu *.ino *.ixx *.cppm) +Cpp2 (*.cpp2) C# (*.cs) Charmm (*.inp) CHILL (*.chl) @@ -65,12 +66,14 @@ EBNF (*.ebnf) Eiffel (*.e *.ecf *.se) Elixir (*.ex *.exs *.heex) +Elm (*.elm) EmacsOrgMode (*.org) ERB (*.erb) Erlang (*.hrl *.erl *.xrl *.yrl) Euphoria (*.ex *.exw *.exu *.ew *.eu) EXAPUNKS (*.exapunks *.exa) Express (*.exp) +Factor (*.factor) Fame (*.fame) FASM (*.asm *.inc) Felix (*.flx) Binary files old/highlight-v4.8/gui_files/l10n/highlight_ja_JP.qm and new/highlight-v4.9/gui_files/l10n/highlight_ja_JP.qm differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/langDefs/c.lang new/highlight-v4.9/langDefs/c.lang --- old/highlight-v4.8/langDefs/c.lang 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/langDefs/c.lang 2023-10-18 14:46:12.000000000 +0200 @@ -13,7 +13,7 @@ "reinterpret_cast", "static_cast", "this", "throw", "try", "catch", "using", "true", "false", "bitand", "and", "bitor", "or", "xor", "compl", "and_eq", "or_eq", "xor_eq", "not", "not_eq", "assert", "static_assert", "alignas","alignof","concept","consteval","constexpr","constinit","co_await","co_return","co_yield","decltype", - "noexcept","requires","thread_local", + "noexcept","requires","thread_local", "module", "import" } }, { Id=2, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/langDefs/ceylon.lang new/highlight-v4.9/langDefs/ceylon.lang --- old/highlight-v4.8/langDefs/ceylon.lang 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/langDefs/ceylon.lang 2023-10-18 14:46:12.000000000 +0200 @@ -47,6 +47,6 @@ Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\.|\:|\&|<|>|\!|\=|\/|\*|\%|\+|\-|\~|\||\?]] -Digits=[[ [\d\.\_]*\d+(?:[eE][\-\+]?\d+)?[kMGTPmunpf]*|#[[:alnum:]\_]+|\$[01_]+ ]] +Digits=[=[ [\d\.\_]*\d+(?:[eE][\-\+]?\d+)?[kMGTPmunpf]*|#[[:alnum:]\_]+|\$[01_]+ ]=] EnableIndentation=true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/langDefs/cpp2.lang new/highlight-v4.9/langDefs/cpp2.lang --- old/highlight-v4.8/langDefs/cpp2.lang 1970-01-01 01:00:00.000000000 +0100 +++ new/highlight-v4.9/langDefs/cpp2.lang 2023-10-18 14:46:12.000000000 +0200 @@ -0,0 +1,84 @@ + +Description="Cpp2" + +Categories = {"source"} + +Digits = [[ (?:0x|0X|0b)[0-9a-fA-F']+|\d*[\.]?\d+(?:[eE][\-\+]\d+)?[lLuU]* ]] + +Keywords={ + { Id=1, + List={ + "goto", "break", "return", "continue", "asm", "case", "default", "if", "else", "switch", "while", "for", "do", "sizeof", + "typeof", "stdcall", "cdecl", "const_cast", "delete", "dynamic_cast", "goto", "namespace", "new", "pascal", + "reinterpret_cast", "static_cast", "this", "throw", "try", "catch", "using", "true", "false", "bitand", "and", "bitor", "or", "xor", + "compl", "and_eq", "or_eq", "xor_eq", "not", "not_eq", "assert", "static_assert", + "alignas","alignof","concept","consteval","constexpr","constinit","co_await","co_return","co_yield","decltype", + "noexcept","requires","thread_local" + } + }, + { Id=2, + List= { + "int", "long", "short", "char", "void", "signed", "unsigned", "float", "double", "size_t", "wchar_t", + "ptrdiff_t", "sig_atomic_t", "fpos_t", "clock_t", "time_t", "va_list", "jmp_buf", "FILE", "DIR", "div_t", "ldiv_t", "static", + "mbstate_t", "wctrans_t", "wint_t", "wctype_t", "const", "bool", "complex", "struct", "union", "enum", + "int8_t", "int16_t", "int32_t", "int64_t", "uint8_t", "uint16_t", "uint32_t", "uint64_t", "int_least8_t", "int_least16_t", + "int_least32_t", "int_least64_t", "uint_least8_t", "uint_least16_t", "uint_least32_t", "uint_least64_t", + "int_fast8_t", "int_fast16_t", "int_fast32_t", "int_fast64_t", "uint_fast8_t", "uint_fast16_t", "uint_fast32_t", + "uint_fast64_t", "intptr_t", "uintptr_t", "intmax_t", "uintmax_t", "char8_t","char16_t","char32_t", + "in", "out", "copy", "move", "inout", "forward" + } + }, + { Id=4, + List= { + "typedef", "inline", "auto", "class", "explicit", "extern", "friend", "inline", "mutable", "operator", + "register", "template", "private", "protected", "public", "typeid", "virtual", "volatile", "constexpr", "nullptr", "decltype" + } + }, + { Id=5, + Regex=[[([\w\+\-\*\=]+)\s*\:]] + }, + { Id=4, + Regex=[[(\w+)\s*\(]] + }, + { Id=6, + Regex=[=[ \[\[[\w\:\,\s]+?\]\] ]=] + } +} + +Strings = { + Delimiter=[["|']], + RawPrefix="R", + Interpolation = [[ %\w ]], +} + +Comments = { + { Block=true, + Nested=false, + Delimiter = { [[\/\*]], [[\*\/]] } + }, + { + Block=false, + Delimiter = { [[//]] } + } +} + +IgnoreCase=false + +PreProcessor = { + Prefix=[[#]], + Continuation="\\", +} + +Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\.|\:|\&|<|>|\!|=|\/|\*|\%|\+|\-|\~|\||\^|\?]] + +EnableIndentation=false + +-- resolve issue with C++14 number separator syntax +function OnStateChange(oldState, newState, token) + + if token=="'" and oldState==HL_NUMBER and newState==HL_STRING then + return HL_NUMBER + end + + return newState +end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/langDefs/elm.lang new/highlight-v4.9/langDefs/elm.lang --- old/highlight-v4.8/langDefs/elm.lang 1970-01-01 01:00:00.000000000 +0100 +++ new/highlight-v4.9/langDefs/elm.lang 2023-10-18 14:46:12.000000000 +0200 @@ -0,0 +1,45 @@ +Description="Elm" + +Categories = {"source", "script"} + +Digits=[[ (?:0x|0X|0o|0O|0b|0B)[0-9a-fA-F\_]+|\d*[\.\_]?[\d\_]+(?:[eE][\-\+]\d+)?[lLuU]* ]] + +Keywords={ + { Id=1, + List={ "type", "alias", "port" , "if", "then", "else", "case", "of", "let", "in", + "infix", "left", "right", "non", "module", "import", "exposing", "as", "where", + "effect", "command", "subscription", "jsonTrue", "jsonFalse", "jsonNull" } + }, + { Id=2, + List={ "True", "False" } + }, + { Id=3, + List={ "String", "Int", "Float" } + }, + { Id=4, + Regex=[[([a-zA-Z]\w+)\s*\(]], + }, + -- attributes: + { Id=2, + Regex=[[\.([\w]+)]], + } +} + +Strings={ + Delimiter=[["""|"|']] +} + +IgnoreCase=false + +Comments = { + { Block=true, + Nested=true, + Delimiter = { [[\{\-]], [[\-\}]] } + }, + { + Block=false, + Delimiter = { [[--]] } + } +} + +Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\.|\:|\&|<|>|\!|\=|\/|\*|\%|\+|\-|\@|\||\^]] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/langDefs/factor.lang new/highlight-v4.9/langDefs/factor.lang --- old/highlight-v4.8/langDefs/factor.lang 1970-01-01 01:00:00.000000000 +0100 +++ new/highlight-v4.9/langDefs/factor.lang 2023-10-18 14:46:12.000000000 +0200 @@ -0,0 +1,179 @@ +Description="Factor" + +Categories = {"source"} + +Digits=[[ (?:0x|0X|0o|0O|0b|0B)[0-9a-fA-F\_]+|\d*[\.\_]?[\d\_]+(?:[eE][\-\+]\d+)?[lLuU]* ]] + +Identifiers=[[ [a-zA-Z_\d][\w\-\d\*<>\?\(\)]* ]] + +Keywords={ + { Id=1, + List={ '-rot', '2bi', '2bi@', '2bi*', '2curry', '2dip', '2drop', '2dup', '2keep', '2nip', + '2over', '2tri', '2tri@', '2tri*', '3bi', '3curry', '3dip', '3drop', '3dup', '3keep', + '3tri', '4dip', '4drop', '4dup', '4keep', '<wrapper>', '=', '>boolean', 'clone', + '?', '?execute', '?if', 'and', 'assert', 'assert=', 'assert?', 'bi', 'bi-curry', + 'bi-curry@', 'bi-curry*', 'bi@', 'bi*', 'boa', 'boolean', 'boolean?', 'both?', + 'build', 'call', 'callstack', 'callstack>array', 'callstack?', 'clear', '(clone)', + 'compose', 'compose?', 'curry', 'curry?', 'datastack', 'die', 'dip', 'do', 'drop', + 'dup', 'dupd', 'either?', 'eq?', 'equal?', 'execute', 'hashcode', 'hashcode*', + 'identity-hashcode', 'identity-tuple', 'identity-tuple?', 'if', 'if*', + 'keep', 'loop', 'most', 'new', 'nip', 'not', 'null', 'object', 'or', 'over', + 'pick', 'prepose', 'retainstack', 'rot', 'same?', 'swap', 'swapd', 'throw', + 'tri', 'tri-curry', 'tri-curry@', 'tri-curry*', 'tri@', 'tri*', 'tuple', + 'tuple?', 'unless', 'unless*', 'until', 'when', 'when*', 'while', 'with', + 'wrapper', 'wrapper?', 'xor', + '2cache', '<enum>', '>alist', '?at', '?of', 'assoc', 'assoc-all?', + 'assoc-any?', 'assoc-clone-like', 'assoc-combine', 'assoc-diff', + 'assoc-diff!', 'assoc-differ', 'assoc-each', 'assoc-empty?', + 'assoc-filter', 'assoc-filter!', 'assoc-filter-as', 'assoc-find', + 'assoc-hashcode', 'assoc-intersect', 'assoc-like', 'assoc-map', + 'assoc-map-as', 'assoc-partition', 'assoc-refine', 'assoc-size', + 'assoc-stack', 'assoc-subset?', 'assoc-union', 'assoc-union!', + 'assoc=', 'assoc>map', 'assoc?', 'at', 'at+', 'at*', 'cache', 'change-at', + 'clear-assoc', 'delete-at', 'delete-at*', 'enum', 'enum?', 'extract-keys', + 'inc-at', 'key?', 'keys', 'map>assoc', 'maybe-set-at', 'new-assoc', 'of', + 'push-at', 'rename-at', 'set-at', 'sift-keys', 'sift-values', 'substitute', + 'unzip', 'value-at', 'value-at*', 'value?', 'values', 'zip', + '2cleave', '2cleave>quot', '3cleave', '3cleave>quot', '4cleave', + '4cleave>quot', 'alist>quot', 'call-effect', 'case', 'case-find', + 'case>quot', 'cleave', 'cleave>quot', 'cond', 'cond>quot', 'deep-spread>quot', + 'execute-effect', 'linear-case-quot', 'no-case', 'no-case?', 'no-cond', + 'no-cond?', 'recursive-hashcode', 'shallow-spread>quot', 'spread', + 'to-fixed-point', 'wrong-values', 'wrong-values?', + '>bignum', '>fixnum', '>float', '>integer', '(all-integers?)', + '(each-integer)', '(find-integer)', '*', '+', '?1+', + 'abs', 'align', 'all-integers?', 'bignum', 'bignum?', 'bit?', 'bitand', + 'bitnot', 'bitor', 'bits>double', 'bits>float', 'bitxor', 'complex', + 'complex?', 'denominator', 'double>bits', 'each-integer', 'even?', + 'find-integer', 'find-last-integer', 'fixnum', 'fixnum?', 'float', + 'float>bits', 'float?', 'fp-bitwise=', 'fp-infinity?', 'fp-nan-payload', + 'fp-nan?', 'fp-qnan?', 'fp-sign', 'fp-snan?', 'fp-special?', + 'if-zero', 'imaginary-part', 'integer', 'integer>fixnum', + 'integer>fixnum-strict', 'integer?', 'log2', 'log2-expects-positive', + 'log2-expects-positive?', 'mod', 'neg', 'neg?', 'next-float', + 'next-power-of-2', 'number', 'number=', 'number?', 'numerator', 'odd?', + 'out-of-fixnum-range', 'out-of-fixnum-range?', 'power-of-2?', + 'prev-float', 'ratio', 'ratio?', 'rational', 'rational?', 'real', + 'real-part', 'real?', 'recip', 'rem', 'sgn', 'shift', 'sq', 'times', + 'u<', 'u<=', 'u>', 'u>=', 'unless-zero', 'unordered?', 'when-zero', + 'zero?', + '1sequence', '2all?', '2each', '2map', '2map-as', '2map-reduce', '2reduce', + '2selector', '2sequence', '3append', '3append-as', '3each', '3map', '3map-as', + '3sequence', '4sequence', '<repetition>', '<reversed>', '<slice>', '?first', + '?last', '?nth', '?second', '?set-nth', 'accumulate', 'accumulate!', + 'accumulate-as', 'all?', 'any?', 'append', 'append!', 'append-as', + 'assert-sequence', 'assert-sequence=', 'assert-sequence?', + 'binary-reduce', 'bounds-check', 'bounds-check?', 'bounds-error', + 'bounds-error?', 'but-last', 'but-last-slice', 'cartesian-each', + 'cartesian-map', 'cartesian-product', 'change-nth', 'check-slice', + 'check-slice-error', 'clone-like', 'collapse-slice', 'collector', + 'collector-for', 'concat', 'concat-as', 'copy', 'count', 'cut', 'cut-slice', + 'cut*', 'delete-all', 'delete-slice', 'drop-prefix', 'each', 'each-from', + 'each-index', 'empty?', 'exchange', 'filter', 'filter!', 'filter-as', 'find', + 'find-from', 'find-index', 'find-index-from', 'find-last', 'find-last-from', + 'first', 'first2', 'first3', 'first4', 'flip', 'follow', 'fourth', 'glue', 'halves', + 'harvest', 'head', 'head-slice', 'head-slice*', 'head*', 'head?', + 'if-empty', 'immutable', 'immutable-sequence', 'immutable-sequence?', + 'immutable?', 'index', 'index-from', 'indices', 'infimum', 'infimum-by', + 'insert-nth', 'interleave', 'iota', 'iota-tuple', 'iota-tuple?', 'join', + 'join-as', 'last', 'last-index', 'last-index-from', 'length', 'lengthen', + 'like', 'longer', 'longer?', 'longest', 'map', 'map!', 'map-as', 'map-find', + 'map-find-last', 'map-index', 'map-integers', 'map-reduce', 'map-sum', + 'max-length', 'member-eq?', 'member?', 'midpoint@', 'min-length', + 'mismatch', 'move', 'new-like', 'new-resizable', 'new-sequence', + 'non-negative-integer-expected', 'non-negative-integer-expected?', + 'nth', 'nths', 'pad-head', 'pad-tail', 'padding', 'partition', 'pop', 'pop*', + 'prefix', 'prepend', 'prepend-as', 'produce', 'produce-as', 'product', 'push', + 'push-all', 'push-either', 'push-if', 'reduce', 'reduce-index', 'remove', + 'remove!', 'remove-eq', 'remove-eq!', 'remove-nth', 'remove-nth!', 'repetition', + 'repetition?', 'replace-slice', 'replicate', 'replicate-as', 'rest', + 'rest-slice', 'reverse', 'reverse!', 'reversed', 'reversed?', 'second', + 'selector', 'selector-for', 'sequence', 'sequence-hashcode', 'sequence=', + 'sequence?', 'set-first', 'set-fourth', 'set-last', 'set-length', 'set-nth', + 'set-second', 'set-third', 'short', 'shorten', 'shorter', 'shorter?', + 'shortest', 'sift', 'slice', 'slice-error', 'slice-error?', 'slice?', + 'snip', 'snip-slice', 'start', 'start*', 'subseq', 'subseq?', 'suffix', + 'suffix!', 'sum', 'sum-lengths', 'supremum', 'supremum-by', 'surround', 'tail', + 'tail-slice', 'tail-slice*', 'tail*', 'tail?', 'third', 'trim', + 'trim-head', 'trim-head-slice', 'trim-slice', 'trim-tail', 'trim-tail-slice', + 'unclip', 'unclip-last', 'unclip-last-slice', 'unclip-slice', 'unless-empty', + 'virtual-exemplar', 'virtual-sequence', 'virtual-sequence?', 'virtual@', + 'when-empty', + '+@', 'change', 'change-global', 'counter', 'dec', 'get', 'get-global', + 'global', 'inc', 'init-namespaces', 'initialize', 'is-global', 'make-assoc', + 'namespace', 'namestack', 'off', 'on', 'set', 'set-global', 'set-namestack', + 'toggle', 'with-global', 'with-scope', 'with-variable', 'with-variables', + '1array', '2array', '3array', '4array', '<array>', '>array', 'array', + 'array?', 'pair', 'pair?', 'resize-array', + '(each-stream-block-slice)', '(each-stream-block)', + '(stream-contents-by-block)', '(stream-contents-by-element)', + '(stream-contents-by-length-or-block)', + '(stream-contents-by-length)', '+byte+', '+character+', + 'bad-seek-type', 'bad-seek-type?', 'bl', 'contents', 'each-block', + 'each-block-size', 'each-block-slice', 'each-line', 'each-morsel', + 'each-stream-block', 'each-stream-block-slice', 'each-stream-line', + 'error-stream', 'flush', 'input-stream', 'input-stream?', + 'invalid-read-buffer', 'invalid-read-buffer?', 'lines', 'nl', + 'output-stream', 'output-stream?', 'print', 'read', 'read-into', + 'read-partial', 'read-partial-into', 'read-until', 'read1', 'readln', + 'seek-absolute', 'seek-absolute?', 'seek-end', 'seek-end?', + 'seek-input', 'seek-output', 'seek-relative', 'seek-relative?', + 'stream-bl', 'stream-contents', 'stream-contents*', 'stream-copy', + 'stream-copy*', 'stream-element-type', 'stream-flush', + 'stream-length', 'stream-lines', 'stream-nl', 'stream-print', + 'stream-read', 'stream-read-into', 'stream-read-partial', + 'stream-read-partial-into', 'stream-read-partial-unsafe', + 'stream-read-unsafe', 'stream-read-until', 'stream-read1', + 'stream-readln', 'stream-seek', 'stream-seekable?', 'stream-tell', + 'stream-write', 'stream-write1', 'tell-input', 'tell-output', + 'with-error-stream', 'with-error-stream*', 'with-error>output', + 'with-input-output+error-streams', + 'with-input-output+error-streams*', 'with-input-stream', + 'with-input-stream*', 'with-output-stream', 'with-output-stream*', + 'with-output>error', 'with-output+error-stream', + 'with-output+error-stream*', 'with-streams', 'with-streams*', + 'write', 'write1', + '1string', '<string>', '>string', 'resize-string', 'string', + 'string?', + '1vector', '<vector>', '>vector', '?push', 'vector', 'vector?', + '<condition>', '<continuation>', '<restart>', 'attempt-all', + 'attempt-all-error', 'attempt-all-error?', 'callback-error-hook', + 'callcc0', 'callcc1', 'cleanup', 'compute-restarts', 'condition', + 'condition?', 'continuation', 'continuation?', 'continue', + 'continue-restart', 'continue-with', 'current-continuation', + 'error', 'error-continuation', 'error-in-thread', 'error-thread', + 'ifcc', 'ignore-errors', 'in-callback?', 'original-error', 'recover', + 'restart', 'restart?', 'restarts', 'rethrow', 'rethrow-restarts', + 'return', 'return-continuation', 'thread-error-hook', 'throw-continue', + 'throw-restarts', 'with-datastack', 'with-return' } + }, + { Id=2, + List={ "t", "f" } + }, + { Id=4, + Regex=[[\:\s+([\w-]+)?\s]], + }, + { Id=5, + Regex=[[^([\w-]+?)\:\s+]], + }, + +} + +Strings={ + Delimiter=[["]] +} + +IgnoreCase=false + +Comments = { + { Block=true, + Nested=false, + Delimiter = { [[\/\*]], [[\*\/]] } + }, + { + Block=false, + Delimiter = { [[\!]] } + } +} + +Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\.|\:|\&|<|>|\!|\=|\/|\*|\%|\+|\-|\@|\||\^]] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/langDefs/rst.lang new/highlight-v4.9/langDefs/rst.lang --- old/highlight-v4.8/langDefs/rst.lang 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/langDefs/rst.lang 2023-10-18 14:46:12.000000000 +0200 @@ -32,7 +32,7 @@ Regex=[[ ^(\:.*?:|^\/\w|^\-{1,2}[\S]+) ]], }, { Id=5, - Regex=[[ (\[[\w#\*]+?\])? ]], + Regex=[=[ (\[[\w#\*]+?\])? ]=], }, --references { Id=5, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/cli/main.cpp new/highlight-v4.9/src/cli/main.cpp --- old/highlight-v4.8/src/cli/main.cpp 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/cli/main.cpp 2023-10-18 14:46:12.000000000 +0200 @@ -32,6 +32,7 @@ #include <memory> #include <algorithm> #include <Diluculum/LuaState.hpp> +#include <astyle/astyle.h> #include "main.h" #include "datadir.h" @@ -48,7 +49,7 @@ << "\n Copyright (C) 2002-2023 Andre Simon <a dot simon at mailbox.org>" << "\n\n Argparser class" << "\n Copyright (C) 2006-2008 Antonio Diaz Diaz <ant_diaz at teleline.es>" - << "\n\n Artistic Style Classes (3.4.6)" + << "\n\n Artistic Style Classes (" << ASTYLE_VERSION << ")" << "\n Copyright (C) 1998-2023 The Artistic Style Authors" << "\n\n Diluculum Lua wrapper (1.0)" << "\n Copyright (C) 2005-2013 by Leandro Motta Barros" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/core/Diluculum/InternalUtils.cpp new/highlight-v4.9/src/core/Diluculum/InternalUtils.cpp --- old/highlight-v4.8/src/core/Diluculum/InternalUtils.cpp 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/core/Diluculum/InternalUtils.cpp 2023-10-18 14:46:12.000000000 +0200 @@ -28,6 +28,8 @@ #include "InternalUtils.hpp" #include <Diluculum/LuaUtils.hpp> #include <cstring> +#include <boost/scoped_array.hpp> + namespace Diluculum { @@ -110,7 +112,7 @@ size_t newSize = f->getSize() + size; - std::unique_ptr<char> buff (new char[newSize]); + boost::scoped_array<char> buff (new char[newSize]); memcpy (buff.get(), f->getData(), f->getSize()); memcpy (buff.get() + f->getSize(), data, size); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/core/astyle/ASBeautifier.cpp new/highlight-v4.9/src/core/astyle/ASBeautifier.cpp --- old/highlight-v4.8/src/core/astyle/ASBeautifier.cpp 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/core/astyle/ASBeautifier.cpp 2023-10-18 14:46:12.000000000 +0200 @@ -1389,7 +1389,7 @@ // this is not done for an in-statement array if (continuationIndentCount > maxContinuationIndent && !(prevNonLegalCh == '=' && currentNonLegalCh == '{')) - continuationIndentCount = indentLength * 2 + spaceIndentCount_; + continuationIndentCount = indentLength /* * 2*/ + spaceIndentCount_; // GH16 if (!continuationIndentStack->empty() && continuationIndentCount < continuationIndentStack->back()) @@ -2466,6 +2466,34 @@ return -1; } +/* chatgpt + +int ASBeautifier::findObjCColonAlignment(const std::string& line) const +{ + bool haveTernary = false; + for (char c : line) + { + if (c == ':' || c == '?') + { + if (c == '?') + { + haveTernary = true; + continue; + } + + if (haveTernary) + { + haveTernary = false; + continue; + } + + return &c - line.c_str(); // Calculate the index of the found character + } + } + return -1; +} +*/ + /** * Compute the spaceIndentCount necessary to align the current line colon * with the colon position in the argument. @@ -2517,7 +2545,8 @@ size_t keyPos = line.find_first_not_of(" \t", objectEnd + 1); if (keyPos == std::string::npos) return 0; - return keyPos - firstText; + + return static_cast<int>(keyPos - firstText); // Cast to int for return value } /** @@ -2817,7 +2846,9 @@ prevNonSpaceCh = currentNonSpaceCh; currentNonSpaceCh = ch; - if (!isLegalNameChar(ch) && ch != ',' && ch != ';') + + // #SF 97 + if (!isLegalNameChar(ch) /*&& ch != ',' && ch != ';'*/) { prevNonLegalCh = currentNonLegalCh; currentNonLegalCh = ch; @@ -2895,7 +2926,8 @@ && prevNonSpaceCh != ']' && prevNonSpaceCh != ')' && prevNonSpaceCh != '*' // GH #11 - && line.find(AS_AUTO, 0 ) == std::string::npos) + //&& line.find(AS_AUTO, 0 ) == std::string::npos + ) { lambdaIndicator = true; } @@ -3325,6 +3357,8 @@ if (ch == '?') isInQuestion = true; + + // special handling of colons XXX 533 if (ch == ':') { @@ -3421,11 +3455,11 @@ } } - if ((ch == ';' || (parenDepth > 0 && ch == ',')) && !continuationIndentStackSizeStack->empty()) + if ((ch == ';' || (parenDepth > 0 && ch == ',')) && !continuationIndentStackSizeStack->empty()){ while ((int) continuationIndentStackSizeStack->back() + (parenDepth > 0 ? 1 : 0) < (int) continuationIndentStack->size()) continuationIndentStack->pop_back(); - + } else if (ch == ',' && (isInEnum || isInStruct) && isNonInStatementArray && !continuationIndentStack->empty()) continuationIndentStack->pop_back(); @@ -3812,14 +3846,15 @@ if (foundNonAssignmentOp->length() > 1) i += foundNonAssignmentOp->length() - 1; - // For C++ input/output, operator<< and >> should be + // For C++ input/output, operator<<, >> and . method calls should be // aligned, if we are not in a statement already and // also not in the "operator<<(...)" header line if (!isInOperator && continuationIndentStack->empty() && isCStyle() && (foundNonAssignmentOp == &AS_GR_GR - || foundNonAssignmentOp == &AS_LS_LS)) + || foundNonAssignmentOp == &AS_LS_LS + || (foundNonAssignmentOp == &AS_DOT && line.find(AS_OPEN_PAREN, i) != std::string::npos))) { // this will be true if the line begins with the operator if (i < foundNonAssignmentOp->length() && spaceIndentCount == 0) @@ -3864,6 +3899,11 @@ { if (i == 0 && spaceIndentCount == 0) spaceIndentCount += indentLength; + + // #SF 97 + if (prevNonLegalCh == '=' && currentNonLegalCh == '=') + spaceIndentCount = 0; + registerContinuationIndent(line, i, spaceIndentCount, tabIncrementIn, 0, false); isContinuation = true; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/core/astyle/ASFormatter.cpp new/highlight-v4.9/src/core/astyle/ASFormatter.cpp --- old/highlight-v4.8/src/core/astyle/ASFormatter.cpp 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/core/astyle/ASFormatter.cpp 2023-10-18 14:46:12.000000000 +0200 @@ -11,6 +11,7 @@ #include <algorithm> #include <fstream> +#include <set> //----------------------------------------------------------------------------- // astyle namespace @@ -47,6 +48,7 @@ shouldPadOperators = false; shouldPadParensOutside = false; shouldPadFirstParen = false; + shouldPadEmptyParens = false; shouldPadParensInside = false; shouldPadHeader = false; shouldStripCommentPrefix = false; @@ -854,7 +856,9 @@ } else { - isInLineBreak = true; + // GH16 only break if header is present + if (currentHeader) + isInLineBreak = true; } } @@ -1039,7 +1043,6 @@ squareBracketCount = 0; objCColonAlign = 0; } - } // GH16 break @@ -1052,6 +1055,8 @@ } } + + // handle braces if (currentChar == '{' || currentChar == '}') { @@ -1177,6 +1182,18 @@ continue; } + // #126 + if ( currentChar == '*' && shouldPadOperators && + ( currentHeader == &AS_IF || currentHeader == &AS_WHILE || currentHeader == &AS_DO || currentHeader == &AS_FOR) + && ( previousChar == ')' || std::isalpha(previousChar) ) + && !isOperatorPaddingDisabled() ) { + appendSpacePad(); + appendOperator(AS_MULT); + goForward(0); + appendSpaceAfter(); + continue; + } + if ((((previousCommandChar == '{' && isPreviousBraceBlockRelated) || ((previousCommandChar == '}' && !isImmediatelyPostEmptyBlock @@ -1475,7 +1492,7 @@ if (previousNonWSChar == '}' || currentChar == ';') { - if (currentChar == ';') + if (currentChar == ';' && !isInAsmBlock) { squareBracketCount = 0; //assert(methodBreakCharNum == std::string::npos); // comment out @@ -2258,6 +2275,19 @@ } /** + * set padding mode for empty parentheses. + * options: + * true padding will be applied + * false no padding (default) + * + * @param state the padding mode. + */ +void ASFormatter::setEmptyParensPaddingMode(bool state) +{ + shouldPadEmptyParens = state; +} + +/** * set header padding mode. * options: * true headers will be padded with spaces around them. @@ -3136,6 +3166,7 @@ returnVal = (BraceType)(ARRAY_TYPE | ENUM_TYPE); } else if (isSharpStyle() && + !isOneLineBlockReached(currentLine, charNum) && (currentHeader == &AS_IF || currentHeader == &AS_WHILE || currentHeader == &AS_USING || currentHeader == &AS_WHILE || currentHeader == &AS_FOR || currentHeader == &AS_FOREACH) ) { // GH16 @@ -3415,14 +3446,11 @@ } // checks on operators in parens with following '(' + std::set<char> disallowedChars = {',', '(', '!', '&', '*', '|'}; + if (parenStack->back() > 0 && nextChar == '(' - && previousNonWSChar != ',' - && previousNonWSChar != '(' - && previousNonWSChar != '!' - && previousNonWSChar != '&' - && previousNonWSChar != '*' - && previousNonWSChar != '|') + && disallowedChars.find(previousNonWSChar) == disallowedChars.end()) return false; if (nextChar == '-' @@ -3474,13 +3502,10 @@ return false; } - if (previousNonWSChar == '=' + std::set<char> allowedChars = {'=', '.', '{', '>', '<', '?'}; + + if ( allowedChars.find(previousNonWSChar) != allowedChars.end() || (previousNonWSChar == ',' && currentChar == '&') // #537, #552 - || previousNonWSChar == '.' - || previousNonWSChar == '{' - || previousNonWSChar == '>' - || previousNonWSChar == '<' - || previousNonWSChar == '?' || isCharImmediatelyPostLineComment || isCharImmediatelyPostComment || isCharImmediatelyPostReturn) @@ -4170,6 +4195,8 @@ assert(newOperator != nullptr); char nextNonWSChar = ASBase::peekNextChar(currentLine, charNum); + std::set<char> allowedChars = {'(', '[', '=', ',', ':', '{'}; + bool shouldPad = (newOperator != &AS_SCOPE_RESOLUTION && newOperator != &AS_PLUS_PLUS && newOperator != &AS_MINUS_MINUS @@ -4183,12 +4210,7 @@ && !(newOperator == &AS_PLUS && isInExponent()) && !(newOperator == &AS_GR && previousChar == '-') //https://sourceforge.net/p/astyle/bugs/544/ && !((newOperator == &AS_PLUS || newOperator == &AS_MINUS) // check for unary plus or minus - && (previousNonWSChar == '(' - || previousNonWSChar == '[' - || previousNonWSChar == '=' - || previousNonWSChar == ',' - || previousNonWSChar == ':' - || previousNonWSChar == '{')) + && (allowedChars.find(previousNonWSChar) != allowedChars.end())) && !(newOperator == &AS_MULT && (previousNonWSChar == '.' || previousNonWSChar == '>')) // check for -> @@ -4791,11 +4813,12 @@ // pad open paren outside char peekedCharOutside = peekNextChar(); - if (shouldPadFirstParen && previousChar != openDelim && peekedCharOutside != closeDelim) + if (shouldPadFirstParen && ( (previousChar != openDelim && peekedCharOutside != closeDelim) || shouldPadEmptyParens ) ) appendSpacePad(); else if (shouldPadParensOutside) { - if (!(currentChar == openDelim && peekedCharOutside == closeDelim)) + // GH19 + if (!(currentChar == openDelim && peekedCharOutside == closeDelim) || shouldPadEmptyParens) appendSpacePad(); } @@ -5268,8 +5291,12 @@ && nextText.substr(0, 5) != "break") isAppendPostBlockEmptyLineRequested = true; } - else - isAppendPostBlockEmptyLineRequested = true; + else { + // GH18 + isAppendPostBlockEmptyLineRequested = !(shouldBreakBlocks && shouldAttachClosingWhile) + || currentHeader != &AS_DO; + } + } } @@ -6556,7 +6583,7 @@ if (firstBrace != std::string::npos) previousLineIsOneLineBlock = isOneLineBlockReached(formattedLine, firstBrace); if (!previousLineIsEmpty - && previousLineIsOneLineBlock == 0) + && previousLineIsOneLineBlock == 0) { isInLineBreak = false; appendSpacePad(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/core/astyle/ASResource.cpp new/highlight-v4.9/src/core/astyle/ASResource.cpp --- old/highlight-v4.8/src/core/astyle/ASResource.cpp 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/core/astyle/ASResource.cpp 2023-10-18 14:46:12.000000000 +0200 @@ -8,6 +8,7 @@ //----------------------------------------------------------------------------- #include "astyle/astyle.h" + #include <algorithm> //----------------------------------------------------------------------------- @@ -159,6 +160,7 @@ const std::string ASResource::AS_QUESTION = std::string("?"); const std::string ASResource::AS_COLON = std::string(":"); const std::string ASResource::AS_COMMA = std::string(","); +const std::string ASResource::AS_DOT = std::string("."); const std::string ASResource::AS_SEMICOLON = std::string(";"); @@ -314,8 +316,6 @@ void ASResource::buildIndentableHeaders(std::vector<const std::string*>* indentableHeaders) { indentableHeaders->emplace_back(&AS_RETURN); - -// sort(indentableHeaders->begin(), indentableHeaders->end(), sortOnName); } /** @@ -357,7 +357,7 @@ */ void ASResource::buildNonAssignmentOperators(std::vector<const std::string*>* nonAssignmentOperators) { - const size_t elements = 15; + const size_t elements = 16; nonAssignmentOperators->reserve(elements); nonAssignmentOperators->emplace_back(&AS_EQUAL); @@ -374,6 +374,7 @@ nonAssignmentOperators->emplace_back(&AS_AND); nonAssignmentOperators->emplace_back(&AS_OR); nonAssignmentOperators->emplace_back(&AS_LAMBDA); + nonAssignmentOperators->emplace_back(&AS_DOT); assert(nonAssignmentOperators->size() < elements); sort(nonAssignmentOperators->begin(), nonAssignmentOperators->end(), sortOnLength); @@ -663,7 +664,7 @@ if ((header == &AS_GET || header == &AS_SET || header == &AS_DEFAULT) - && (peekChar == ';' || peekChar == '(' || peekChar == '=')) + && (peekChar == '.' || peekChar == ';' || peekChar == '(' || peekChar == '=')) break; return header; } @@ -673,7 +674,6 @@ // check if a specific line position contains a keyword. bool ASBase::findKeyword(const std::string& line, int i, const std::string& keyword) const { - //std::cerr << "findKeyword "<< i << " "<< line << " -< "<< keyword << "\n"; assert(isCharPotentialHeader(line, i)); // check the word const size_t keywordLength = keyword.length(); @@ -724,12 +724,14 @@ // index must point to the beginning of the word std::string ASBase::getCurrentWord(const std::string& line, size_t index) const { - assert(isCharPotentialHeader(line, index)); + //assert(isCharPotentialHeader(line, index)); size_t lineLength = line.length(); size_t i; for (i = index; i < lineLength; i++) { - if (!isLegalNameChar(line[i])) + if (!isLegalNameChar(line[i]) + || ( (isCStyle() || isJavaStyle()) && i > index && line[i]=='.') + ) break; } return line.substr(index, i - index); @@ -743,8 +745,8 @@ if ((unsigned char) ch > 127) return false; return (isalnum((unsigned char) ch) - || (!isSharpStyle() && ch == '.') - || ch == '_' + || ch == '_' + || (!isSharpStyle() && ch == '.' ) || (isJavaStyle() && ch == '$') || (isSharpStyle() && ch == '@')); // may be used as a prefix } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/core/platform_fs.cpp new/highlight-v4.9/src/core/platform_fs.cpp --- old/highlight-v4.8/src/core/platform_fs.cpp 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/core/platform_fs.cpp 2023-10-18 14:46:12.000000000 +0200 @@ -41,6 +41,20 @@ #include <iostream> #include <errno.h> +#ifdef _WIN32 + +#include <windows.h> + +#else + +#include <unistd.h> +#include <sys/types.h> +#include <pwd.h> +#include <string.h> + +#endif + + using std::string; using std::vector; @@ -48,7 +62,6 @@ { #ifdef _WIN32 -#include <windows.h> const char pathSeparator = '\\'; #ifndef QT @@ -88,10 +101,6 @@ } #else -#include <unistd.h> -#include <sys/types.h> -#include <pwd.h> -#include <string.h> const char pathSeparator = '/'; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/include/Diluculum/LuaUserData.hpp new/highlight-v4.9/src/include/Diluculum/LuaUserData.hpp --- old/highlight-v4.8/src/include/Diluculum/LuaUserData.hpp 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/include/Diluculum/LuaUserData.hpp 2023-10-18 14:46:12.000000000 +0200 @@ -28,7 +28,10 @@ #define _DILUCULUM_LUA_USER_DATA_HPP_ #include <lua.hpp> -#include <memory> + +//https://stackoverflow.com/questions/31135178/c-array-of-char-using-unique-ptr +#include <boost/scoped_array.hpp> + #include <Diluculum/Types.hpp> @@ -110,7 +113,7 @@ size_t size_; /// A (smart) pointer to the data owned by this \c LuaUserData. - std::unique_ptr<char> data_; + boost::scoped_array<char> data_; }; } // namespace Diluculum diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/include/astyle/astyle.h new/highlight-v4.9/src/include/astyle/astyle.h --- old/highlight-v4.8/src/include/astyle/astyle.h 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/include/astyle/astyle.h 2023-10-18 14:46:12.000000000 +0200 @@ -52,6 +52,8 @@ #pragma clang diagnostic ignored "-Wshorten-64-to-32" #endif +#define ASTYLE_VERSION "3.4.9" + //----------------------------------------------------------------------------- // astyle namespace //----------------------------------------------------------------------------- @@ -277,7 +279,7 @@ static const std::string AS_SCOPE_RESOLUTION; static const std::string AS_PLUS, AS_MINUS, AS_MULT, AS_DIV, AS_MOD, AS_GR, AS_LS; static const std::string AS_NOT, AS_BIT_XOR, AS_BIT_OR, AS_BIT_AND, AS_BIT_NOT; - static const std::string AS_QUESTION, AS_COLON, AS_SEMICOLON, AS_COMMA; + static const std::string AS_QUESTION, AS_COLON, AS_SEMICOLON, AS_COMMA, AS_DOT; static const std::string AS_ASM, AS__ASM__, AS_MS_ASM, AS_MS__ASM; static const std::string AS_QFOREACH, AS_QFOREVER, AS_FOREVER; static const std::string AS_FOREACH, AS_LOCK, AS_UNSAFE, AS_FIXED; @@ -720,6 +722,9 @@ void setOperatorPaddingMode(bool state); void setParensOutsidePaddingMode(bool state); void setParensFirstPaddingMode(bool state); + + void setEmptyParensPaddingMode(bool state); + void setParensInsidePaddingMode(bool state); void setParensHeaderPaddingMode(bool state); void setParensUnPaddingMode(bool state); @@ -940,6 +945,8 @@ bool shouldPadOperators; bool shouldPadParensOutside; bool shouldPadFirstParen; + + bool shouldPadEmptyParens; bool shouldPadParensInside; bool shouldPadHeader; bool shouldStripCommentPrefix; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/highlight-v4.8/src/include/version.h new/highlight-v4.9/src/include/version.h --- old/highlight-v4.8/src/include/version.h 2023-08-25 16:54:40.000000000 +0200 +++ new/highlight-v4.9/src/include/version.h 2023-10-18 14:46:12.000000000 +0200 @@ -31,7 +31,7 @@ #include <string> #define HIGHLIGHT_MAJOR "4" -#define HIGHLIGHT_MINOR "8" +#define HIGHLIGHT_MINOR "9" #define HIGHLIGHT_VERSION HIGHLIGHT_MAJOR "." HIGHLIGHT_MINOR