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"))