He usado la marca para seleccionar regiones de un búfer. Por ejemplo, sé que la secuencia C-<space> C-s foose puede usar para seleccionar todo el texto entre el punto actual y el punto después de una búsqueda foo.
Recientemente descubrí la existencia del anillo de la marca, por lo que puedo C-<space> C-<space>dejar una marca, mover el punto en el búfer y luego C-u C-<space>saltar hacia atrás.
¿Hay alguna sugerencia, guía o consejo para navegar de manera efectiva usando el anillo de marcas?

(global-set-key (kbd "s-m") '(lambda () (interactive) (push-mark))).Respuestas:
Timón tiene una interfaz para navegar por ambos márgenes de anillos locales y globales:
helm-all-mark-rings.Vea la mini-guía para una breve descripción y una captura de pantalla.
Y si prefieres Ivy / Swiper / Counsel , mira
counsel-mark-ring.fuente
Cuando configuras
set-mark-command-repeat-popattravés depuede seguir presionando C-SPCdespués de la primera invocación de C-u C-SPCpara saltar a ubicaciones anteriores almacenadas en el anillo de marcas.
fuente
Me resulta más fácil usar registros para marcar ubicaciones:
C-x r <space>y luego una letra para marcarC-x r jy una letra para saltar hacia atrás. Puedo mantener una serie de marcas, muy útil al alternar entre múltiples buffersfuente
C-x C-xpara
exchange-mark-and-pointtiene un uso similar a C-u C-space. Te permite rebotar entre un punto y la última marca. Es un poco extraño rebotar,transient-mark-modeya que activa la marca y selecciona la región.fuente
C-x C-xcon el modo de marca transitoria es excelente para seleccionar lo último que seleccionó (útil con el modo iedit) o tiró.Además de los otros consejos que tiene aquí, pensé que debería mencionar que
C-sestablece la marca para usted, por lo que no hay necesidad de hacerlo explícitamente. Además, muchos comandos que "se mueven un camino potencialmente largo" (beginning-of-buffery,end-of-bufferpor ejemplo) también establecen la marca donde comenzó. Junto con las otras formas de trabajar con la marca (pop, punto de intercambio y marca, etc.) es una forma bastante poderosa de trabajar con un búfer, una vez que comprenda cómo funciona. También tenga en cuenta que si tira de texto en un búfer, apunte y marque alrededor del texto arrancado.fuente
(Su pregunta es bastante abierta, por lo que podría cerrarse porque se basa principalmente en la opinión).
Lo que uso: Icicles multi-command
icicle-goto-marker(vinculado aC-- C-SPC) para disparar alrededor de las marcas en cualquier búfer (mark-ring) yicicle-goto-global-marker(C-- C-x C-SPC) para disparar entre las marcas globales (global-mark-ring).Las líneas de texto donde se encuentran los marcadores se utilizan como candidatos de finalización. Puede escribir texto (por ejemplo, subcadena, expresión regular) para limitar los candidatos a las líneas que coinciden. Puede alternar entre las líneas coincidentes, visitando cualquiera que desee. Si también usa la biblioteca
crosshairs.el, la posición de un marcador que visita se resalta temporalmente con una mira, para que pueda ver rápidamente dónde está.Aquí hay parte de la cadena de documentación para
icicle-goto-marker:fuente