Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jumping to split panes & tabs through numeric mappings #1295

Open
samirotiv opened this issue Dec 22, 2016 · 8 comments
Open

Jumping to split panes & tabs through numeric mappings #1295

samirotiv opened this issue Dec 22, 2016 · 8 comments
Labels
💬 Feedback Wanted Issue or PR needs input from the community! Lend your thoughts ✨ 🎨 Type: Enhancement Issue or PR is an enhancement request/proposal for Hyper

Comments

@samirotiv
Copy link

  • [Y] I am on the latest Hyper.app version
  • [Y] I have searched the issues of this repo and believe that this is not a duplicate

Feature Request

screen shot 2016-12-22 at 6 38 26 am

I've traditionally used iTerm on Mac, and now I'm switching to Hyper. I am aware of the current shortcut keys to switch panes/tabs in Hyper, but there's a feature that I believe would make work much faster for Hyper users.

If you look at the screenshot, you will see designated shortcuts on every split pane as well as every tab with a number - so Cmd+2 takes you straight to tab 2, and Alt+3 takes you straight to pane 3.

This makes it much easier and faster to work than the current scheme, especially when you have a large number of tabs and split panes open. The numbers save you the effort of thinking how many times to press the cycle button. It enables the power of multiple split panes, especially if one is using a large screen.

So, I can reach any tab and any split pane in that tab with O(1) taps of my keyboard (max 4, if I want to switch to a different tab and different split pane, usually 2)

On the other hand, with the current shortcut I need to go cycling around and pressing Ctrl+Alt+Tab repeatedly until I reach my pane/tab. This means that if I have X tabs open and Y panes open, in the worst case I need to press a shortcut of 3 buttons (X-1)+(Y/2) times. And I often have 7-8 tabs with around 5 split panes on every tab. This is especially more cumbersome if I have split the panes in an unnatural order - they don't cycle in a clockwise or anticlockwise way.

I'm sure many users already love Hyper, and would love it even more if it gets something like what is there in the screenshot - life is too short to spend cycling through tabs and panes.

@albinekb albinekb added 💬 Feedback Wanted Issue or PR needs input from the community! Lend your thoughts ✨ 🎨 Type: Enhancement Issue or PR is an enhancement request/proposal for Hyper labels Jan 4, 2017
@albinekb
Copy link
Contributor

albinekb commented Jan 4, 2017

This would be neat! Possibly a plugin? 🤔 But i think this could be in core, @rauchg @matheuss ?

@chabou
Copy link
Collaborator

chabou commented Jan 4, 2017

Really more efficient than using arrow like suggested here #828
(and complementary).
I'll will suggest to show number of tab/pane only when CMD or ALT key is down to save some space

@samirotiv
Copy link
Author

Good point. Would suggest that the hiding is optional. In most use cases, the number that is shown is far easier to remember that the title of the tab.

The name of the process running is typically less informative, but whereas I can easily remember what I have running in each tab number.

I am unfamiliar with the structure of Hyper, but I think this is essential functionality that would make life faster and easier for every user of Hyper. If I was a product manager for Hyper, I would ensure this comes out-of-the-box with Hyper.

As a user, I am happy with whatever is decided. :) Looking forward to seeing this implemented, so that I can deploy Hyper across my organisation with no second-thoughts.

@chabou
Copy link
Collaborator

chabou commented Jan 4, 2017

For tab, number assignation is obvious. Left to the right and reassign when a tab is deleted (and moved by plugins, but out of our scope).

But for pane, it could be tricky (but don't really matter). Ordered by creation time and reassign when a pane is deleted seems the most logical and easy to remember (not change with new pane). But iTerm has chosen to assign them by TermGroup position/split
capture d ecran 2017-01-04 a 21 35 49

(Notice: iTerm keep the number 9 for the last (down-right) term)

@samirotiv
Copy link
Author

If I understand it correctly, it should work if we sort panes in lex order (on a vector) with the key for each pane being the vector of creation times of its ancestral chain, starting from the root pane upto itself.

@ppot
Copy link
Contributor

ppot commented Jan 5, 2017

Hahah @chabou My rework of the structure in #945 might help! Since the pane structure is keep in the background.

@chabou
Copy link
Collaborator

chabou commented Feb 8, 2017

Made with a plugin : https://github.com/chabou/hyper-pane
Feedback warmly welcome

@shinriyo
Copy link

I want this feature. It is easily see which panel is it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💬 Feedback Wanted Issue or PR needs input from the community! Lend your thoughts ✨ 🎨 Type: Enhancement Issue or PR is an enhancement request/proposal for Hyper
Projects
None yet
Development

No branches or pull requests

5 participants