Skip to content

Add TST integration - #1646

Closed
bovine3dom wants to merge 16 commits into
masterfrom
tst_int
Closed

Add TST integration#1646
bovine3dom wants to merge 16 commits into
masterfrom
tst_int

Conversation

@bovine3dom

@bovine3dom bovine3dom commented Jun 1, 2019

Copy link
Copy Markdown
Member

Replacement for #1260. Will close #377 once merged.

Edit: this page is useful for reference https://github.com/piroor/treestyletab/wiki/API-for-other-addons#register-and-unregister-your-addon-to-tst

- Remove promise nesting and use await instead

- Add TST Extension check

- Change default TST integration to true

- Sketch out management for type checker

- Fix `tslint` errors

- Replacement for #1260
@bovine3dom

Copy link
Copy Markdown
Member Author

Given that I don't use TST, and that I'm not really sure what people expect out of its integration, I'm going to abandon this PR in the hope that someone with more enthusiasm picks it up - #377 is one of our most requested features, so it would make you lots of friends :)

Happy as always to assist with questions either here or on Riot.

@bovine3dom

Copy link
Copy Markdown
Member Author

From @saulrh in #1664:

Provides: the low-hanging fruit. tabprev/tabnext only move to visible tabs. tstup moves to ancestors of the current tab. tstcollapse and tstexpand to toggle visibility.

Infrastructural work: Make lib/extension_info.ts more ergonomic and add some features. Fix some bugs in the TST registration code e.g. not specifying listeningTypes and not trying to use nonexistent localizations. Use the extension_info lib to make the code cleaner and safer. Add some super-bare-bones types for TST's tabs and enums.

Remaining: tree information in completions, tree navigation in completions, actual thought put into the excmds for navigating around the tree because the stuff I have now would be super hard to bind usefully and is mostly a POC.

The tests pass, but I didn't do a ton of testing with TST disabled, so run this for a bit on your non-TST-enabled browsers to makes sure I didn't cause any breakage elsewhere.

@bovine3dom

Copy link
Copy Markdown
Member Author

Todo:

  • Give better errors when TST is not installed

@bovine3dom

Copy link
Copy Markdown
Member Author

Someone mentioned that :winmerge (#404) doesn't preserve the tree structure of tabs - perhaps this is something that the integration could do. tab{grab,push} should probably gain an option to also push/grab the descendants of a tab.

@bovine3dom

Copy link
Copy Markdown
Member Author

Closing in favour of #2569

@bovine3dom bovine3dom closed this Jul 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Tree Style Tab interop

3 participants