mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-10-27 16:50:58 +01:00
moved to ./Functions/Example/zless
This commit is contained in:
parent
51bf80f833
commit
f0fbd50a98
1 changed files with 0 additions and 37 deletions
|
|
@ -1,37 +0,0 @@
|
||||||
#!/usr/bin/zsh -f
|
|
||||||
#
|
|
||||||
# zsh function script to run less on various inputs, decompressing as required.
|
|
||||||
# Author: Phil Pennock. zsh-hacks@athenaeum.demon.co.uk
|
|
||||||
# Modified by Bart Schaefer.
|
|
||||||
# Thanks to zefram@fysh.org for a great deal of help in sorting this out,
|
|
||||||
# ie wrt syntax for unsetting members of arrays and eval "$(...)" when I
|
|
||||||
# asked for something better than . =(...)
|
|
||||||
#
|
|
||||||
# Use -zforce to pass through a display-formatting command
|
|
||||||
# zless -zforce 'bzip2 -dc' foo-no-dotbz2
|
|
||||||
# zless -zforce 'od -hc' foo-binfile
|
|
||||||
#
|
|
||||||
# If you can understand all of this without reference to zshexpn(1)
|
|
||||||
# and zshparam(1) then you either have a photographic memory or you
|
|
||||||
# need to get out more.
|
|
||||||
#
|
|
||||||
|
|
||||||
emulate -R zsh
|
|
||||||
setopt localoptions
|
|
||||||
|
|
||||||
[[ $# -ge 1 ]] || return
|
|
||||||
local lessopts
|
|
||||||
set -A lessopts
|
|
||||||
integer i=1 loi=1
|
|
||||||
while ((i <= $#))
|
|
||||||
do
|
|
||||||
case $argv[i] in
|
|
||||||
-zforce) argv[i,i+2]=("=($argv[i+1] \"$argv[i+2]\")"); ((++i));;
|
|
||||||
-*) lessopts[loi++]=\"$argv[i]\"; argv[i]=(); continue;;
|
|
||||||
*.(gz|Z)) argv[i]="=(zcat \"$argv[i]\")";;
|
|
||||||
*.bz2) argv[i]="=(bzip2 -dc \"$argv[i]\")";;
|
|
||||||
*.bz) argv[i]="=(bzip -dc \"$argv[i]\")";;
|
|
||||||
esac
|
|
||||||
((++i))
|
|
||||||
done
|
|
||||||
eval command less $lessopts $*
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue