Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Developing U++ » Bazaar » A terminal emulator widget for U++
Re: A terminal emulator widget for U++ [message #52143 is a reply to message #52139] Sat, 27 July 2019 11:30 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 579
Registered: August 2007
Location: Turkey
Contributor
Hello Koldo,

Yeah it's very impressive tool. I enjoyed it.
It also helps a lot for testing.

Best regards,
Oblivion


Re: A terminal emulator widget for U++ [message #52153 is a reply to message #51415] Mon, 29 July 2019 23:23 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 579
Registered: August 2007
Location: Turkey
Contributor
Hello,

A small but important update.

True/direct (24-bit) color support has landed.


It is added as a compile-time option this time. (It can be easily switched using TheIDE)
The reason for this decision is that true color support increases the size of each cell by 4 bytes. (Not worriyingly high but I'm being cautious. Smile )


Latest code of terminal package can be found at: https://github.com/ismail-yilmaz/upp-components/tree/master/ CtrlLib/Terminal


Best regards,
Oblivion


[Updated on: Mon, 29 July 2019 23:26]

Report message to a moderator

Re: A terminal emulator widget for U++ [message #52179 is a reply to message #51415] Fri, 02 August 2019 13:54 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 579
Registered: August 2007
Location: Turkey
Contributor
Latest round of updates:

Terminal: Clipboard and DND operations improved.
Terminal: Drag animation for drag-copy operation implemented.
Terminal: WhenClip event added. (Allows client code to inspect/accept/reject pasted/dropped clips.
Terminal: Api doc updated accordingly.


Best regards,
Oblivion


Re: A terminal emulator widget for U++ [message #52195 is a reply to message #51415] Wed, 07 August 2019 21:24 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 579
Registered: August 2007
Location: Turkey
Contributor
Hello,

Terminal package is updated.
Initial support for a rare but much requested feature in the world of terminal emulators has landed:

- Sixel graphics support is added to the Terminal package. It is now possible to view sixel images, using the Terminal package.  However, the initial support is only for external viewing. Embedded images are a TODO.

- A basic terminal example with sixel viewer is also added to the package.

- SixelRenderer class and a convenience function: RenderSixelImage is also added to the package. This class and the function can also be used as a stand-alone sixel renderer.

- Alt-key handling is improved.



A screenshot:

index.php?t=getfile&id=5882&private=0

The git repo address of upp-components: https://github.com/ismail-yilmaz/upp-components


Reviews, criticism, patches, bug reports, etc., are always welcome.

Best regards,
Oblivion


[Updated on: Wed, 07 August 2019 21:44]

Report message to a moderator

Re: A terminal emulator widget for U++ [message #52227 is a reply to message #51415] Mon, 12 August 2019 11:39 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 579
Registered: August 2007
Location: Turkey
Contributor
Hello,

A small update on the progress of the Terminal ctrl's embedded image (sixel, etc.) support. Cool
(Note that I have yet to push changes. I'll problably push the changes next week, as there are some minor issues to solve.)

index.php?t=getfile&id=5891&private=0

This will not break the existing behavior. Sixel support will be available in both embedded and external mode.

Best regards,
Oblivion


[Updated on: Mon, 12 August 2019 11:40]

Report message to a moderator

Re: A terminal emulator widget for U++ [message #52252 is a reply to message #51415] Fri, 16 August 2019 14:29 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 579
Registered: August 2007
Location: Turkey
Contributor
Hello,

A day for big updates Smile

Terminal ctrl has gained embedded images and Upp::Display support.

Terminal: Embedded images support  is added (currently, sixel).
Terminal: Renderer is improved and further optimized.
Terminal: Upp::Display support for image objects are added.
Terminal: LeftAlignedImageDisplay() and RightAlingnedImageDisplay() functions added.


Screenshot:

index.php?t=getfile&id=5894&private=0


You can always find the new version here:

https://github.com/ismail-yilmaz/upp-components/tree/master/ CtrlLib/Terminal

Best regards,
Oblivion


[Updated on: Fri, 16 August 2019 14:35]

Report message to a moderator

Re: A terminal emulator widget for U++ [message #52415 is a reply to message #51415] Sun, 22 September 2019 12:01 Go to previous message
Oblivion is currently offline  Oblivion
Messages: 579
Registered: August 2007
Location: Turkey
Contributor
Hello,

Terminal package is finally updated to v0.2.

Image rendering and handling mechanism is vastly improved. Smile

- Terminal: SixelRenderer class is rewritten;
- Terminal: SixelRaster class, a StreamRaster interface for sixel images, is added to the package.
- Terminal: A subset of xterm's window-op reports are implemented.
- Terminal: An I/O synchronization issue with the PtyProcess class that led to artifacts on screen on some setups is fixed.
- Terminal: Inline image support is improved.
- Terminal: Room is made for other inline image protocols.
- Terminal: WhenSixel event is removed in favor of a generic WhenImage event.
- Terminal: Image rendering strategy is changed to cell-level rendering for further flexibility.
- Terminal: An LRU-type shared image data cache is implemented.
- Terminal: Support for Jexer, a modern text user interface (TUI) and windowing system for terminal emulators, is added.
- Terminal: A general purpose data variable is added to the cell structure.
- Terminal: SGR image flag is added to the cell structure.
- Examples: Examples are further simplified.
- Various optimizations and fixes.
- Image gallery is updated.


The "final boss" for this release was the jexer support. Jexer is a modern text user interface and window manager that runs inside terminal emulators. (It is an advanced terminal multiplexer.)

There were only four high-end terminal emulators (xterm, mlterm, rlogin and jexer itself) fully supporting the jexer, Now they are five Smile

I've made short videos of Terminal ctrl.
The ssh terminal example on windows also demonstrates the power of Core/SSH package. (It connects to a Linux device over 300 km distance, and runs jexer with inline images support, which is very demanding). Cool


On Linux
- A basic terminal example with sixel graphics, and mouse tracking support.
- Used apps and tools: Jexer text user interface (TUI), GNUPlot, Emacs, Nano, htop, ncurses demos.
- Link: https://vimeo.com/359241367

On Windows
- A basic SSH2 terminal example with sixel graphics, and mouse tracking support.
- Used apps and tools: Jexer text user interface.
- Link: https://vimeo.com/361556973

On Turtle HTML-5 backend (in a web browser)
- A basic terminal example with sixel graphics, and mouse tracking support.
- Used apps and tools: Jexer text user interface.
- Link: https://vimeo.com/361558519

Screenshot (Windows, ssh terminal example):

index.php?t=getfile&id=5912&private=0

Terminal@: https://github.com/ismail-yilmaz/upp-components/tree/master/ CtrlLib/Terminal

Best regards,
Oblivion


[Updated on: Sun, 22 September 2019 12:46]

Report message to a moderator

Previous Topic: MessageCtrl: A passive notifications ctrl and manager.
Goto Forum:
  


Current Time: Mon Sep 23 13:23:21 CEST 2019

Total time taken to generate the page: 0.01602 seconds