We have moved our forum to GitHub Discussions. For questions about Phalcon v3/v4/v5 you can visit here and for Phalcon v6 here.

Phpstorm plugin

Hi, I have just discovered that it could be written plugin for phpstorm for easier development in Phalcon. I think that phpstorm is the best IDE for php, maybe it worth to see if something similar could be done or it is worth to be done something like that:

https://plugins.jetbrains.com/plugin/?phpStorm&pluginId=7219 Symphony2 https://plugins.jetbrains.com/plugin?pr=phpStorm&pluginId=7182 Yii



98.9k

hi, what extra functionalities do you think the plugin could provide in addition to code completion?

In first link, there are screencast-o-matic animated gif, this plugin could provide volt autocompletion, open view dedicated to controller, move devtools generators to plugin etc. But it could be done by people which are familiar with plugin development for phpstorm. I don't need it but i want that phalcon could be the best framework for php and people could use it in easy way. But this steps should be done, at right time, not now, but i post about it that you know that it is posibility to do more than IDE offer by defaults, and as you see Symfony and Yii start to use it, so maybe we could use it in future.



20

+1 and PHQL support



2.5k

Volt and Zephir support

Hi guys! I would be more than glad to help to write the plugin, I know the PHPStorm/IntelliJ API quite well as I write alot of internal extensions for both IDEs where I work. Before I start, has anybody started this already that I could contribute to?

@Phalcon there is alot of extra functionalities other than code completion, such as file templates, live templates, code inspection, and alot more. I would start with something basic just to get it out there and add stuff to it as we go along. Code inspection for variables in volt templates would come very handy for example.



98.9k

@kjartano, thank you, as I know, there is no a plugin created yet, please let me know how I can help you

I am going to put a basic plugin up on github tomorrow, (or today it's already 1:12 here, still working :) ) and I'll start with a type provider for the dependency injector. So that we'll be able to do $di->get('obscure-service')-> and get auto-complete / code inspection right from there... What I will need though is alot of feedback, because we're starting to migrate most of our work over to phalcon, and I've been asked to write some helper extensions at work, but maybe "our way" of using phalcon isn't something that everyone does, as phalcon is very flexible, so I'll need some feedback later on, to make this plugin usable for every use case of phalcon. As for what I'll be writing at work for phalcon extensions, I've been give full permission to open source it, so I'll do some work at work time and I'll also do at least 1-2 hours at home when possible

One thing though... I am currently using IntelliJ 12 + PHPStorm 6, (IntelliJ 13 and PHPStorm 7 are still in EAP) and I've been trying to get those to work together (13+7) for plugin development, but with no luck... :( I'll talk to JetBrains about this, I'll email them now, because from what I've seen the new Open API for PHPStorm has grown quite a bit between version 6 and 7 (quick inspection, the plugin sdk for PHPStorm doubled in size) so I'd like to get some info if I write it for for PHPStorm 6 (with Intellij 12) whether it will work with minor modifications on PHPStorm 7 or will need a complete rewrite... I'll email them now.

@kjartano thank you for taking the plugin job for Phalcon for PHPStorm. I would suggest that you start right away with the version PHPStorm 7 PHPStorm has got very fast pace development so there is no point in wasting time on old versions. A lot of people use the PStorm in EAP mode, because you can use it practically for free everytime. I have the full version, but also using only the EAP.

@doit76 It's been almost 20 days since I last tried development for the PHPStorm 7 EAP, doing the programming on IntelliJ 13 EAP, but I had huge issues and ended up reverting back to 6/12... But since then there are two releases out, so I'm hoping it's better, if not I'll try to get to the bottom of it and issue a ticket to Jetbrains, although I think they are aware of these issues. However, the PHPStorm 7 API jars, almost doubled their size, so I am very excited to see if they have some better stuff to work with, in terms of type providers and completion contributers...

Good example on how bad the situation really is in PHPStorm 6: https://confluence.jetbrains.com/display/PhpStorm/PHP+Open+API#PHPOpenAPI-PhpTypeProvider

When writing plugins I refuse to let this type of code go out... But when I simplify it, I tend to run into performance issues, especially when writing code inspections.

Taken from here: https://www.jetbrains.com/phpstorm/nextversion/index.html

"Since version 6, PHP Open API has been extended to bring powerful Extension Point which allows third-party plugin creators to provide type inference, code completion, navigation and other IDE best-practices for various PHP frameworks."

This sounds very nice. I done plugin development to some extend every day on the 6 edition and I hope they have some better features now, I am downloading the latest versions to see what's new.

I installed the latest EAP versions and everything is good now. I am going to take a look at the internal API changes over the weekend to see what's new and I'll get started on the plugin very soon. I'll post a github repository when I have it up, in the meanwhile what features are people looking to have implement in this plugin, whats' the most important to start with?



20

Hi, thanks for your work, i think that Volt, PHQL and Zephir support will be great !



32.2k

Hey guys. What's the status of the plugin?



165

Also I like Phalcon plug-in in the Codelobster PHP Edition

+1 plus bump.

Maybe we can coordinate a group effort to create a PHPStorm plugin? Do we need a head-count to verify the popularity of this IDE?



20.4k

Did anything ever come of this?

edited Dec '15

Bump - I think after adding STABLE support(well that not equals 100%) for PHP7 for Phalcon and Zephir i think taht should be next think to do.