Comments (6)
from domterm.
well, I agree the performance matters very little and it can always be improved, so it matters little in my case.
I know every terminal emulator has its own stuff, but in general xterm compatibility is enough, if an feature doesn't work on popular terminal emulator (xterm, iterm ) , it is very unlikely to be used anyway.
What I do want from domterm though, is following:
- distribute an consolidated and minified js and css. (built from master if release is not very often)
- an clear instruction on how to use domterm in an browser, connecting to a custom made WS backend.
- repl-client.html sort of does what it takes, but domterm-client.js contains too much stuff that I need to replace.
- make it clear what to expect from the backend, right now domterm sends a bunch binary handshake messages to backend, (for example .focus, .version etc) , either I need to implement those handshakes or if possible, domterm can support an standardized application level protocol (for example telnet, that allows linemode and local echo control messages)
- some js code to handle PTY related VT functions ( on sending \r replace it to \r\n , and on receiving \n replace them with \n\r) so websocket backend can be pure ascii input/output , no need to care about PTY stuff.
from domterm.
from domterm.
"distribute an consolidated and minified js and css."
I wrote some Makefile rules (using sed and patch) to combined the core .js files into a single file, removing the ES6 modules stuff. (Whether this is done will depend on configure options.) The resulting file can be compiled by Google closure-compiler, reducing the size from 495280 to 234523 bytes (for those files).
This still needs some polishing and testing but is promising.
Even better compression should be possible with "advanced optimizations" but getting those to work is more complicated.
from domterm.
webpack/babel is the way to go, I can help you set it up since I had some experience on frontend side as well.
see my comments on what is really need on xtermjs/xterm.js#2664 and let me know what you think
from domterm.
"webpack/babel is the way to go,"
What is the advantage of webpack/babel? For me Google closure-compiler has the advantage that it's trivial to install on Fedora (sudo dnf install closure-compiler
) plus I had old (commented-out) Makefile rules I could update. So once I managed to concatenate the source files and strip out es6-module stuff it was very easy.
It should be easy to modify the Makefile to make use of some other minifier, if the benefit justifies it.
from domterm.
Related Issues (20)
- RoadMap HOT 12
- DomTerm freezing - no input or output HOT 43
- DomTerm freezes when using sudo HOT 5
- A new DomTerm/Julia calculator HOT 7
- problems on WebKit/WebKitGtk HOT 5
- Config file example
- Issues with micro and nano HOT 4
- Questions HOT 5
- Sixel glitches HOT 19
- Failure to build wry HOT 6
- Accessibility HOT 1
- issues specific to macOS HOT 1
- QT issues including domterm: unrecognized option '--qtdomterm' HOT 22
- better dark mode styling HOT 22
- easier install on mac? HOT 4
- MacOS build instructions wrong HOT 25
- window list display
- issues with xterm.js support
- Page reload behavior in browser HOT 4
- Feature request: kitty keyboard protocol HOT 15
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from domterm.