#!/bin/bash
set -e

# stg-fold-files-from - picks changes to one file from another patch.
# Only supports picking from one file pattern, but allows to select any range
# of hunks from the file, using the -# flag to filterdiff.
# Use together with "filterdiff --annotate" in your diff pager, to
# identify hunk numbers easily.
# Use "-O -U<n>" to get finer hunk granularity for -#<n>.

# usage: stg-fold-files-from <patch> [-n] [-O <stg-show-flags>] [-#<n>[-<n>][,<n>]...] <file-pattern>

# Copyright (c) 2006-2007 Yann Dirson <ydirson@altern.org>
# Subject to the GNU GPL, version 2.

PATCH="$1"
shift

filtercmd=cat
hunks=
foldflags=
showflags=()
noact=0
while [ "$#" -gt 0 ]; do
    case "$1" in
	-\#*) hunks="$1" ;;
	-t) foldflags="-t" ;;
	-n) noact=1 ;;
	-O) showflags+=(-O "$2"); shift ;;
	-*) { echo >&2 "unknown flag '$1'"; exit 1; } ;;
	*) break ;;
    esac
    shift
done
[ "$#" = 1 ] || { echo >&2 "supports one file only"; exit 1; }

getpatch()
{
    stg show "${showflags[@]}" "$PATCH" | filterdiff -p1 $hunks -i "$1"
}

if [ $noact = 1 ]; then
    getpatch "$1"
else
    getpatch "$1" | stg fold $foldflags
fi
