## cycle-spacing

**cycle-spacing**is an interactive compiled Lisp function in `

`simple.el`

'.(cycle-spacing &optional

__N__

__PRESERVE-NL-BACK__

__MODE__)

Manipulate whitespace around point in a smart way.

In interactive use, this function behaves differently in successive

consecutive calls.

The first call in a sequence acts like `just-one-space'.

It deletes all spaces and tabs around point, leaving one space

(or

__N__spaces).

__N__is the prefix argument. If

__N__is negative,

it deletes newlines as well, leaving -

__N__spaces.

(If

__PRESERVE-NL-BACK__is non-nil, it does not delete newlines before point.)

The second call in a sequence deletes all spaces.

The third call in a sequence restores the original whitespace (and point).

If

__MODE__is `single-shot', it only performs the first step in the sequence.

If

__MODE__is `fast' and the first step would not result in any change

(i.e., there are exactly (abs

__N__) spaces around point),

the function goes straight to the second step.

Repeatedly calling the function with different values of

__N__starts a

new sequence each time.