If the cursor is inside a soft tab at the start of the line, snap it to the
nearest, left or right edge. This version takes an offset and returns an offset.
If the cursor is inside a soft tab at the start of the line, snap it to the
nearest, left or right edge. This version takes a line/column and returns a column.