Переезд из Windows в Linux Ubuntu 14.04 LTS вместе с Jetbrains IntelliJ Idea 14.1.5

в 13:08, , рубрики: intellij idea, Ubuntu, Настройка Linux

Некоторое время назад появилось желание переехать со всем программным обеспечением необходимым для написания Java кода под Linux. В качестве системы назначения был выбран дистрибутив Ubuntu 14.04.3 LTS. Пост не откроет никаких тайн супертонкой настройки операционной системы — все уже давно известно и на тематических форумах все обсуждено. Я лишь опишу проблемы или, возможно, особенности, которые возникли при работе с Jetbrains IntelliJ Idea 14.1.4. Возможно, читатель и не знает, что у него есть проблемы, а значит для него данные решения станут «improve» фишками.

Выключение клавиатуры в IDE

Idea в Ubuntu 14.1.4 страдает отключением клавиатуры. Это может произойти 1 раз в 5 дней, а может и за час несколько раз. Я решаю этот вопрос запуском команды в автозагрузке:

killall ibus-daemon

Исправление шрифтов Idea

Тем, кому не нравится начертания шрифтов нужно:

1. скачать «патч» для JDK (отмечу, что использую JDK 1.8 от Oracle и тем, кто использует альтернативные JDK, это решение может не подойти), разархивировать и положить рядом с JDK. В моем случае, это /usr/lib/java/jvm:

wget http://urshulyak.com:85/jdk-8u5-tuxjdk-b08.tar.gz
tar -zxvf jdk-8u5-tuxjdk-b08.tar.gz
sudo mv jdk-8u5-tuxjdk-b08 /usr/lib/java/jvm
rm jdk-8u5-tuxjdk-b08.tar.gz

2. Изменить или добавить параметры в файл idea64.vpmotions:

-Dawt.useSystemAAFontSettings=on
-Dswing.aatext=true
-Dsun.java2d.xrender=true

3. Добавить переменную окружения IDEA_JDK (У себя я ее добавил в переменные текущего пользователя ~/.profile):

export IDEA_JDK="/usr/lib/java/jvm/jdk-8u5-tuxjdk-b08/"

После этого, вероятнее всего, нужно будет поправить размеры шрифтов в настройках Idea. В результате Вы получите отображение не хуже, чем в других ОС.

Борьба за «горячие клавиши» настроенные в Jetbrains

Idea имеет в своих настройках, горячие клавиши, которые пересекаются. Казалось-бы, нет ничего проще: нужно сделать выбор где Вы хотите оставить настройки по умолчанию — в Unity или IDE, и переназначить комбинации. Если Вы выберете путь изменения горячих клавиш в IDE, то можете пропустить этот пункт — там не должно возникнуть проблем. Обратите внимание лишь на список клавиш, которые необходимо переназначить. Если Вы выбрали второй вариант, то возможно Вам потребуется небольшое руководство. Начнем со списка клавиш которые надо изменить и что они делают:

Alt + F7
Idea: Find Usages
Ubuntu: Переместить окно
Destination: Super + F7

Alt + F8
Idea: Evaluate Expression
Ubuntu: Изменение размера окна
Destination: Super + F8

Ctrl + Alt + стрелки
Idea: Navigate
Ubuntu: Перемещение между рабочими столами системы
Destination: Super + стрелки

Ctrl + Alt + L
Idea: автоматическое форматирование кода
Ubuntu: Заблокировать экран
Destination: Super + L

Ctrl + Alt + T
Idea: вызов контекстного меню Surround With
Ubuntu: Открыть терминал
Destination: Super + T

Ctrl + Alt + S
Idea: Открывает меню настройки Idea
Ubuntu:
Destination:

Вышеуказанные параметры меняются в Ubuntu просто по пути: «Параметры системы» — «Все параметры» — «Клавиатура» — «Комбинации клавиш» и лишь последние две вызывают трудности — данные комбинации недоступны через настройки параметров. Для этого нам потребуется: CompizConfig Settings Manager.

Установка:

sudo apt-get install compizconfig-settings-manager

Запускаете программу, далее:

Ctrl + Alt + T
«Desktop» — «Ubuntu Unity Plugin» — «Launcher» — «Key to show the Dash, Launcher and Help Overlay». Я удалил оттуда значение клавиши Super. Вы можете переназначить на свое.

Ctrl + Alt + S
«General» — «General Options» — «Key Bindings» — «Toggle windows shaded». Поступил аналогично предыдущему

Решение проблемы горячих клавиш в русской раскладке

В Idea горячие клавиши не работают если включена русская раскладка клавиатуры. Есть решение:

1. Скачать файл github.com/zheludkovm/LinuxJavaFixes/archive/master.zip
2. Разархивировать в любую удобную для вас директорию, файлы:

LinuxJavaFixes-1.0.0-SNAPSHOT.jar
javassist-3.12.1.GA.jar

3. Добавить параметр в файл idea64.vpmotions (не забудьте указать Ваш путь к расположению):

-javaagent:/home/alexandr/dev/idea-IU-141.2735.5/LinuxJavaFixes/LinuxJavaFixes-1.0.0-SNAPSHOT.jar

Источники вдохновения:

bugs.launchpad.net/ubuntu/+source/ibus/+bug/481656
askubuntu.com/questions/454361/font-in-intellij-idea-on-ubuntu-14-04
askubuntu.com/questions/35688/how-can-i-change-unitys-super-t-binding-to-something-else
github.com/zheludkovm/LinuxJavaFixes

Автор: AlexandrRS

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js