On this page |
概要 ¶
Note
Houdini20.0から、ホットキーバインドは、<modifiers> + <unmodified_key>
で指定するようになりました。
バインド内のこの<unmodified_key>
には、どのUnicode文字も使用することができます。
キーマップファイルとオーバーライドファイルにはUTF-8エンコードを使用します。
あなたの.keymap
ファイルがHoudini19.5またはそれ以前のものだった場合、<modifiers> + <unmodified_key>
バインドを使用するように変換ことができます。
Note
Houdini20.5から、Houdiniは新しいホットキー解決とコンテキストのシステムを使用するようになりました。 ホットキーシステムの移行を参照してください。
-
左側のペインは、 コンテキスト のツリーを表示します。
コンテキスト毎にホットキーが存在します。異なるコンテキストの異なるアクションには同じキーを割り当てることができます。 より高いレベルのコンテキスト(例えば、トップレベルの“Houdini”コンテキスト)のホットキーは、特定のコンテキストの同じホットキー(例えば、ジオメトリビューアのSelectツール)によって上書きされます。
⌦ Delなどの一部のホットキーは、ほとんどの別のコンテキストで同じアクションに割り当てられています。
-
中央のペインは、現在選択されているコンテキストの アクション のリストを表示します。
-
右側のペインは、現在選択されているアクションの説明と、そのアクションに割り当てられているホットキーのリストを表示します。
-
下側のペインは、選択したコンテキストに現在割り当てられているキーのキーボード図を表示します。
キーボード図 ¶
表示 |
説明 |
---|---|
|
選択した(現行)コンテキストに割り当てられているキーが単色の暗いカラーで表示されます。 |
|
利用可能でも現行コンテキストに割り当てられていないキーが単色の明るいカラーで表示されます。 |
|
より低い(より特化した)レベルのコンテキストに割り当てられているホットキーは、明るい縞模様で表示されます。このコンテキストのアクションにキーを割り当てることができますが、より特化したコンテキストに進むと、そのキーが上書きされることに注意してください。 |
|
より高い(より一般的な)レベルのコンテキストに割り当てられているホットキーは、より目立った暗い縞模様で表示されます。このコンテキストのアクションにキーを割り当てることができますが、このコンテキストでは、より一般的なホットキーを上書きすることに注意してください。 このキーの割り当てを確認すると、下位コンテキストと上位コンテキストの両方の既存の割り当てが表示されます。 |
Tip
-
仮想キーボード上のShift, Ctrl, Command, Altの修飾キーをクリックすると、それらの修飾キーを使用しているキーの割り当てを確認することができます。
-
キーをクリックすると、すべてのコンテキストでのそのキー(と修飾子)に対するすべての割り当てを確認することができます。
ホットキーの編集 ¶
To... | Do this |
---|---|
ホットキーエディタを開く |
メインメニューから Edit ▸ Hotkeys を選択します。 |
インターフェース内の項目からホットキーエントリを探す |
|
キーに割り当てられているアクションを検索する |
|
ホットキーをアクションに割り当てる |
|
他のアクションのホットキーを参照しているホットキーを割り当てる |
詳細は、キーバインドの参照を参照してください。 |
アクションからホットキーを削除する |
|
干渉の解決 ¶

ホットキーをアクションに割り当てる時、そのキーが既により高い(より一般的な)またはより低い(より特化した)コンテキストに割り当てられていた場合、Houdiniは、そのホットキーリスト内のキーの隣に警告アイコンを表示します。
ホットキーを選択すると、ホットキーエディタは、干渉の可能性を示唆したメッセージを表示します。
干渉は問題がないことが多いです 。特定のコンテキストのキーは、より一般的なコンテキストのそれと同じキーを上書きするので、ほとんどの場合では気にする必要はありません。
例えば、モデリングツールで作業し、アニメーションを行なわない場合、Kキーを割り当てることで、それがSet Keyframeキーを上書きしても気にする必要がありません。
しかし、そのキーを編集して干渉を解決したいのであれば、選択肢がいくつかあります:
-
選択したアクションからホットキーを削除または変更するには、そのホットキーの隣にある
Deleteボタンをクリックします。
-
キーが割り当てられている 他の アクションからホットキーを削除するには、干渉メッセージ内の Remove other をクリックします。
-
キーが割り当てられている 他の アクションのホットキーを変更するには、 Edit other をクリックして、ホットキーエディタ内の他のアクションにジャンプします。
Radialメニューをホットキーに割り当てる ¶
-
ホットキーエディタで、
radial
をフィルタリングするか、左側のペインのツリーをブラウズしてRadialメニューを含んだコンテキストを選択します。-
3Dビューア用のコンテキストは Houdini ▸ Panes ▸ Geometry Viewers です。
-
ネットワークエディタ用のコンテキストは Houdini ▸ Panes ▸ Network Editor です。
このコンテキストには、Radialメニューエディタ( Edit ▸ Radial Menus )で定義されているRadialメニューに相当するアクションが含まれています。
キーに対して新しいRadialメニューを作成したいのであれば、まず最初にRadialメニューエディタで新しいメニューを作成します。次に、ホットキーエディタに戻って、そのメニューをキーに割り当てます。
-
-
中央のペインで、キーを割り当てたいRadialメニューを選択します。
-
右側のペインで、
Add行をダブルクリックして、Radialメニューに割り当てたいキーを押します。
-
Accept をクリックして、キーマップの変更を保存します。
Tip
WindowsとLinuxでは、 Radialポップアップメニューを開いて、メニューの名前を⇧ Shift + ⌃ Ctrl + Alt +
クリックすることで、ホットキーエディタ内のそのメニューにジャンプすることができます。
Note
現在のUIには、いくつかのキーと融通性なく組み込まれたRadialだったHoudini16.0からの名残があり、将来のバージョンのHoudiniでは、キーに対してメニューをより自然に配置するためのインターフェースを用意する予定です。
キーマップの管理 ¶
-
キーマップ とは、アプリケーションに割り当てられたすべてのホットキーのセットのことです。Houdiniには、書き込み保護されたデフォルトのキーマップがインストールディレクトリ内に同梱されています。
-
デフォルトに変更を加えると、ホットキーエディタはプリファレンスディレクトリ内にその修正されたキーマップを保存します。
-
▸ Save As を使用することで、新しいカスタムキーマップを作成することができます。
-
別のキーマップに切り替えるには、ホットキーエディタの左上コーナーにある Keymap ドロップダウンメニューをクリックして、切り替えたいキーマップを選択します。
-
デフォルトのキーマップはUSキーボードレイアウトを対象にしています。一部のデフォルトのバインドは、必要な非修飾キーがないキーボードレイアウトでは動作しません。
Houdini19.5までのカスタムキーマップが<modifiers> + <unmodified_key>を使用するように移植する方法 ¶
バインドに修飾キーを使用していたHoudini19.5までのカスタムキーマップ(例えば、Shift+1
の代わりに!
を使用するキーマップ)は、以下のPythonスクリプトを使用して、<modifiers> + <unmodified_key>
に相当するものに移植することができます。
import keymaputils keymaputils.applyMappingToKeymapFile("/path/to/input.keymap", keymaputils.mappingLegacyShiftedUS, "/path/to/output.keymap")
キーマップファイルを別のキーボードレイアウトに移植する方法 ¶
(Houdini20.0から導入された新しい)<modifiers> + <unmodified_key>
バインドを使用したキーマップは、Pythonスクリプトによって、キーボードレイアウトを別のキーボードレイアウトに移植することができます。
例えば、以下のスクリプトは、USレイアウト用のキーマップをFrench AZERTYレイアウトに変換します。 このスクリプトは、ほとんどの文字キーバインドを同じままに、非文字キーを物理位置で置き換えます。
import keymaputils # NB: 空っぽの文字列へのマッピングは、そのキーを使用しているすべてのバインドを除去します。 mapping = { '`' : '', '1' : '&', '2' : 'É', '3' : '"', '4' : '\'', '5' : '(', '6' : '-', '7' : 'È', '8' : '_', '9' : 'Ç', '0' : 'À', '-' : ')', '[' : '', ']' : '$', ';' : 'M', '\'': 'Ù', 'M' : ',', ',' : ';', '.' : ':', '/' : '!' } keymaputils.applyMappingToKeymapFile("/path/to/input.keymap2", mapping, "/path/to/output.keymap2")
ホットキーシステムの移行 ¶
Houdini20.5から、Houdiniは新しいホットキー解決とコンテキストのシステムを使用するようになりました。 (20.0までの)古いシステムでは、コンテキストは、アクションを含んだカテゴリで、それらのアクションにキーバインドが含まれていました。新しいホットキーシステムでは:
-
カテゴリは、アクション定義用のコンテナです。
-
コンテキストは、そのアクションのキーバインド用のコンテナです。
ホットキー解決は、複数のキーイベントハンドラーに振られた個々のキーバインドを個別に比較するのではなくて、アクティブなコンテキスト内のすべてのキーバインドに対して行なわれるようになりました。 キーイベントハンドラーとは、ウィジェットやコールバックなどのHoudini内のキーイベントを処理するものの総称です。 特定のアクションを複数のコンテキスト内でバインドさせることもできます。 例えば、あるキーがあるビューアステートコンテキスト内のハンドルアクションをトリガーすると同時に、別のキーが別のビューアステートコンテキスト内でそれと同じアクションをトリガーすることができます。
Warning
あるキーがあるコンテキスト内のあるアクションにバインドされていて、Houdiniがそのコンテキストに対して解決をしている場合、 そのキーは、そのアクションを実行するかどうかに関係なく、そのアクションで解決されます。 これが原因で、ホットキーが干渉していると問題が発生する可能性があります(干渉の解決を参照)。
Houdini20.5では、新しいコンフィグファイル、キーマップ、キーマップオーバーライドのファイルフォーマットのセットを使用します。
このキーマップファイルの拡張子は、.keymap
ではなく.keymap2
を使用します。
Houdiniは、以前のバージョンの.keymap
ファイルを20.5の.keymap2
ファイルに自動変換しませんが、Pythonスクリプトを使用することで、手動でファイルを作り直すことなく、その古いバージョンのファイルから古いキーバインドを取り込むことができます。
Note
キーマップオーバーライドファイルを使用して新しいホットキーとコンテキストを定義することは、推奨していません。
その理由は、Houdiniはラベルと説明を.keymap2
ファイルと.keymap2.overrides
ファイルに保存しないからです。
HoudiniはHOUDINI_UI_PATH
にあるベースのコンフィグファイルのすべてのコピーを読み込むので、代わりに、コンフィグファイルを使用してください。
コンフィグファイル ¶
Houdini20.0までは、HOUDINI_UI_PATH内の最初のhoudini/config/Hotkeys/Hotkeys
ファイルでデフォルトを設定していました。
このファイルでは、コンテキスト、ホットキー、キーバインドを行単位の形式で定義していました。
Hotkey Managerで変更を行なった時に特定のキーマップを保存するキーマップオーバーライドファイルも同じく行単位の形式でした。
Houdini20.5から、以下のファイルがデフォルトのホットキー構成を含んでいて、JSON形式になっています。 これらのファイルは、HOUDINI_UI_PATHにあって、起動時に読み込まれます。
ファイル |
説明 |
---|---|
houdini/config/Hotkeys/HotkeyActions.json |
ホットキーのカテゴリとアクションを定義します。 カテゴリは、アクションを整理するためのネームスペースです。 カテゴリは、リストされている名前を Note たいていの場合、コンテキストとカテゴリは、名前を共有しています(例えば、 |
houdini/config/Hotkeys/HotkeyContexts.json |
ホットキーコンテキストを定義します。 ホットキーコンテキストとは、アクションのキーバインド用のコンテナです。 |
houdini/config/Hotkeys/HotkeyDefaultBindings.json |
ホットキーコンテキストにデフォルトのキーバインドを設定します。
コンテキスト内のほとんどのキーバインドは、関連するアクションカテゴリのアクションに割り当てられています。
例えば、 コンテキストには、任意のアクションへのバインドを持たせることもできます。
例えば、 |
キーバインドの取り込み ¶
Houdini20.0またはそれ以前の.keymap
ファイルのキーバインドをHoudini20.5の.keymap2
ファイルに取り込むには、以下の手順に従ってください。
あなたの.keymap
ファイルがHoudini19.5またはそれ以前のものである場合、まず最初に、そのキーマップファイルが<modifiers> + <unmodified_key>
バインドを使用するように変換する必要があります。
詳細は、Houdini19.5またはそれ以前のカスタムキーマップが<modifiers> + <unmodified_key>
バインドを使用するように変換する方法を参照してください。
Note
キーバインドの取り込みで問題が発生したら、.keymap2
ファイルを編集してその見つからないエントリを追加するか、または、keymaputils
Pythonモジュールのソースを使用して特定のケースを解決する独自の関数を記述すると良いでしょう。
-
Editメニューから Hotkeys を選択して、Hotkey Managerを開きます。
-
ギアメニューから Export を選択します。
-
生成したい
.keymap2
ファイルのパスを入力します。これは、Pythonを介して生成する新しい.keymap2
ファイルのベースとなります。 -
Accept をクリックします。
-
キーバインドを取り込みたい古い
.keymap
ファイルのパスをメモします。 -
Pythonシェルウィンドウで、以下のスクリプトを実行します。
-
import keymaputils
-
keymaputils.importV1KeymapBindingsToKeymapFile("<path to base keymap2 file>.keymap2”, “<path to old keymap file>.keymap”, "<path to write new keymap2 file with old bindings>.keymap2”, "<label name for keymap2>")
例
keymaputils.importV1KeymapBindingsToKeymapFile("/houdini/config/base_file.keymap2”, “/houdini/config/old_file.keymap”, "/houdini/config/new_file.keymap2”, "KeymapName")
-
キーバインドの参照 ¶
異なるコンテキスト内のアクションのキーバインドを参照するキーバインドを作成することができます。 デフォルトのHotkey Manager構成には、そのようなキーバインドがいくつか含まれています。 サンプルの参照を確認したいのであれば、Hotkey Managerで Houdini ▸ Panes ▸ Geometry Viewers ▸ Modeling Viewer ▸ Input Selector Triggers を選択します。
参照は、よく使用する高レベルなキーバインド(例えば、h.copy
)を特定の設定内で使用したい時に役立ちます。
また、参照は、あるコンテキスト内のキーバインドのサブセットを別の場所で使用したい場合にも役立ちます。
例えば、ネットワークを持つほとんどのペインは、ネットワークを操作できるようにするために、h.pane.wsheet
内のバインドのサブセットを使用しています。
参照によって、このようなキーバインドを別のコンテキストに分離させて、ネットワークを持つほとんどのペインがh.pane.wsheet
の他のすべてのバインドを解決することなくキーバインドを解決できるようにすることができます。
システムを元に戻す ¶
Houdiniを起動する前にHOUDINI_NEW_HOTKEY_SYSTEM環境変数を0
に設定することで、Houdini20.0までのホットキーシステムに戻すことができます。
新しいシステムで予期せぬ問題に遭遇したり、古いシステムを多用していて移行に時間がかかるようでしたら、古いホットキーシステムに戻すと良いでしょう。
古いシステムに戻す機能は、Houdini21.0で削除される予定です。
Tips ¶
-
コンテキストツリー内でアクションをブラウズするのは、非常に不便です。ホットキーエディタ内のフィルターボックスを使ってアクションを検索するか、ユーザインターフェース内の項目を⌃ Ctrl + Alt + ⇧ Shift +
クリックした方が簡単です。
Note
現在のレガシーのコンテキストのカテゴリは、直感的でありません。将来のバージョンでは、それらのコンテキストを整理したいと思っています。
-
選択したアクションを出荷時のデフォルトのホットキーに戻すには、 ▸ Reset ▸ Command をクリックします。
-
選択したコンテキスト内のすべてのアクションを出荷時のデフォルトのホットキーに戻すには、 ▸ Reset ▸ Context をクリックします。
-
キーマップ全体を出荷時のデフォルトに戻すには、 ▸ Reset ▸ All をクリックします。