whitespace – ¿Cómo pasar al primer carácter de espacio en blanco?

Pregunta:

¿Cuál es la forma más fácil de saltar al primer carácter de espacio en blanco después del cursor actual? Solía ​​hacerlo simplemente buscando un espacio (cuando sabía que había uno allí), pero ahora parece comportarse como forward-whitespace (no estoy seguro de cuándo cambió este comportamiento, tal vez cuando hice la transición a emacs 24. Esta es una función que necesito todo el tiempo al definir macros de forma interactiva.

Fwiw, forward-whitespace no me funciona porque salta al último carácter de espacio en blanco en el primer bloque de espacios en blanco después del cursor actual.

Respuesta:

Puede usar skip-syntax-forward para omitir espacios que no son en blanco. Docstring:

(skip-syntax-forward SYNTAX &optional LIM)

Mueva el punto hacia adelante a través de caracteres en clases de sintaxis especificadas. SYNTAX es una cadena de caracteres de código de sintaxis. Deténgase antes de un char cuya sintaxis no esté en SYNTAX, o en la posición LIM. Si SYNTAX comienza con ^, omita los caracteres cuya sintaxis NO esté en SYNTAX. Esta función devuelve la distancia recorrida, ya sea cero o positiva.

Si desea usarlo de forma interactiva, puede envolverlo en un comando interactivo:

(defun skip-to-next-whitespace ()
  "Move point forward to next whitespace character."
  (interactive)
  (skip-syntax-forward "^\s"))

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım