El desplazamiento del mouse dejó de funcionar con Less en Terminal

Desde hace algunos años, Terminal.app en MacOS admite el desplazamiento del mouse con el lessprograma, pero hoy noté que ya no acepta desplazamientos del mouse y ahora solo funciona con las teclas Upy Down.


Lo que no funciona:

lessy todos los demás programas que lo usan no aceptan desplazamientos del mouse. En su lugar, desplaza la ventana del terminal. Estos 'otros' programas son:

  • man
  • git log
  • diff

Anteriormente, lesstambién borraba la pantalla al cerrarla ( q), pero ahora el texto permanece en la pantalla.


Lo que he probado:

  • Probó otros programas: vim por ejemplo, todavía acepta desplazamientos del mouse
  • Usó otros emuladores de Terminal: less no acepta desplazamientos del mouse en Hyperninguno
  • Probado en otra máquina a través de SSH: conectado a uno de mis VPS y utilizado lessallí dentro de la aplicación Terminal. Mouse-scrolls están trabajando con él.
  • Usó una versión más nueva de less: instaló la última versión (530) de less usando Homebrew , pero tampoco funciona con los desplazamientos del mouse.

Así que no estoy seguro de lo que está mal. Agradecería mucho cualquier ayuda para aceptar lesslos desplazamientos del mouse nuevamente.

Respuestas (2)

Después de revisar algunas otras respuestas, me di cuenta de que hay una $LESSvariable de entorno que contiene indicadores predeterminados.

Está vacío en mi otro sistema Mac y Ubuntu, pero por alguna razón es igual que -FRXen esta máquina, y eso está causando estos problemas :

  • -Xhizo que NO aceptara los desplazamientos del mouse
  • -Fhizo que saliera automáticamente para archivos pequeños

Lo cual es extraño, ya que nunca lo cambié, por lo que debe haber sido modificado por algún otro programa. De todos modos, configurarlo manualmente en mis .rcarchivos solucionó el problema:

export LESS="-R"

Fuentes:

tienes mi respeto Una pregunta: ¿cómo determinó que $LESS tenía el valor de -FRXen su computadora? Corrí echo $LESSy mostró el valor correcto de -R. Sin embargo, agregué export LESS="-R"y .zshrcesto funcionó.

En caso de que esté utilizando lessel interior git(a través git logo similar):

Los documentos de git-config tienen la respuesta:

Cuando la LESSvariable de entorno no está configurada, Git la establece en FRX(si LESSla variable de entorno está configurada, Git no la cambia en absoluto). Si desea anular selectivamente la configuración predeterminada de Git para LESS, puede establecer core.pager, por ejemplo less -S, . Git lo pasará al shell, que traducirá el comando final a LESS=FRX less -S. El entorno no establece la Sopción, pero la línea de comando sí, instruyendo a less para truncar líneas largas. De manera similar, establecer core.pageren less -+Fdesactivará la Fopción especificada por el entorno desde la línea de comandos, desactivando el comportamiento "salir si una pantalla" de less.

(énfasis mío)

TLDR:

  • gites la única $LESSvariable de entorno de configuración FRXsi está vacía
  • el desplazamiento less no funciona con Xel conjunto de opciones
  • desactive la Xopción predeterminada congit config --global --add core.pager "less -+X"