[Surfraw-commits] [surfraw] 01/01: Use awk instead of sed for listing elvi.

Kyle Isom kyle-guest at moszumanska.debian.org
Mon Sep 14 04:04:08 UTC 2015


This is an automated email from the git hooks/post-receive script.

kyle-guest pushed a commit to branch kyle/awk-elvi-list
in repository surfraw.

commit aff977fc0dd053220b2cb729ea8c2a2a04a8fba8
Author: Kyle Isom <coder at kyleisom.net>
Date:   Sun Sep 13 20:42:43 2015 -0700

    Use awk instead of sed for listing elvi.
    
    The awk syntax for doing this is more portable across different
    implementations of awk than the equivalent sed expression.
    
    Tested on OS X 10.10.5:
    $ awk --version
    GNU Awk 4.1.3, API: 1.1
    ...
    $ mawk -W version
    mawk 1.3.4 20141027
    
    Test on Debian GNU/Linux 8.2 (jessie):
    $ gawk --version
    GNU Awk 4.1.1, API: 1.1 (GNU MPFR 3.1.2-p3, GNU MP 6.0.0)
    $ mawk -W version
    mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan
    $ original-awk --version
    awk version 20121220
    
    Test on OpenBSD 5.7 GENERIC.MP#3 i386:
    $ awk -V
    awk version 20110810
---
 surfraw.IN | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/surfraw.IN b/surfraw.IN
index 0de3c96..8471216 100755
--- a/surfraw.IN
+++ b/surfraw.IN
@@ -323,9 +323,9 @@ w3_parse_option_hook () {
 }
 
 list_elvi() {
-    local dir="$1"
-    sed -n 's/^.*elvis:[ 	]\+\(.*\)$/\1/p' $(find "$dir" ! -type d ! -type l ! -name '*~' | sort)
-    for script in $(find "$dir" ! -type d -type l | sort) ; do
+    local_dir="$1"
+    awk '/^#[ 	]+elvis:[ 	]+/{ sub("^# elvis: ",""); print $0; }' $(find "$local_dir/" ! -type d ! -type l ! -name '*~' | sort | xargs)
+    for script in $(find "$local_dir/" ! -type d -type l | sort) ; do
 	printf '%-16s--> %s\n' $(basename "$script") $(basename $(readlink "${script}"))
     done
 }

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/surfraw/surfraw.git



More information about the Surfraw-commits mailing list