¿Qué funcionalidad ofrecen las 'marcas' en la Terminal El Capitán?

Desde que actualicé a OS X El Capitan, noté un cambio en la Terminal: las líneas ejecutadas muestran un corchete de apertura a la izquierda y un corchete de cierre a la derecha, como se muestra en esta captura de pantalla:

Terminal

Se han hecho preguntas similares aquí:

Algunas de las preguntas se refieren a estos corchetes como marcas , y el menú Editar de la Terminal tiene un par de entradas relacionadas con marcas , por ejemplo:

  • Editar > Marcas > Marcar como aviso y enviar retorno
  • Editar > Borrar a la marca anterior
  • Editar > Navegar > Saltar a la marca anterior

Menú de edición

¿Hay un resumen de para qué se pueden usar estas marcas? No he visto ninguna referencia a esta nueva función en ninguna de las descripciones generales de funciones de El Capitán.

Si tan solo hubiéramos encontrado una mejor manera de pagarle a Siracusa lo suficiente como para examinar el sistema operativo durante meses...

Respuestas (2)

Marcas en la Terminal

Las nuevas marcas de Terminal (disponibles a partir de OS X 10.11 - El Capitan) son similares a los Marcadores , que también están disponibles en la Terminal, lo que le permite marcar las posiciones de la ventana y luego le da la opción de regresar en un momento posterior.

Las marcas (o marcadores) no se refieren a su historial de comandos, sino al búfer de desplazamiento utilizado en la ventana/pestaña de Terminal.

Marcar una línea

De forma predeterminada, cada vez que presiona Enteren la ventana Terminal, se marca la línea , que se muestra con un corchete de apertura al principio de la línea y uno de cierre al final. Este comportamiento predeterminado se puede desactivar mediante la entrada de menú Edición > Marcas > Marcar automáticamente líneas de solicitud. Cuando esto está deshabilitado, aún puede ejecutar manualmente y marcar un comando usando Cmd+Enter(o con la entrada de menú Editar > Marcas > Marcar como solicitud y Enviar devolución ).

Si tiene habilitado el marcado automático y desea ejecutar un comando sin marcarlo como un aviso , puede hacerlo usando Cmd+Shift+Enter(o con la entrada de menú Editar > Marcas > Enviar retorno sin marcar ).

Deshabilitar marcas

El marcado automático de líneas se puede deshabilitar mediante la entrada de menú Edición > Marcas > Marcar automáticamente líneas de solicitud.

Desde la línea de comando, se puede lograr lo mismo usando

defaults write com.apple.Terminal AutoMarkPromptLines -bool NO

Ocultar marcas

Si desea utilizar la función de marca , pero no desea ver los corchetes al principio y al final de la línea, puede ocultarlos mediante la entrada de menú Ver > Ocultar marcas . Esto mantendrá intacta la siguiente funcionalidad, pero ya no mostrará los corchetes.

Saltando entre Marcas

Una vez que se ha marcado una línea, puede saltar rápidamente a la marca anterior usando Cmd+Upo a la siguiente usando Cmd+Down. Se proporcionan opciones similares para Marcadores y para seleccionar la marca siguiente/anterior:

Menú de edición

Marcar manualmente una línea

Además del marcado automático, también puede agregar marcas manualmente seleccionando una línea en la salida del terminal con el mouse y luego seleccionando la entrada de menú Editar > Marcas > Marcar como solicitudCmd+U (o ).

Casos de uso

La funcionalidad Marcas es útil si algunos de los comandos ejecutados producen muchos resultados y desea desplazarse rápidamente a la posición en la que ingresó el comando. Presionar Cmd+Upte llevará allí. Presionarlo repetidamente lo llevará más arriba, mientras que presionarlo Cmd+Downlo llevará nuevamente hacia abajo. La ubicación de destino se resalta convenientemente a medida que salta o se desplaza.

Uso de marcas

Selección de contenido

La misma funcionalidad de marcas se puede utilizar para seleccionar la salida del terminal. Al pulsar Cmd+Shift+Upse seleccionará el contenido hasta la marca anterior, mientras Cmd+Shift+Downque se seleccionará hacia abajo hasta la siguiente marca. Esto es útil cuando desea copiar la salida del registro u otro contenido de la Terminal.

Esta funcionalidad también está disponible desde el menú Editar > NavegarShift mientras se presiona la tecla:

Menú de navegación

Resumen

Habiendo usado esto durante un par de días, lo encuentro increíblemente útil. Desplazarse hacia arriba a través de cientos de líneas de salida para encontrar el comienzo de la salida del comando de repente se ha vuelto mucho más fácil.

Me pregunto por qué esta nueva característica no se menciona de manera más prominente: no la he visto en ninguno de los tutoriales de El Capitán. La ayuda de Terminal actualmente tampoco proporciona ningún detalle sobre esta función.

Gran respuesta. Solo para agregar un poco, los Marcadores también se pueden nombrar, así que piense en los Marcadores como Capítulos en un libro y las marcas como Párrafos. Puede crear un nuevo Marcador al iniciar una nueva tarea en la misma Terminal, útil para recordar exactamente dónde comenzó y qué hizo.
Esto es realmente muy útil. ¡Gracias por esta gran explicación! Me preguntaba por qué observé lo mismo hace meses, pero lo ignoré, hasta que me di cuenta de que no tenía nada que ver con mi PS1 modificada. ¡Estupendo!

Parece una forma de 'marcador rápido/ligero'. Supongo que deshabilitar 'Marcar líneas de solicitud automáticamente' hace que su función sea más evidente. Después de hacer eso, Cmd-Enter guarda explícitamente la marca y Cmd-Up/Down salta entre ellos.

Como puede convertir marcas en marcadores y viceversa, los vería como marcadores livianos o de segundo nivel.

Eso no parece del todo exacto. Cuando uso Cmd+Up , no recorre mi historial, sino que desplaza toda la ventana de Terminal hasta el comando previamente marcado .
No tengo El Capitán instalado (todavía) y mi respuesta está un poco fuera de tema. Si se trata de una función de búsqueda de historial como las menciones de @fonso, parece que Apple rediseñó la antigua función <kbd>CTRL</kbd>-<kbd>R</kbd> de bash, en la que se podía realizar una búsqueda de historial interactiva inversa. . Y Apple parece haberlo visualizado.
No, no es. Como he dicho en mi comentario, no tiene ninguna superposición con la búsqueda de historial CTRL+R. Parece que la función de marcas funciona como una especie de marcador automático, lo que le permite desplazarse rápidamente por el búfer de la ventana de la terminal.
Lo siento, tienes toda la razón, ¡está marcando el punto de desplazamiento, no la historia! Editaré la respuesta.