-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
ES6 modularisation #245
ES6 modularisation #245
Conversation
* Drop external fetch requirement * Drop fetch /POST api, just use WS
@parisk , it it possible for you to create a v2.0 branch ? I think my PR will be easier to merge in a dedicated branch (not in master), for now. |
I'v also fixed the 'document' isolation (spawing new Terminal in nodejs is no longer an issue), no "hacks" are needed anymore here |
@Tyriar yep. Let's not merge anything until we sort out the build system. Adding labels to all PRs. |
FYI i've successfully tested this branch against Visual Studio Code. |
I just understood that @Tyriar works for MS 😆 ! I LOVE VISUAL STUDIO CODE ❤️ |
@parisk Ok, last bug was epic. This was so meta, fixing xterm.js in a sourcelair / xterm.js (with a vm containers everywhere) |
@131 ❤️ |
@131 You removed the additional side communication for resizing from the demo. Your replacement does a string vs. buffer (binary data) distinction instead. Will this work for all browser engines? |
|
|
While I lean more towards TypeScript now that I took a deeper look at it and @Tyriar's PR, I would like to make one main comment here: could we leave demo refactoring out of this, in order to reduce to-be-reviewed code? Also may I ask we did you decide to introduce the |
Would I help if I moved the |
@parisk When they're named |
@parisk , moving addons is not mandatory actually it end up quiet nice the way it is now : Im targetting a sane loading API (see demo/main.js)
And for user using the /dist edition (see dist/index.htmljs)
|
Please wait for a minute. I think I am preparing a quite simpler PR. |
Sorry i'vnt seen your message (now waiting) |
ES6 conversion is complete, xterm.js is fully ES6 AND did not even loose commit/blame/history (no indentation change) |
It seems that when I was referring to a minute, I meant 3 hours... I started getting scary with the magnitude of these PRs, so I started a new smaller one (strictly less than 200 additions), in order to move things forward gradually, instead of all at a time. Could you please take a look at #251? |
I guess it is a big change ! |
Sorry about being late to reply here but my main issues with this PR were:
Despite that I would like to thank you very much for your contribution as it motivated me to open #251! Please feel free to open up an issue to change the demo protocol if you would like to take over this task 😊 . |
Fix #158
Slice code in ES6 module.
Compositionhelper, viewport & eventemitter are proper ES6 classes.
The Terminal classe is big, yet wcwidth and escapeSequence have been sliced too, this increase overall readability and testing scope. ( slicing can be done on other parts of Terminal class, if desired)
Tests are fine
Documentation generation is fine
new pm task
Strongly simplify demo/app.js (server side)
no need for external fetch, just use WS socket all along
Strongly simplify demo/index.html / demo/main.js
Strongly simplify addon design & loading
in package.json
node_modules/.bin is in npm run path, so no need to set it