При использовании Eclipse я просматриваю дерево проводника пакета с помощью стрелок клавиатуры.
В Windows я могу развернуть смятый node, нажав клавишу →. В Linux мне нужно нажать Shift + →. Есть ли способ перенастроить его так, чтобы Shift не требовался?
Поместите это в свой ~/.gtkrc-2.0
, и вам должно быть хорошо идти. Левая и правая линии делают запрошенное изменение, остальные - мои личные дополнения, чтобы сделать эффект дерева более похожим на vim. Надеюсь, что это поможет!
binding "gtk-binding-tree-view" {
bind "j" { "move-cursor" (display-lines, 1) }
bind "k" { "move-cursor" (display-lines, -1) }
bind "h" { "expand-collapse-cursor-row" (1,0,0) }
bind "l" { "expand-collapse-cursor-row" (1,1,0) }
bind "o" { "move-cursor" (pages, 1) }
bind "u" { "move-cursor" (pages, -1) }
bind "g" { "move-cursor" (buffer-ends, -1) }
bind "y" { "move-cursor" (buffer-ends, 1) }
bind "p" { "select-cursor-parent" () }
bind "Left" { "expand-collapse-cursor-row" (0,0,0) }
bind "Right" { "expand-collapse-cursor-row" (0,1,0) }
bind "semicolon" { "expand-collapse-cursor-row" (0,1,1) }
bind "slash" { "start-interactive-search" () }
}
class "GtkTreeView" binding "gtk-binding-tree-view"
затем перезапустите Eclipse, чтобы применить новые привязки
Если кому-то интересно, как это сделать с GTK3 - просто откройте ~/.config/gtk-3.0/gtk.css
и добавьте следующее:
@binding-set MyTreeViewBinding
{
bind "Left" { "expand-collapse-cursor-row" (0,0,0) };
bind "Right" { "expand-collapse-cursor-row" (0,1,0) };
}
GtkTreeView
{
gtk-key-bindings: MyTreeViewBinding;
}
Моя версия для GTK3, которая ведет себя более естественным образом. Добавьте в ~/.config/gtk-3.0/gtk.css следующее:
@binding-set MyTreeViewBinding
{
bind "Left" { "select-cursor-parent" ()
"expand-collapse-cursor-row" (0,0,0) };
bind "Right" { "expand-collapse-cursor-row" (0,1,0) };
}
GtkTreeView
{
gtk-key-bindings: MyTreeViewBinding;
}
Ответ, предоставленный Эндрю, правильный. Обратите внимание, что в более новых версиях Ubuntu нет файла ~/.gtkrc-2.0, поэтому вы можете либо его создать, либо отредактировать gtkrc текущей темы, которая хранится в
/usr/share/themes/your_theme/gtk-2.0/gtkrc
Навигация виджета Tree управляется подклассом инструментария виджета - GTK. SWT/Eclipse не контролирует его. Если какая-либо такая конфигурация требуется для изменения короткого замыкания, то она должна быть сделана с самой стороны GTK.