KDevelop PHP digest - August to Oktober 2009
Hi there again! I’ve been silent again on my blog, but didn’t rest on development. In the one and a half months since the last digest, I started writing a PHP application This finally made me eat my own dog food :). It resulted in lots of polishing and quite a few bug fixes for the PHP plugin in KDevelop. Here’s a list of what I think are the notably changes since the last digest:
(Note: to view screenshots, go to the bottom of this article.)
- refactoring of parts of the Code Completion code, should already result in faster code under certain situations
- properly mark constants as “Kind: Constant” in the declaration tooltips
- offer argument hints for ctors during code completion in class init statements
- greatly improve the generate inline documentation of built-in PHP functions, classes, properties etc. pp.
- add documentation of public properties
- support aliased functions (thanks to Victor Grischenko for his patch)
- show more/all documentation, and not only the first paragraph
- fix type-lookup
- don’t get confused when a documentation file documents both, a method and a function (greatly improves e.g. MySQLi documentation)
- don’t offer “jump to declaration” for built-in PHP declarations
- add support for
list(...)
statement - cleanup code-completion list, esp. show the return type of functions in the prefix field, and not something a la “function ReturnType ($arg1, $arg2, …)”
- improve the code-completion for include/require statements
- add language constructs to code completion (e.g. class, while, foreach, print, …)
- show declaration tooltip for magic constants, showing their current value
- make functions, methods and classes case-insensitive, just like PHP handles them
- some performance improvements, especially in code completion and parsing of the generated file containing php-internal declarations
- lots of bug fixes, don’t want to iterate them all ;-)
I created a Flickr account and will push screenshots to it for every upcoming digest I do. To see some of the features I talk about above, visit: http://www.flickr.com/photos/milianw/sets/72157622375662249/detail/
EDIT : A note to those that want to try this out , but cannot / don’t want to compile it: I heard that there is / will be an AUR package for Arch users available. And I’d really appreciate it if others could create packages for their favorite distribution as well. You’ll need bleeding-edge kdevplatform + kdevelop though!
Comments
Want to comment? Send me an email!
Comment by Emil Sedgh (not verified) (2009-10-02 16:40:00)
Hi Thanks for working on the php support. Its getting better and better each time i try. In case you need some feedback, i can tell you what stopped me from using kdevelop. While the features are astonishing, the performance kills you. I simply gave up using it because it got ~1GB of my memory after an hour. Also, the unrelated menus and stuff are annoying. I mean all that make, make instal, make install as root and such buttons which do not belong to a web application.
(going to try it again)
Comment by Milian Wolff (2009-10-02 17:54:00)
Yes, right now I’m more in “getting it to work” mode, instead of “getting it to work as fast and performant as possible” mode :)
And the situation with the unrelated menu items is indeed kinda annoying, though remember that you can hide unneccessary toolbars and toolviews. The menu’s will stay there of course, but I never use them.
Of course, this will improve once Quanta is getting some love, though that will take some time I fear…
But maybe I’ll try to push the memory consumption a bit, lets see. Though first some Kate development!
Comment by Harley Laue (not verified) (2009-10-02 15:35:00)
Just a comment on the AUR PKGBUILD, if you actually need a binary package for it, I can provide up-to-date builds for x86_64 and perhaps i686 if there’s a desire/need for it. My email is in the PKGBUILD, or just comment on the AUR page.