V, 14 bytes
òYp$xhòjòÄ$xhh Explanation:
ò ò "Recursively: Yp " Yank the current line and paste it $ " Move to the end of the current line x " Delete one character h " Move One character to the right. " Because of the way loops work in V, this will throw an error if there " Is only one character on the current line. Now, the buffer looks like this:
0123456789 012345678 01234567 0123456 012345 01234 0123 012 01 0 We just need to do the same thing in reverse for the next line:
j "Move down one line ò ò "Recursively (The second ò is implicit) Ä " Duplicate this line up $ " Move to the end of the current line x " Delete one character hh " Move two characters to the right. " Because of the way loops work in V, this will throw an error if there " Is only two characters on the current line. More interesting alternate solution:
òÄ$xhòç^/:m0 ddGp@qd