Daniel Imms
94c01ec378
Fix tests
2017-01-04 08:08:59 -08:00
Daniel Imms
2b8820fdac
Further tweaks, add write batching
2017-01-03 15:52:45 -08:00
Daniel Imms
0ec7b661f2
Tweak config values
2017-01-03 15:38:14 -08:00
Daniel Imms
dc5efa886a
Make innerWrite iterative
2017-01-03 15:29:23 -08:00
Daniel Imms
e66b1c5704
Add write buffer pause and refresh frame skip
2017-01-03 15:26:41 -08:00
Daniel Imms
6b8c43ed7f
Send \x13 when a write buffer threadhold is reached
2017-01-03 14:57:13 -08:00
Daniel Imms
b9d374affa
Add XON/XOFF and eparate write from processing
...
Part of #425
2017-01-03 14:57:04 -08:00
Daniel Imms
d2ef19dffe
Remove var usage from Viewport
...
Part of #335
2017-01-03 11:26:59 -08:00
Daniel Imms
efdf37b887
jsdoc
2017-01-03 11:23:36 -08:00
Daniel Imms
6ffb8f545b
Rate limit Viewport.refresh
...
This prevents 1000 scroll events from firing when the buffer is not full
Fixes #444
2017-01-03 11:18:38 -08:00
Daniel Imms
2e4147b4fa
Use Tyriar/pty.js for Windows support
...
Fixes #441
2017-01-01 16:24:55 -08:00
Daniel Imms
07a8b8f4f7
Fix tests
2016-12-31 18:06:49 -08:00
Daniel Imms
74483fb294
Use CharMeasure in Viewport and to style wide chars
...
Fixes #439
2016-12-31 15:56:57 -08:00
Daniel Imms
4f18d842f9
Add CharMeasure util class
2016-12-31 15:46:17 -08:00
Daniel Imms
188e197e20
Wrap wide chars in a span/class
...
Part of #439
2016-12-31 15:19:54 -08:00
Daniel Imms
7234bfb6eb
Move row evaluation into refreshLoop
...
This allows the refresh public API to still function
2016-12-31 14:58:17 -08:00
Daniel Imms
97feb3321c
Improve refresh queue
...
Use requestAnimationFrame in addition to a queue to refresh every animation
frame but only when a refresh is needed.
Fixes #280
Fixes #290
2016-12-31 14:14:02 -08:00
Daniel Imms
3e1a607179
Convert browser and generic to TS
...
Part of #335
2016-12-31 07:36:56 -08:00
Daniel Imms
c3f46e4a6b
Fix scroll in tmux with max scrollback
...
I believe this is related to when scrollBottom is not the last row in the viewport
Fixes #434
2016-12-31 07:18:50 -08:00
Daniel Imms
1fbd3c8f65
Merge pull request #432 from Tyriar/335_TS_EventEmitter
...
Convert EventEmitter to TypeScript and add tests
2016-12-31 07:14:47 -08:00
Daniel Imms
965ebde22f
Remove remaining removeListener ref
2016-12-31 07:11:47 -08:00
Daniel Imms
0d9d3aca1a
Remove addListener/removeListener
2016-12-31 07:10:45 -08:00
Daniel Imms
937cf43e09
Remove redundant assignment in constructor
2016-12-31 07:07:45 -08:00
Daniel Imms
23472e6fb4
Merge pull request #431 from Tyriar/427_refresh_scroll_on_buffer_change
...
Sync scroll bar when alt/normal buffer is switched in
2016-12-30 04:42:36 -08:00
Antonis Kalipetis
445728b2a2
Merge pull request #403 from akalipetis/docker-enhancement
...
Improve the Docker image
2016-12-30 11:24:22 +02:00
Antonis Kalipetis
61c213f9e3
Ignore all the build directories in Docker
...
This allows for reproducible builds.
Also, fix Dockerfile to first build and then run tests and a typo in the entrypoint.
Thanks @BenHall for reporting the issue with the Docker build!
2016-12-29 16:13:58 +02:00
Daniel Imms
dba432d1b6
Add tests
2016-12-29 05:09:47 -08:00
Daniel Imms
2f416371bd
Convert EventEmitter to TS
...
Pat of #335
2016-12-29 04:53:57 -08:00
Daniel Imms
2bfbdb1c06
Sync scroll bar when alt/normal buffer is switched in
...
Fixes #427
2016-12-29 03:55:36 -08:00
Antonis Kalipetis
a4c958c54f
Fix EOL character in .editorconfig and update docker-compose
2016-12-28 18:49:36 +02:00
Antonis Kalipetis
b2e257bf37
Remove entrypoint
...
Signed-off-by: Antonis Kalipetis <akalipetis@gmail.com >
2016-12-28 18:45:21 +02:00
Antonis Kalipetis
6b6314227e
Improve the Docker image
...
1. Bump Node version to 6.9 - the latest LTS
2. Include the `cpio` binary, used during building
3. Ignore node_modules and .git directories for faster builds
4. Run the tests and build during the image build, to make sure the image is not built if these break
5. Make npm run dev the default command
6. Add an entrypoint to automatically install Node modules if they do nott exist
Signed-off-by: Antonis Kalipetis <akalipetis@gmail.com >
2016-12-28 18:45:18 +02:00
Antonis Kalipetis
1e0eb3784e
Merge pull request #402 from akalipetis/hotfix-npm-scripts
...
Improve the package.json scripts
2016-12-28 18:44:20 +02:00
Antonis Kalipetis
f00ea4bfac
Add a Procfile with the npm start command
...
Also, update the Procfile.dev with the updated `npm run dev` command.
Signed-off-by: Antonis Kalipetis <akalipetis@gmail.com >
2016-12-28 18:12:23 +02:00
Antonis Kalipetis
0da4c9d90d
Improve the package.json scripts
...
1. Include a `prestart` script, which runs the build
2. Make the `start` script just start the demo server
3. Add a new `dev` script, which contains the nodemon logic
4. nodemon now watches for changes in `*.ts` files and runs the start command
Signed-off-by: Antonis Kalipetis <akalipetis@gmail.com >
2016-12-28 18:12:20 +02:00
Daniel Imms
df83298c54
Merge pull request #429 from Tyriar/428_scrollback_exception
...
Ensure ydisp does not drop below 0 in refresh
2016-12-28 05:59:43 -08:00
Daniel Imms
5d29d4ea22
Remove log
2016-12-28 03:41:48 -08:00
Daniel Imms
a9e1ed5a72
Ensure ydisp does not drop below 0 in refresh
...
Fixes #428
Related to #385
2016-12-28 03:41:12 -08:00
Daniel Imms
e6ad8d8b50
Merge pull request #422 from Tyriar/361_circular_list_scrollback
...
Use a circular list to manage buffer
2016-12-28 03:10:31 -08:00
Daniel Imms
50cfe2b21a
Improve header comment
2016-12-27 13:40:52 -08:00
Daniel Imms
d7f2ec89d7
Polish
2016-12-24 03:17:30 -08:00
Daniel Imms
cc5ae8193b
Fix insertLines as max buffer size
2016-12-24 00:26:43 -08:00
Daniel Imms
30a1f1ccb5
Fix issue with max buffer size after vim fix
2016-12-24 00:14:30 -08:00
Daniel Imms
6f7cb990ca
Fix issue with vim scrolling
2016-12-24 00:04:31 -08:00
Paris Kasidiaris
06f5746c86
Merge pull request #423 from katacoda/katacoda-integration
...
Katacoda xterm.js integration is live
2016-12-22 23:30:00 +02:00
Ben Hall
cd44fe7bcd
Katacoda xterm.js integration is live
2016-12-22 20:10:33 +00:00
Ben Hall
bb3d6ee72c
Katacoda xterm.js integration is live
2016-12-22 12:01:44 +00:00
Daniel Imms
bf16fdc01d
Have reverseIndex use CircularList.shiftElements 🎉
2016-12-21 03:26:40 -08:00
Daniel Imms
969a2e953c
Implement CircularList.shiftElements
2016-12-21 03:18:30 -08:00
Daniel Imms
bfaf9cd6eb
Doc and testing
2016-12-21 02:39:21 -08:00