gomuks icon indicating copy to clipboard operation
gomuks copied to clipboard

Irssi like keyboard shortcuts

Open vranki opened this issue 5 years ago • 16 comments

Testing gomuks for first time and it looks promising. First usability issue I found is that it doesn't support Irssi like keyboard navigation (weechat also supports it).

Most importantly:

alt-a: jump to channel with last highlight/message/other change. alt-numbers: jump to channel number.

These would make using the app super quick and should be trivial to implement.

vranki avatar Oct 03 '18 14:10 vranki

Are you aware of alt-Enter? Why is alt-# better than fuzzy finding?

Evidlo avatar Nov 05 '18 09:11 Evidlo

No, i wasn't. But anyway Alt-# is much much faster. It's also used in irssi & weechat.

vranki avatar Nov 05 '18 10:11 vranki

Personally I think switching to rooms by an index is a misfeature. When people want to switch rooms, they don't think "I want to switch to room 2", they think "I want to switch to #matrix-dev".

Additionally, rooms would have to be ordered/alphabetized before this could be implemented.

Evidlo avatar Dec 05 '18 05:12 Evidlo

they don't think "I want to switch to room 2", they think "I want to switch to #matrix-dev".

Definitely depends on number of rooms you're in. With irssi I've got things specifically ordered so that my most-used stuff can be gotten to by number. This is faster all the way up to 11 or so (numbers wrap around and alt-q works as 11). I also have a plugin called go2 that lets me hit ctrl-g and do fuzzy-finding search for a room. This is useful if I joined a room temporarily or someone PM'd me or something, but for the main rooms I vastly prefer being able to also get to them by a number.

edit: I do agree that rooms need to be ordered for this to make sense, and also that feature is extremely important to me. Weechat allows this, but Riot and gomuks do not. I hate the inconsistent ordering of activity-based ordering. A good UI can be used blindly, in my opinion.

Soundtoxin avatar Jan 04 '19 14:01 Soundtoxin

The thing is simply that people don't necessarily have to switch by numbers, but also could use ctrl-n or ctrl-p to switch to next/previous. I do switch by numbers fairly regularly, though. No need to visually keep track of any interface, you just switch where your brain remembers some window to be.

ghost avatar Apr 06 '20 06:04 ghost

Not needing to visually keep track is definitely a good thing!

However, if the shortcuts for next/previous room take you through all the rooms you're in, you'll need to go through all the rooms you almost never look at. It's a solution that doesn't scale, some people have hundreds of rooms. I think what it really should do is take you through the rooms you've recently looked at, as described in #128

MRAAGH avatar Apr 06 '20 10:04 MRAAGH

I think what it really should do is take you through the rooms you've recently looked at

This makes the order non-deterministic and it makes it extremely hard to use quickly without thinking about it. It's one thing to flick back and forth between the two most recent things (like a quick alt-tab), but if you just go to rooms as you need them, suddenly the order becomes a mess. With a set order, even if you have a large number of rooms, you could have something like #ubuntu and #ubuntu-offtopic next to each other and always know that you next/prev binds will get you to the related channel because you ordered it that way. Similarly you can put your most-used stuff at the start of your order so you can easily get to them via a number.

I don't see harm in having the option to cycle through rooms based on visit-order, but it shouldn't be any sort of default or main way of doing things. Maybe something like vim's ctrl-o to go back to previous lines/files.

Soundtoxin avatar Apr 09 '20 08:04 Soundtoxin

Oh yes, I was thinking about switching between 2 - 4 most recent things (for when you're active in that many rooms). Movement through history is super useful for that!

I didn't think about that set order thing before. That would work really well if we could trust the room list to retain its customized order across restarts, across relogging and across different devices (which means it'd need to go in a configuration file probably). But it's just hard to imagine that being possible since rooms get added and removed often. Are there clients that managed to do that?

MRAAGH avatar Apr 09 '20 08:04 MRAAGH

Are there clients that managed to do that?

Weechat is the only one I've seen that does it. It's common for IRC clients to work this way, so it's more of a result of weechat being primarily for IRC than anything else. The irssi irc client also works this way, but I don't know of a way to use matrix via irssi.

Soundtoxin avatar Apr 09 '20 08:04 Soundtoxin

Huh, in Weechat, matrix rooms change order for me every time I log in. Am I doing something wrong?

MRAAGH avatar Apr 09 '20 09:04 MRAAGH

Huh, in Weechat, matrix rooms change order for me every time I log in. Am I doing something wrong?

You may have to save room order manually and also restore it manually from what I remember. I haven't used weechat now in over a year. The matrix plugin I used stopped working, and I couldn't get the newer one people use now working. I've just used Riot from a browser or my phone, and I've stuck to irssi for irc, so I've largely forgotten things about weechat. edit: /layout load and /layout restore may be a lead

Soundtoxin avatar Apr 09 '20 10:04 Soundtoxin

this could all be solved by simply having a programmable config file. gomuks would expose all the actions that can be done, and everything could be mapped/remapped, then everyone wins! Person A binds their number-keys (or other keys) to specific rooms, person B doesn't like that and keeps only the current [Alt]-[K] for searching and jumping to a room, person C does something completely different... There should be a {sane,simple,usable,consistent} set of defaults (like how it is now), but totally changable.

pltrz avatar Apr 09 '20 13:04 pltrz

related: #112

and tbh, that issue covers this problem better and more generally. IRSSI-like keybindings are a specific niche, not everyone likes that and the defaults shouldn't try to fit into all the different preferences.

pltrz avatar Apr 09 '20 13:04 pltrz

Oh, now I remembered. Weechat doesn't have the number-jumping as a built-in feature; it just happens to be in the default configuration file.

...
meta-j46 = "/buffer *46"
meta-j47 = "/buffer *47"
meta-j48 = "/buffer *48"
...

But it's changeable, of course. So as @pltrz said, what we really need is configuration!

MRAAGH avatar Apr 09 '20 15:04 MRAAGH

How about making alt-number jump to a favourite? The average user isn't expected to have more than 10 (0 meaning 10), and it doesn't impact the paradigm of using alt-k to jump to an arbitrary channel.

lenormf avatar Sep 08 '21 09:09 lenormf

Just to add my 2-cents (more than a year since the last comment, but hey, issue is still open!): While I'm fine with fuzzy-finding for the most part (though favorites sounds nice), what I think I'm currently missing the most is

  • the aforementioned "jump to active buffer" feature
  • toggle back and forth between previously-visited buffers, like alt-< and alt-> in weechat, or alt-<arrows>/ cmd-[ and cmd-] (mac) in Slack.

jaawerth avatar Nov 04 '22 14:11 jaawerth