UPDATE:
In the meantime the talk took place, here the links:
Original Post
Here the abstract for my talk proposal for Cluj
... not sure if it's too late to be still accepted
Comments and corrections are welcome
Emacs offers even more ways to do it than Perl's TIMTOWTDI .This demonstration will show how to combine some .el packages to create a neatly integrated and productive Perl development environment. (well from the authors perspective)
Intended audience : Emacs users trying to navigate thru all these possibilities.
After a short introduction into emacs (v24) for non-users we'll concentrate on builtin Perl support and how to add some other language agnostic projects to approach the author's IDE of what an IDE should look like.
For starters: Overview of Emacs goodies (and some myth-busting)
- open source
- available on all development platforms
- runs in windows and TTY
- start-up time and memory consumption comparable to Vim ( != vi) just try emacs -nw -Q
- package management for a huge universe of extensions
- CUA shortcut emulations for "modern" applications (C-x C-v C-z C-a ...)
- VIM command emulation evil-mode (includes text objects)
- regional undo Undo only in selected text.
Out-of-The-Box support
What comes already builtin for Perl?
** cperl-mode
The Standard mode for Perl features, including
** perldb
- imenu easy navigation for subs
- auto indentation
- code transformation prettifying regex convert postfix <-> prefix for "if" , "unless", etc
- compile options
- formatting options akin to perltidy
- documentation display
Perl debugger integration, stepping through original file
** flymake-mode
Interactive syntax check while typing by running "perl -c" in background
** dabbrev-mode
avoid typos of identifiers by expanding from dynamic abbreviation dictionary
Recommended Extension Packages
** Yasnippet
Yasnippet (Yet Another Snippet Package) emulates the Textmate snippet features, which seem to become a standard now across all IDEs
** Auto Complete
auto-complete.el shows completion alternatives in drop-down while typing from different sources (functions, variables, snippets,...)
** (Omni Complete)
probably covered, this is a very promising project but yet not personally tested
** ECB = Emacs Code Browser
The IDE "look an feel" with many specialized information panes to explore
link: http://ecb.sourceforge.net/
** Regex-tool
A tiny project to interactively test Perl-regexes against text an see the resulting matches.
Demonstrates the extensibility of emacs.
Visions
** PIDE I - "Perl Integrated Development for Emacs"
combining a stable set-up of Perl related el-modules and configs for a quick start with Emacs.
** PIDE II - "Perl Integrated Development for Every editor"
Is an editor agnostic framework possible?
Snippets and Completion-rules could be provided in POD "=for IDE" to support different projects like Moose or Mojolicious or whatever. A simple script could parse them on editor start-up and translate them to editor specific syntax.
Cheers Rolf
(addicted to the Perl Programming Language and ☆☆☆☆ :)
Je suis Charlie!