Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge master #3

Merged
merged 64 commits into from
Jun 12, 2020
Merged

merge master #3

merged 64 commits into from
Jun 12, 2020

Commits on Apr 25, 2020

  1. Configuration menu
    Copy the full SHA
    3875088 View commit details
    Browse the repository at this point in the history

Commits on Apr 26, 2020

  1. fix(parser) fixes sublanguage with no rule matches (#2506)

    * fix(parser) fixes sublanguage with no rule matches
    
    Resolves #2504.
    joshgoebel authored Apr 26, 2020
    Configuration menu
    Copy the full SHA
    f6813cc View commit details
    Browse the repository at this point in the history
  2. (chore) Add ESLint config and clean up the major stuff (#2503)

    * (chore) eslint:recommended
    * (chore): eslint_standard
    * relax eslint rules for language grammars (to discourage rewriting them in one fell swoop; I'd rather have the blame history intact)
    * remove extra escaping
    * clean up variables
    * more camelcase
    joshgoebel authored Apr 26, 2020
    Configuration menu
    Copy the full SHA
    705f49b View commit details
    Browse the repository at this point in the history

Commits on Apr 27, 2020

  1. Configuration menu
    Copy the full SHA
    f86d6a9 View commit details
    Browse the repository at this point in the history
  2. (yaml) improve tag support; add verbatim tags (#2487)

    * YAML parse non-word characters as part of tags
    * adds support for verbatim tags
    
    Co-authored-by: Josh Goebel <me@joshgoebel.com>
    pplantinga and joshgoebel authored Apr 27, 2020
    Configuration menu
    Copy the full SHA
    7502e42 View commit details
    Browse the repository at this point in the history
  3. fix(javascript/typescript): lambda with parens in parameters fails (#…

    …2502)
    
    * fix(javascript/typescript): lambda with parens in parameters fails
    
    - Fixes both JavaScript and TypeScript grammars
    
    Fixes samples like:
    
        const bad = ((a, b) => [...a, b]);
        sides.every((length,width=(3+2+(4/5))) => length > 0 );
    
    This is done by counting parens in the regex that finds arrows
    functions. Currently we can only handle 2 levels of nesting as
    shown in the second example above.
    
    * allow much richer highlighting inside params
    * improve highlighting inside arguments on typescript
    joshgoebel authored Apr 27, 2020
    Configuration menu
    Copy the full SHA
    0afd0d3 View commit details
    Browse the repository at this point in the history
  4. enh(cpp): Improve highlighting of unterminated raw strings

    PR #1897 switched C++ raw strings to use backreferences, however this
    breaks souce files where raw strings are truncated. Like comments, it
    would be preferable to highlight them.
    
    - Add `on:begin` and `on:end` to allow more granular matching when
      then end match is dynamic and based on a part of the begin match
    - This deprecates the `endSameAsBegin` attribute. That attribute was
      a very specific way to solve this problem, but now we have a much
      more general solution in these added callbacks.
    
    Also related: #2259.
    
    Co-authored-by: Josh Goebel <me@joshgoebel.com>
    davidben and joshgoebel committed Apr 27, 2020
    Configuration menu
    Copy the full SHA
    58d9113 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    1998ddf View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    95abfe0 View commit details
    Browse the repository at this point in the history
  7. (parser) make END_SAME_AS_BEGIN a function helper

    Adds a mode helper to replace the deprecated `endSameAsBegin` attribute.
    
    The first match group from the begin regex will be compared to the first
    match group from the end regex and the end regex will only match if both
    strings are identical.
    
    Note this is more advanced functionality than before since now you can
    match a larger selection of text yet only use a small portion of it for
    the actual "end must match begin" portion.
    joshgoebel committed Apr 27, 2020
    Configuration menu
    Copy the full SHA
    07450a6 View commit details
    Browse the repository at this point in the history
  8. (pgsql) add test for $$ quoting existing behavior

    - even if that existing behavior is questionable
    - the ending span should really close before the $$, not after
    
    Fixing this would involve delving into the sublanguage behavior and I'm
    not sure we have time to tackle that right this moment.
    joshgoebel committed Apr 27, 2020
    Configuration menu
    Copy the full SHA
    629de19 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    a4f1f20 View commit details
    Browse the repository at this point in the history
  10. (docs) rename to mode_reference; docs for callbacks

    - I can never find this file because it's name didn't fully match.
    - rename callbacks to `on:begin` and `on:end`
    joshgoebel committed Apr 27, 2020
    Configuration menu
    Copy the full SHA
    d4b047b View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2020

  1. prevented setter keyword conflicting with setTimeout|setInterval and …

    …highlighted them (#2514) (#2515)
    
    * fix(javascript) prevent setter keyword 'set' conflicting with setTimeout|setInterval (#2514)
    * enh(javascript) setTimeout|setInterval now highlighted (#2514)
    * enh (javascript) clearInterval and clearTimeout now highlighted
    * add keywords to TypeScript also
    qWici authored Apr 28, 2020
    Configuration menu
    Copy the full SHA
    ba2e65e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e63d5d7 View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2020

  1. Configuration menu
    Copy the full SHA
    5f1fbf1 View commit details
    Browse the repository at this point in the history
  2. (parser) Build common EMCAscript foundation

    Builds a common keyword foundation for any grammar that is
    building on top of JavaScript:
    
    - LiveScript
    - CoffeeScript
    - TypeScript
    
    Also uses this common foundation for JS itself.
    joshgoebel committed Apr 29, 2020
    Configuration menu
    Copy the full SHA
    b984c7b View commit details
    Browse the repository at this point in the history
  3. (parser) Adds SHEBANG mode

    joshgoebel committed Apr 29, 2020
    Configuration menu
    Copy the full SHA
    a23f19e View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2020

  1. (yaml) Add support for inline sequences and mappings (#2513)

    * Use containers to match inline sequences and mappings
    * Add string type for inside inline elements
    * Handle nested inline sequences and mappings
    * Disallow all braces brackets and commas from strings inside inline mappings or sequences
    * clean up implementation
    * feed the linter
    
    Co-authored-by: Josh Goebel <me@joshgoebel.com>
    pplantinga and joshgoebel authored Apr 30, 2020
    Configuration menu
    Copy the full SHA
    d98cd4f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e8624cc View commit details
    Browse the repository at this point in the history

Commits on May 3, 2020

  1. (build) browser build is CommonJS and IIFE, no more AMD (#2511)

    * (build) browser build is CommonJS and IIFE (global) now
    * (build) dropping support for AMD, which we never truly supported
      properly in the first place
    * (build) add test to make sure browser build works as commonJS module
    
      Resolves #2505
    joshgoebel authored May 3, 2020
    Configuration menu
    Copy the full SHA
    8f5290e View commit details
    Browse the repository at this point in the history
  2. fix(parser) Fix freezing issue with illegal 0 width matches (#2524)

    * fix[parser] add edge case handle for illegal 0 width matches
    * add last ditch catch all that tries to detect other uncaught freezes
    joshgoebel authored May 3, 2020
    Configuration menu
    Copy the full SHA
    acbbac8 View commit details
    Browse the repository at this point in the history

Commits on May 4, 2020

  1. (docs) added unicorn-rails-log as an 3rd-party language (#2528)

    - (docs) Add syntax highlighting for Rails Unicorn logging to supported languages.
    sweetppro authored May 4, 2020
    Configuration menu
    Copy the full SHA
    b31cb98 View commit details
    Browse the repository at this point in the history

Commits on May 5, 2020

  1. Configuration menu
    Copy the full SHA
    33d3afe View commit details
    Browse the repository at this point in the history

Commits on May 7, 2020

  1. fix(ts/js) use identifier to match potential keywords (#2519)

    - (parser) Adds `keywords.$pattern` key to grammar definitions
    - `lexemes` is now deprecated in favor of `keywords.$pattern` key
    - enh(typescript) use identifier to match potential keywords, preventing false positives 
    - enh(javascript) use identifier to match potential keywords, preventing false positives
    joshgoebel authored May 7, 2020
    Configuration menu
    Copy the full SHA
    9e4f2dc View commit details
    Browse the repository at this point in the history
  2. fix(javascript) fix regex inside parens after a non-regex (#2531)

    * make the object attr container smarter
    * deal with multi-line comments also
    * comments in any order, spanning multiple lines
    
    Essentially makes the object attr container much more sensitive by allowing it to look-ahead thru comments to find object keys - and therefore prevent them from being incorrectly matched by the "value container" rule.
    joshgoebel authored May 7, 2020
    Configuration menu
    Copy the full SHA
    5c125b9 View commit details
    Browse the repository at this point in the history

Commits on May 8, 2020

  1. (parser) Add hljs.registerAlias() public API (#2540)

    * Add hljs.registerAlias(alias, languageName) public API
    * Add .registerAlias() test
    taufik-nurrohman authored May 8, 2020
    Configuration menu
    Copy the full SHA
    2fafd0e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    04e4991 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8c74229 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    527086f View commit details
    Browse the repository at this point in the history
  5. chore: rename registerAlias to registerAliases

    Plural form is clearly better as it's not surprising to the reader
    to see it being passed an array - where as the singular form might
    have been.  Meanwhile it's also easy to assume that it also supports
    arrays of any size - including an array with a singular alias.
    
    The fact that it can magically accept a string as the first argument
    might not be obvious, but we document it and even if one didn't know
    this they could still use the array form of the API without any issue
    by passing a one item array.
    joshgoebel committed May 8, 2020
    Configuration menu
    Copy the full SHA
    a3be151 View commit details
    Browse the repository at this point in the history

Commits on May 10, 2020

  1. (swift) @objcMembers not completely highlighted (#2543)

    * Fixed @objcMembers in Swift
    
    Would match `@objc` first, and the `Members` part would be unhighlighted
    
    * Update CHANGES.md
    
    * Update swift.js
    nicked authored May 10, 2020
    Configuration menu
    Copy the full SHA
    544ed68 View commit details
    Browse the repository at this point in the history

Commits on May 11, 2020

  1. Configuration menu
    Copy the full SHA
    02fd993 View commit details
    Browse the repository at this point in the history

Commits on May 12, 2020

  1. Configuration menu
    Copy the full SHA
    a34f2d4 View commit details
    Browse the repository at this point in the history
  2. enh(dart) Add late and required keywords, and Never built-in ty…

    …pe (Dart 2.9) (#2551)
    
    * Add new Dart 2.9 keywords for Null Safety language feature
    srawlins authored May 12, 2020
    Configuration menu
    Copy the full SHA
    f64993f View commit details
    Browse the repository at this point in the history

Commits on May 14, 2020

  1. enh(erlang) add support for underscore separators in numeric literals (

    …#2554)
    
    * (erlang) add support for underscore separators in numeric literals
    * (erlang) add tests
    seriyps authored May 14, 2020
    Configuration menu
    Copy the full SHA
    b50fa49 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c5cdc1c View commit details
    Browse the repository at this point in the history

Commits on May 15, 2020

  1. (parser/docs) Add jsdoc annotations and TypeScript type file (#2517)

    Adds JSDoc annotations and a .tsconfig that allows TypeScript to be run in it's "allowJS" mode and apply type and sanity checking to JavaScript code also. See Type Checking JavaScript Files.
    
    I've been using TypeScript a lot lately and finding it very beneficial and wanted to get those same benefits here but without converting the whole project to TypeScript. It was rough at the beginning but now that this is finished I think it's about 80%-90% of the benefits without any of the TS compilation pipeline. The big difference in being JSDoc for adding typing information vs inline types with TypeScript.
    
    Should be super helpful for maintainers using an editor with tight TypeScript integration and the improved docs/comments should help everyone else.
    
    - Adds types/index.d.ts to NPM build (should be useful for TypeScript peeps)
    - Improves documentation of many functions
    - Adds JSDoc annotations to almost all functions
    - Adds JSDoc type annotations to variables that can't be inferred
    - Refactors a few smaller things to allow the TypeScript compiler to better infer what 
       is happening (and usually also made the code clearer)
    joshgoebel authored May 15, 2020
    Configuration menu
    Copy the full SHA
    c836e3a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    63f367c View commit details
    Browse the repository at this point in the history

Commits on May 19, 2020

  1. enh(handlebars) Support for sub-expressions, path-expressions, hashes…

    …, block-parameters and literals (#2344)
    
    - `htmlbars` grammar is now deprecated. Use `handlebars` instead.
    
    A stub is included so that anyone literally referencing the old `htmlbars` file (say manually requiring it in Node.js, etc) is still covered, but everyone should transition to `handlebars` now.
    nknapp authored May 19, 2020
    Configuration menu
    Copy the full SHA
    e9e7b44 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    278a610 View commit details
    Browse the repository at this point in the history

Commits on May 22, 2020

  1. Configuration menu
    Copy the full SHA
    02bdae3 View commit details
    Browse the repository at this point in the history
  2. fix(groovy) strings are not allowed inside ternary clauses (#2565)

    * fix(groovy) strings are not allowed inside ternary clauses
    * whitespace can also include tabs
    joshgoebel authored May 22, 2020
    Configuration menu
    Copy the full SHA
    c6f2995 View commit details
    Browse the repository at this point in the history
  3. Update @typescript-eslint/parser to the latest version 🚀 (#2575)

    * chore(package): update @typescript-eslint/parser to version 3.0.0
    * chore(package): update lockfile package-lock.json
    
    Co-authored-by: greenkeeper[bot] <23040076+greenkeeper[bot]@users.noreply.github.com>
    Co-authored-by: Josh Goebel <me@joshgoebel.com>
    greenkeeper[bot] and joshgoebel authored May 22, 2020
    Configuration menu
    Copy the full SHA
    cc2dc8b View commit details
    Browse the repository at this point in the history
  4. Update @typescript-eslint/eslint-plugin to the latest version 🚀 (#2576)

    * chore(package): update @typescript-eslint/eslint-plugin to version 3.0.0
    * chore(package): update lockfile package-lock.json
    
    Co-authored-by: greenkeeper[bot] <23040076+greenkeeper[bot]@users.noreply.github.com>
    Co-authored-by: Josh Goebel <me@joshgoebel.com>
    greenkeeper[bot] and joshgoebel authored May 22, 2020
    Configuration menu
    Copy the full SHA
    a6f0a34 View commit details
    Browse the repository at this point in the history
  5. (parser) properly escape ' and " in HTML output (#2564)

    * escape quotes also in final HTML output
    * [style] update test coding style
    * update markup tests with new escaping
    
    This shouldn't be a security issue -- we've always escaped double quotes inside of HTML attribute values (where they could be used to break out of context) - and we've always used double quotes for enclosing attribute values. 
    
    This just goes all the way and now properly escapes quotes everywhere.  Better safe than sorry.
    joshgoebel authored May 22, 2020
    Configuration menu
    Copy the full SHA
    3e9c1b1 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    3ff5169 View commit details
    Browse the repository at this point in the history

Commits on May 27, 2020

  1. add nnfx theme (#2571)

    RocketMan authored May 27, 2020
    Configuration menu
    Copy the full SHA
    f30dbf7 View commit details
    Browse the repository at this point in the history

Commits on May 29, 2020

  1. Configuration menu
    Copy the full SHA
    87a338b View commit details
    Browse the repository at this point in the history

Commits on May 31, 2020

  1. Configuration menu
    Copy the full SHA
    debfdf7 View commit details
    Browse the repository at this point in the history

Commits on Jun 1, 2020

  1. Configuration menu
    Copy the full SHA
    c4c9772 View commit details
    Browse the repository at this point in the history

Commits on Jun 8, 2020

  1. Configuration menu
    Copy the full SHA
    1bfe834 View commit details
    Browse the repository at this point in the history
  2. enh(java) added support for hexadecimal floating point literals (#2509)

    - Added support for many additional types of floating point literals
    - Added related tests
    
    There still may be a few gaps, but this is a pretty large improvement.
    
    Co-authored-by: Josh Goebel <me@joshgoebel.com>
    0xflotus and joshgoebel authored Jun 8, 2020
    Configuration menu
    Copy the full SHA
    d8189c6 View commit details
    Browse the repository at this point in the history
  3. (chore) Update issue templates (#2574)

    Co-authored-by: Vladimir Jimenez <allejo@me.com>
    joshgoebel and allejo authored Jun 8, 2020
    Configuration menu
    Copy the full SHA
    adb813c View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2020

  1. Configuration menu
    Copy the full SHA
    1936dbd View commit details
    Browse the repository at this point in the history

Commits on Jun 11, 2020

  1. (chore) add .js extension to import statements (#2601)

    Adds file extensions to all import specifiers in ./src/ files.  This is useful to run the files straight from source with a web browser , Node.js ESM or Deno.
    
    - Also add eslint rules regarding extensions for imports
    aduh95 authored Jun 11, 2020
    Configuration menu
    Copy the full SHA
    a010c15 View commit details
    Browse the repository at this point in the history
  2. enh(dart) highlight built-in nullable types (#2598)

    * Dart: allow built-in nullable types with trailing ? to be highlighted
    srawlins authored Jun 11, 2020
    Configuration menu
    Copy the full SHA
    b4046ce View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    014343e View commit details
    Browse the repository at this point in the history
  4. (chore) fix tiny style issues, add linting npm task

    - fixes tiny style issues
    - adds `npm run lint` for linting the main library source
      (not languages which are still much messier)
    joshgoebel committed Jun 11, 2020
    Configuration menu
    Copy the full SHA
    dfeb3a1 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c6dec5e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    84f7fa3 View commit details
    Browse the repository at this point in the history
  7. bump v10.1.0

    joshgoebel committed Jun 11, 2020
    Configuration menu
    Copy the full SHA
    b2d19b0 View commit details
    Browse the repository at this point in the history
  8. (chore) bump copyright

    joshgoebel committed Jun 11, 2020
    Configuration menu
    Copy the full SHA
    74de6ea View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2020

  1. Configuration menu
    Copy the full SHA
    b1bce6e View commit details
    Browse the repository at this point in the history