PhpStorm заметки

Собрал на данной странице минимум конфиграции, который мне приходится выполнять при новой установке PhpStorm-а.

Проблемы с горячими клавишами в русской раскладке

Например не работают ctrl+c, ctrl+v, ctrl+a, ctrl+x. Чтобы исправить, нужно закрыть PhpStorm и выполнить команды: 

cd /opt/lebnik/

git clone https://github.com/zheludkovm/LinuxJavaFixes.git /opt/lebnik/LinuxJavaFixes

nano /opt/lebnik/PhpStorm-138.2001.2328/bin/phpstorm64.vmoptions

и в конец файла добавляем строку:

-javaagent:/opt/lebnik/LinuxJavaFixes/build/LinuxJavaFixes-1.0.0-SNAPSHOT.jar

готово.

PhpStorm - отключаем плагины

Apache config (.htaccess) support  не использую 
ASP (Active Server Pages)  мощная технология от Microsoft, позволяющая легко разрабатывать приложения для WWW. ASP.
Behat Support Allows to use Behat BDD test framework for PHP
Blade Support движок шаблона Laravel
Codeception Framework фрейвор для создания тестов (монстр - в баню)
CoffeeScript  не использую 
Copyright  не использую 
CVS Integration  устаревший аналог системы Git или Mercurial, расшифровывается Concurrent Version System (последняя версия выпущена в мае 2008 года)
Docker Support бесполезная вещь
Drupal Support  не использую 
Gherkin  язык написания тестов с помощью BDD
GitHub  не использую 
GNU GetText files support (*.po)  не использую 
Google App Engine Support for PHP  не использую 
HAML  не использую  
hg4idea  IntelliJ IDEA plugin for Mercurial integration
IntelliLang  пусть остается, это какие-то фичи от idea
Java Server Pages Integration  пусть остается, непонятный плагин, т.к. PhpStorm написан на Java
JavaScript Debugger  оставляю, т.к. нужнен для LiveEdit 
JavaScript Intention Power Pack  оставляем, т.к. иногда пишем на JavaScript
Joomla! Support не использую
Markdown support очень ресурсопотребляемый плагин, в баню
Perforce Integration аналог системы Git или Mercurial
Phing Support сборщик проекта (аналог Ant'а но для PHP)
Php Docker бесполезный плагин мне кажется, ведь все равно все пользуются консолью
PHP Remote Interpreter мне это не нужно
PHPSpec BDD framework плагин делает подсветочку, чтобы мы могли писать BDD тесты (в баню их)
PhpStorm Workshop плагин позволяет создать тестовый проект для изучения возможностей PhpStorm-a
REST Client ерунда, ничего правильнее curl-команд нет и не надо
ReStructuredText Support использую на гитхабе 
SASS support метаязык на основе CSS, предназначенный для увеличения уровня абстракции CSS
SSH Remote Run не пользуюсь
Subversion Integration  аналог системы Git или Mercurial
Task Management  интеграции с task-системами типа Redmine или YouTrack
TextMate bundles support  TextMate один из самых популярных текстовых редакторов для программистов на Mac OS X, а тк я не пользуюсь TextMate, то мне нет смысла в поддержке его плагинов
Vagrant не использую
W3C School не использую
WordPress Support не использую
XPathView + XSLT Support не использую
XSLT-Debugger не использую
Angular and AngularJS не использую
Hunspell spell checker

Полезные плагины

Php Inspections (EA Extended)

Отключаем подсветку скопированного текста

Уберите галочку тут:

PhpStorm заметки

Сочетания клавиш

PHPStorm очень функционален, но некоторые вещи в нем зарыты глубоко, например Ctrl+Shift+M - помогает мне переместить курсор в начало или конец условия (if).

Но, многие сочетания клавишь PHPStorm не работают, т.к. они по-умолчанию используются в Ubuntu, и ниже я покажу, как я с этим борюсь.

Ubuntu 19 (Gnome)

sudo apt-get install dconf-editor

запускаем dconf-editor и отключаем следующий шорткат:

PhpStorm заметки

Теперь заходим в настройки PhpStorm->File->Settings->Keymap и выставляем:

Main menu -> Navigate -> Symbol... Ctrl+Shift+B ищет по именам всех функций/методов
Main menu -> Navigate -> Back Alt+Left прогулка по коду влево
Main menu -> Navigate -> Forward Alt+Right прогулка по коду вправо
Main menu -> Window -> Editor Tabs -> Select Next Tab Ctrl+Page Down переключалка табов в терминале влево (как в терминале Ubuntu)
Main menu -> Window -> Editor Tabs -> Select Previous Tab Ctrl+Page Up переключалка табов в терминале вправо (как в терминале Ubuntu)

PhpStorm скажет, что указанные сочетания уже заняты, но с уверенностью в 99% могу сказать, что сочетания которые будут удалены, Вы не используете (так же, как и я) + Вы всегда можете увидеть, какие сочетания были изменены, PhpStorm подсвечивает изменения синим цветом + всегда можно откатиться к дефолтному состоянию сочетаний клавишь.

Ubuntu 16 (Unity)

Поэтому, поправить это можно либо в PHPStorm - Settings - Keymap, либо отключив или изменив сочетания клавишь используемые в Ubuntu - System Settings - Keyboard - Shortcats

Лично я в Ubuntu изменил:

Launcher Key to show the HUD  Ctrl+`
Navigation Switch to workspace left Disabled
  Switch to workspace right Disabled
System Lock Screen Disabled
Windows Resize window Disabled
  Toggle shaded state Disabled

напомню, чтобы выставить Disabled - нужно кликнуть клавишу Backspace

Вот список сочетания клавишь PHPStorm, которые не работают из-за того, что используются в Ubuntu

  • Disable the Shade window action, assigned to Ctrl + Alt + S (Settings dialog)
  • Change or disable the Lock Screen action, assigned to Ctrl + Alt + L (Reformat code)
  • Change or disable the Launch terminal action, assigned to Ctrl + Alt + T (Surround with)
  • Change or disable the Switch to workspace action, assigned to Ctrl + Alt + Arrow Keys(Navigation)
  • Disable the Move window action, assigned to Alt + F7 (Find usages)
  • Change or disable the Resize window action, assigned to Alt + F8 (Evaluate expression)

заметка: в IDE есть интересное сочетание клавишь Alt + / которое автокомплитит текущий код, например Вы написали JavaScript класс:

var my = {
   function: run()
   {
      this.test();// Как видите, никакой функции test в данном классе еще нет. Начинаем создавать функцию:
   }
   function: te и нажимаем Alt + / и увидим, что IDE сама подставит Вам слово test
}

Игнорируем кэш

Поиск по проекту, игнорируя кэш можно выполнять, если исключить ненужное:

кликните Правой клавишей мыши по ненужной папке  -> Mark Directory As -> Excluded - этим самым мы исключили директорию из проекта.

Далее, выполняя поиск, он будет выполнен без учетка например кэш директории.

Увеличиваем предел потребляемой памяти

Включаем в настройках Show memory Indicator

Show Memory Indicator PHP Storm

Сохраняем настройки и смотрим справа внизу появится индикатор потребляемой памяти

Индикатор потребляемой памяти PHP Storm

Вот тут видим сколько ест программа памяти, у меня открыто 20 файлов, загружен проект Битрикс редакция Бизнес.

Проблема тут в том, что по умолчанию в PHPStorm задан лимит на 512Мб памяти, соответственно, когда у меня в среднем открыто 20-30 файлов или по 10 файлов в нескольких проектах, то работать в нем невозможно, не хватает ему памяти, в 8 версии еще было нормально, редко подвисал, но в 9 что-то совсем-совсем плохо стало.

Ну, а раз памяти не хватает, пробуем ее добавить, в 9 версии все работает. Находим папку, куда установлена программа: PhpStorm\bin\

Тут вам нужен какой-то из двух конфигов, их там два, если не знаете, какой используете, все по умолчанию, то 100% 32-битная версия.

  • phpstorm.vmoptions - eсли вы используете 32-битную версию PHPStorm 
  • phpstorm64.vmoptions - eсли вы используете 64-битную версию PHPStorm

Открываем файл в любом редакторе, тут необходимо в параметре -Xmx1024m увеличить значение, например до 1024Мб.

-server
-Xms128m
-Xmx1024m
-XX:MaxPermSize=250m
-XX:ReservedCodeCacheSize=150m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true

Cохраняем файл, перезагружаем PHPStorm и наслаждаемся легкостью работы PHPStorm)

Автогенерируемые шаблоны

Зайдите в настройки IDE и далее в раздел Editor - File and Code Templates, далее вкладка Includes и удалим текст для:

  • PHP Class Doc Comment
  • PHP Interface Doc Comment
  • PHP Trait Doc Comment

теперь переходим на вкладку Code и установим такие настройки:

PHP Constructor

/**
${PARAM_DOC}
*/
public function __construct(${PARAM_LIST}) {${BODY}}

PHP Setter Method

/**
 * @param ${TYPE_HINT} $${PARAM_NAME}
#if (${STATIC} != "static")
 * @return ${CLASS_NAME}
#end
 */
public ${STATIC} function set${NAME}($${PARAM_NAME})
{
#if (${STATIC} == "static")
    self::$${FIELD_NAME} = $${PARAM_NAME};
#else
    $this->${FIELD_NAME} = $${PARAM_NAME};
    return $this;
#end
}

Автоматическое добавление переноса строки в конце файла

Вариант 1

File > Settings... > Editor > General > Ensure line feed at file end on Save (поставьте галочку)

File > Settings

Editor > General > Ensure

Вариант 2

Help > Find Action... (Ctrl+Shift+A) > type "Ensure line feed" > switch the toggle to ON (using the mouse click or Enter) for "Other: Ensure line feed at file end on Save" line

Help > Find Action

Ensure line feed

Надоедливая подсветка

PhpStorm заметки

Отключаем подсказку синтаксиса передаваемых параметров, способ 1:

PhpStorm заметки

Способ 2:

PhpStorm заметки

Надоедливая нотификация о непойманном Exception

Долго думая, решил все же отключить данную нотификацию:

PhpStorm заметки

Создаем ярлык

После выхода новой версии IDE, приходится создавать новый ярлык в Ubuntu Launcher. Если у Вас нет желания делать это самостоятельно, то советую следующий быстрый способ:

  1. Запускаем PHPStorm из консоли/home/PhpStorm/bin/phpstorm.sh
  2. В меню PHPStorm: Tools -> Create Desktop
  3. Закрываем PHPStorm и снова запускаем из консоли/home/PhpStorm/bin/phpstorm.sh &
  4. PHPStorm появляется в Ubuntu Launcher, теперь просто кликните правой клавишей мыши по ярлыку и выберите: Lock to Launcher

готово.

Всем удачки.

Оцени публикацию:
  • 3,15
Оценили: 3
Теги : XPathView + XSLT Support

Предложения и пожелания:

 

youtube.com/watch?v=7hFivbgIEqk

При полном или частичном использовании материалов данного сайта, ссылка на сайт "yapro.ru" обязательна как на источник информации.
Автоматический импорт материалов и информации с сайта запрещен.
Copyrights © 2007 - 2019 YaPro.Ru

Лебеденко Николай Николаевич
Ошибка в тексте? Выделите её мышкой и нажмите: Ctrl + Enter