Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re: Perl Editor Voodoo

by toadi (Chaplain)
on Feb 20, 2002 at 09:24 UTC ( #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


Comment on Re: Perl Editor Voodoo
Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (8)
As of 2015-07-04 08:41 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (58 votes), past polls