Is it possible to configure key bindings?  



I love Cinelerra, but it seem crazy to me that I need to relearn every shortcut for operations like copy and paste.

Is there a way to configure this to behave like other programs, or simply the way I want?

Also, I would love to invert polarity of zooming with the mouse wheel, and switch the keyboard modifiers here as well (which, again, are the opposite of the timeline-based daws I've been using for years).


4 Answers

Due to the quite large number of functions, (over 400 shortcuts, and only about 100 keys to map them)  the potential for interfering parsers is overwhelming.  It is already very hard to debug.

Remote control uses v4l2 and the shuttle has a rc file that can customize the key input somewhat, BUT too hard and too easily broken.


I see.  I don't know enough technically to understand the objections but I believe you.  At the same time, I think it would be really nice to have the option of using standard shortcuts for some of the most common operations. 

For first-time users it's really a steep learning curve.  Is there a specific reason why they've abandoned convention on these operations?



I did not mean to infer that it is technically impossible to reprogram Cinelerra to provide keymapping - with motivation a volunteer C programmer could do this.  But right now only 1 full time volunteer is working on Cin with some generous testing/themes/feedback and other contributions from people as their time permits.  To sort of illustrate the difficulty, refer to the URL below (a fork image) where you can see I got a "Lynx" shortcut, but now I changed my mind and want to get to the "Libra" shortcut instead.  Your eye can just glance down the last column and see where to go BUT the program has to go all the way back to the very first "iota" to get to the right place.

There are a few reasons why the current set of keys are the way they are defined.

1) The original author, who was not only versatile in NLE's but also knew how to program, established the keys that way.  Was there some convention he followed? Very many of these keys were known only in the code base until we were able to coordinate the program with the shortcuts.html document.

2) GG as a programmer, and initially only an occasional user of Cinelerra, added key definitions as made sense from the vast amount of code in place to add new features or shortcuts.  He does not copy from other NLEs and purposefully does not look at them (except when I make him).

3) We are totally unaware of any abandoned "convention" for these operations.  Is there a known published convention? or is it that "joe" did it this way, so "jane" has to do it the same way, or "jack" just copied "jane's" code?

However, all is not lost.  There is a MantisBT issue #181 - Swap Context Menu Keys which also relays the same problem of key confusion.  So if you want to add to that or just reply here on a few basic key changes that you feel are an absolute must, gg is willing to make changes if technically feasible and AS LONG AS other users are not vehemently opposed to a specific change.  You can see how past users of Cinelerra might object to some of these changes when they are used to them a certain way.

If you come up with a list, be VERY SPECIFIC, for example as you already stated:

- Invert polarity of zooming with the mouse wheel

- Switch the keyboard modifiers here as well - this is not specific enough and also if you use a different key, then you must also provide what the key you took away is now supposed to be.

Looking forward to a list  !!!

Well, I hope not too many changes are made, Cin is the only NLE I have used where the keyboard shortcuts make sense to me and I use some of them a lot. I haven't learned them all yet though, likewise the mouse wheel!


Thanks Phylsmith,

and thanks Dejay, I understand your point absolutely.

First of all: I am totally grateful that software like Cinelerra exists and I realize it's made with enormous amounts of hard work by people who often are not being paid (I don't know if some of the Cinelerra developers have found ways to fund their work).  I apologize if my suggestions seem out of place.  I believe strongly in open source software and although I have zero programming knowledge or experience (I only vaguely understand what that image means), I hope that user feedback can still be helpful and constructive in some way.  I have been collaborating sporadically in this sense for years with developers of Ardour (open source DAW) and Harrison Mixbus (closed source fork).  I also donate to projects I believe in.

Just to say, I respect and appreciate the work that has been done, and my requests are not willfully capricious but carefully thought out.  And I also realize the right of the community and developers to do whatever they want and ignore outside requests.  However I have seen Ardour and Mixbus grow and improve drastically over the last several years and I feel it is partly because they have gone out of their way to improve the user experience and interface (Mixbus's additions consist almost entirely in a variation on the interface to improve usability).  I imagine this effort has brought them much greater chances to generate revenue and attract the interest of developers.

Now I will respond point by point.

1. Got it, I understand that the first developer principally designed it to be comfortable for him, no arguments with that.

2. I understand the desire to not break something that already works, and not alienate experienced users.  However I think it might be worth offering a variant which uses more standard keyboard shortcuts for common operations.

3. I understand your point but I think that many of us are accustomed to the following bindings for common operations:

ctrl+c=copy, ctrl+v=paste, ctrl+x=cut, ctrl+s=save, ctrl+q=quit.  To my knowledge, these bindings are the defacto standard for common user programs.  I can use them in every program I commonly use: text editors, document editors, file managers, etc.  They work on Windows, they work on Mac (if you substitute the apple key), they work on every flavor of Linux I've come across.  I have no doubt there are variations or exceptions but I think you have to concede that this handful of operations is commonly performed with these keys almost all the time in most common programs.  In terms of more technical multimedia programs, they work for me in GIMP, Ardour and Harrison Mixbus as well, which I presume is to avoid forcing users to learn new shortcuts.  I think for new users or occasional users (like myself), this is a major problem, and for a period I switched to another (much less powerful) NLE just because I found it so frustrating.

In that sense I think it would make the interface much more intuitive for new users if we could at least have the option of selecting 'classic Cinelerra bindings' or 'standard word-processor bindings' for the basic shortcuts.  I don't know how much extra work that would be, but it would perhaps help attract new users, or at least lower one of many barriers which many new and occasional users might find insurmountable.

In my specific case, the difficulty arises from the fact that I mostly do audio editing in those DAWs.  These editing operations have a very similar workflow to NLEs like Cinelerra, but all the shortcuts are the opposite, so I need to either switch all the keybindings in my DAWs to match Cinelerra or waste a lot of time making mistakes as I relearn Cinelerra's bindings and then relearn the other bindings when I switch back.  Also, having s bound to save and q bound to quit seems a bit dangerous to me because you can quickly muck up a project.  Requiring modifiers for operations like cut and save would make those operations much more deliberate (but yes, perhaps slower).

Thanks for your attention and I'll get to work on the list!


Please Login or Register