mawww / kakoune

mawww's experiment for a better code editor
http://kakoune.org
The Unlicense
9.88k stars 713 forks source link

Kakoune shows only blank when launched with `tmux split-window` with colorscheme solarized-dark-termcolors #4193

Open ilikeavocadoes opened 3 years ago

ilikeavocadoes commented 3 years ago

Steps

  1. Launch Kakoune with tmux split-window kak
  2. Set colorscheme: :colorscheme solarized-dark-termcolors

Outcome

image

Expected

image

I noticed this issue because several plugins launch windows using tmux. These windows have always my opaque background color, and nothing else, while normally Kakoune shows with my transparent background color. I have tested this with st and Konsole, and both terminals behave identically. The problem appears regardless of my terminal's colorscheme.

I'm not sure if this is a bug in Kakoune, Tmux, or my own configuration, since there are so many moving parts. I'm happy to provide any further information to help pinpoint the issue.

Screwtapello commented 3 years ago

Is solarized-dark-termcolors the colour scheme you normally use with Kakoune? Does the problem still occur with other Kakoune colour schemes? With the default colour scheme?

Does the problem occur if you start Kakoune without loading configuration (tmux split-window kak -n) ?

krobelus commented 3 years ago

This is reproducible without an empty config:

HOME=$(mktemp -d) tmux -S /tmp/tmp.socket -f /dev/null new kak -e 'colorscheme solarized-dark-termcolors'

(The problem with kak -n is that it doesn't define the colorscheme command, so using a temporary HOME is usually better.)

The solution is in :doc faq, so:

HOME=/tmp tmux -S /tmp/tmp.socket -f /dev/null set -g default-terminal "screen-256color" \; new kak -e 'colorscheme solarized-dark-termcolors'
Screwtapello commented 3 years ago

That genuinely surprises me. My understanding was that FAQ entry only affected colour schemes that use the rgb:XXYYZZ notation to choose a specific colour, while the solarized-dark-termcolors scheme only uses the basic 16 terminal colours. The whole point of the *-termcolors versions is to not tickle truecolour or 256 colour compatibility issues.

Still, if that fixes the problem, that must be the cause.

ilikeavocadoes commented 3 years ago

I normally indeed use solarized-dark-termcolors, and this issue happens only with it, and the solarized-light-termcolors colorscheme. With tmux split-window kak -n the issue doesn't happen. @krobelus 's answer contained the solution, i.e. adding lines

set -g default-terminal "tmux-256color"
set -ga terminal-overrides ",xterm-256color:Tc"

to my .tmux.conf, as instructed in :doc faq fixed the issue. I'm not sure if this is a subtle bug in tmux or kakoune, or just a weird corner case incompatibility thing. Thanks for your help!