On Wed, Sep 22, 2010 at 00:30, Jeff King <peff@xxxxxxxx> wrote: > On Wed, Sep 22, 2010 at 12:12:30AM +0000, Ãvar ArnfjÃrà Bjarmason wrote: > >> 2010/9/21 Jeff King <peff@xxxxxxxx>: >> > +However, it may happen that you do want to change the diff parameters >> > +specifically for symlinks. You can do that by configuring the special >> > +"SYMLINK" diff driver. For example, to add a newline to the end of >> > +the symlink contents (and suppress the usual "no newline at end of file" >> > +warning), you could configure: >> > + >> > +----------------------------- >> > +[diff "SYMLINK"] >> > +    textconv = perl -pe 's/$/\n/' >> > +----------------------------- >> >> That'll turn every \n in the stream into \n\n, not add a newline to >> the end of the file. Don't you mean: >> >>   perl -0666 -pe 's/$/\n/' > > Yeah, it will add a newline to the end of file, but it will also double > existing newlines. I wanted something short and clear so the reader > could understand what was going on, and symlink paths don't generally > contain an extra newline. > > Just "perl -0pe 's/$/\n/'" would work, as symlink targets can't possibly > have embedded NULs. > > But: > >> Or, more efficiently: >> >>   perl -ple 'END { print }' > > That one is even more readable, IMHO. But it isn't right. :) > The automatic line-handling actually adds the missing newline, so I > think it would have to be: > > Âperl -ple '' perl -ple1 :) -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html