10 puntos por xguru 28 일 전 | 6 comentarios | Compartir por WhatsApp
  • Se introdujo un renderizador experimental que elimina el parpadeo y los saltos de pantalla del renderizador anterior
  • Incluso cuando la conversación se alarga, el uso de memoria y CPU se mantiene constante, y en el entorno de terminal ahora es posible hacer clic con el mouse, mover el cursor y hacer clic en elementos de la UI
  • Se activa con la variable de entorno CLAUDE_CODE_NO_FLICKER=1
  • Por limitaciones estructurales del ANSI tradicional de terminal, para volver a dibujar filas fuera del viewport antes había que usar código para borrar toda la pantalla, pero el nuevo renderizador resuelve esto virtualizando todo el viewport
  • Sigue habiendo trade-offs, como la falta de soporte para la búsqueda nativa con cmd-f y copiar/pegar, además de que el ajuste físico del scroll aún no está terminado, por lo que sigue en fase experimental
  • Como el contenido de la conversación existe en el búfer de pantalla alternativo y no en el scrollback, se puede entrar al modo Transcript con Ctrl+O y usar búsqueda estilo less (/, n/N)
  • El cuadro de entrada permanece fijo en la parte inferior de la pantalla incluso mientras la salida se transmite en streaming
  • Soporta manejo de eventos del mouse dentro de la app, como ajustar la posición del cursor, expandir resultados de herramientas, abrir URL/rutas de archivo y seleccionar texto arrastrando

Para más detalles, consulta Fullscreen rendering en la documentación de Claude Code (adjunta abajo)

Renderizado en pantalla completa

  • Configúralo ejecutando con la variable de entorno CLAUDE_CODE_NO_FLICKER=1 o agrega export CLAUDE_CODE_NO_FLICKER=1 a ~/.zshrc / ~/.bashrc para aplicarlo automáticamente a todas las sesiones
  • Requiere Claude Code v2.1.88 o superior; actualmente está en etapa de research preview y el comportamiento puede cambiar según el feedback
  • El nombre “pantalla completa” no tiene relación con maximizar la ventana del terminal; funciona con cualquier tamaño de ventana

Cambios frente al método anterior

  • El cuadro de entrada permanece fijo en la parte inferior de la pantalla incluso mientras la salida se transmite en streaming (si el cuadro de entrada está fijo, significa que el renderizado en pantalla completa está activado)
  • Como el contenido de la conversación está en el búfer de pantalla alternativo, esto cambia respecto a antes:
Antes Después
Buscar texto con Cmd+F o búsqueda de tmux Buscar con / después de Ctrl+O, o escribir en el scrollback nativo con [ y luego usar Cmd+F
Seleccionar y copiar con arrastre nativo del terminal Selección dentro de la app; al soltar el botón del mouse se copia automáticamente
Abrir URL con Cmd-clic Abrir haciendo clic en la URL

Soporte de mouse

  • Clic en el cuadro de entrada del prompt: coloca el cursor en cualquier parte del texto
  • Clic en un resultado de herramienta plegado: expandir o contraer (la llamada de la herramienta y el resultado se expanden juntos)
  • Clic en URL o rutas de archivo: los archivos se abren con la app predeterminada y las URL http:///https:// se abren en el navegador
    • En terminales basados en xterm.js, como la terminal integrada de VS Code, se delega al manejador de enlaces del propio terminal para evitar abrir el vínculo dos veces
  • Clic y arrastre: seleccionar texto (doble clic: seleccionar palabra; triple clic: seleccionar línea)
  • Rueda del mouse: desplazar la conversación
  • Al soltar el botón del mouse, el texto seleccionado se copia automáticamente al portapapeles; se puede desactivar en /config

Atajos de scroll

Atajo Acción
PgUp / PgDn Desplaza media pantalla hacia arriba/abajo
Ctrl+Home Ir al inicio de la conversación
Ctrl+End Ir al mensaje más reciente y reactivar el seguimiento automático
Rueda del mouse Desplazar unas cuantas líneas
  • En teclados sin teclas dedicadas, como en una MacBook, Fn+↑/↓/←/→ reemplaza PgUp/PgDn/Home/End
  • Al desplazarse hacia arriba, se pausa temporalmente el seguimiento automático (auto-follow); se reanuda con Ctrl+End o al volver al final
  • Los atajos pueden personalizarse en los keybindings con nombres de acción como scroll:pageUp, scroll:pageDown, etc. (consulta la documentación de Keybindings)
  • La variable de entorno CLAUDE_CODE_SCROLL_SPEED permite ajustar el multiplicador de velocidad del scroll con la rueda del mouse (1~20, valor recomendado 3 según vim)

Búsqueda y revisión de conversaciones (modo Transcript)

  • Al entrar al modo Transcript con Ctrl+O, se puede usar navegación y búsqueda estilo less
Tecla Acción
/ Abrir búsqueda (Enter: confirmar, Esc: cancelar)
n / N Ir al siguiente/anterior resultado de búsqueda
j/k o / Desplazar una línea
g/G o Home/End Ir arriba/abajo del todo
Ctrl+U / Ctrl+D Desplazar media página
[ Escribir toda la conversación en el scrollback nativo del terminal (permite usar Cmd+F)
v Guardar en un archivo temporal y abrir con $VISUAL/$EDITOR
Esc, q, Ctrl+O Salir del modo Transcript

Consideraciones al usar tmux

  • Para usar el scroll con la rueda del mouse en tmux, es necesario agregar set -g mouse on en ~/.tmux.conf
    • Sin el modo mouse, los eventos de la rueda se envían a tmux; el scroll por teclado con PgUp/PgDn funciona normalmente
    • Si Claude Code se inicia con el modo mouse de tmux desactivado, muestra un mensaje informativo de una sola vez
  • No es compatible con tmux -CC (modo de integración de iTerm2)
    • En ese modo, el búfer de pantalla alternativo y el seguimiento del mouse no funcionan correctamente, y un doble clic puede dañar el estado del terminal
    • Usar tmux normal dentro de iTerm2, sin -CC, sí funciona con normalidad

Cómo mantener la selección nativa de texto

  • Si la captura del mouse resulta incómoda, puedes configurar además CLAUDE_CODE_DISABLE_MOUSE=1 para mantener solo la prevención de parpadeo y el uso estable de memoria, sin captura del mouse
    CLAUDE_CODE_NO_FLICKER=1 CLAUDE_CODE_DISABLE_MOUSE=1 claude  
    
  • Si se desactiva la captura del mouse, se mantienen el scroll con teclado (PgUp, PgDn, Ctrl+Home, Ctrl+End), pero se desactivan colocar el cursor con clic, expandir resultados de herramientas, hacer clic en URL y el scroll con la rueda
  • En entornos SSH o dentro de tmux, al capturar el mouse cambia la ruta del portapapeles, y Claude Code muestra una notificación indicando qué ruta usó después de copiar

Research preview y feedback

  • Se probó en los principales emuladores de terminal, pero en terminales poco comunes o configuraciones inusuales pueden aparecer problemas de renderizado
  • Si ocurre algún problema, ejecuta el comando /feedback dentro de Claude Code o registra un issue en el repositorio de GitHub de claude-code (debe incluir nombre y versión del emulador de terminal)
  • Para desactivarlo, quita la variable de entorno o configúrala como CLAUDE_CODE_NO_FLICKER=0

6 comentarios

 
neocode24 26 일 전

Lo uso en modo integrado con iterm -CC... pero la verdad es que no notaba nada raro...
Más bien, desde hace un tiempo me resultaba incómodo que, si hacía scroll mientras renderizaba, me saltaba a la fuerza hasta arriba; así que ahora que la posición se queda fija y cambia a una notificación de mensaje nuevo, me gusta. Está bueno..

 
sm0514sm 27 일 전

Parece que al hacer esto no se puede hacer un salto de línea con shift + enter :(

 
@deleted_gndfr0dev 27 일 전

Parece que se está volviendo un poco más al estilo de opencode.

 
tested 27 일 전

La TUI se vuelve GUI

 
kimjoin2 27 일 전

Me gusta este cambio~

 
byforce 28 일 전

Parece que todavía le falta pulirse un poco.
Si dejas el cursor en un lugar y seleccionas otra parte con el mouse, debería copiarse automáticamente y, al pegar, debería pegarse donde estaba el cursor.
Pero lo está pegando en el lugar seleccionado con el mouse.