#Python 3, 45 bytes
Python 3, 45 bytes
c='print(end="c=%r;exec(c"%c+c[8*4])';exec(c)
Switching to Python 3 so that the trailing newline can be easily removed.
I started out with a stupid structure that had 2 variables instead of 1, but switching to 1 variable only made it 4 bytes shorter.
-(4 + 3) bytes by Dennis.