IssueRaiser

Scenario: Add support for 3rd-party extensions

Updated thread from #555 Now that we have a better understanding of what work will be needed to support 3rd party extensions ("plugins"), this thread is the megathread to track all the work that's needed to support them. Before any real work can begin here, we're waiting on some support from the Windows operating system that will be coming Soon<sup>TM</sup>. Fundamentally, third-party code extensions for packaged applications (like us) isn't supported currently. This is _not_ work slated for 1.0. It may not even land in 2.0. This work will likely span multiple releases. Whenever this work does end up starting formally, we'll likely have a number of minor versions with prototypes of the extensibility model, with breaking changes up until the major version release of the Terminal. So if extensions are scheduled for 3.0, then 2.4 might _introduce_ bts of the extensibility model that are later broken in 2.5, 2.6, etc. ## What should extensions be able to do? * Add their own profiles via Dynamic Profile Generators * Customize the rendering of the Terminal, with things like: - custom shaders, font renderers - custom formatting of the buffer (like hyperlinks) * Add their own Color Schemes, keymaps * Modify the UI theme (for adjusting appearance of tabs, scrollbars, etc.) * Modify the layout of the UI - Add elements to the UI like status bars, toolbars, minimaps - reposition existing elements of the UI? Tabs on bottom for example. * Create `Pane`s with their own UI eleme

Posted by zadjii-msft on Dec 17, 2019, 4:27 PM

Tags

Related issues

Raise real-world problems, find people facing the same issue, and discuss solutions.3,500 issues0 comments

reliability (Other)

Scenario: Add support for 3rd-party extensions

zadjii-msftDec 17, 2019, 4:27 PM

Updated thread from #555 Now that we have a better understanding of what work will be needed to support 3rd party extensions ("plugins"), this thread is the megathread to track all the work that's needed to support them. Before any real work can begin here, we're waiting on some support from the Windows operating system that will be coming Soon<sup>TM</sup>. Fundamentally, third-party code extensions for packaged applications (like us) isn't supported currently. This is _not_ work slated for 1.0. It may not even land in 2.0. This work will likely span multiple releases. Whenever this work does end up starting formally, we'll likely have a number of minor versions with prototypes of the extensibility model, with breaking changes up until the major version release of the Terminal. So if extensions are scheduled for 3.0, then 2.4 might _introduce_ bts of the extensibility model that are later broken in 2.5, 2.6, etc. ## What should extensions be able to do? * Add their own profiles via Dynamic Profile Generators * Customize the rendering of the Terminal, with things like: - custom shaders, font renderers - custom formatting of the buffer (like hyperlinks) * Add their own Color Schemes, keymaps * Modify the UI theme (for adjusting appearance of tabs, scrollbars, etc.) * Modify the layout of the UI - Add elements to the UI like status bars, toolbars, minimaps - reposition existing elements of the UI? Tabs on bottom for example. * Create `Pane`s with their own UI eleme

Comments (0)

No comments yet. Start the discussion.

Comment on this issue