Importing hotkeys from H20 into H20.5
2740 18 4- ikoon
- Member
- 211 posts
- Joined: Jan. 2016
- Offline
- PolyMarvels
- Member
- 915 posts
- Joined: Sept. 2018
- Offline
Unfortunately, hotkey manager is totally broken, and to add salt to the injury, none of the shortcuts from H20 will work if imported. I need a vacation to chill off at this point.
QA Specialist at Greyscalegorilla |PolyMarvels YT: https://www.youtube.com/channel/UCqXuTLiaL-jqvn3LK1XlwHg [www.youtube.com] | Instagram: https://www.instagram.com/polymarvels/?hl=en [www.instagram.com]
- kodra
- Member
- 373 posts
- Joined: June 2023
- Offline
- PolyMarvels
- Member
- 915 posts
- Joined: Sept. 2018
- Offline
kodra
I contacted to SideFX support for this.
They suggest recreating the hotkeys in H20.5. No kidding.
I really don't know why they changed how hotkeys work.
What I would like to know is, what was improved!!!?
Edited by PolyMarvels - July 15, 2024 13:48:36
QA Specialist at Greyscalegorilla |PolyMarvels YT: https://www.youtube.com/channel/UCqXuTLiaL-jqvn3LK1XlwHg [www.youtube.com] | Instagram: https://www.instagram.com/polymarvels/?hl=en [www.instagram.com]
- ikoon
- Member
- 211 posts
- Joined: Jan. 2016
- Offline
- PolyMarvels
- Member
- 915 posts
- Joined: Sept. 2018
- Offline
ikoonIll cry for you too my friend, my condolences.
I have over 300 hotkey overrides.
(some of them are assignments, some of them were automatic "un-assignments" of default hotkeys)
Thank you guys for the information. I hope there will be some way to convert them from 20 to 20.5
QA Specialist at Greyscalegorilla |PolyMarvels YT: https://www.youtube.com/channel/UCqXuTLiaL-jqvn3LK1XlwHg [www.youtube.com] | Instagram: https://www.instagram.com/polymarvels/?hl=en [www.instagram.com]
- Ondrej
- Staff
- 1081 posts
- Joined: July 2005
- Offline
Houdini 20.5 is using a new hotkey system, with new default configuration files and a new keymap file format and extension (.keymap2).
The documentation on all this is a little behind, so please bear with us.
You can bring in your bindings from an old .keymap file into a new .keymap2 file, with a helper python script, but it's a little involved. First you need to save out a new .keymap2 file from Houdini to act as source from which we will look up the bindings in the old .keymap file and generate a new .keymap2 file with your old bindings.
Then, in a python shell, you can run the following, replacing the arguments to match your file paths/names.
The documentation on all this is a little behind, so please bear with us.
You can bring in your bindings from an old .keymap file into a new .keymap2 file, with a helper python script, but it's a little involved. First you need to save out a new .keymap2 file from Houdini to act as source from which we will look up the bindings in the old .keymap file and generate a new .keymap2 file with your old bindings.
Then, in a python shell, you can run the following, replacing the arguments to match your file paths/names.
import keymaputils keymaputils.importV1KeymapBindingsToKeymapFile("path_to_new_keymap2.keymap2", "path_to_old_keymap.keymap", "path_where_to_write_the_new_keyamp2_file", "KeymapName")
- PolyMarvels
- Member
- 915 posts
- Joined: Sept. 2018
- Offline
Ondrej
Houdini 20.5 is using a new hotkey system, with new default configuration files and a new keymap file format and extension (.keymap2).
The documentation on all this is a little behind, so please bear with us.
You can bring in your bindings from an old .keymap file into a new .keymap2 file, with a helper python script, but it's a little involved. First you need to save out a new .keymap2 file from Houdini to act as source from which we will look up the bindings in the old .keymap file and generate a new .keymap2 file with your old bindings.
Then, in a python shell, you can run the following, replacing the arguments to match your file paths/names.import keymaputils keymaputils.importV1KeymapBindingsToKeymapFile("path_to_new_keymap2.keymap2", "path_to_old_keymap.keymap", "path_where_to_write_the_new_keyamp2_file", "KeymapName")
Thanks Onder, that will help, especially to Ikoon, for me I could do it manually and refresh the whole sheet, but I'll probably try the script first.
Thank you!
QA Specialist at Greyscalegorilla |PolyMarvels YT: https://www.youtube.com/channel/UCqXuTLiaL-jqvn3LK1XlwHg [www.youtube.com] | Instagram: https://www.instagram.com/polymarvels/?hl=en [www.instagram.com]
- ikoon
- Member
- 211 posts
- Joined: Jan. 2016
- Offline
- ikoon
- Member
- 211 posts
- Joined: Jan. 2016
- Offline
I have tried the importV1KeymapBindingsToKeymapFile command as you suggested and got this error from line 260:
if dst_keymap_name and impl.name_token in keymap:
NameError: name 'impl' is not defined
So I have added these four lines into the function definition just to try it:
Then I got no errors. I have exported the new keymap2 file and some of the hotkeys were indeed imported.
However many hotkeys were not imported (many of them are hotkeys to shelf tools). I have attached my h20.keymap file and I will also send a Bug/RFE.
if dst_keymap_name and impl.name_token in keymap:
NameError: name 'impl' is not defined
So I have added these four lines into the function definition just to try it:
if (version := keymap.get(version_token)) and version >= 2: impl = Version2KeymapImpl() else: impl = Version1KeymapImpl()
Then I got no errors. I have exported the new keymap2 file and some of the hotkeys were indeed imported.
However many hotkeys were not imported (many of them are hotkeys to shelf tools). I have attached my h20.keymap file and I will also send a Bug/RFE.
- PolyMarvels
- Member
- 915 posts
- Joined: Sept. 2018
- Offline
It would be great to fix that Search field that was in the top right corner. It's quite essential to the Hotkey Manager. I was hoping its gonna be fixed in the first daily build, but unfortunately, it is not.
QA Specialist at Greyscalegorilla |PolyMarvels YT: https://www.youtube.com/channel/UCqXuTLiaL-jqvn3LK1XlwHg [www.youtube.com] | Instagram: https://www.instagram.com/polymarvels/?hl=en [www.instagram.com]
- ikoon
- Member
- 211 posts
- Joined: Jan. 2016
- Offline
- ikoon
- Member
- 211 posts
- Joined: Jan. 2016
- Offline
- Ondrej
- Staff
- 1081 posts
- Joined: July 2005
- Offline
- ikoon
- Member
- 211 posts
- Joined: Jan. 2016
- Offline
- CYTE
- Member
- 709 posts
- Joined: Feb. 2017
- Offline
Hey everybody,
I would like to convert my keymap to the new format. But I fail. I don't know what I did wrong but I get:
Could somebody convert my keymap? That would be great.
Thanks in advance!
Cheers
CYTE
Edit: ikoon helped me. Thanks again, buddy!
I would like to convert my keymap to the new format. But I fail. I don't know what I did wrong but I get:
PermissionError: Permission denied:from the python shell.
Could somebody convert my keymap? That would be great.
Thanks in advance!
Cheers
CYTE
Edit: ikoon helped me. Thanks again, buddy!
Edited by CYTE - July 18, 2024 10:58:47
- OneBigTree
- Member
- 382 posts
- Joined: Nov. 2010
- Offline
- AnimGraphLab
- Member
- 66 posts
- Joined: May 2019
- Offline
Just in case, for someone still figuring out..
1. Open Houdini -> Alt+Shift+P (Python Shell).
2. Paste the code below replacing your old and new keymap paths. I keep them at Documents/houdini.
For Windows:
Ondrej mentioned about it: "to act as source from which we will look up the bindings in the old .keymap file and generate a new .keymap2 file".
In my case, all hotkeys were updated.
1. Open Houdini -> Alt+Shift+P (Python Shell).
2. Paste the code below replacing your old and new keymap paths. I keep them at Documents/houdini.
For Windows:
import keymaputils keymaputils.importV1KeymapBindingsToKeymapFile( "C:\\Users\\<YOUR_USERNAME>\\Documents\\houdini20.5\\animgraphlab_hotkeys_20.5.keymap2", "C:\\Users\\<YOUR_USERNAME>\\Documents\\houdini20.5\\animgraphlab_hotkeys.keymap", "C:\\Users\\<YOUR_USERNAME>\\Documents\\houdini20.5\\animgraphlab_hotkeys_20.5_NEW.keymap2", "KeymapName" )
animgraphlab_hotkeys_20.5.keymap2
is a default keymap from H20.5 that I manually saved. Ondrej mentioned about it: "to act as source from which we will look up the bindings in the old .keymap file and generate a new .keymap2 file".
In my case, all hotkeys were updated.
Generalist. Transforming still images to 3D animation 🔮
Socials: https://linktr.ee/AnimGraphLab [linktr.ee]
Socials: https://linktr.ee/AnimGraphLab [linktr.ee]
- OneBigTree
- Member
- 382 posts
- Joined: Nov. 2010
- Offline
AnimGraphLab
Just in case, for someone still figuring out..
1. Open Houdini -> Alt+Shift+P (Python Shell).
2. Paste the code below replacing your old and new keymap paths. I keep them at Documents/houdini.
For Windows:import keymaputils keymaputils.importV1KeymapBindingsToKeymapFile( "C:\\Users\\<YOUR_USERNAME>\\Documents\\houdini20.5\\animgraphlab_hotkeys_20.5.keymap2", "C:\\Users\\<YOUR_USERNAME>\\Documents\\houdini20.5\\animgraphlab_hotkeys.keymap", "C:\\Users\\<YOUR_USERNAME>\\Documents\\houdini20.5\\animgraphlab_hotkeys_20.5_NEW.keymap2", "KeymapName" )animgraphlab_hotkeys_20.5.keymap2
is a default keymap from H20.5 that I manually saved.
Ondrej mentioned about it: "to act as source from which we will look up the bindings in the old .keymap file and generate a new .keymap2 file".
In my case, all hotkeys were updated.
Thank you but this can't be seriously a way to load hotkey configurations in 5k software, can it?
Are there any plans to make Hotkey management user friendly again? Eben manually configuring hotkeys is time consuming and tedious.
But somehow it seems to fit into the grand scheme of things.... Houdini is now my most time consuming part of my job. It actually costs me more than I get paid for because no one pays me for configuring hotkeys. And I can't hire a TD for that
Edit: Even the Help file is not updated for the lack of a search bar. Am I missing some thing?
I have no way of knowing what all the action terms are so the filter is of no use. I am trying to set a hot key for a radial menu in the node tree but filtering to "radial" yield zero results. How is anybody supposed to work this way?
Edited by OneBigTree - Oct. 18, 2024 15:06:42
-
- Quick Links