profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/marijnh/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Marijn Haverbeke marijnh not interested in recruiter mail Berlin http://marijnhaverbeke.nl Independent open-source programmer person

acornjs/acorn 7638

A small, fast, JavaScript-based JavaScript parser

marijnh/Eloquent-JavaScript 2608

The sources for the Eloquent JavaScript book

codemirror/CodeMirror-v1 360

An editable-iframe based code editor in JavaScript. See https://github.com/marijnh/CodeMirror for the currently maintained version

lezer-parser/lr 360

Incremental parsing system

marijnh/Eloquent-JavaScript-1st-edition 326

The source for http://eloquentjavascript.net

akapav/js 177

JavaScript compiler for Common Lisp

lezer-parser/generator 57

Parser generator for the lezer incremental parser

marijnh/browserkeymap 40

Map key events to key names, and key names to values

marijnh/distfs 40

Mount a directory of ES6 code as a FUSE directory of babel-compiled output

adrianheine/ProsePad 25

ProsePad is a real-time collaborative text editor like Etherpad, but based on ProseMirror

pull request commentlezer-parser/php

Fixed incorrectly marking "class" in "A::class" as a keyword.

Thanks!

neochief

comment created time in 2 hours

push eventlezer-parser/php

Alexander Shvets

commit sha 9aaa5acdfdc74ee1a016ba161a61b3db96141048

Fixed incorrectly marking "class" in "A::class" as a keyword. (#1) FIX: Allow `class` to be an identifier in constructs like `A::class`.

view details

push time in 2 hours

PR merged lezer-parser/php

Fixed incorrectly marking "class" in "A::class" as a keyword.

Hi!

There's a special class constant "::class" in PHP (https://www.php.net/manual/en/language.oop5.constants.php). If you have an expression like "$a = SomeClass::class;", the "class" is currently wrongly rendered as a keyword. This pull request fixes the behavior so that the "::class" constant would be rendered as a generic Name token.

I spent the last 5 hours figuring out the best way to tackle this problem and this solution is the best thing I can think of, given my very limited knowledge of the lezer philosophy. If you think that there's a better way to fix this, please just give me a nudge in that direction and I'll update the code.

+22 -3

2 comments

3 changed files

neochief

pr closed time in 2 hours

pull request commentlezer-parser/php

Fixed incorrectly marking "class" in "A::class" as a keyword.

Hi, thanks for the pull request. This is mostly the correct approach. But for consistency, and in order to support upper-case CLASS tokens, could you align the definition of the class token with the one for static, which has a similar issue in PHP? I.e.

class { @extend[@name=class]<Name, "class" | "CLASS"> }

and then use class wherever you now have ckw<"class">.

neochief

comment created time in 17 hours

push eventcodemirror/lang-css

Marijn Haverbeke

commit sha 25c6f4df8c4fc1e3cacf8cfbc895789405b7e921

Use attributeName highlighting tag where appropriate

view details

push time in 18 hours

created tagcodemirror/lang-javascript

tag0.19.2

JavaScript language support for the CodeMirror code editor

created time in 18 hours

push eventcodemirror/lang-javascript

Marijn Haverbeke

commit sha b5d42a79e66055b25764a1ada790c000823f1051

Style attribute names/value with specific tags FEATURE: Use more specific highlighting tags for JSX attribute names and values.

view details

Marijn Haverbeke

commit sha 235063fafdb78c3048754ba4e4546d716eec6a91

Mark version 0.19.2

view details

push time in 18 hours

created tagcodemirror/lang-html

tag0.19.3

HTML language support for the CodeMirror code editor

created time in 18 hours

push eventcodemirror/lang-html

Marijn Haverbeke

commit sha 9f00507ed4f49ed5c1cb4ae0406c724f0b6e9d8b

Style attribute names/value with specific tags FEATURE: Use more specific highlighting tags for attribute names and values.

view details

Marijn Haverbeke

commit sha 8834baa0777b6d988aaff69c967c386b28fb2f2b

Mark version 0.19.3

view details

push time in 18 hours

created tagcodemirror/lang-xml

tag0.19.2

XML language support for the CodeMirror code editor

created time in 18 hours

push eventcodemirror/lang-xml

Marijn Haverbeke

commit sha 58301f9bf020522f1e787d9f5df78db73a86af10

Style attribute names/value with specific tags FEATURE: Use more specific highlighting tags for attribute names and values.

view details

Marijn Haverbeke

commit sha 212d3e047b79191efaf7f60f6d3c9ea6920cf6e0

Mark version 0.19.2

view details

push time in 18 hours

created tagcodemirror/highlight

tag0.19.6

Syntax highlighting for the CodeMirror code editor

created time in 18 hours

push eventcodemirror/highlight

Marijn Haverbeke

commit sha f07ddbdd3947130fe7a42eba692c354e53ada652

Introduce attributeName and attributeValue tags FEATURE: Add two additional tags, `attributeName` and `attributeValue`, to make it easier to style XML/HTML languages in a specific way.

view details

Marijn Haverbeke

commit sha 597c2eda09e0e3cf08537ea8c10ff01555efb9b6

Mark version 0.19.6

view details

push time in 18 hours

created tagcodemirror/lang-css

tag0.19.2

CSS language support for the CodeMirror code editor

created time in 2 days

push eventcodemirror/lang-css

Marijn Haverbeke

commit sha 2756b4cfb072d3a3b6a3f042ec596967cdacb55e

Export completion source, rather than completion extension To make composition with other completion logic possible. FEATURE: The package now exports a completion source function, rather than a prebuilt completion extension.

view details

Marijn Haverbeke

commit sha 5a84cdc795057f50a8c153731a53ac91fbba0e41

Mark version 0.19.2

view details

push time in 2 days

push eventcodemirror/lang-html

Marijn Haverbeke

commit sha 9a3870302252f63cb064bec26603f4bd571873bc

Export completion source, rather than completion extension To make composition with other completion logic possible. FEATURE: The package now exports a completion source function, rather than a prebuilt completion extension.

view details

push time in 2 days

push eventcodemirror/lang-html

Marijn Haverbeke

commit sha aa010375f3583cfa78d4e79a696b00693d2a9fe4

Mark dashes, underscores, and dots as word characters

view details

push time in 2 days

push eventcodemirror/lang-css

Marijn Haverbeke

commit sha f576e534207dc42c408e28ca80469badb888818d

Make dashes a word char

view details

push time in 2 days

push eventProseMirror/prosemirror-markdown

Marijn Haverbeke

commit sha 79a530f3f320ba17ac2ba256868d0a8093a92020

Fix a bug where parse could return null FIX: Fix a bug where `MarkdownParser.parse` could return null when the parsed content doesn't fit the schema.

view details

push time in 2 days

MemberEvent

push eventcodemirror/lang-html

Marijn Haverbeke

commit sha 01e33db1962e18271a89d89aa0ef986137474af6

Update readme

view details

push time in 3 days

created tagcodemirror/lang-html

tag0.19.2

HTML language support for the CodeMirror code editor

created time in 3 days

push eventcodemirror/lang-html

Marijn Haverbeke

commit sha 2a9d7831000a066b87676291cd2740b44ea8b998

Mark version 0.19.2

view details

push time in 3 days

created tagcodemirror/matchbrackets

tag0.19.2

Bracket matching for the CodeMirror code editor

created time in 3 days

push eventcodemirror/matchbrackets

Marijn Haverbeke

commit sha e3a95d175d2076fcc1d0cfde46790ad6507c1582

Handle matching parent syntax nodes FIX: Properly match tokens even if they are not the immediate inner syntax node around the given position (for example XML tags). See https://discuss.codemirror.net/t/how-to-match-paired-tags-in-codemirror6/3546

view details

Marijn Haverbeke

commit sha 124554d6f64075096c56f163c4e187ea6d1f3490

Use a background color for matching brackets To be less loud for bigger matches, such as tags FIX: Make the default matching bracket styles use a background color, to be less invasive.

view details

Marijn Haverbeke

commit sha 99bf6b7e6891c09987269e370dc45ab1d588b875

Mark version 0.19.2

view details

push time in 3 days

push eventcodemirror/view

Marijn Haverbeke

commit sha ae17aeb37b3b8244912064bdc774b8d19222b1a3

Further refine newline insertion for DOM changes

view details

push time in 3 days

push eventcodemirror/codemirror.next

Marijn Haverbeke

commit sha 47de8bc139d608a1c56ec45153340e05805909e9

Add lang-wast package

view details

push time in 3 days

push eventcodemirror/view

Marijn Haverbeke

commit sha 6c0cb4cddf6e26ea1ca7317fec67a0a9d809116a

Fix bug in DOM change reading that could insert spurious newlines after block widgets FIX: Fix a bug that could, on DOM changes near block widgets, insert superfluous line breaks. See https://discuss.codemirror.net/t/editing-the-line-that-a-block-widget-is-derived-from-causes-newlines-to-be-added/3552

view details

push time in 3 days

created tagcodemirror/commands

tag0.19.5

Collection of editing commands for the CodeMirror code editor

created time in 3 days

push eventcodemirror/commands

Marijn Haverbeke

commit sha 4537e9b9cfa433ae97996ae60a92a0af851e3b32

Add insertBlankLine command FEATURE: Adds an `insertBlankLine` command which creates an empty line below the selection, and binds it to Mod-Enter in the default keymap.

view details

Marijn Haverbeke

commit sha ad908aaf12c84798a6e6dab5d0d770437abe5a40

Mark version 0.19.5

view details

push time in 3 days