I am a *nix fan at heart. I use Linux exclusively at home, but I've now found myself in an interesting situation: I need to work on Perl for Linux, BSD, Windows, and MacOS/X. Beyond that, actually, I need to use that variety of systems to actually develop on: Linux at home, BSD, Windows, and OS/X at various sites for work.
I read perl editor on windows, Windows Text Editor for Perl, Perl Editor for Windows, and the best perl editor/ide on win32? already, but I'm still left with a question: What's a good editor, with a consistent interface, that works across all those platforms? Killer features, for me:
- Syntax highlighting. I'm a very visual person, and syntax highlighting is a must for me to be productive.
- Reasonable resource requirements. As a frame of reference, I find Komodo for Windows to be a bit sluggish.
- Folding. That is, the ability to visually collapse a block into a line, making it easier to navigate the massive spaghetti of code I'm being asked to maintain.
- Project support. I'm a sucker for projects a la Komodo: a collection of related files that are linked by virtue of my telling the editor that they belong together, nevermind where they physically reside. Directories are not projects. ;-P
- Feature and interface portability across platforms. They don't have to be exact between platforms, but menus, toolbars, and shortcut keys should be as similar as possible by default -- or have easily-cloned configuration (think text files).
- Update: I forgot, multiple workspaces in one window (either tabs, or switching a la screen)
Those are required, what would be nice:
- Integrated CVS/Subversion. I must use one of those two version-control packages: I don't care which, but it would be nice to have them integrated into the editor.
- Programmable macros.
- "Snippet" support. Click button, automagically insert template for module, that I wrote and saved earlier, with project-specific metadata already filled in.
Any ideas? I've tried the ported versions of Emacs and Vim, but I find they both lack features I rely on. The closest I've come is FTE, but it hasn't proved stable on all the OS's, and doesn't have project support.
I welcome your wisdom, O great cross-platform Monks!
Update: I have settled on using Emacs, as the newest version for Win32 seems to work beautifully. Thanks to oknow's suggestion of using the Speedbar, I no longer use folding. As for project management, nothing I've found for Emacs works, so I'm rolling my own. It's essentially a Tk application that reads file names and paths from a flat text file and calls out to Emacs to open them when clicked. Same deal for snippets.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
|
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.