Blame view

plugins/perl/perl.plugin.zsh 1.43 KB
093a6c34b   mj   Squashed 'repos/r...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  # https://github.com/dbbolton
  #
  # Below are some useful Perl-related aliases/functions that I use with zsh.
  
  
  # Aliases ###################################################################
  
  # perlbrew ########
  alias pbi='perlbrew install'
  alias pbl='perlbrew list'
  alias pbo='perlbrew off'
  alias pbs='perlbrew switch'
  alias pbu='perlbrew use'
  
  # Perl ############
  
  # perldoc`
  alias pd='perldoc'
  
  # use perl like awk/sed
  alias ple='perl -wlne'
  
  # show the latest stable release of Perl
  alias latest-perl='curl -s http://www.perl.org/get.html | perl -wlne '\''if (/perl\-([\d\.]+)\.tar\.gz/) { print $1; exit;}'\'
  
  
  
  # Functions #################################################################
56a5793ce   mj   Squashed 'repos/r...
29
  # newpl - creates a basic Perl script file and opens it with $EDITOR
093a6c34b   mj   Squashed 'repos/r...
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
  newpl () {
  	# set $EDITOR to 'vim' if it is undefined
  	[[ -z $EDITOR ]] && EDITOR=vim
  
  	# if the file exists, just open it
  	[[ -e $1 ]] && print "$1 exists; not modifying.
  " && $EDITOR $1
  
  	# if it doesn't, make it, and open it
  	[[ ! -e $1 ]] && print '#!/usr/bin/perl'"
  "'use strict;'"
  "'use warnings;'\
  		"
  
  " > $1 && $EDITOR $1
  }
  
  
  # pgs - Perl Global Substitution
  # find pattern		= 1st arg
  # replace pattern	= 2nd arg
  # filename			= 3rd arg
  pgs() { # [find] [replace] [filename]
      perl -i.orig -pe 's/'"$1"'/'"$2"'/g' "$3"
  }
  
  
  # Perl grep, because 'grep -P' is terrible. Lets you work with pipes or files.
  prep() { # [pattern] [filename unless STDOUT]
      perl -nle 'print if /'"$1"'/;' $2
  }