« first day (3170 days earlier)      last day (38 days later) » 

12:02 AM
@b3m2a1 If you or someone else is looking into the highlighter.js and wants to try out the reduced regex creation, here is how it works:
And then e.g.
PacletDirectoryLoad["/patch/Wolfram-IntelliJ-Tools/IntelliJTools"];
<< IntelliJTools`;
CreateReducedRegex[{"On", "Off", "Offending"}]

(* O(ff(ending)?|n) *)
A regex for all system symbols can be created with
$symbols = Union[IntelliJTools`IntelliJTools`PackagePrivate`getStrippedContextNames["System`"]];
regex = RegularExpression[CreateReducedRegex[$symbols]];
StringMatchQ[{"Plot", "ListPlot", "Polt"}, regex]

(* {True, True, False} *)
The final reduced regex is approx 65k bytes which is much smaller than the 100k that one needs if you simply use all symbols in a "A | B | C" fashion.
As for a regex of Mathematica's numbers, I'd like to point to this document of my good friend Robert Jacobson.
For the rest, we can certainly steal a lot from the old highlighter. We'd need to see what highlighter.js supports. Also, I'm not sure if it improves performance to use non-capturing groups in the long regex.
 
 
17 hours later…
5:20 PM
@halirutan Do you think it could make sense to provide them with two versions of the highlighter configuration? (i.e. a full one for MMA.SE, and a minimal one without all the symbols for SO, where they also have a MMA tag)
 
 
2 hours later…
7:05 PM
@LukasLang also like who gives a shit if we're missing YuleDissimilarity...
All I want is for the core lang to highlight well (like With, Block, Evaluate, etc.)
 
7:32 PM
@LukasLang I don't know. The other option would be to just highlight every symbol that starts with a capital letter or a $ followed by a capital letter as "built in".
Or we don't highlight any symbol in a specific way. What I would like is that Module is highlighted and e.g. ParallelTable is not.
 
@halirutan We could try to add a mathematica-min via PR or something like that which wouldn't try to support all of WRI's new inventions, but instead would do like the top 100 symbols or something from WolframLanguageData
 
@b3m2a1 That would lead to confusion since quite a few (not to say many) questions asked here are about functions that are not in the 100 most wanted list.
I've seen that you opened an issue about anonymous functions. That's not possible without parsing.
 
@halirutan that's possible, but I'm also wondering if the change in syntax highlighting style which I assume is coming will also cause confusion & like people will learn to adjust
@halirutan yeah that was my guess, but I wanted to put it out there in case it's possible
 
7:47 PM
@b3m2a1 I have a real question: Where you able to get highlight.js working locally? For me, the testpage doesn't give me the option for mma for some reason. But I didn't look very deep.
 
@halirutan I just looked on their demo site to see what they showed. Didn't do anything beyond that.
 
@b3m2a1 I cloned the project and installed all the JS crap necessary. I could build it, I can open the demo page but no MMA. Although I see the mma implementation in the source.
 
Go here: highlightjs.org/static/demo then it's under the language category "scientific" and scroll to Mathematica
It's somewhat primitive what they're highlighting, but I'm sure one could commit a more representative sample
 
@b3m2a1 Yeah.. I wanted to work on it :) So I need it locally.
 
Ah you're doing the lord's work, then. Unfortunately I wasn't planning to bother to do anything beyond grouse about what's broken
 
7:55 PM
@b3m2a1 Hehe.. that's the spirit. I also have a ton of real work to do but got weak on the weekend and tried it.
 
I've got one site currently on GH pages that I actively develop, but it uses rouge so I don't think I can just add highlight.js to the regular build
 
I guess that's why it's called weakend
@b3m2a1 Yep, another highlighter I worked on. I should call myself "Expert Highlighter"
 
This is one of those things about the Mathematica ecosystem that always feels so precarious to me. WRI makes this platform and discourages package developers/serious programmers by not supporting us, but then doesn't pick up the slack for stuff like this
Like if your institution were to drop Mathematica or your professional life veered away from it completely, it's not clear that someone would come in to add good Mathematica support to the next gen of highighters
WRI obviously can't do everything, but instead of recognizing that and supporting a self-sustaining ecosystem, they just keep adding toy features to the language
I just got an email from someone who used a site I made that I called Let Me Mathematica That For You and it turns out WRI has finally stopped supporting free sandbox notebooks: sandbox.open.wolframcloud.com/app/view/…
That used to open a notebook that you could mess around in & I use the JS API to turn into a mini-app
 
Look at the date. Free service for over 8 years :)
 
8:11 PM
Eesh that's concerning
 
I'm not sure there is a solution. I'm not sure many of us had the greatness to do it differently when being the CEO of such a cool company.
 
This is inside one of the JS files WRI serves on the cloud:
__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: {
                Events: [j, A, W, z.injectEventPluginsByName, x, q, function(e) {
                    N(e, Q)
                }
(I think it comes from a separate lib)
 
That's awsome.
I should change my header the prettify css as well :)
 
Here's a helpful file for hacking around the cloud: wolframcloud.com/dist/dyn/c66f879a9e88a1a5bbea.modern.js
 
I love minified JS.. unfortunately I don't know how to insert the throwing up smiley :)
@b3m2a1 Btw, I got highlighter.js working while talking to you.
 
8:24 PM
@halirutan nice nice nice that's the first step to doing more of WRI's work for it
 
@b3m2a1 Yep.. fortunately my DNN is already training on our HPC. So there is n-1 projects to care about.
 
Ah I am shirking all of my work duties to look through React dom garbage like this
{
  "content": {
    "icon": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 82 92\"><defs><style>.__2eKHY70__iconMain{fill:#d10;} .__2eKHY70__iconCommon{fill:#fff;}</style></defs><path class=\"__2eKHY70__iconMain \" d=\"M70,8.35571V79.64429A4.35573,4.35573,0,0,1,65.64429,84H10.35571A4.35573,4.35573,0,0,1,6,79.64429V8.35571A4.35573,4.35573,0,0,1,10.35571,4H65.64429A4.35573,4.35573,0,0,1,70,8.35571Z\"></path><path class=\"__2eKHY70__iconCommon \" d=\"M68,5.82861V79.17145A2.82784,2.82784,0,0,1,65.17145,82H10.82855A2.82861,2.8286...",
in the opes of being able to figure out how the New Notebook button works its magic to see if I can make use of that
 
@b3m2a1 My colleague and I usually call this behavior "active procrastination" :)
 
It turns out it's going to https://wolframcloud.com/app/view/newNotebook?_view=frameless and the only change is that they disabled the sandbox option, so https://sandbox.open.wolframcloud.com/app/view/newNotebook?_view=frameless no longer exists
And plain https://open.wolframcloud.com/app/view/newNotebook?_view=frameless throws up permissions errors
 
9:11 PM
@b3m2a1 Valid numbers and how they will look from Thursday onwards..
 

« first day (3170 days earlier)      last day (38 days later) »