Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked

Re^2: Desparately seeking a bilingual vim/Emacs expert

by TheDamian (Priest)
on Mar 24, 2005 at 19:50 UTC ( #442175=note: print w/replies, xml ) Need Help??

in reply to Re: Desparately seeking a bilingual vim/Emacs expert
in thread Desparately seeking a bilingual vim/Emacs expert

Modifying this to output Data::Dumper stuff (good idea) would be straight-forward.
Here's my attempt. I'd be very grateful if someone who knows Emacs could actually try it.
(defun perl-dbg (name) "Insert a debugging print statement" (insert "use Data::Dumper qw( Dumper );\nwarn Dumper [ ]\n") (search-backward "[ ")
I'm not sure what document templates are for.
The idea is that you hit a key, and the editor pastes in a template from another file. Any suggestions for how to do that would be greatly appreciated.
For indenting, I have this inside (custom-set-variables):
I'm guessing:
'(cperl-close-paren-offset -4)
Outdent 4 columns on a closing paren?

'(cperl-continued-statement-offset 2)
Indent 2 columns when a statement wraps?

'(cperl-indent-level 4)
Indent four columns per indentation level?

'(cperl-indent-parens-as-block t)
Indent parens like blocks?

'(cperl-label-offset 0)
Put labels in the zeroth column?

'(cperl-tab-always-indent t)
Convert tabs to spaces?

Could someone knowledgeable confirm (or correct) those guesses?

Replies are listed 'Best First'.
Re^3: Desparately seeking a bilingual vim/Emacs expert
by coolmichael (Deacon) on Mar 25, 2005 at 02:33 UTC
    (defun perl-dbg () "Insert a debugging print statement" (interactive) (insert "use Data::Dumper qw( Dumper );\nwarn Dumper [ ];\n") (search-backward "[ ")) (global-set-key "\C-c\C-p" 'perl-dbg)
    Then typing CTL-C CTL-p inserts this text:
    use Data::Dumper qw( Dumper ); warn Dumper [ ];
    and leaves the cursor under the [ character. I wasn't sure if you wanted to prompt for the name of the variable(s) to dump, so I changed (defun perl-dbg (name) to (defun perl-dbg (). The statement (interactive) makes it interactive, so that it can be bound to a key combination. Here's a version that prompts for a variable name (or names):
    (defun perl-dbg (name) "Insert a debugging print statement" (interactive "svariable to dump: ") (insert "use Data::Dumper qw( Dumper );\nwarn Dumper ") (insert name) (insert ";\n"))
    There are probably better ways to handle strings in Emacs-Lisp, but I've only recently started playing with it.
      Thanks for debugging my attempted debugging tool!
      Excellent. Thank-you!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://442175]
[shmem]: in the french alpes, at the end of a gravel road, we had a beer at a hut - and heard an enduro coming up.
[shmem]: not by the road, but from there below where you wouldn't want to walk.
[shmem]: the biker stopped the machine at the table and took off his helmet.
[shmem]: long white hair, long beard the same, then he proceeded to get off the bike
[shmem]: saying "biking itself isn't that much, but getting up and down - hell!"
[shmem]: up and down: on and off the bike, of course

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (7)
As of 2017-06-25 20:10 GMT
Find Nodes?
    Voting Booth?
    How many monitors do you use while coding?

    Results (570 votes). Check out past polls.