Rhino WIP Feature: Instant Aliases (hot keys)

Sigh. Sorry guys this concept is obviously not going to work just from all the discussion already about the ludicrous ideas to work around all the cases that break it, more of which are surely waiting to be discovered it’s only been a couple days. Holding extra keys to override? TIMERS? Good Lord. Consistency trumps whatever reduction in extra key presses–net of all the extra hoops needed to work around all the limitations!–is being aimed at here.

Actual improvements to Rhino’s actual UI will not come from this responding-to-user-requests-to-rip-off-totally-different-software process. It certainly hasn’t happened in 25+ years.

If this idea is so darn awesome you can just do what you see video editors do behind the scenes of YouTube channels and have an entire extra keyboard with macros assigned to keys and get most of the benefit…or more likely learn it’s not all that beneficial.

I don’t understand your point @JimCarruthers.
However, there is a reality of implementation.
Other software can provide a basis for reflection.
(Personally, there will be a certain number of Blender shortcuts that I will define in Rhino because I have become accustomed to them).

My point is that this is about copying other software (that works differently, with scant evidence it even really “works” there) and making “customizing Rhino” a sort of hobby with again zero evidence of actual benefit.

Go read some Jef Raskin and think about what you’ve done.

You may be right Jim, we’ll see. This is a WIP feature and if it ends up being a dud the feature was designed to be easily removed from the shipping product. If anything it seems like an opt in feature for users who like to customize things instead of a default so it won’t affect people who don’t feel they need it.

All of the discussions so far have been around how to skip an instant alias when you want to type more letters. It may be that this is foolish and just designing your instant aliases in a way that you never need to bypass is the approach to take Combinations like VV and ZZ probably never need to be bypassed. Or… just don’t have instant aliases at all.

I’ll experiment with some of the ideas being tossed around and we’ll see where this goes.

This is infuriating. Rhino’s whole bloody UI is stuck in the bloody 90s (and I’m including V8 in here, which is a MESS) and you get cold feet and want to throw the baby out with the bathwater because you have a technical debt that’s so dear to you that you’re unwilling to add an option that says “use space bar to toggle command line input priority instead of repeating the last action”?

Is this why we have a snail pace of progess in Rhino development?

:face_with_spiral_eyes:

Well, what strikes me from this feature - and all the subsequent commentary is this:

People have been asking to have hotkey commands (without enter) for years. And when someone finally gives you exactly that, almost all of the reactions are basically negative…

“No, not that way!!! It has to be my way or it will be a of pile sh…”

So I can understand Steve’s response.

That’s a weird takeaway from this thread, and I don’t know how you could work in any creative industry (or any industry) if that’s all you see.

Plus, with UX design, there’s established methods on how to evaluate feedback and evaluate design implementations.

not at all, there is a lot of positive feedback here. i am for my part extremely hyped about it. but since it is the first step into a new direction there is obviously going to be a lot of feedback, and sure not all go the same direction, that is for the developers to decide. lets not kill a new living being just because it still hast to learn to walk properly.

That was precisely my point. In the end, it’s going to work “à la Rhino”, and that most likely will not be exactly how certain people want it to work - because it’s impossible to to match everyone’s’ expectations exactly.

Sorry, but apparently no one asking for this feature–which is about the pointless pursuit of “reducing keypresses” at the expense of every other sensible principle of UX design and treating customizing Rhino like some sort of hobby in and of itself–thought through the implications of it more than 1 step, seriously thought about what else would have to change to make it actually “work.”

Of course asking for more hotkeys is precisely as “outdated” as Rhino’s command-line, that’s some 90s nonsense. Actual forward-thinking would be about how to make Rhino work on a PHONE.

Rhino’s UI is bad. All the requests to “improve” it are worse.

I asked to reduce the number of keys pressed for instant aliases. Otherwise, there are already aliases and nothing more would be needed.

I also find this feature great because it would be very productive. It’s not a supposition, since I use it elsewhere on very different software, and in my case, it’s great and productive.

I don’t know if I’m wrong, but I feel like I’m one of the critics. It seems to me that I have delved into the question.

By searching, I might even be able to find the code on an old USB stick. I thought this experience could be useful.

For having made the effort, yes, Rhino has strong constraints preventing the simple implementation of this feature. That doesn’t mean it’s impossible, maybe together we can find something.

nothing worse than somebody complaining about how everything is wrong and that everybody is doing everything more wrong and not sharing any productive insight into what may be better than trying to improve rhino other than having it work on the phone. you sound way too frustrated and are officially disqualified from this topic. go grab a beer, breath in breath out move on.

in the end its a software which people need to work fast and sufficient, if we all can agree on that we stop stumbling over each others feet.

I don’t know the precise implementation of timers in FreeCAD, but anyone can look it up. For me it worked extremely well in its sketcher. Honestly, I believe there is no one-size-fits-all here. As with programmable keyboards, some like timers, some people don’t.

Consider fhe various kinds of feedback as ideas that can be tested by people, because in the end you’ll only really know what works if you’ve used it. Something may sound great, but turn out to be a terrible experience.

I have been asking for this feature for years. It’s great that we can finally test it!! I haven’t tried it yet but I am sure that it will be a huge step in speed and in the perception of responsiveness of the software. Thank you!!

If you want to implement it with multiple letters, it will be a challenge. I haven’t seen it implemented like that in other sw, always with modifiers and a single key.
In some complex sw I have seen context sensitive aliases. Modeling, rigging, texturing, animating, all with the possibility to set different shortcuts. So you have different interfaces with different shortcuts. Once it’s set up you get used and you don’t even think about it.

Seeing the responses in this and previous threads it might be good to have a general on/off switch for instant aliases. for all the ones that don’t want to change.

Good to see the Instant Aliases first implementation attempt… It definitely has the potential to be a great new UI feature, if we can get it right.

I am not sure about the Shift override. Over here I have 5-10 aliases per many shared first letters, so if I wanted “Z” to be instant, having to Shift-type all of the other ones seem quite inconvenient. I probably would not trade the extra shift key for many of them for one being instant.

I think the “Spacebar” should be worth considering as the modifier for Instant Keys. As mentioned above, it’s the long key, easy to combine with any other keys with one hand.
We would not even have to sacrifice the “Enter/Repeat last” behavior, just modify it a bit. Currently the repeat/enter happens instantly on Spacebar key press. What if it happened only one Spaceabar release, and only if no other keys were pressed when Space was down? That way we can differentiate between pressing Space+Z for “Z” Instant alias, vs just pressing space to enter/repeat.
This should work nicely with all keys on the keyboard, and even inside running commands. You only would need to disable it when typing a text in command line inside quotation marks, like it currently is done anyway.

Another possible idea - and this is something I have already implemented on my Rhino via scripting and for past several years work with using instant keys in Rhino: use MMB as your modifier key for instant shortcuts. It works really well - the hand it already on the mouse so it makes it very easy to press MMB and then any keyboard key. I have it working with all keyboard keys, and even inside other running commands.
I know a lot of people prefer MMB for other actions, but: if you use it to show PopUp toolbar or run a macro, it can be done by enabling Alt, Shift, or Ctrl + MMB to do these things. If MMB is used for view manipulation - it can stay that way, since for the instant key shots the mouse is not moving…
I got so used to MMB+key instant shortcuts that can’t imagine going back, so if this sounds interesting, feel free to steal the idea for Rhino improvement!

(white we are at it: please consider adding mouse actions for all combinations of Alt,Shift,Ctrl + MMB click - quite many of them and also very useful to enhance quick access to functions in Rhino)

my 2c

–jarek

Yes, I also think that using the space bar to activate instant aliases is a good compromise.

@Jarek, would you like to share a script example of the MMB+Key implementation?
Sounds like a convenient ergonomic solution to try.

Well this new feature would become not so new at all : can’t you already have « instant » aliases activated with spacebar ?

I tried it. As I suspected it’s fantastic with one letter!
With multiple letters… not so sure.
It works but you need to remember how long you need to keep the shift key pressed. For instance I set four aliases. c, co,con and coff. To access con and coff I need to remember that c and co are taken and release the shift key after the second letter otherwise it fires a different command or I need to press enter at the end, defeating the whole point of having instant aliases.

I think that single letters with modifiers would be much better. Single keys with modifiers are around 300 aliases if I am not wrong. More than enough… For the rest there should be a key that if pressed once, it overrides the instant aliases to type on the command line as usual.

If possible I think it would be great to be able to store different profiles and switch between them quickly.

As I said before all this should be enabled or disabled through a global switch

Also (and I know this is more complicated) if a command is fired through instant alias it woud be awesome to have also instant options… for instance L for line and m for middle without the need to press enter…