The search for a good editor

Before you say “go read the stickies”: I have, and tried many of the suggestions there. I am very picky, however, and so far, none have really impressed me. I’ve looked at Kodomo, PHPEdit and Notepad++ currently.

The things that bother me are unintuitive user interfaces, strange solution/project management, and slow response due to intellisense lookups. Lastly, strange behaviour when using Themes (in those that support them) or the inability to disable certain elements.

What I’m looking for is a simple multi-document notepad with basic PHP syntax highlight. I do NOT need any special files generated for managing a solution and it’s projects. I do not need themes. I do not need intellisense. But above all, it needs to free or extremely cheap! I’m retired and on a fixed budget. I’ve just grown to hate notepad.

Any suggestions that fit?

What about vim? It is said that vim is one of the best editors to have ever set face on the programming earth. The learning curve is a bit steep compared to other tools but it might be something you like.

I’m just to log off for a while, so I’ll just ask this now, and get the answer later. Does it run on windows? I don’t think I’ve ever seen it on anything but posix based machines. Thanks. I’ll check back later.

It is supported on Windows: http://www.vim.org/download.php#pc

+1 for vim, yes windows is good, you can carry your .vimrc file around with you (like an ini file) and there are lots and lots of PHP-based extensions to it.

It is special and it takes some time to learn even to be moderately competent ( I was laid up in hospital for 5 days when I decided to read up on what it was about ).

At the other end of the scale is an IDE, I quite like Netbeans, clunky Java based but free, PHP modules, good with stuff like ZF etc but for weeks my code fails with habitual vim snippets causing errors ( :w :slight_smile: ).

Hi,

I use the free IDE Eclipse. This might be way over what you need. It is an IDE built with Java so it will run on Windows. It allows you to configure it with the languages and script languages that you want. It allows you to to open a ‘perspective’ for the language you currently want to work with and allows multiple ‘perspectives’.

It has a powerful ‘Remote System Explorer’ which is an amazing tool that let’s you create connections to your servers and remote systems that you have privileges to; for instance you can create SSH connection and over a VPN connect and manage all files on a remote host. You can copy data between one host and another.

Its’ HTML and CSS handling is basic with syntax highlighting and intellisense (that can be shut off).

The project outline is good for Javascript, PHP, and Java as you can see all properties, methods and objects on the current page.

It writes a local copy of the data to your machine so if you are offline you can edit and update and then synchronize it when your back online.

If you don’t load too many features, it performs really well.

Every component I use is free.

I just had to set it up two days ago, and even though I’m experienced at doing so, I was able to install it and add the different languages and tools in about 1/2 hour. This was over a reasonably quick Internet connection. I was able to add tools, configure X-Debug, and modify my text editor preferences in that time. I would say for a person new to it, the first time might take 2 hours, but after you do it once it is quite easy.

Regards,
Steve

Sigh…ok, it seems VIM isn’t a real port (not an actual windows app) and I hated the original so that’s a no-go. Isn’t there anything that just has “File ->Open|Save|Close|Exit” like notepad, but allows for several being open in a tabbed fashion, with PHP syntax? I don’t even need a toolbar. Guys, I’m old, had a stroke, and retired. I need something simple. If I knew how to apply the highlighting real-time myself, I could write my own editor. I am MS licensed after all…

Hi Serenarules,

Please understand that I know what you’ve ask for, in that you want a basic editor… I will however help you install and configure eclipse step by step if you want. We could do it in this thread so others might benefit.

Please let me know if this is of interest?

I don’t know of anything other than NotePad++ that does something similar to your expressed needs, but I am willing to help you with both the install and learning the interface of Eclipse OK?

Regards,
Steve

Let me try a few more things SS, and if I still can’t find something, I will be happy to go through it with you. =)

Alright, ServerStorm, let’s give this a shot. I tried a few extensions available in NuGet, and while one was stupidly basic, the other crashed the ide. So…I’m at the eclipse site and I’m running x64 arch. What project(s) and/or package(s) do I grab? Don’t worry, I won’t get ahead of you, but I might have to step away during the downloads, so I want them running.

There certainly are lots out there. FWIW, I’ve heard a lot of good about Notepad2, but not being a Windows user, I haven’t tried it.

Netbeans ticks all those boxes :slight_smile:

[RANT] Peeve me off but I spent 1.5 hours writing a post with the instructions and I went to upload a picture and it killed my page. Lesson; big posts back them up don’t trust everything will work… grrrrrrrr[/RANT]

I’ll work on it again and get it up here, sorry for the time lapse :frowning:

Steve

Ok, as of right now, the things I’ve installed and tried are:

  1. PHPEdit
  2. Komodo
  3. IDE Eclipse (php) [Did it at 3AM last night SS, I couldn’t sleep and researched it myself]
  4. Notepad++
  5. VIM
  6. Visual Studio 2010 with various PHP Language Packs

What I did not try:

  1. Notepad2 (like Notepad++, based on Scintilla editor component)

So here’s the deal folks. The were all pretty decent (though I still hated VIM) with all kinds of optional features, and for the most part, they all highlight syntax, but not the way I want. Are they all derived from Scintilla or something? They don’t seem to make any distinction between function names and class / interface names. I like class / interface names in teal, but function names in black. In addition, only ONE seemed to have a good set of options for automatic coding conventions (Netbeans for the win there), so I could specify if I wanted opening { on a new line or not, and things like that. When folding / collapsing code, the scintilla based one draws this awful line across the screen, with no way to get rid of it, even with clever coloration. I know I stated intellisense wasn’t a desired feature, but I did l look at each programs implementation a bit. Most seemed to only activate when using something built in to PHP, and it didn’t recognize the dummy base class I made, which was in the same darn file as the concrete class I was authoring against it. Oh well, not a deal breaker, just thought I’d mention it.

So far, Netbeans PHP Ide has been the closest. Anything else I can look at? Preferably nothing based on scintilla.

i like sublime text for small stuff, eclipse for big stuff.

I agree about Sublime but unfortunately it is not free and I am curious to know when if ever the “requests to purchase a license” will stop and the progam stop working.

I am currently programming with FuelPHP so will give Eclipse a try. The last time I used an IDE was with Delphi.

Meanwhile I just love Sublime’s Sunburst syntax highlighting. It is really the best one I have ever seen.

Screen Dump:

http://johns-jokes.com/afiles/images/sublime-001.jpg

Hi Serenarules,

Glad you got it installed yourself, sorry that you could not sleep.

In Eclipse you can customize and create new configurations of code highlighting syntax. You can specify it by keyword or using a regular expression.

You can install Aptana Web Tools in Eclipse and it has excellent code highlighting for CSS, Javascript and HTML.

Did you get a chance to try downloading and using the Remote System Explorer perspective in Eclipse?

I just went with the initial C/C++ perspective, and added the PHP one. I think the problem is that all these editors seem to be utilizing something built in to PHP itself, since PHP doesn’t discriminate between TYPES of identifiers. For example (and I’m skipping the php block tags here on purpose):

class ThisClassIdentifierIsConsideredText implements AndSoIsThisInterfaceIdentifier
{

public function IronicallySoIsThisMethod() { return null; }

}

So when you select a fore/back color for “identitifier”, it changes ALL of them. What I want is more like:

class ThisClassIdentifierIsConsideredText implements AndSoIsThisInterfaceIdentifier
{

public function [COLOR=“#FF8C00”]IronicallySoIsThisMethod/COLOR { return null; }

}

Coloring class, interface and method identifiers differently! Several of the editors had this ability, but only for other languages, like C++, Java, but when it came to PHP, it fell short. It IS possible,however, that I’ve missed something along the way. If anybody knows, please tell me.

Eclipse Install and Configuration for Web Work

Install Eclipse:

  1. If you have 2+Gb of RAM then download Eclipse Juno otherwise download Eclipse Indigo. Here are the links to each 64 bit version:
    [LIST]
  2. Eclipse Juno Classic - http://www.eclipse.org/downloads/packages/eclipse-classic-42/junor
  3. Eclipse Indigo Classic - http://www.eclipse.org/downloads/packages/release/indigo/sr2
  4. Choose your correct OS and either 32 bit or in your case 64 bit downloads.
    [/LIST]
  5. You need to have Java installed on your system. You can install either JRE or a SKD but I recommend you don’t use Sun Java 1.7x as it will crash Remote System Explorer Sun Java 1.6 JRE works well.
  6. Unzip the package
    [LIST]
  7. Windows: c:\eclipse\exlipse.exe
  8. Linux: /home/my_user/eclipse/eclipse
    [/LIST]
  9. WINDOWS ONLY: set the eclipse.ini JAVA RAM requirements (give it a at least 128m)C:\eclipse\eclipse.ini). The contents of eclipse.ini would be::
    > -jvmargs -Xms128m -Xmx512m -XX:MaxPermSize=128m
  10. Run for the first time and Eclipse will ask you to identify a place for your Workspace. Your workspace is a place where all your files are stored; this includes where Remote System Explorer stores its’ temporary files that it copies from remote hosts.

[B][SIZE=3]Install Tools and Perspectives:

[/SIZE][/B]

  1. When you first open Eclipse it will dispay a Welcome screen. You can read this, then close it using the ‘x’ in the upper right corner.
  2. Go the the ‘Help –> Install New Software’ Menu. The Avaliable Software window will open.
  3. In the field ‘Work with:’ choose the Juno - http://download.eclipse.org/releases/juno. You may have to wait for the available software to load. Once it does select and enable the following:
    [LIST]
  4. ‘General Purpose Tools –> Remote System Explorer End-User Runtime’
  5. ‘Web, XML, Java EE and OSGi Enterprise Development –> JavaScript Development Tools’
  6. ‘Web, XML, Java EE and OSGi Enterprise Development –> PHP Development Tools (PDT) SDK Feature’
  7. ‘Web, XML, Java EE and OSGi Enterprise Development –> Web Page Editor’
    [/LIST]
  8. When these are selected choose the ‘Next’ button on the bottom right. This will lead to the ‘Install Details’ where you can check that everything you wanted is listed. Choose ‘Next’ it leads to the ‘Review Licenses’ screen.
  9. Read the terms. I have read all of them and they don’t bind a developer from using or distributing the software that they create with the system, so it was ok for me to use. You will have to make a decision for yourself. If you agree to the terms select ‘I accept the terms of the license agreement’ and select the ‘Finish’ button on the bottom right.

Open Eclipse Perspectives and the Interface:

  • Orange oval shows current loaded perspective. I am using the Remote System Explorer.
  • Blue oval shows the project files
  • Purple oval shows the different documents that I have opened
  • Green oval shows the area where you load different perspectives.

The Remote System explorer is nice because you can have FTP, Linux, SSH, Unix, or Windows connections to remote systems and work with them like they are local. You can for instance copy files from your local computer (such as graphics) to your remote host by dragging them from one folder to another.

X-Debug is easy to setup in Eclipse and it decent at PHP debugging.

I hope this helps someone that has been hesitant or just interested in trying Eclipse.

Regards,
Steve

Hi

You should see if EclipseColorer plugin will do what you want.

Regards,
Steve