После обновления ОС Ubuntu до версии 12.04, пользователи IDE NetBeans столкнулись с рядом проблем - помимо так и не заработавшей интеграции с глобальным меню дефолтной убунтовой оболочки Unity, теперь меню IDE использует новую, "особо контрастную" палитру "чёрные буквы на тёмно-сером фоне", в силу чего пользоваться им стало почти невозможно. В итоге, интерфейс свежепоставленной IDE NetBeans 7.2 под управлением ОС Ubuntu в настоящее время выглядит примерно так:
В этой заметке я расскажу о способах привести внешний вид IDE в относительный порядок, позволяющий вполне комфортно с ней работать.
Первый способ - меняем скин Swing
Наиболее простой способ - достаточно поправить конфиги Нетбинса. Нужно дописать в файл $NETBEANS_HOME/etc/netbeans.cfg ключи, устанавливающие выбранную нами тему вместо использующейся по умолчанию GTK. Например, если мы хотим использовать Nimbus (ИМХО, это оптимальный вариант из имеющихся), переменная netbeans_default_options должна выглядеть так:
netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.zip.disableMemoryMapping=true --laf com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel"
После этих изменений конфигурации интерфейс NetBeans примет следующий вид:
Очевидный минус такого решения - приложение перестало выглядеть как "родное" для графической оболочки ОС.
Второй способ - исправляем параметры темы GTK
Второй способ основан на том, что сам Нетбинс, в общем-то, не виноват в своём уродливом внешнем виде под Убунту. Виноваты в этом авторы дефолтной убунтовой темы Ambiance, которые задали такие чудесные параметры меню в её палитре. Таким образом, мы можем "починить" меню, изменив настройки темы GTK. Для этого нам нужно сделать следующее:
-
Открыть на редактирование файл /usr/share/themes/Ambiance/gtk-2.0/gtkrc.
-
Найти там строчку с правилом стиля меню («style "menu" {»).
-
Изменить её содержимое на «style "menu" = "dark" {».
-
Перелогиниться в ОС, либо поменять тему оформления на любую другую и обратно.
Теперь окно IDE будет выглядеть так:
Третий способ - интегрируем NetBeans с Unity
Третий вариант решения проблемы - заставить Нетбинс использовать глобальное меню Unity. Существует плагин, позволяющий это сделать. Правда, мануал по его установке доступен только на испанском языке, но понять его можно даже без перевода - всё проиллюстрировано скриншотами. В кратком пересказе, нужно сделать следующее:
-
Открыть центр управления плагинами Нетбинса ("Tools" -> "Plugins").
-
Перейти на вкладку "Settings", кликнуть кнопку "Add".
-
В появившемся окне ввести URL плагина - http://java-swing-ayatana.googlecode.com/files/netbeans-catalog.xml, кликнуть по кнопке "OK".
-
После обновления списка плагинов перейти на вкладку "Available Plugins" и установить плагин "Java Ayatana".
-
Перезапустить IDE.
После рестарта интерфейс Нетбинса станет выглядеть так: