Hi Paul, I'm trying to understand the meaning of 'in_position' and 'out_position' in function 'print_half_line'. While doing this, I spotted a bug: $ cat foo1.txt a ab abc $ cat foo2.txt ab abcd $ src/diff -t -y foo1.txt foo2.txt a < ab ab abc | abcd This is obviously not how it's intended to be. The attached patch fixes it. The cause is that in the case of a character of width 1, the assignment out_position = in_position; was lost in commit 05cdf3102ef3fb261db311a3e5d090fb63dbc792 (yesterday). With this patch, the result is again as it should be: $ src/diff -t -y foo1.txt foo2.txt a < ab ab abc | abcd The patch also improves comments in this function. So that next time, I (or anyone else) don't spent 30 minutes to understand the difference between 'in_position' and 'out_position'. Bruno