Ben Walton <bdwal...@gmail.com> writes:

> On Mon, Oct 28, 2013 at 5:39 PM, Andreas Schwab <sch...@linux-m68k.org> wrote:
>> Ben Walton <bdwal...@gmail.com> writes:
>>
>>> diff --git a/t/t4015-diff-whitespace.sh b/t/t4015-diff-whitespace.sh
>>> index 3fb4b97..0126154 100755
>>> --- a/t/t4015-diff-whitespace.sh
>>> +++ b/t/t4015-diff-whitespace.sh
>>> @@ -145,7 +145,8 @@ test_expect_success 'another test, with 
>>> --ignore-space-at-eol' 'test_cmp expect
>>>  test_expect_success 'ignore-blank-lines: only new lines' '
>>>       test_seq 5 >x &&
>>>       git update-index x &&
>>> -     test_seq 5 | sed "/3/i \\
>>> +     test_seq 5 | sed "/3/i\\
>>> +\
>>>  " >x &&
>>
>> Why do you need the \<nl>?  Since it is inside double quotes the shell
>> will remove it during expansion.
>
> It's an escape. Without it, sed throws:
>
> sed: -e expression #1, char 5: expected \ after `a', `c' or `i'

I think Andreas means the "feed blank line" part, i.e.

>> +     test_seq 5 | sed "/3/i\\
>> +\
>>  " >x &&

should be the same as

>> +     test_seq 5 | sed "/3/i\\
>>  " >x &&

because the lone \<nl> will be eaten and will not be seen by sed.

Do you see different results on Solaris between the following two?

        $ echo "/3/i\\
        \
        " | od
        $ echo "/3/i\\
        " | od

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to