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

Re: Perl Editor Voodoo

by toadi (Chaplain)
on Feb 20, 2002 at 09:24 UTC ( [id://146531]=note: print w/replies, xml ) Need Help??


in reply to Perl Editor Voodoo

I have so much in my vimrc that I sometimes forget what nice features I have :)
" add mapping for insert-mode completion (looks up keyword in dictiona +ry) imap <C-F> <C-X><C-K> " list files in current directory. map ,ls :!ls<CR> "Inserting date and Updates iab YDATE <C-R>=strftime("%A %d %b %Y %H:%M")<CR> map ,L 1G/Last update:\s*/e+1<CR>CYDATE<ESC> map ,,L 1G/Last change:\s*/e+1<CR>CYDATE<ESC> "Resize windows map <S-e> :resize +2<CR> map <S-b> :resize -2<CR> " Jumping to function with tags "nmap <S-n> ?[^a-zA-z0-9_]<CR>lvt(<C-]> "nmap <S-p> :pop<CR> " deleting those fecking ^M map <C-n> :%s/^M//g^M map <F4> :!bash^M map <F4> :q!^M map <F5> :w^M " replace bunch of WS with one blank Ctrl-x nmap ^X dwi ^[ " Commenting a whole paragraph with # style comments " pcp = Perl Comment Paragraph map ,pcp vip:s%^%# %<CR> vmap ,pcp :s%^%# %<CR> " Removing the # comment of a commented paragraph " rpc = Remove Perl Comment map ,rpc vip:s%^# %%<CR> vmap ,rpc :s%^# %%<CR> " F2 close current window (commonly used with my F1/F3 functions) noremap <f2> <Esc>:close<CR><Esc> " perl -cw buffer, using a temp file, into a new window function! PerlCW() let l:tmpfile1 = tempname() let l:tmpfile2 = tempname() execute "normal:w!" . l:tmpfile1 . "\<CR>" execute "normal:! perl -cw ".l:tmpfile1." \> ".l:tmpfile2." 2\>\&1 + \<CR>" execute "normal:new\<CR>" execute "normal:edit " . l:tmpfile2 . "\<CR>" endfunction " perl buffer, using a temp file, into a new window function! PerlOutput() let l:tmpfile1 = tempname() let l:tmpfile2 = tempname() execute "normal:w!" . l:tmpfile1 . "\<CR>" execute "normal:! perl ".l:tmpfile1." \> ".l:tmpfile2." 2\>\&1 \<C +R>" execute "normal:new\<CR>" execute "normal:edit " . l:tmpfile2 . "\<CR>" endfunction " Settings for editing perl source (plus bind the above two functions) function! MyPerlSettings() if !did_filetype() set filetype=perl endif set textwidth=78 set expandtab set tabstop=2 set shiftwidth=2 set cindent set comments=:# set formatoptions=croql set keywordprg=man\ -S\ 3 noremap <f1> <Esc>:call PerlCW()<CR><Esc> noremap <f3> <Esc>:call PerlOutput()<CR><Esc> endfunction if has("eval") augroup SetEditOpts au! " Perl autocmds autocmd BufNewFile *.pl,*.cgi 0r ~/vim/skeletons +/skel.pl autocmd BufWrite *.pl,*.cgi !chmod +x % autocmd FileType perl :call MyPerlSettings() augroup END endif
In the skel.pl file you can put -w and strict

--
My opinions may have changed,
but not the fact that I am right

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://146531]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others browsing the Monastery: (7)
As of 2024-04-18 11:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found