Pull to refresh

Comments 61

такие вещи принято оформлять в виде гифок, а не видео

Кто-то умрёт от того, что я решил разместить эти записи у себя на канале в Youtube вместо гифок?

У вас замечательная аргументация

Эти трюки в том числе можно посмотреть в отдельном плейлисте на Youtube, я сделал это намеренно, чтобы получить из этого дополнительный источник распространения информации об этих трюках.


Кроме того, я не хотел заваливать статью тяжёлым контентом, который начнёт автоматически загружаться у всех подряд. Youtube-ролики решают эту проблему в том числе.


И я не хотел, чтобы человек, при чтении статьи, видел постоянно повторяющиеся и мелькающие анимации сверху и снизу текста. Что тоже обязательно случилось бы, если бы я добавил сюда gif-анимацию вместо видеороликов.

Для того, чтобы не было мелькающей анимации существует спойлер. Ну и не всегда ютуб доступен.
Мало того, скажут вам спасибо, что выложили на YouTube, а не в виде гифок.
Гифки в статьях, особенно показывающие возможности — достали.

Подскажите пожалуйста, имена файлов на сервере имеют Русскую Кирилицу. А в NetBeans их воспринимает как как вопросительные и процентные знаки. Дайте совет пожалуйста, реально ли это исправить?

Инструкция.txt

такие вещи принято оформлять в виде гифок, а не видео

Простите, кем принято? Если я не ошибаюсь, то гифки и весят больше и качество хуже и контроля меньше.

Я, например, пользуюсь гифками только потому что их легче (ленивее) делать.
а как паузу в гифке сделать, чтобы лучше осмыслить?
Нажатие alt+shift+[точка/запятая] выделяет большую/меньшую область относительно изначального положения курсора.

Я очень часто этим пользуюсь. Круто, что по дефолту в NetBeans нормальный хоткей для этой фичи. В Eclipse тоже нормальный (Alt+Shift+Вверх/вниз). А вот в IDEA дебильный (Ctrl+W/Ctrl+Shift+W). Очень трудно не отжимая Ctrl+W прижимать и отпускать Shift.

В IDEA можно переопределить нужные хоткеи, к том же, там по умолчанию есть готовые схемы от Eclipse, Netbeans и других популярных IDE, без которых мучительно больно переходить на нее.

В моём сообщении специально было выражение «по дефолту». Возможность что-то настроить не означает, что надо делать плохой дефолт.

Список измененных файлов в PHPStorm можно посмотреть либо в панели git (Alt+9), либо в окне перед коммитом (ctrl+K).

Для навигации по сущностям я использую ctrl + click, первый клик переносит к определению, второй — загружает список всех мест использования.
Использование любой IDE — это результат случайного выбора, подкрепленного практикой использования типа разношенной обуви.
Быть фанатом некой IDE непрофессионально — это же всего лишь средство — главное результат, то есть готовый и отлаженный код для чего поорой хватает и Notepad.
Но почитать о любви к IDE занятно — это типа дамских романов 19 века.

Я понимаю, умничать и важничать, даже когда ты не понимаешь что ты говоришь — это дело, от которого трудно удержаться, и большинство людей не может. Но вы не обижайтесь на то, что я вам прямо скажу: не вводите людей в заблуждение этими умными фразами про Notepad и дамские романы.


Как говорится в той притче про заточенный топор. Если возьмёшь с собой тупой топор, вместо заточенного — будешь рубить одно дерево до вечера, да всё равно ты нифига его не срубишь.

Я же говорил занятно — но одновременно скучно — хотя жду продолжения
Последний пример из жизни в пользу IDE: я как-то разгребал за командой DevOps несколько Python скриптов для интеграции между системами и автомазитации процессов. Просто открыв файлики в PyCharm, я увидел множество проблем, о которых IDE знает, а не очень умелый программист нет. Банально исправив эти проблемы, вся нестабильность кода ушла, работает по сей день.
Далее, когда я программирую на C# в MS VS, я всегда знаю, когда мой код работает, а когда нет. Конечно я не беру в расчет бизнес-логику, но я точно знаю, что лексически, синтаксически и семантически (по ограниченному компилятором кругу проверок) это код корректен! И все благодаря IDE.
И напоследок процитирую интервью Эрика Ниблера (уважаемый человек в мире C++):
В какой IDE вы предпочитаете работать с C++?

Лёгкий вопрос: Visual Studio. Я не пробовал пока CLion, но Eclipse в последний раз, когда я им пользовался (довольно давно, надо признаться), был ужасен настолько, что и словами не описать. Использовать emacs/vim/gdb — это как пытаться каменными инструментами сделать колесо в то время, как остальной мир давно ездит по автострадам. (Да, это вам, злые тролли, которые говорят мне, что моё пренебрежение к emacs/vim — признак луддита.)
А разве я гворил, что-нибудь против использования IDE — это весьма полезный инструмент в разработке и не более
Мне нравится VisualStudio, начиная со времен Visual C++ 6.0, и Intellj Idea, хотя я работал на многих средах, переходя по мере необходимости, например, использовал ADTtools (Eclipse), сейчас использую AndroidStudio (Idea).
То есть все течет и изменяется — среды приходят и уходят, главное не уйти вместе со средой
Похоже что многое, чего «нет в PhpStorm» всё же там есть, именно в таком виде или в почти таком как описано.

Навигация по сущностям в классе: поставить курсор на переменную, нажать ctr+shift+f7. Все выделенные переменные ярко подсветятся и в коде и на скроллбаре, и теперь их легко выцепить взглядом где бы они ни находились. Но если очень хочется, то с клавиатуры можно перемещаться между ними через f3/shift+f3. Кстати, можно подсветить не одну, а несколько сущностей.

Открыть все изменённые файлы в проекте: Version Control -> Local Changes, можно повесить свой хоткей.
Так же есть локальная история изменений, не привязанная к контролю версий VCS -> Local history -> Show history

Сортировка вкладок: да, с клавиатуры, наверное сортировать вкладки нельзя. Но вкладками для навигации по коду с клавиатуры лично я не пользуюсь (может быть и потому, что нельзя сортировать с клавиатуры, но вряд ли), есть удобное окно Recent files на ctrl+e. А для переключения табов Switcher на ctrl+tab

Выделение более широкого/узкого блока кода: Extend/Shrink selection — ctrl+w/ctrl+shift+w

Окей) Я уже открыл свой "PhpStorm EAP 171.2272.10, built on January 11, 2017".


Навигация по сущностям в классе. Хорошо, увидел, работает. Но вы должны согласиться, что они запрятали довольно глубоко это дело, и логично, что я его не смог найти, хотя я реально гуглил. Плюс, оно работает всё-таки намного менее удобно… Во-первых нажать сначала надо какую-то комбинацию, потом ещё тянуться к кнопке F3. Согласитесь, в нетбинсе както удобнее сделали этот момент всё-таки.


Я тут ещё захотел эти кнопки F3/Shift+F3 хотябы на альт+стрелки поменять. Да не смог найти нужные параметры среди кучи горячих клавиш. Вот кстати тоже плюс нетбинса вспомнил… Там в настройках горячих клавиш можно найти нужные кнопки, просто нажав нужную комбинацию в отдельном поле ввода. Этого тоже в шторме не сделали на данный момент, хотя было бы очень удобно.


Открыть все изменённые файлы в проекте — принято, всё работает как надо. Локальная история есть и в нетбинсе, если что.


Сортировка вкладок — первое у меня удаляет строку в текущем коде, а второе, Ctrl+Tab, есть и в нетбинсе, тоже использую время от времени, но вкладки мне нравятся больше)


Выделение более широкого/узкого блока кода — да, есть, здесь тоже принимаем)


Поправлю статью в соответствии с тем что вы рассказали, спасибо за сообщение.

Сортировка вкладок — первое у меня удаляет строку в текущем коде
Возможно, имеет смысл посмотреть выставленные у вас хоткеи, думаю раз уж вы перешли с нетбинса, то и схему поставили соответствующую. По дефолту именно ctrl-e https://www.jetbrains.com/help/phpstorm/2016.3/navigating-to-recent-file.html

Да, хоткеи с нетбинса) спасибо, посмотрю)

Вот кстати тоже плюс нетбинса вспомнил… Там в настройках горячих клавиш можно найти нужные кнопки, просто нажав нужную комбинацию в отдельном поле ввода. Этого тоже в шторме не сделали на данный момент, хотя было бы очень удобно.

Это тоже есть. https://www.jetbrains.com/help/phpstorm/2016.3/keymap.html?search=keymap#d800482e134 — кнопка "Find Action by Shortcut" после локального поля поиска.

Нетбинс умеет php 7 и 7.1? При создании проекта я не вижу https://yadi.sk/i/XClkga6t3BPJbi
Подскажите где и что обновить можно.

Netbeans 8.2 умеет, не знаю какая у вас версия.


image


Но вот версию 7.1 он ещё не понимает, к сожалению. Ишью создана, но когда её запилят — я не могу сказать.


Это была одна из причин, почему я полез смотреть пшпхторм на самом деле) Потому что захотелось поддержки пхп 7.1.

Спасибо. https://yadi.sk/i/y8Q_0C4b3BPss3 несмотря на это https://yadi.sk/i/C8wvMbIJ3BPt9i
Никогда бы не подумал что IDE меня обманет.

Хочу тут отметить, что на днях один из разработчиков Netbeans добавил полноценную поддержку PHP 7.1. Если у вас есть желание — вы можете скачать текущую ночную сборку Netbeans и получить полноценную поддержку PHP 7.1 в данной IDE.

У меня netbeans тормозит при скроллинге больших файлов, а phpStorm — нет. Искал, что дела в оперативке, мол Netbeans по-минимому ее есть, но при изменении ничего не изменилось

В целом да, шторм немного быстрее выглядит. У меня тоже такое есть, хотя это не настолько критично. Да, кстати, анализируя поведение нетбинса и шторма, мне показалось, что дело заключается в том, что нетбинс сканирует и собирает очень много информации о текущей структуре проекта, когда PhpStorm по большей части ничего не вычисляет, пока ты конкретно ему на это не укажешь.


На это указывает, например, возможность навигации по сущностям файла. В нетбинсе достаточно просто навести курсор на какую-то сущность и далее можно сразу нажимать alt+стрелки, а в PhpStorm для получения той же возможности тебе необходимо сначала нажать Ctrl+Shift+F7, как мне указали выше. После этого он анализирует файл и находит места использования переменной.


И второе доказательство на эту тему: во время переименования переменной PhpStorm работает ощутимо дольше, анализируя проект. А Netbeans отображает окно рефакторинга почти сразу, что тоже наталкивает на мысль о том, что он больше собирает информации прямо во время работы в проекте.

Да, кстати, анализируя поведение нетбинса и шторма, мне показалось, что дело заключается в том, что нетбинс сканирует и собирает очень много информации о текущей структуре проекта, когда PhpStorm по большей части ничего не вычисляет, пока ты конкретно ему на это не укажешь.

Скорее всего Вы не правы. Т.к. работаю на Idea то могу сказать, что весь проект индексируется перед работой, а не в момент действий.
На счёт разницы «наведения курсора мыши» и Cntrl+Shif+F7 могу сказать, что второй вариант более «правильный». Т.к. ориентирован на прямое действие пользователя, в то время как наведение курсора мыши может приводит к артефактам: пишу код, сдвинул мышку влево, и она замерла над переменной, а ты в это время что-то пишешь, и тут тебе IDE подсвечивает то, о чём ты не думаешь. Не явное действие — додумывание за клиента.

Я с вами ни с чем не согласен.


Индексация — это одно, это понятно. Подробный анализ структуры каждого файла — это уже другое.


На тему ваших теорий о том, что это может быть где-то там как-то там неудобно — ну это просто бред какой-то. Я показал в самой статье видеоролики, как всё удобно. При написании кода точно также никаких проблем не возникает, всё чудесно работает, эта фича — одна из причин, из-за которых я работаю именно в нетбинсе.

Под индексацией понимается именно анализ структуры кода. Индексируется код, и то что называется символами(Symbols) в коде. Куда входят и переменные.
но думайте, как хотите — ваше право.
При этом, как программист, вы должны понимать, что разницы по какому «сигналу» подсвечивать часть кода нет никакой. Будь то мышка над переменной или нажатие комбинации клавиш.

Давайте всё-таки будем смотреть на практике, как работают два инструмента.


Ладно поиск использования переменной — оно там не так заметно в любом случае. Но вот окно рефакторинга — тут разница видна более явно.


  1. Netbeans
  2. PhpStorm

Один и тот же файл, одна и та же ситуация. Разницу замечаете?

Ни чего не могу сказать. По этому видео NetBeans конечно хорош.
Но при работе с большими JAVA проектами скорость рефакторинга часто была не на стороне Eclipse и NetBeans. Помимо других «плюшек».
Плюс ко всему, в продуктах JetBrains можно отметить автоматическое переименование переменных вместе с переименованием класса. Чего NetBeans не делает, что как раз приведено на вашем первом видео. Ну это кому как удобно.

Я не понял, какие переменные шторм переименовал в видеоролике) Там была всего одна переменная, вроде как. И она осталась неизменной.

Да. Значит это особенности php в Java после поиска предлагает переименовать переменные а в вашем видео предложил переименовать файл.
Но самое главное что наша дискуссия ушла не туда:)
У меня была точно такая же проблема. Решил переходом с nouveau драйвера для geforce видеокарты на официальный поприетарный драйвер.
А может netbeans вставлять строки с подгонкой отступов? Замучился каждый раз подгонять.

Может) Делается через Ctrl+Shift+V. Возможно, можно переназначить на обычный Ctrl+V, если есть желание. На эту тему есть ишью в багтрекере.

Спасибо! Вообще, статья очень кстати.

А не подскажете, есть ли в NetBeans такая удобная штука, как множественные курсоры? А в особенности — вертикальные множественные курсоры. Как в замечательном редакторе SciTE — зажал Alt, протянул мышью блок по вертикали и можно редактировать текст сразу в нескольких колонках. Очень удобно для правки различных табличных данных. Например, есть список полей по одному полю на строку и нам нужно их вставить в виде списка в некий select. Зажимаем Alt, ставим множественный курсор в начало всех строк и ставим запятую перед всеми строками. Потом перед первой удаляем. Очень быстро и удобно получаем готовый список полей. Не нашёл в NetBeans, как настроить такое поведение.

на панельки есть кнопка «Toggle Rectangular Selection (Ctrl+Shift+R)», можно переключать курсор на блоковый. По описанию похоже, но вот по поведению неизвестно — никогда сам не пробовал.

Действительно, сейчас проверил и это то, что нужно!

Это не то что вам нужно? Там список хоткеев есть. Установка доп курсора — Ctrl+Shift+Клик

Спасибо, это тоже полезные сокращения, но немного не то. В точности то, что мне нужно описано в соседнем комментарии.

Откройте настройки, нажмите внизу кнопку импорт и укажите архив темы)

Хочу вставить свои пять копеек про плюшки NetBeans: в нём есть весьма функциональный встроенный терминал. Он хорошо интегрирован нетбинсом. Записал для наглядности короткую демонстрацию: https://www.youtube.com/watch?v=LckpVQrjkf0

Несколько трюков в видео, по порядку:
  • Выбрал в каталоге проекта файл, Alt+Shift+K чтобы открыть терминал сразу в папке, где находится этот файл
  • В терминале набрал
    ideopen stackMap*
    
    чтобы открыть в NetBeans все файлы с таким именем
  • Alt+1, Alt+2, ..., Ctrl+Tab для быстрой навигации между вкладками

Это одни из немногих фич. В целом его интеграция облегчает жизнь тем, кто часто использует терминал при разработке. Если что-то ещё интересно — открыт для вопросов, довольно неплохо в нём разбираюсь.

Я тоже очень часто использую терминал в нетбинсе, спасибо за советы, не знал про эти возможности)


В PhpStorm'е тоже есть терминал, к слову. Но не знаю, есть ли у него подобные фичи.


С терминалом нетбинса у меня только одна беда — из этого самого терминала потом вылезти очень трудно обратно в окно редактора :) Единственный вариант — это Ctrl+Tab, который работает немного медленно. Хотелось бы просто нажать что-то типа эскейпа, чтобы вернуться в редактор, но нажатие эскейпа перехватывается терминалом.

В терминале есть список пробрасываемых наверх, в IDE, клавиш. На данный момент это Ctrl+Tab и F4-F9 — нужны для дебага (step into, step over, run to cursor, etc).

Дело в том, что список этих клавиш можно расширять до бесконечности, однако в один прекрасный момент сталкиваешься с ситуацией когда клавиша, которая должна была сработать в терминале — совсем некстати срабатывает в IDE. Например, с тем же ESC первый косяк всплывёт, когда захочешь сделать :wq в vim`е :-) (Для того, чтобы войти в режим команд надо нажать ESC, конфликт).
В NetBeans еще есть очень удобное копирование блока кода вверх / вниз (Ctrl + Shift + Up / Ctrl + Shift + Down) и перемещение блока кода вверх / вниз (Alt + Shift + Up / Alt + Shift + Down). Особенно полезно в верстке.

Да, и ещё плюс альт+шифт+[лево/право], чтобы перемещать выделенный код влево и вправо соответственно.

Ещё бы кнопки мыши вперёд-назад работали…
Ну, если уж речь пошла о новичках, вставлю свои «5 копеек», т.к. сам из них. =)
В общем, если говорить о NetBeans и Java, мне очень помогла вот эта страничка:
Code Assistance in the NetBeans IDE Java Editor
Лучше расскажите о там как установить такую темную тему, и как сделать подсветку кода в файлах TPL
Могу рассказать как русифицировать NetBeans.
Значит скачиваете NetBeans 8.2 Rus, потом поверху в папку разархивируем новые NetBeans 12.2. Пользуйтесь наздоровье.
.
Автор подскажите пожалуйста, а как поменять режим мультиредактирования строк аналогичный VisualStudio и NotePad++???

Посоветуйте пакетный упаковщик для PHP или Нетбинс. Чтобы при нажатии в Нетбинс происходило: замена в XML значений, архивация с разным набором файлов в разные архивы, перемещение архивов в нужную папку.

Спасибо, за ранее огромеое

Нашел упаковщик проектов NetBeans. Лучший упаковщик это CMD Windows. Надо к нему скачать WinRAR и какой нибудь FTP.

Sign up to leave a comment.

Articles