- Diperkenalkan renderer eksperimental yang menghilangkan gejala layar berkedip dan melompat pada renderer lama
- Bahkan saat percakapan menjadi panjang, penggunaan memori dan CPU tetap konstan, dan di lingkungan terminal kini klik mouse, perpindahan kursor, serta klik elemen UI menjadi memungkinkan
- Diaktifkan dengan variabel lingkungan
CLAUDE_CODE_NO_FLICKER=1
- Karena keterbatasan struktural kode ANSI terminal lama, untuk menggambar ulang baris di luar viewport harus menggunakan kode hapus seluruh layar, tetapi renderer baru menyelesaikan masalah ini dengan memvirtualisasi seluruh viewport
- Masih ada trade-off seperti belum mendukung pencarian native
cmd-f, copy-paste, dan penyesuaian fisika scroll yang belum selesai, sehingga masih berada pada tahap eksperimental
- Karena isi percakapan berada di alternate screen buffer, bukan scrollback, Anda dapat masuk ke mode Transcript dengan
Ctrl+O lalu memakai pencarian gaya less (/, n/N)
- Kolom input tetap terkunci di bagian bawah layar bahkan saat output sedang di-stream
- Mendukung penanganan event mouse di dalam aplikasi seperti mengatur posisi kursor dengan mouse, memperluas hasil tool, membuka URL/jalur file, dan memilih teks dengan drag
Untuk detailnya, lihat Fullscreen rendering di dokumentasi Claude Code (terlampir di bawah)
Rendering fullscreen
- Jalankan setelah menetapkan variabel lingkungan
CLAUDE_CODE_NO_FLICKER=1, atau tambahkan export CLAUDE_CODE_NO_FLICKER=1 ke ~/.zshrc / ~/.bashrc agar otomatis diterapkan ke semua sesi
- Memerlukan Claude Code v2.1.88 atau lebih baru, dan saat ini berada pada tahap research preview sehingga perilakunya dapat berubah sesuai masukan
- Istilah "fullscreen" tidak terkait dengan memaksimalkan jendela terminal, dan berfungsi pada ukuran jendela apa pun
Perubahan dibanding cara lama
- Kolom input tetap terkunci di bagian bawah layar bahkan saat output sedang di-stream (jika kolom input tetap, berarti rendering fullscreen aktif)
- Karena isi percakapan berada di alternate screen buffer, berikut perbedaannya dibanding sebelumnya:
| Sebelumnya |
Setelah perubahan |
Menelusuri teks dengan Cmd+F atau pencarian tmux |
Setelah Ctrl+O, cari dengan /, atau tulis ke scrollback native dengan [ lalu gunakan Cmd+F |
| Memilih dan menyalin dengan drag native terminal |
Seleksi di dalam aplikasi, otomatis disalin saat tombol mouse dilepas |
Membuka URL dengan Cmd-klik |
Buka dengan klik pada URL |
Dukungan mouse
- Klik kolom input prompt: menempatkan kursor di posisi mana pun pada teks
- Klik hasil tool yang dilipat: buka atau lipat kembali (pemanggilan tool dan hasilnya diperluas bersama)
- Klik URL atau jalur file: file dibuka dengan aplikasi default, dan URL
http:///https:// dibuka di browser
- Pada terminal berbasis xterm.js seperti terminal bawaan VS Code, penanganan diserahkan ke handler tautan terminal agar tautan tidak terbuka dua kali
- Klik dan drag: memilih teks (double-click: pilih kata, triple-click: pilih baris)
- Roda mouse: scroll percakapan
- Saat tombol mouse dilepas, teks yang dipilih otomatis disalin ke clipboard; bisa dinonaktifkan di
/config
Pintasan scroll
| Pintasan |
Aksi |
PgUp / PgDn |
Scroll naik/turun setengah layar |
Ctrl+Home |
Pindah ke bagian paling atas percakapan |
Ctrl+End |
Pindah ke pesan terbaru dan aktifkan kembali auto-follow |
| Roda mouse |
Scroll beberapa baris |
- Pada keyboard tanpa tombol khusus seperti MacBook, gunakan
Fn+↑/↓/←/→ sebagai pengganti PgUp/PgDn/Home/End
- Saat scroll ke atas, auto-follow dijeda sementara; lanjut lagi dengan
Ctrl+End atau scroll ke paling bawah
- Pintasan dapat dikustomisasi keybinding dengan nama aksi seperti
scroll:pageUp, scroll:pageDown (lihat dokumentasi Keybindings)
- Variabel lingkungan
CLAUDE_CODE_SCROLL_SPEED dapat dipakai untuk mengatur pengali kecepatan scroll roda mouse (1~20, default yang direkomendasikan berbasis vim adalah 3)
Pencarian dan peninjauan percakapan (mode Transcript)
- Saat masuk ke mode Transcript dengan
Ctrl+O, Anda dapat memakai navigasi dan pencarian bergaya less
| Tombol |
Aksi |
/ |
Buka pencarian (Enter: konfirmasi, Esc: batal) |
n / N |
Pindah ke hasil pencarian berikutnya/sebelumnya |
j/k atau ↑/↓ |
Scroll satu baris |
g/G atau Home/End |
Pindah ke paling atas/bawah |
Ctrl+U / Ctrl+D |
Scroll setengah halaman |
[ |
Tulis seluruh percakapan ke scrollback native terminal (bisa pakai Cmd+F) |
v |
Simpan sebagai file sementara lalu buka dengan $VISUAL/$EDITOR |
Esc, q, Ctrl+O |
Keluar dari mode Transcript |
Hal yang perlu diperhatikan saat memakai tmux
- Untuk memakai scroll roda mouse di tmux, perlu menambahkan
set -g mouse on ke ~/.tmux.conf
- Tanpa mode mouse, event roda akan diteruskan ke tmux; scroll keyboard
PgUp/PgDn tetap berfungsi normal
- Jika dimulai saat mode mouse tmux mati, Claude Code akan menampilkan pesan panduan sekali saja
- Tidak kompatibel dengan
tmux -CC (mode integrasi iTerm2)
- Dalam mode ini, alternate screen buffer dan pelacakan mouse tidak bekerja dengan benar, dan double-click dapat merusak status terminal
- Penggunaan tmux biasa di dalam iTerm2 tanpa
-CC tetap berfungsi normal
Cara mempertahankan seleksi teks native
Research preview dan masukan
- Sudah diuji pada terminal emulator utama, tetapi masalah rendering masih dapat muncul pada terminal yang tidak umum atau konfigurasi yang tidak biasa
- Jika terjadi masalah, jalankan perintah
/feedback di dalam Claude Code atau laporkan issue di repositori GitHub claude-code (wajib menyertakan nama dan versi terminal emulator)
- Untuk menonaktifkan, hapus variabel lingkungan atau setel
CLAUDE_CODE_NO_FLICKER=0
5 komentar
Saya memakainya dalam mode terintegrasi dengan
iterm -CC.. tapi saya sih tidak terlalu paham apa yang aneh...Malah, sejak beberapa waktu lalu saya terganggu karena saat scroll ketika sedang rendering, layar dipaksa lompat ke paling atas, tapi sekarang posisinya tetap diam dan berubah menjadi notifikasi new message, jadi saya suka. Bagus juga..
Sepertinya mulai berubah sedikit terasa seperti opencode.
TUI menjadi GUI
Saya suka perubahan seperti ini~
Sepertinya masih perlu sedikit dipoles.
Saat kursor diletakkan di suatu posisi lalu saya memilih bagian lain dengan mouse, seharusnya salin otomatis terjadi, dan saat ditempel, hasilnya harus ditempel di tempat kursor tadi berada.
Tetapi yang terjadi justru ditempel di area yang dipilih dengan mouse.