Список вопросов
Как зайти в Даркнет?!
25th January, 01:11
6
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
895
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
914
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6086
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4351
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4396
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Emacs как IDE для PHP?
Просмотров: 384
 
Ответов: 7
Добрый день.
Погуглил немного интернет, ютуб и хабр, но не нашел удовлетворения своему вопросу:
Может ли Emacs быть достойной заменой NetBeans как PHP IDE?
Я использую в NetBeans:
— Ctrl+Shift чтобы получить human-readable javadoc к функции
— /** + Enter, чтобы написать JavaDoc к функции, классу или файлу
— Alt+Shift+O для поиска файла по имени в проекте
— Short-cut для заливкли файла или файлов на сервер по FTP
— Short-cut для svn commit/update
К Emacs не относится, т.к. у него работа с буферами даже несколько удобней устроена, чем переключение по tab-ам NetBeans, но обычно я использую Ctrl+w для закрытия tab-а и Ctrl+Pg Down/Up для навигации по табам. В этом плане Emacs круче :)
Так вот может ли всё это Emacs? Насколько я понимаю, изза отсутсвия в Emacs понятия «проект», навигацию по имени файла в проекте мне уж точно не получить (что достаточно расстраивает :( )?
Emacs это такая штука, в которой можно реализовать всё. Вопрос обычно заключается вот в чем — реализовал ли уже кто-то, или реализовывать самому.
Что касается конкретных вопросов – такие вещи как «проект» и не обязаны быть в Emacs из коробки, есть множество сторонних реализаций. Самый модный – proejctile. Он из коробки содержит набор правил (можно добавлять свои), по которым он умеет определять корень проекта. Например, по наличию директории .git в корне, или файла composer.json. Всё в Emacs очень хорошо взаимосвязано и интегрировано, поэтому другие пакеты могут получать информацию о проекте от projectile. Есть и fizzy matching по именам файлов, и работа с vcs, и даже сохранение конфигурации окон по проектам.
Метод для генерации phpdoc с автоматической подстановкой @param я у кого-то в конфиге видел, в общем скорее всего гуглится на гитхабе.
А вот с анализом кода плохо — работа активно ведется несколькими людьми, но решения далеки от phpstorm (netbeans не пробовал). Вариантов несколько, наиболее интересным я считаю направление в плане поддержки PHP в встроенном пакете semantic, есть наработки. Также можно использовать phptags/phpctags. Сам по себе ctags из бренча universal-ctags. Global для PHP5 сейчас никакой.
Вот свежесозданная группа для координации работы над PHP и Emacs: https://groups.google.com/forum/#!forum/emacs-php
Есть ещё отладчик для xdebug: geben. Работает, но с реализацией в phpstorm не сравнится.
Есть проверка на ошибки через flycheck. Есть обалденные средства работы с git (в phpstorm мне не нравится).
Конкретно про PHP ничего сказать не могу, кроме того, что в Emacs очень туго с multi-modes, то есть, когда в одном файле необходимо распознавать и подсвечивать несколько языков: PHP, HTML, CSS, Javascript.
Несколько библиотек есть, но они требуют мощного допилиивания, и со всеми из них у меня были проблемы. Когда я в последний раз смотрел на поддержку PHP в Emacs, реализовано было немногое и работало из рук вон плохо (лет 5 назад это было).
И вообще, Emacs мощен и удобен, когда знаешь все его сочетания и умеешь писать на Emacs Lisp, но я, после 13 или 14 лет использования Emacs перешел на vim. Сначала решил попробовать, потому что руки начали болеть из-за RSI, затем втянулся, затем перешел на PyCharm с плагином IdeaVIM и наступило счастье. Потому что после небольшого периода привыкания стало понятно — то, что умеет делать PyCharm с Python-кодом, Emacs можно будет научить после многих лет упорного допиливания…
Для PHP у JetBrains вроде бы тоже есть какая-то IDE, рекомендую глянуть.
Единственная вещь из Emacs, по которой скучаю — org-mode. Вот это очень мощный и удобный аутлайнер.
Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться