Una pregunta bastante básica de Helm. ¿Cuál es la ventana / comando / función de Helm que nos permite buscar texto (preferiblemente usando regexp
) dentro de cualquier tipo de búfer (es decir, incluyendo solo lectura como w3m
)?
En otras palabras, estoy buscando el equivalente de Helm de los comandos nativos de Emacs para isearch-forward
( C-s
) / isearch-backward
( C-r
).
Para ilustrar: después de invocar uno de los isearch
comandos nativos ( C-s
o C-r
), podemos salir del modo de búsqueda de una de dos maneras:
podemos salir y volver al punto original (vía
C-g
), opodemos salir y continuar explorando el búfer desde el punto actual, es decir, desde el texto coincidente actualmente (a través de,
RET
entre otros).
Estoy buscando la segunda de estas dos opciones.
Esto es lo que he probado hasta ahora:
helm-regexp
: esto es lo más parecido a lo que estoy buscando, pero solo realiza el equivalente deC-s
/C-r
+C-g
(es decir, nos lleva de vuelta al punto original; no hay opción para finalizar la búsqueda y continuar explorando el búfer desde el que coincide actualmente punto).helm-do-grep
: parece que esto es solo para buscar texto dentro de archivos (es decir, no funciona en w3m)helm-buffer-run-grep
/-zgrep
: ejecutar este comando / función da como resultado un mensaje de error en el mini-búfer:Running helm command outside of context
cuando
helm-mode
está habilitado, invocandoC-s
oC-r
presenta laisearch
función nativa de Emacs (no es reemplazada por la interfaz de Helm). (¿tal vez haya una configuración que podamos cambiar para que Helm pueda hacerse cargo de este comando? es decir, similar a cómo Helm se hace cargo del comando nativo parawrite-file
(C-x C-w
) que se puede usar para cambiar el nombre de un archivo en un búfer abierto. solo lluvia de ideas).
helm-occur
confollow-mode
habilitado.Respuestas:
Puede usar helm-ocurren como una herramienta que viene con el módulo básico helm para esto. Pero para mí, una de las mejores herramientas basadas en timón para la búsqueda de búfer es el timón de Shingo Fukuyama . Puede obtenerlo de github y a través de MELPA. Tiene la funcionalidad requerida de poder soltar su punto en la posición del partido (que puede ser una expresión regular). Pero también puede usar Cg para que el cursor regrese a donde comenzó.
En la página de github de helm-swoop, encontrará un montón de otras funciones útiles que ofrece este paquete (incluidas las búsquedas de búfer múltiples de helm-multi-swoop y la capacidad de editar las líneas de los resultados, de modo que los cambios sean aplicado al búfer subyacente).
fuente
helm-swoop
es en realidad una versión mejoradahelm-occur
.helm-swoop
... ¡y nunca volveré! GraciasPuede usar
helm-occur
para ver todas las líneas que contienen coincidencias para su patrón de búsqueda. Puede usarC-n
yC-p
para navegar por la lista, y luego presionarRET
para cerrar el búfer Helm y saltar el cursor a la línea correspondiente.Me gusta habilitar
helm-follow-mode
cuando usohelm-occur
para que la ventana de origen siempre muestre el contexto de la coincidencia seleccionada actualmente. Puede habilitar el modo de seguimiento automáticamente de la siguiente manera:fuente