How to change the default terminal background color?

I’m using base16 shell to manage terminal colors: https://github.com/chriskempson/base16-shell

The colors look fine in desktop renders, but is messed up in notebook/labs. I’m guessing it has something to do with the terminal themes background color, but I can’t find where to configure the specific color code.

Can anyone point me to the configuration or documentation or source code location to where black is configured for the background color?

To replicate the bad color colors:

# 1) Starts jupyter lab on port 8888
docker run -it --rm -p 8888:8888 -e SHELL=tmux drvim/drvim-jupyter drvim/drvim-jupyter

# 2) change go into browser and change terminal theme to dark

# 3) run ./colortest
~/.config/base16-shell/colortest

To replicate the good test in local docker:

# 1) Use same image but start `tmux` instead of `jupyter lab`
docker run -it --rm -p 8888:8888 -e SHELL=tmux drvim/drvim-jupyter drvim/drvim-jupyter tmux

# 2) run ./colortest
~/.config/base16-shell/colortest

# 3) change back to base16_ocean
base16_ocean

Here are the terminal themes (you can switch between these in the Settings menu): https://github.com/jupyterlab/jupyterlab/blob/fac10b54d373a54a5e0f524e6b29ba6b9f33cdf4/packages/terminal/src/widget.ts#L367-L408

To customize the colors, it looks like you should do the “Inherit” theme, then use or create a custom theme plugin with the colors you desire.

On the other hand, perhaps it would be good to expose these five colors to the terminal settings so they can be customized independently of the theme. That would be a great first issue for someone to contribute a PR for: one more theme that relies on colors specified in the advanced settings.

1 Like

I’ll give the later a try. Thanks for the source reference. I guess it’s time to learn typescript.