NuSphere Forums Forum Index
NuSphere Forums
Reply to topic
Various feature requests and suggestions
Veteran

Joined: 26 Dec 2006
Posts: 253
Location: Phoenix, AZ
Reply with quote
Hi all,

I have been using PhpED for a couple of weeks now, and have some suggestions and a couple of quick questions. I was going to send these to Dmitri directly, but then I realized that the forum was probably a better place. All comments/feedback is welcome.

1) Will the code templates, code cues, etc. that I've modified get preserved when I perform PhpED updates?

2) Running and debugging on a remote server would be a lot easier if I could either a) have PhpED automatically upload open local files to the remote server upon every save (or at least every run/debug), or b) have PhpED automatically download open remote files upon every save (or at least every run/debug). Put another way, it'd be helpful to have files automatically mirrored, as though smart sync or upload/download (as appropriate) were being chosen before the run. Right now, before I run or debug a local modified file, I must somehow upload that file to the server first.

3) Speaking of making sure remote and local files are up-to-date with each other, it'd be helpful if the debugger threw a warning when you were stepping through code in the local file that doesn't match code on the server (i.e., when the files are out of sync). I've quite a few times spent time scratching my head trying to figure out why a fix I'd made wasn't working, only to discover that the fix hadn't yet been uploaded to the server.

4) I'd like to see support for the alternative control syntax for the purposes of auto-indenting, balancing, etc. For example, when I type switch($foo): and hit return with Smart Indent turned on, I'd like PhpED to indent the new line by one level, just as it does when I type switch($foo) {. Similarly, I'd like to be able to put the insertion point next to the : or the endswitch and have the IDE know where the matching element is.

5) I'd like to see the search-and-replace dialog enhanced. For a model I suggest aspiring to, see BBEdit, a Mac text editor that, IMHO, has the best search-and-replace feature of any program on the market. It goes a lot deeper than a mere screen shot can show, but check out the second capture at <products/bbedit/benefitsexercise.shtml>. Some things to note are the large (multi-line) text fields for the search and replace text, the ability to save and reuse search and replace patterns, the regex syntax coloring, and the Don't Find button (which lets you set up a search in stages, closing the dialog between stages without executing the search but still saving it). For bonus points, combine the search and replace dialogs as BBEdit does - one dialog for both closely-related operations.

6) I'd like to have a way to manually enter the selection as the search text without opening the search dialog. In BBEdit, I can select some text, hit command-E to enter it as the search string (just as though I'd opened the search dialog and pasted in the selection), then hit command-G to find the next occurrence of it. I know PhpED has the "Find text at cursor" option, but I find that annoying in most cases (most of my searches uses regexes) plus it still requires a trip to the search dialog.

7) Code folding would be great to have. (Browsing around, it looks like this is going to be in the next version - yea!)

8) I'd like a very, very quick way to do syntax checks that doesn't involve running or debugging. Basically, I'm looking for a way to have the IDE call "php -l" on the file I'm working on. I know there's the instant error analysis, but for whatever reason, I rarely see it's little red swiggles pointing out errors - it seems to be restricted to a small subset of possible errors. I've often found myself editing, with no indicated errors, when I try to start a debugging session only to get back a stupid syntax error from the debugger (often on something as obvious as a function that was never completed or an if that was never closed). I've learned that my first clue that something is amiss with syntax is that code completion is broken.

9) And finally, a Mac version would be *great*. When developing for ultimate deployment on a Unix-type server, the Mac just makes a much better development machine than Windows, while offering a much better experience than Linux. A port of the Linux version would probably limit most of the work involved to the UI... and if something like wxWidgets is used, even that would be limited.

Overall, PhpED is great. These are just the requests of a user who's become a fan and wants to see it become perfect :-).
View user's profileFind all posts by bobwilliamsSend private messageVisit poster's website
Site Admin

Joined: 13 Jul 2003
Posts: 8344
Reply with quote
Quote:
1) Will the code templates, code cues, etc. that I've modified get preserved when I perform PhpED updates?

There were problems in 4.x->4.6 migration when we introduced per-language and language-neutral templates.
If you update 4.6 say from 4630 to 4632, your templates will be preserved, just install next update on top of existing version.
But anyway, it's recommended to backup all cfg files.

Quote:
2) Running and debugging on a remote server would be a lot easier if I could either a) have PhpED automatically upload open local files to the remote server upon every save

Tools->Settings->IDE, check auto-upload.

Quote:
Speaking of making sure remote and local files are up-to-date with each other

good point, thanks.

Quote:
For example, when I type switch($foo):

If I got it right, you're talking about PHP-2.0FI syntax. I'm not sure if this sytax will be supported by php itself in the near future.
I'd recommend you not to rely on this.

Quote:
I rarely see it's little red swiggles pointing out errors - it seems to be restricted to a small subset of possible errors

Could you please provide a code sample?

Thanks for all the points and suggestions!

_________________
The PHP IDE team
View user's profileFind all posts by dmitriSend private messageVisit poster's website
Veteran

Joined: 26 Dec 2006
Posts: 253
Location: Phoenix, AZ
Reply with quote
dmitri wrote:

Quote:
2) Running and debugging on a remote server would be a lot easier if I could either a) have PhpED automatically upload open local files to the remote server upon every save

Tools->Settings->IDE, check auto-upload.


If understand the docs right, that option essentially just saves any remote files that you've opened using Explorer. That's fine for updating the server, but it doesn't also update/save the file's *local* equivalent. Thus, if I open a remote file via Explorer, make some changes, save back to the server (or let Auto-upload do it), when I debug, the local and remote files are out of sync because the local version is the old version.

Actually, doing some testing, the option may not be doing anything. Some results:

- Open file directly from remote server via Explorer. Make some changes without saving. Debug. Result: server file is still old version, file in IDE still showing as unsaved.

- Open local file. Make some changes and save. Debug. Result: server file is still old version.

- Open local file. Make some changes and don't save. Debug. Result: IDE saves local file (per auto-save option), but server file is still old version.

Am I missing something?

If that option is supposed to automatically upload files that you've worked on locally, it's not working for me - the remote file never gets touched.

Quote:
Quote:
For example, when I type switch($foo):

If I got it right, you're talking about PHP-2.0FI syntax. I'm not sure if this sytax will be supported by php itself in the near future.
I'd recommend you not to rely on this.


I've only been using PHP since the 4.x days, so I can't comment on 2.x. The syntax I'm using is documented here:

<http://www.php.net/manual/en/control-structures.alternative-syntax.php>

The PHP docs don't say anything about the syntax's origin, nor do they say anything about it possibly going away. I think they *did* say something about it going away quite a long time ago, but that reference was long ago removed, and I've not heard anything about killing it in PHP 6, so I don't think it's going anywhere. The syntax is, IMHO, much easier to read than curly braces.

Quote:
Quote:
I rarely see it's little red swiggles pointing out errors - it seems to be restricted to a small subset of possible errors

Could you please provide a code sample?


The next time I encounter it, I'll try to grab the code for you.
View user's profileFind all posts by bobwilliamsSend private messageVisit poster's website
Various feature requests and suggestions
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
All times are GMT - 5 Hours  
Page 1 of 1  

  
  
 Reply to topic