Please sign in to comment.
terminal.py: Major changes: Terminal() now supports turning on/off 'a…
…utowrap mode'. This means that lines that are longer than the width of the terminal will be wrapped by the browser instead of inside Terminal() *unless* autowrap mode is enabled. The biggest impact of this change will be if you copy a long line it will now show up as *one long line* instead of a bunch of lines (hard-wrapped based on the width of the terminal). Some intelligence was added to Terminal.carriage_return() to detect when the underlying program is expecting a hard-wrap even when autowrap is set to False. This should get the best of both worlds (as a default). terminal.py: Terminal.newline() now automatically sets the cursor back to the beginning of the line (CR). No change in behavior here since Terminal.write() did this on its own previously. terminal.py: Renamed Terminal._carriage_return() to Terminal.carriage_return(). Not sure why I had an underscore there originally--there's nothing special or private about it. gateone.js: Changed the timeout for enabling scrollback back to 500. 3500ms is too long. gateone.js: Modified GateOne.Terminal.termUpdateFromWorker() to only call enableScrollback() if the incoming scrollback buffer is different from the existing scrollback buffer. This should make terminals slightly more responsive as well. The only downside to this change is this: If (and only if) you have lines in the current screen that are longer than the screen's width it can result in the view being scrolled up slightly when resuming from an alternate screen buffer (e.g. you're done editing a file in vim). This is a rare enough situation and is only mildly annoying so I think it will be OK until I figure out a workaround (low priority unless someone finds it to be a real problem). gateone.js: Fixed a bug where if you used middle click to paste highlighted text (note: not the same as native middle-click-to-paste on Unix) it would cause the next paste to also include the previously-pasted text (a double-paste). gateone.js: Tweaked the logic that hides the pastearea when the mouse is over it to act in a smoother and more natural fashion. gateone.js: Tweaked the logic that adjusts the size of terminals when the browser window is resized. It will now adjust the size of *all* terminals; not just the one you're looking at. Also, it will correctly deal with the situation of lines being added then later removed (multiple re-sizes could get a little wonky before this change). gateone.js: The terminal will no longer scroll to the bottom when pressing a modifier key (e.g. shift). gateone.js: GateOne.Visual.displayMessage() has been tweaked to include a close icon (X) that will make messages go away instantly when clicked. This was necessary since there's always a possibility that a displayed message could be huge with a long timeout. It would be really annoying to have to avoid moving your mouse while waiting for it to go away. Text Colors: Added some new syntax highlighting classes that could be useful for text transforms and tweaked things a bit all-around. CSS Themes: Added span.screen and span.scrollback to work in conjunction with the changes to gateone.js. CSS Themes: Added some extra classes for the new close X icon in #noticecontainer. Logging Plugin: In logging.js, added support for the additional console.log() options that exist in some browsers. e.g. console.warn() and console.error(). Convenience Plugin: Tweaked the IPv4 regex slightly so it won't match on things like 'SomePackage-184.108.40.206.rpm'. Convenience Plugin: Tweaked the syslog regex to make use of the multi-line flag ('m'). This should make it more reliable. Convenience Plugin: Tweaked the syslog replacement string to make lines clickable... When you click on a line it will highlight it a bit with a background color. It could be useful or it could be annoying. Need actual feedback to make a determination either way.
- Loading branch information...
Showing with 332 additions and 93 deletions.
- +15 −4 gateone/plugins/convenience/static/convenience.js
- +38 −7 gateone/plugins/logging/static/logging.js
- +83 −52 gateone/static/gateone.js
- +0 −1 gateone/static/go_process.js
- +12 −2 gateone/templates/term_colors/default.css
- +12 −0 gateone/templates/term_colors/gnome-terminal.css
- +12 −0 gateone/templates/term_colors/solarized.css
- +30 −0 gateone/templates/themes/black.css
- +30 −0 gateone/templates/themes/dark-black.css
- +30 −0 gateone/templates/themes/solarized.css
- +30 −0 gateone/templates/themes/white.css
- +40 −27 gateone/terminal.py
Oops, something went wrong.