Sorin Ionescu
13 years ago
1 changed files with 21 additions and 47 deletions
@ -1,62 +1,36 @@ |
|||||||
# https://github.com/dbbolton |
# Aliases |
||||||
# |
|
||||||
# Below are some useful Perl-related aliases/functions that I use with zsh. |
|
||||||
|
|
||||||
|
|
||||||
# Aliases ################################################################### |
|
||||||
|
|
||||||
# perlbrew ######## |
|
||||||
alias pbi='perlbrew install' |
alias pbi='perlbrew install' |
||||||
alias pbl='perlbrew list' |
alias pbl='perlbrew list' |
||||||
alias pbo='perlbrew off' |
alias pbo='perlbrew off' |
||||||
alias pbs='perlbrew switch' |
alias pbs='perlbrew switch' |
||||||
alias pbu='perlbrew use' |
alias pbu='perlbrew use' |
||||||
|
|
||||||
# Perl ############ |
|
||||||
|
|
||||||
# perldoc` |
|
||||||
alias pd='perldoc' |
|
||||||
|
|
||||||
# use perl like awk/sed |
|
||||||
alias ple='perl -wlne' |
alias ple='perl -wlne' |
||||||
|
alias pd='perldoc' |
||||||
|
|
||||||
# show the latest stable release of Perl |
# Perl Global Substitution |
||||||
alias latest-perl='curl -s http://www.perl.org/get.html | perl -wlne '\''if (/perl\-([\d\.]+)\.tar\.gz/) { print $1; exit;}'\' |
function pgs() { |
||||||
|
if (( $# < 2 )) ; then |
||||||
|
echo "Usage: $0 find replace [file ...]" >&2 |
||||||
|
return 1 |
||||||
# Functions ################################################################# |
fi |
||||||
|
|
||||||
# newpl - creates a basic Perl script file and opens it with $EDITOR |
|
||||||
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.\n" && $EDITOR $1 |
|
||||||
|
|
||||||
# if it doesn't, make it, and open it |
|
||||||
[[ ! -e $1 ]] && print '#!/usr/bin/perl'"\n"'use strict;'"\n"'use warnings;'\ |
|
||||||
"\n\n" > $1 && $EDITOR $1 |
|
||||||
} |
|
||||||
|
|
||||||
|
local find="$1" |
||||||
|
local replace="$2" |
||||||
|
repeat 2 shift |
||||||
|
|
||||||
# pgs - Perl Global Substitution |
perl -i.orig -pe 's/'"$find"'/'"$replace"'/g' "$@" |
||||||
# 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 since 'grep -P' is terrible. |
||||||
|
function prep() { |
||||||
|
if (( $# < 1 )) ; then |
||||||
|
echo "Usage: $0 pattern [file ...]" >&2 |
||||||
|
return 1 |
||||||
|
fi |
||||||
|
|
||||||
# Perl grep, because 'grep -P' is terrible. Lets you work with pipes or files. |
local pattern="$1" |
||||||
prep() { # [pattern] [filename unless STDOUT] |
shift |
||||||
perl -nle 'print if /'"$1"'/;' $2 |
|
||||||
} |
|
||||||
|
|
||||||
# say - append a newline to 'print' |
perl -nle 'print if /'"$pattern"'/;' "$@" |
||||||
say() { |
|
||||||
print "$1\n" |
|
||||||
} |
} |
||||||
|
|
||||||
|
Loading…
Reference in new issue