much nicer text object selection