Why do Vim colors look different inside and outside of tmux?Vim in tmux does not correctly determine background colorReset background to transparent with tmux?Clear to end of line uses the wrong background color in tmuxDifferent vim colors and styles in Tmux and GnomeTerminal 256 colors don't work through TmuxVim not running inside tmuxGetting 256 colors to work in terminal multiplexer256 Colors in xterm and tmux [in FreeBSD 10]Background color mismatch in vim and tmuxDifferent vim colors and styles in Tmux and GnomeVim in tmux does not correctly determine background colorterminal in Tmux is 256color but vim isn'tTerminal colors look wrong when using tmux with termiteTmux: terminal color is different inside tmux
Banach space and Hilbert space topology
Can an x86 CPU running in real mode be considered to be basically an 8086 CPU?
Why don't electron-positron collisions release infinite energy?
Why did the Germans forbid the possession of pet pigeons in Rostov-on-Don in 1941?
TGV timetables / schedules?
Prevent a directory in /tmp from being deleted
When blogging recipes, how can I support both readers who want the narrative/journey and ones who want the printer-friendly recipe?
What do you call something that goes against the spirit of the law, but is legal when interpreting the law to the letter?
The use of multiple foreign keys on same column in SQL Server
Email Account under attack (really) - anything I can do?
Do airline pilots ever risk not hearing communication directed to them specifically, from traffic controllers?
Possibly bubble sort algorithm
Is Social Media Science Fiction?
Is it tax fraud for an individual to declare non-taxable revenue as taxable income? (US tax laws)
Extreme, but not acceptable situation and I can't start the work tomorrow morning
How can I fix this gap between bookcases I made?
Is there a minimum number of transactions in a block?
Why is the design of haulage companies so “special”?
"which" command doesn't work / path of Safari?
Why doesn't Newton's third law mean a person bounces back to where they started when they hit the ground?
How to type dʒ symbol (IPA) on Mac?
Copenhagen passport control - US citizen
I’m planning on buying a laser printer but concerned about the life cycle of toner in the machine
What is the command to reset a PC without deleting any files
Why do Vim colors look different inside and outside of tmux?
Vim in tmux does not correctly determine background colorReset background to transparent with tmux?Clear to end of line uses the wrong background color in tmuxDifferent vim colors and styles in Tmux and GnomeTerminal 256 colors don't work through TmuxVim not running inside tmuxGetting 256 colors to work in terminal multiplexer256 Colors in xterm and tmux [in FreeBSD 10]Background color mismatch in vim and tmuxDifferent vim colors and styles in Tmux and GnomeVim in tmux does not correctly determine background colorterminal in Tmux is 256color but vim isn'tTerminal colors look wrong when using tmux with termiteTmux: terminal color is different inside tmux
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
Environment:
- Fedora 25 (4.9.12-200.fc25.x86_64)
- GNOME Terminal 3.22.1 Using VTE version 0.46.1 +GNUTLS
- VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Feb 22 2017 16:26:11)
- tmux 2.2
I recently started using tmux and have observed that the colors within Vim change depending on whether I'm running inside or outside of tmux. Below are screenshots of Vim outside (left) and inside (right) of tmux while viewing a Git diff:
My TERM
variable is
- Outside tmux:
xterm-256color
- Inside tmux:
screen-256color
Vim reports these terminal types as expected (via :set term?
):
- Outside tmux:
term=xterm-256color
- Inside tmux:
term=screen-256color
Vim also reports both instances are running in 256-color mode (via :set t_Co?
):
- Outside tmux:
t_Co=256
- Inside tmux:
t_Co=256
There are many similar questions out there regarding getting Vim to run in 256-color mode inside tmux (the best answer I found is here), but I don't think that's my problem given the above information.
I can duplicate the problem outside of tmux if I run Vim with the terminal type set to screen-256color
:
$ TERM=screen-256color vim
So that makes me believe there's simply some difference between the xterm-256color
and screen-256color
terminal capabilities that causes the difference in color. Which leads to the question posed in the title: what specifically in the terminal capabilities causes the Vim colors to be different? I see the differences between running :set termcap
inside and outside of tmux, but I'm curious as to which variables actually cause the difference in behavior.
Independent of the previous question, is it possible to have the Vim colors be consistent when running inside or outside of tmux? Some things I've tried include:
- Explicitly setting the default terminal tmux uses in
~/.tmux.conf
to various values (some against the advice of the tmux FAQ):
set -g default-terminal "screen-256color"
set -g default-terminal "xterm-256color"
set -g default-terminal "screen.xterm-256color"
set -g default-terminal "tmux-256color"
- Starting tmux using
tmux -2
.
In all cases, Vim continued to display different colors inside of tmux.
terminal vim tmux colors
add a comment |
Environment:
- Fedora 25 (4.9.12-200.fc25.x86_64)
- GNOME Terminal 3.22.1 Using VTE version 0.46.1 +GNUTLS
- VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Feb 22 2017 16:26:11)
- tmux 2.2
I recently started using tmux and have observed that the colors within Vim change depending on whether I'm running inside or outside of tmux. Below are screenshots of Vim outside (left) and inside (right) of tmux while viewing a Git diff:
My TERM
variable is
- Outside tmux:
xterm-256color
- Inside tmux:
screen-256color
Vim reports these terminal types as expected (via :set term?
):
- Outside tmux:
term=xterm-256color
- Inside tmux:
term=screen-256color
Vim also reports both instances are running in 256-color mode (via :set t_Co?
):
- Outside tmux:
t_Co=256
- Inside tmux:
t_Co=256
There are many similar questions out there regarding getting Vim to run in 256-color mode inside tmux (the best answer I found is here), but I don't think that's my problem given the above information.
I can duplicate the problem outside of tmux if I run Vim with the terminal type set to screen-256color
:
$ TERM=screen-256color vim
So that makes me believe there's simply some difference between the xterm-256color
and screen-256color
terminal capabilities that causes the difference in color. Which leads to the question posed in the title: what specifically in the terminal capabilities causes the Vim colors to be different? I see the differences between running :set termcap
inside and outside of tmux, but I'm curious as to which variables actually cause the difference in behavior.
Independent of the previous question, is it possible to have the Vim colors be consistent when running inside or outside of tmux? Some things I've tried include:
- Explicitly setting the default terminal tmux uses in
~/.tmux.conf
to various values (some against the advice of the tmux FAQ):
set -g default-terminal "screen-256color"
set -g default-terminal "xterm-256color"
set -g default-terminal "screen.xterm-256color"
set -g default-terminal "tmux-256color"
- Starting tmux using
tmux -2
.
In all cases, Vim continued to display different colors inside of tmux.
terminal vim tmux colors
Could you please startscript
, startvim
, quitvim
and then quitscript
's shell, and attach the resultingtypescript
file? Then repeat the same steps withTERM=screen-256color vim
instead.
– egmont
Mar 3 '17 at 11:07
@egmont Here you go: typescript-xterm-256color and typescript-screen-256color.
– Rusty Shackleford
Mar 3 '17 at 18:59
1
I can see 256-color escape sequences in thexterm-256color
version (search for "38;5;" in the file), but cannot in thescreen-256color
. E.g. wherever there's ae[38;5;81m
inxterm-256color
(color #81 of the 256-color palette, a middle blue shade),screen-256color
containse[34m
instead (the standard blue of the 8-color palette). So the main question is why does vim not use the 256-color palette in case ofTERM=screen-256color
.
– egmont
Mar 3 '17 at 21:04
Another interesting thing is that thexterm-256color
version seems to print the screen twice, first with the legacy colors and then with the 256-color palette. Search for e.g. "F1" in the file, you'll find two matches inxterm-256color
, the first withe[34m
color, the second withe[38;5;81m
. I don't know what's going on here.
– egmont
Mar 3 '17 at 21:06
add a comment |
Environment:
- Fedora 25 (4.9.12-200.fc25.x86_64)
- GNOME Terminal 3.22.1 Using VTE version 0.46.1 +GNUTLS
- VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Feb 22 2017 16:26:11)
- tmux 2.2
I recently started using tmux and have observed that the colors within Vim change depending on whether I'm running inside or outside of tmux. Below are screenshots of Vim outside (left) and inside (right) of tmux while viewing a Git diff:
My TERM
variable is
- Outside tmux:
xterm-256color
- Inside tmux:
screen-256color
Vim reports these terminal types as expected (via :set term?
):
- Outside tmux:
term=xterm-256color
- Inside tmux:
term=screen-256color
Vim also reports both instances are running in 256-color mode (via :set t_Co?
):
- Outside tmux:
t_Co=256
- Inside tmux:
t_Co=256
There are many similar questions out there regarding getting Vim to run in 256-color mode inside tmux (the best answer I found is here), but I don't think that's my problem given the above information.
I can duplicate the problem outside of tmux if I run Vim with the terminal type set to screen-256color
:
$ TERM=screen-256color vim
So that makes me believe there's simply some difference between the xterm-256color
and screen-256color
terminal capabilities that causes the difference in color. Which leads to the question posed in the title: what specifically in the terminal capabilities causes the Vim colors to be different? I see the differences between running :set termcap
inside and outside of tmux, but I'm curious as to which variables actually cause the difference in behavior.
Independent of the previous question, is it possible to have the Vim colors be consistent when running inside or outside of tmux? Some things I've tried include:
- Explicitly setting the default terminal tmux uses in
~/.tmux.conf
to various values (some against the advice of the tmux FAQ):
set -g default-terminal "screen-256color"
set -g default-terminal "xterm-256color"
set -g default-terminal "screen.xterm-256color"
set -g default-terminal "tmux-256color"
- Starting tmux using
tmux -2
.
In all cases, Vim continued to display different colors inside of tmux.
terminal vim tmux colors
Environment:
- Fedora 25 (4.9.12-200.fc25.x86_64)
- GNOME Terminal 3.22.1 Using VTE version 0.46.1 +GNUTLS
- VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Feb 22 2017 16:26:11)
- tmux 2.2
I recently started using tmux and have observed that the colors within Vim change depending on whether I'm running inside or outside of tmux. Below are screenshots of Vim outside (left) and inside (right) of tmux while viewing a Git diff:
My TERM
variable is
- Outside tmux:
xterm-256color
- Inside tmux:
screen-256color
Vim reports these terminal types as expected (via :set term?
):
- Outside tmux:
term=xterm-256color
- Inside tmux:
term=screen-256color
Vim also reports both instances are running in 256-color mode (via :set t_Co?
):
- Outside tmux:
t_Co=256
- Inside tmux:
t_Co=256
There are many similar questions out there regarding getting Vim to run in 256-color mode inside tmux (the best answer I found is here), but I don't think that's my problem given the above information.
I can duplicate the problem outside of tmux if I run Vim with the terminal type set to screen-256color
:
$ TERM=screen-256color vim
So that makes me believe there's simply some difference between the xterm-256color
and screen-256color
terminal capabilities that causes the difference in color. Which leads to the question posed in the title: what specifically in the terminal capabilities causes the Vim colors to be different? I see the differences between running :set termcap
inside and outside of tmux, but I'm curious as to which variables actually cause the difference in behavior.
Independent of the previous question, is it possible to have the Vim colors be consistent when running inside or outside of tmux? Some things I've tried include:
- Explicitly setting the default terminal tmux uses in
~/.tmux.conf
to various values (some against the advice of the tmux FAQ):
set -g default-terminal "screen-256color"
set -g default-terminal "xterm-256color"
set -g default-terminal "screen.xterm-256color"
set -g default-terminal "tmux-256color"
- Starting tmux using
tmux -2
.
In all cases, Vim continued to display different colors inside of tmux.
terminal vim tmux colors
terminal vim tmux colors
edited May 23 '17 at 12:40
Community♦
1
1
asked Mar 2 '17 at 21:37
Rusty ShacklefordRusty Shackleford
238139
238139
Could you please startscript
, startvim
, quitvim
and then quitscript
's shell, and attach the resultingtypescript
file? Then repeat the same steps withTERM=screen-256color vim
instead.
– egmont
Mar 3 '17 at 11:07
@egmont Here you go: typescript-xterm-256color and typescript-screen-256color.
– Rusty Shackleford
Mar 3 '17 at 18:59
1
I can see 256-color escape sequences in thexterm-256color
version (search for "38;5;" in the file), but cannot in thescreen-256color
. E.g. wherever there's ae[38;5;81m
inxterm-256color
(color #81 of the 256-color palette, a middle blue shade),screen-256color
containse[34m
instead (the standard blue of the 8-color palette). So the main question is why does vim not use the 256-color palette in case ofTERM=screen-256color
.
– egmont
Mar 3 '17 at 21:04
Another interesting thing is that thexterm-256color
version seems to print the screen twice, first with the legacy colors and then with the 256-color palette. Search for e.g. "F1" in the file, you'll find two matches inxterm-256color
, the first withe[34m
color, the second withe[38;5;81m
. I don't know what's going on here.
– egmont
Mar 3 '17 at 21:06
add a comment |
Could you please startscript
, startvim
, quitvim
and then quitscript
's shell, and attach the resultingtypescript
file? Then repeat the same steps withTERM=screen-256color vim
instead.
– egmont
Mar 3 '17 at 11:07
@egmont Here you go: typescript-xterm-256color and typescript-screen-256color.
– Rusty Shackleford
Mar 3 '17 at 18:59
1
I can see 256-color escape sequences in thexterm-256color
version (search for "38;5;" in the file), but cannot in thescreen-256color
. E.g. wherever there's ae[38;5;81m
inxterm-256color
(color #81 of the 256-color palette, a middle blue shade),screen-256color
containse[34m
instead (the standard blue of the 8-color palette). So the main question is why does vim not use the 256-color palette in case ofTERM=screen-256color
.
– egmont
Mar 3 '17 at 21:04
Another interesting thing is that thexterm-256color
version seems to print the screen twice, first with the legacy colors and then with the 256-color palette. Search for e.g. "F1" in the file, you'll find two matches inxterm-256color
, the first withe[34m
color, the second withe[38;5;81m
. I don't know what's going on here.
– egmont
Mar 3 '17 at 21:06
Could you please start
script
, start vim
, quit vim
and then quit script
's shell, and attach the resulting typescript
file? Then repeat the same steps with TERM=screen-256color vim
instead.– egmont
Mar 3 '17 at 11:07
Could you please start
script
, start vim
, quit vim
and then quit script
's shell, and attach the resulting typescript
file? Then repeat the same steps with TERM=screen-256color vim
instead.– egmont
Mar 3 '17 at 11:07
@egmont Here you go: typescript-xterm-256color and typescript-screen-256color.
– Rusty Shackleford
Mar 3 '17 at 18:59
@egmont Here you go: typescript-xterm-256color and typescript-screen-256color.
– Rusty Shackleford
Mar 3 '17 at 18:59
1
1
I can see 256-color escape sequences in the
xterm-256color
version (search for "38;5;" in the file), but cannot in the screen-256color
. E.g. wherever there's a e[38;5;81m
in xterm-256color
(color #81 of the 256-color palette, a middle blue shade), screen-256color
contains e[34m
instead (the standard blue of the 8-color palette). So the main question is why does vim not use the 256-color palette in case of TERM=screen-256color
.– egmont
Mar 3 '17 at 21:04
I can see 256-color escape sequences in the
xterm-256color
version (search for "38;5;" in the file), but cannot in the screen-256color
. E.g. wherever there's a e[38;5;81m
in xterm-256color
(color #81 of the 256-color palette, a middle blue shade), screen-256color
contains e[34m
instead (the standard blue of the 8-color palette). So the main question is why does vim not use the 256-color palette in case of TERM=screen-256color
.– egmont
Mar 3 '17 at 21:04
Another interesting thing is that the
xterm-256color
version seems to print the screen twice, first with the legacy colors and then with the 256-color palette. Search for e.g. "F1" in the file, you'll find two matches in xterm-256color
, the first with e[34m
color, the second with e[38;5;81m
. I don't know what's going on here.– egmont
Mar 3 '17 at 21:06
Another interesting thing is that the
xterm-256color
version seems to print the screen twice, first with the legacy colors and then with the 256-color palette. Search for e.g. "F1" in the file, you'll find two matches in xterm-256color
, the first with e[34m
color, the second with e[38;5;81m
. I don't know what's going on here.– egmont
Mar 3 '17 at 21:06
add a comment |
5 Answers
5
active
oldest
votes
tmux
doesn't support the terminfo capability bce
(back color erase), which vim
checks for, to decide whether to use its "default color" scheme.
That characteristic of tmux
has been mentioned a few times -
- Reset background to transparent with tmux?
- Clear to end of line uses the wrong background color in tmux
Exactly the kind of intellectually-satisfying answer I was looking for. Thank you!
– Rusty Shackleford
Mar 4 '17 at 2:17
add a comment |
I had the similar issue before. Comments in blue in Vim where hard to read. In .tmux.conf
I set this:
set -g default-terminal "screen-256color"
And in .vimrc
:
set background=dark
Now it looks as follows and works both in Gnome Terminal and Cygwin:
2
This solved it for me. For some reason, inside tmux, vim wasn't detecting a dark background. Explicitly settingbg=dark
in my vimrc fixed it.
– Adam Keenan
Nov 14 '17 at 17:39
Strange - my$TERM
both inside and outsidetmux
was"xterm-256color"
and explicitly setting the backgroun did it for me as well. Thank you!
– nronnei
Oct 11 '18 at 0:36
add a comment |
Thanks to @egmont's analysis of what colors Vim was outputting when TERM=screen-256color
, I was inspired to look at the color scheme Vim is using in the two scenarios.
Vim reports it is using the default
color scheme in both cases. I thought that odd because the default
color scheme on Fedora 25 (/usr/share/vim/vim80/colors/default.vim
) doesn't appear to match the colors I actually see when TERM=xterm-256color
. If I explicitly set the color scheme using :colorscheme default
when TERM=xterm-256color
, Vim's appearance changes to that when TERM=screen-256color
. To get the colors back to what they were when I first start Vim, I had to use the ron
color scheme. Progress!
I found an Ask Ubuntu answer that suggests that when Vim reports it is using the default
color scheme, it doesn't necessarily mean default.vim
but rather some theme-specific color scheme. As the answer points out, a dark theme (which I am using) corresponds to the ron
color scheme, just as I discovered above. (Even though this post is with respect to Ubuntu, I'm assuming the OP was using GNOME.)
I also found another question that seems to describe the same problem I'm having. I came across it while searching before I posted this question, but, for some reason, the color scheme didn't strike me as being relevant.
I ended up doing what @LapshinDmitry did in his answer and explicitly set colorscheme ron
in my ~/.vimrc
file. Now, whether I start Vim inside or outside of tmux, the colors appear the same. The only drawback is if I ever change my desktop theme from a dark flavor to a light flavor, Vim won't automatically switch to the "default" light theme color scheme, which is apparently peachpuff
. I can live with that, as I'm unlikely to ever change my theme.
I'm not going to accept this answer because I consider explicitly setting the color scheme in my ~/.vimrc
a workaround rather than the solution. If someone can explain why Vim loads a different "default" color scheme depending on the value of TERM
, I'll be happy to accept that answer, as I'm more interested in understanding the root cause. I suspect it has something to do with how Vim interprets the terminal capabilities between the two terminfo files.
I'm also curious whyvim
behaves this way. After all, thebce
capability should have nothing to do with the available number of colors.
– egmont
Mar 4 '17 at 14:54
@egmont I interpreted @ThomasDickey's answer as: 1) Vim checks thebce
capability of the terminal, 2) if present, select color scheme "A", 3) otherwise, select color scheme "B". I believe the color depth is the same in both cases (i.e. 256 colors, ast_Co
shows). It's just that color scheme "B" on my system happens to only use an 8-color palette even though 256 colors are possible (I think that explains what you observed in your typescript analysis; please correct me if I'm wrong). Remember, after I run:colorscheme ron
, I see 256-color escape sequences in the same Vim session.
– Rusty Shackleford
Mar 4 '17 at 16:14
Thanks for the explanation - I still cannot see any rationale behind this though. Nevermind.vim
has really weird design decisions.
– egmont
Mar 4 '17 at 19:47
add a comment |
My TERM variable is
Outside tmux: xterm-256color
Inside tmux: screen-256color
That's correct and working for me. Try it with a different terminal (I use urxvt) to see if Gnome Terminal is the problem.
Also check COLORTERM
(mine is set to rxvt
) and unset TERMCAP
.
Thanks for the suggestions. I ran the same test with urxvt (outerTERM
isrxvt-unicode-256color
) using an appropriate~/.Xdefaults
and unfortunately still observed different colors inside and outside of tmux. For the gnome-terminal scenario,COLORTERM
istruecolor
andTERMCAP
is empty both inside and outside tmux. For the urxvt scenario,COLORTERM
isrxvt-xpm
outside andtruecolor
inside tmux, whileTERMCAP
is empty both inside and outside tmux.
– Rusty Shackleford
Mar 3 '17 at 2:32
@RustyShackleford this is only for Vim? Are you using 'termguicolors'? Take a look at:help xterm-true-color
or try with a more default Vim config.
– laktak
Mar 3 '17 at 8:08
I've only noticed the problem in Vim so far (like I said, I only recently started using tmux). For example, my terminal prompt and Git CLI output appear to have the same colors both inside and outside of tmux. I do not settermguicolors
in my.vimrc
and:set termguicolors?
reportsnotermguicolors
in both cases. I'll look at the help topic you referenced; thanks!
– Rusty Shackleford
Mar 3 '17 at 19:16
add a comment |
For my own reference later when I undoubtedly google this setting up my next machine.
- Vim8 / Neovim
- Windows 10
- Git bash
- Tmux 2.7
Use these instructions to get the necessary binaries and DLLs into Git bash's PATH:
https://blog.pjsen.eu/?p=440
Use these commands to configure:
echo 'set -g default-terminal "screen.xterm-256color"' > ~/.tmux.conf
tmux -2u
New contributor
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f348771%2fwhy-do-vim-colors-look-different-inside-and-outside-of-tmux%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
5 Answers
5
active
oldest
votes
5 Answers
5
active
oldest
votes
active
oldest
votes
active
oldest
votes
tmux
doesn't support the terminfo capability bce
(back color erase), which vim
checks for, to decide whether to use its "default color" scheme.
That characteristic of tmux
has been mentioned a few times -
- Reset background to transparent with tmux?
- Clear to end of line uses the wrong background color in tmux
Exactly the kind of intellectually-satisfying answer I was looking for. Thank you!
– Rusty Shackleford
Mar 4 '17 at 2:17
add a comment |
tmux
doesn't support the terminfo capability bce
(back color erase), which vim
checks for, to decide whether to use its "default color" scheme.
That characteristic of tmux
has been mentioned a few times -
- Reset background to transparent with tmux?
- Clear to end of line uses the wrong background color in tmux
Exactly the kind of intellectually-satisfying answer I was looking for. Thank you!
– Rusty Shackleford
Mar 4 '17 at 2:17
add a comment |
tmux
doesn't support the terminfo capability bce
(back color erase), which vim
checks for, to decide whether to use its "default color" scheme.
That characteristic of tmux
has been mentioned a few times -
- Reset background to transparent with tmux?
- Clear to end of line uses the wrong background color in tmux
tmux
doesn't support the terminfo capability bce
(back color erase), which vim
checks for, to decide whether to use its "default color" scheme.
That characteristic of tmux
has been mentioned a few times -
- Reset background to transparent with tmux?
- Clear to end of line uses the wrong background color in tmux
edited Apr 13 '17 at 12:37
Community♦
1
1
answered Mar 4 '17 at 1:49
Thomas DickeyThomas Dickey
54.2k5106179
54.2k5106179
Exactly the kind of intellectually-satisfying answer I was looking for. Thank you!
– Rusty Shackleford
Mar 4 '17 at 2:17
add a comment |
Exactly the kind of intellectually-satisfying answer I was looking for. Thank you!
– Rusty Shackleford
Mar 4 '17 at 2:17
Exactly the kind of intellectually-satisfying answer I was looking for. Thank you!
– Rusty Shackleford
Mar 4 '17 at 2:17
Exactly the kind of intellectually-satisfying answer I was looking for. Thank you!
– Rusty Shackleford
Mar 4 '17 at 2:17
add a comment |
I had the similar issue before. Comments in blue in Vim where hard to read. In .tmux.conf
I set this:
set -g default-terminal "screen-256color"
And in .vimrc
:
set background=dark
Now it looks as follows and works both in Gnome Terminal and Cygwin:
2
This solved it for me. For some reason, inside tmux, vim wasn't detecting a dark background. Explicitly settingbg=dark
in my vimrc fixed it.
– Adam Keenan
Nov 14 '17 at 17:39
Strange - my$TERM
both inside and outsidetmux
was"xterm-256color"
and explicitly setting the backgroun did it for me as well. Thank you!
– nronnei
Oct 11 '18 at 0:36
add a comment |
I had the similar issue before. Comments in blue in Vim where hard to read. In .tmux.conf
I set this:
set -g default-terminal "screen-256color"
And in .vimrc
:
set background=dark
Now it looks as follows and works both in Gnome Terminal and Cygwin:
2
This solved it for me. For some reason, inside tmux, vim wasn't detecting a dark background. Explicitly settingbg=dark
in my vimrc fixed it.
– Adam Keenan
Nov 14 '17 at 17:39
Strange - my$TERM
both inside and outsidetmux
was"xterm-256color"
and explicitly setting the backgroun did it for me as well. Thank you!
– nronnei
Oct 11 '18 at 0:36
add a comment |
I had the similar issue before. Comments in blue in Vim where hard to read. In .tmux.conf
I set this:
set -g default-terminal "screen-256color"
And in .vimrc
:
set background=dark
Now it looks as follows and works both in Gnome Terminal and Cygwin:
I had the similar issue before. Comments in blue in Vim where hard to read. In .tmux.conf
I set this:
set -g default-terminal "screen-256color"
And in .vimrc
:
set background=dark
Now it looks as follows and works both in Gnome Terminal and Cygwin:
answered May 6 '17 at 13:03
Vitalii PlagovVitalii Plagov
14929
14929
2
This solved it for me. For some reason, inside tmux, vim wasn't detecting a dark background. Explicitly settingbg=dark
in my vimrc fixed it.
– Adam Keenan
Nov 14 '17 at 17:39
Strange - my$TERM
both inside and outsidetmux
was"xterm-256color"
and explicitly setting the backgroun did it for me as well. Thank you!
– nronnei
Oct 11 '18 at 0:36
add a comment |
2
This solved it for me. For some reason, inside tmux, vim wasn't detecting a dark background. Explicitly settingbg=dark
in my vimrc fixed it.
– Adam Keenan
Nov 14 '17 at 17:39
Strange - my$TERM
both inside and outsidetmux
was"xterm-256color"
and explicitly setting the backgroun did it for me as well. Thank you!
– nronnei
Oct 11 '18 at 0:36
2
2
This solved it for me. For some reason, inside tmux, vim wasn't detecting a dark background. Explicitly setting
bg=dark
in my vimrc fixed it.– Adam Keenan
Nov 14 '17 at 17:39
This solved it for me. For some reason, inside tmux, vim wasn't detecting a dark background. Explicitly setting
bg=dark
in my vimrc fixed it.– Adam Keenan
Nov 14 '17 at 17:39
Strange - my
$TERM
both inside and outside tmux
was "xterm-256color"
and explicitly setting the backgroun did it for me as well. Thank you!– nronnei
Oct 11 '18 at 0:36
Strange - my
$TERM
both inside and outside tmux
was "xterm-256color"
and explicitly setting the backgroun did it for me as well. Thank you!– nronnei
Oct 11 '18 at 0:36
add a comment |
Thanks to @egmont's analysis of what colors Vim was outputting when TERM=screen-256color
, I was inspired to look at the color scheme Vim is using in the two scenarios.
Vim reports it is using the default
color scheme in both cases. I thought that odd because the default
color scheme on Fedora 25 (/usr/share/vim/vim80/colors/default.vim
) doesn't appear to match the colors I actually see when TERM=xterm-256color
. If I explicitly set the color scheme using :colorscheme default
when TERM=xterm-256color
, Vim's appearance changes to that when TERM=screen-256color
. To get the colors back to what they were when I first start Vim, I had to use the ron
color scheme. Progress!
I found an Ask Ubuntu answer that suggests that when Vim reports it is using the default
color scheme, it doesn't necessarily mean default.vim
but rather some theme-specific color scheme. As the answer points out, a dark theme (which I am using) corresponds to the ron
color scheme, just as I discovered above. (Even though this post is with respect to Ubuntu, I'm assuming the OP was using GNOME.)
I also found another question that seems to describe the same problem I'm having. I came across it while searching before I posted this question, but, for some reason, the color scheme didn't strike me as being relevant.
I ended up doing what @LapshinDmitry did in his answer and explicitly set colorscheme ron
in my ~/.vimrc
file. Now, whether I start Vim inside or outside of tmux, the colors appear the same. The only drawback is if I ever change my desktop theme from a dark flavor to a light flavor, Vim won't automatically switch to the "default" light theme color scheme, which is apparently peachpuff
. I can live with that, as I'm unlikely to ever change my theme.
I'm not going to accept this answer because I consider explicitly setting the color scheme in my ~/.vimrc
a workaround rather than the solution. If someone can explain why Vim loads a different "default" color scheme depending on the value of TERM
, I'll be happy to accept that answer, as I'm more interested in understanding the root cause. I suspect it has something to do with how Vim interprets the terminal capabilities between the two terminfo files.
I'm also curious whyvim
behaves this way. After all, thebce
capability should have nothing to do with the available number of colors.
– egmont
Mar 4 '17 at 14:54
@egmont I interpreted @ThomasDickey's answer as: 1) Vim checks thebce
capability of the terminal, 2) if present, select color scheme "A", 3) otherwise, select color scheme "B". I believe the color depth is the same in both cases (i.e. 256 colors, ast_Co
shows). It's just that color scheme "B" on my system happens to only use an 8-color palette even though 256 colors are possible (I think that explains what you observed in your typescript analysis; please correct me if I'm wrong). Remember, after I run:colorscheme ron
, I see 256-color escape sequences in the same Vim session.
– Rusty Shackleford
Mar 4 '17 at 16:14
Thanks for the explanation - I still cannot see any rationale behind this though. Nevermind.vim
has really weird design decisions.
– egmont
Mar 4 '17 at 19:47
add a comment |
Thanks to @egmont's analysis of what colors Vim was outputting when TERM=screen-256color
, I was inspired to look at the color scheme Vim is using in the two scenarios.
Vim reports it is using the default
color scheme in both cases. I thought that odd because the default
color scheme on Fedora 25 (/usr/share/vim/vim80/colors/default.vim
) doesn't appear to match the colors I actually see when TERM=xterm-256color
. If I explicitly set the color scheme using :colorscheme default
when TERM=xterm-256color
, Vim's appearance changes to that when TERM=screen-256color
. To get the colors back to what they were when I first start Vim, I had to use the ron
color scheme. Progress!
I found an Ask Ubuntu answer that suggests that when Vim reports it is using the default
color scheme, it doesn't necessarily mean default.vim
but rather some theme-specific color scheme. As the answer points out, a dark theme (which I am using) corresponds to the ron
color scheme, just as I discovered above. (Even though this post is with respect to Ubuntu, I'm assuming the OP was using GNOME.)
I also found another question that seems to describe the same problem I'm having. I came across it while searching before I posted this question, but, for some reason, the color scheme didn't strike me as being relevant.
I ended up doing what @LapshinDmitry did in his answer and explicitly set colorscheme ron
in my ~/.vimrc
file. Now, whether I start Vim inside or outside of tmux, the colors appear the same. The only drawback is if I ever change my desktop theme from a dark flavor to a light flavor, Vim won't automatically switch to the "default" light theme color scheme, which is apparently peachpuff
. I can live with that, as I'm unlikely to ever change my theme.
I'm not going to accept this answer because I consider explicitly setting the color scheme in my ~/.vimrc
a workaround rather than the solution. If someone can explain why Vim loads a different "default" color scheme depending on the value of TERM
, I'll be happy to accept that answer, as I'm more interested in understanding the root cause. I suspect it has something to do with how Vim interprets the terminal capabilities between the two terminfo files.
I'm also curious whyvim
behaves this way. After all, thebce
capability should have nothing to do with the available number of colors.
– egmont
Mar 4 '17 at 14:54
@egmont I interpreted @ThomasDickey's answer as: 1) Vim checks thebce
capability of the terminal, 2) if present, select color scheme "A", 3) otherwise, select color scheme "B". I believe the color depth is the same in both cases (i.e. 256 colors, ast_Co
shows). It's just that color scheme "B" on my system happens to only use an 8-color palette even though 256 colors are possible (I think that explains what you observed in your typescript analysis; please correct me if I'm wrong). Remember, after I run:colorscheme ron
, I see 256-color escape sequences in the same Vim session.
– Rusty Shackleford
Mar 4 '17 at 16:14
Thanks for the explanation - I still cannot see any rationale behind this though. Nevermind.vim
has really weird design decisions.
– egmont
Mar 4 '17 at 19:47
add a comment |
Thanks to @egmont's analysis of what colors Vim was outputting when TERM=screen-256color
, I was inspired to look at the color scheme Vim is using in the two scenarios.
Vim reports it is using the default
color scheme in both cases. I thought that odd because the default
color scheme on Fedora 25 (/usr/share/vim/vim80/colors/default.vim
) doesn't appear to match the colors I actually see when TERM=xterm-256color
. If I explicitly set the color scheme using :colorscheme default
when TERM=xterm-256color
, Vim's appearance changes to that when TERM=screen-256color
. To get the colors back to what they were when I first start Vim, I had to use the ron
color scheme. Progress!
I found an Ask Ubuntu answer that suggests that when Vim reports it is using the default
color scheme, it doesn't necessarily mean default.vim
but rather some theme-specific color scheme. As the answer points out, a dark theme (which I am using) corresponds to the ron
color scheme, just as I discovered above. (Even though this post is with respect to Ubuntu, I'm assuming the OP was using GNOME.)
I also found another question that seems to describe the same problem I'm having. I came across it while searching before I posted this question, but, for some reason, the color scheme didn't strike me as being relevant.
I ended up doing what @LapshinDmitry did in his answer and explicitly set colorscheme ron
in my ~/.vimrc
file. Now, whether I start Vim inside or outside of tmux, the colors appear the same. The only drawback is if I ever change my desktop theme from a dark flavor to a light flavor, Vim won't automatically switch to the "default" light theme color scheme, which is apparently peachpuff
. I can live with that, as I'm unlikely to ever change my theme.
I'm not going to accept this answer because I consider explicitly setting the color scheme in my ~/.vimrc
a workaround rather than the solution. If someone can explain why Vim loads a different "default" color scheme depending on the value of TERM
, I'll be happy to accept that answer, as I'm more interested in understanding the root cause. I suspect it has something to do with how Vim interprets the terminal capabilities between the two terminfo files.
Thanks to @egmont's analysis of what colors Vim was outputting when TERM=screen-256color
, I was inspired to look at the color scheme Vim is using in the two scenarios.
Vim reports it is using the default
color scheme in both cases. I thought that odd because the default
color scheme on Fedora 25 (/usr/share/vim/vim80/colors/default.vim
) doesn't appear to match the colors I actually see when TERM=xterm-256color
. If I explicitly set the color scheme using :colorscheme default
when TERM=xterm-256color
, Vim's appearance changes to that when TERM=screen-256color
. To get the colors back to what they were when I first start Vim, I had to use the ron
color scheme. Progress!
I found an Ask Ubuntu answer that suggests that when Vim reports it is using the default
color scheme, it doesn't necessarily mean default.vim
but rather some theme-specific color scheme. As the answer points out, a dark theme (which I am using) corresponds to the ron
color scheme, just as I discovered above. (Even though this post is with respect to Ubuntu, I'm assuming the OP was using GNOME.)
I also found another question that seems to describe the same problem I'm having. I came across it while searching before I posted this question, but, for some reason, the color scheme didn't strike me as being relevant.
I ended up doing what @LapshinDmitry did in his answer and explicitly set colorscheme ron
in my ~/.vimrc
file. Now, whether I start Vim inside or outside of tmux, the colors appear the same. The only drawback is if I ever change my desktop theme from a dark flavor to a light flavor, Vim won't automatically switch to the "default" light theme color scheme, which is apparently peachpuff
. I can live with that, as I'm unlikely to ever change my theme.
I'm not going to accept this answer because I consider explicitly setting the color scheme in my ~/.vimrc
a workaround rather than the solution. If someone can explain why Vim loads a different "default" color scheme depending on the value of TERM
, I'll be happy to accept that answer, as I'm more interested in understanding the root cause. I suspect it has something to do with how Vim interprets the terminal capabilities between the two terminfo files.
edited Apr 13 '17 at 12:36
Community♦
1
1
answered Mar 4 '17 at 1:38
Rusty ShacklefordRusty Shackleford
238139
238139
I'm also curious whyvim
behaves this way. After all, thebce
capability should have nothing to do with the available number of colors.
– egmont
Mar 4 '17 at 14:54
@egmont I interpreted @ThomasDickey's answer as: 1) Vim checks thebce
capability of the terminal, 2) if present, select color scheme "A", 3) otherwise, select color scheme "B". I believe the color depth is the same in both cases (i.e. 256 colors, ast_Co
shows). It's just that color scheme "B" on my system happens to only use an 8-color palette even though 256 colors are possible (I think that explains what you observed in your typescript analysis; please correct me if I'm wrong). Remember, after I run:colorscheme ron
, I see 256-color escape sequences in the same Vim session.
– Rusty Shackleford
Mar 4 '17 at 16:14
Thanks for the explanation - I still cannot see any rationale behind this though. Nevermind.vim
has really weird design decisions.
– egmont
Mar 4 '17 at 19:47
add a comment |
I'm also curious whyvim
behaves this way. After all, thebce
capability should have nothing to do with the available number of colors.
– egmont
Mar 4 '17 at 14:54
@egmont I interpreted @ThomasDickey's answer as: 1) Vim checks thebce
capability of the terminal, 2) if present, select color scheme "A", 3) otherwise, select color scheme "B". I believe the color depth is the same in both cases (i.e. 256 colors, ast_Co
shows). It's just that color scheme "B" on my system happens to only use an 8-color palette even though 256 colors are possible (I think that explains what you observed in your typescript analysis; please correct me if I'm wrong). Remember, after I run:colorscheme ron
, I see 256-color escape sequences in the same Vim session.
– Rusty Shackleford
Mar 4 '17 at 16:14
Thanks for the explanation - I still cannot see any rationale behind this though. Nevermind.vim
has really weird design decisions.
– egmont
Mar 4 '17 at 19:47
I'm also curious why
vim
behaves this way. After all, the bce
capability should have nothing to do with the available number of colors.– egmont
Mar 4 '17 at 14:54
I'm also curious why
vim
behaves this way. After all, the bce
capability should have nothing to do with the available number of colors.– egmont
Mar 4 '17 at 14:54
@egmont I interpreted @ThomasDickey's answer as: 1) Vim checks the
bce
capability of the terminal, 2) if present, select color scheme "A", 3) otherwise, select color scheme "B". I believe the color depth is the same in both cases (i.e. 256 colors, as t_Co
shows). It's just that color scheme "B" on my system happens to only use an 8-color palette even though 256 colors are possible (I think that explains what you observed in your typescript analysis; please correct me if I'm wrong). Remember, after I run :colorscheme ron
, I see 256-color escape sequences in the same Vim session.– Rusty Shackleford
Mar 4 '17 at 16:14
@egmont I interpreted @ThomasDickey's answer as: 1) Vim checks the
bce
capability of the terminal, 2) if present, select color scheme "A", 3) otherwise, select color scheme "B". I believe the color depth is the same in both cases (i.e. 256 colors, as t_Co
shows). It's just that color scheme "B" on my system happens to only use an 8-color palette even though 256 colors are possible (I think that explains what you observed in your typescript analysis; please correct me if I'm wrong). Remember, after I run :colorscheme ron
, I see 256-color escape sequences in the same Vim session.– Rusty Shackleford
Mar 4 '17 at 16:14
Thanks for the explanation - I still cannot see any rationale behind this though. Nevermind.
vim
has really weird design decisions.– egmont
Mar 4 '17 at 19:47
Thanks for the explanation - I still cannot see any rationale behind this though. Nevermind.
vim
has really weird design decisions.– egmont
Mar 4 '17 at 19:47
add a comment |
My TERM variable is
Outside tmux: xterm-256color
Inside tmux: screen-256color
That's correct and working for me. Try it with a different terminal (I use urxvt) to see if Gnome Terminal is the problem.
Also check COLORTERM
(mine is set to rxvt
) and unset TERMCAP
.
Thanks for the suggestions. I ran the same test with urxvt (outerTERM
isrxvt-unicode-256color
) using an appropriate~/.Xdefaults
and unfortunately still observed different colors inside and outside of tmux. For the gnome-terminal scenario,COLORTERM
istruecolor
andTERMCAP
is empty both inside and outside tmux. For the urxvt scenario,COLORTERM
isrxvt-xpm
outside andtruecolor
inside tmux, whileTERMCAP
is empty both inside and outside tmux.
– Rusty Shackleford
Mar 3 '17 at 2:32
@RustyShackleford this is only for Vim? Are you using 'termguicolors'? Take a look at:help xterm-true-color
or try with a more default Vim config.
– laktak
Mar 3 '17 at 8:08
I've only noticed the problem in Vim so far (like I said, I only recently started using tmux). For example, my terminal prompt and Git CLI output appear to have the same colors both inside and outside of tmux. I do not settermguicolors
in my.vimrc
and:set termguicolors?
reportsnotermguicolors
in both cases. I'll look at the help topic you referenced; thanks!
– Rusty Shackleford
Mar 3 '17 at 19:16
add a comment |
My TERM variable is
Outside tmux: xterm-256color
Inside tmux: screen-256color
That's correct and working for me. Try it with a different terminal (I use urxvt) to see if Gnome Terminal is the problem.
Also check COLORTERM
(mine is set to rxvt
) and unset TERMCAP
.
Thanks for the suggestions. I ran the same test with urxvt (outerTERM
isrxvt-unicode-256color
) using an appropriate~/.Xdefaults
and unfortunately still observed different colors inside and outside of tmux. For the gnome-terminal scenario,COLORTERM
istruecolor
andTERMCAP
is empty both inside and outside tmux. For the urxvt scenario,COLORTERM
isrxvt-xpm
outside andtruecolor
inside tmux, whileTERMCAP
is empty both inside and outside tmux.
– Rusty Shackleford
Mar 3 '17 at 2:32
@RustyShackleford this is only for Vim? Are you using 'termguicolors'? Take a look at:help xterm-true-color
or try with a more default Vim config.
– laktak
Mar 3 '17 at 8:08
I've only noticed the problem in Vim so far (like I said, I only recently started using tmux). For example, my terminal prompt and Git CLI output appear to have the same colors both inside and outside of tmux. I do not settermguicolors
in my.vimrc
and:set termguicolors?
reportsnotermguicolors
in both cases. I'll look at the help topic you referenced; thanks!
– Rusty Shackleford
Mar 3 '17 at 19:16
add a comment |
My TERM variable is
Outside tmux: xterm-256color
Inside tmux: screen-256color
That's correct and working for me. Try it with a different terminal (I use urxvt) to see if Gnome Terminal is the problem.
Also check COLORTERM
(mine is set to rxvt
) and unset TERMCAP
.
My TERM variable is
Outside tmux: xterm-256color
Inside tmux: screen-256color
That's correct and working for me. Try it with a different terminal (I use urxvt) to see if Gnome Terminal is the problem.
Also check COLORTERM
(mine is set to rxvt
) and unset TERMCAP
.
answered Mar 2 '17 at 22:32
laktaklaktak
831510
831510
Thanks for the suggestions. I ran the same test with urxvt (outerTERM
isrxvt-unicode-256color
) using an appropriate~/.Xdefaults
and unfortunately still observed different colors inside and outside of tmux. For the gnome-terminal scenario,COLORTERM
istruecolor
andTERMCAP
is empty both inside and outside tmux. For the urxvt scenario,COLORTERM
isrxvt-xpm
outside andtruecolor
inside tmux, whileTERMCAP
is empty both inside and outside tmux.
– Rusty Shackleford
Mar 3 '17 at 2:32
@RustyShackleford this is only for Vim? Are you using 'termguicolors'? Take a look at:help xterm-true-color
or try with a more default Vim config.
– laktak
Mar 3 '17 at 8:08
I've only noticed the problem in Vim so far (like I said, I only recently started using tmux). For example, my terminal prompt and Git CLI output appear to have the same colors both inside and outside of tmux. I do not settermguicolors
in my.vimrc
and:set termguicolors?
reportsnotermguicolors
in both cases. I'll look at the help topic you referenced; thanks!
– Rusty Shackleford
Mar 3 '17 at 19:16
add a comment |
Thanks for the suggestions. I ran the same test with urxvt (outerTERM
isrxvt-unicode-256color
) using an appropriate~/.Xdefaults
and unfortunately still observed different colors inside and outside of tmux. For the gnome-terminal scenario,COLORTERM
istruecolor
andTERMCAP
is empty both inside and outside tmux. For the urxvt scenario,COLORTERM
isrxvt-xpm
outside andtruecolor
inside tmux, whileTERMCAP
is empty both inside and outside tmux.
– Rusty Shackleford
Mar 3 '17 at 2:32
@RustyShackleford this is only for Vim? Are you using 'termguicolors'? Take a look at:help xterm-true-color
or try with a more default Vim config.
– laktak
Mar 3 '17 at 8:08
I've only noticed the problem in Vim so far (like I said, I only recently started using tmux). For example, my terminal prompt and Git CLI output appear to have the same colors both inside and outside of tmux. I do not settermguicolors
in my.vimrc
and:set termguicolors?
reportsnotermguicolors
in both cases. I'll look at the help topic you referenced; thanks!
– Rusty Shackleford
Mar 3 '17 at 19:16
Thanks for the suggestions. I ran the same test with urxvt (outer
TERM
is rxvt-unicode-256color
) using an appropriate ~/.Xdefaults
and unfortunately still observed different colors inside and outside of tmux. For the gnome-terminal scenario, COLORTERM
is truecolor
and TERMCAP
is empty both inside and outside tmux. For the urxvt scenario, COLORTERM
is rxvt-xpm
outside and truecolor
inside tmux, while TERMCAP
is empty both inside and outside tmux.– Rusty Shackleford
Mar 3 '17 at 2:32
Thanks for the suggestions. I ran the same test with urxvt (outer
TERM
is rxvt-unicode-256color
) using an appropriate ~/.Xdefaults
and unfortunately still observed different colors inside and outside of tmux. For the gnome-terminal scenario, COLORTERM
is truecolor
and TERMCAP
is empty both inside and outside tmux. For the urxvt scenario, COLORTERM
is rxvt-xpm
outside and truecolor
inside tmux, while TERMCAP
is empty both inside and outside tmux.– Rusty Shackleford
Mar 3 '17 at 2:32
@RustyShackleford this is only for Vim? Are you using 'termguicolors'? Take a look at
:help xterm-true-color
or try with a more default Vim config.– laktak
Mar 3 '17 at 8:08
@RustyShackleford this is only for Vim? Are you using 'termguicolors'? Take a look at
:help xterm-true-color
or try with a more default Vim config.– laktak
Mar 3 '17 at 8:08
I've only noticed the problem in Vim so far (like I said, I only recently started using tmux). For example, my terminal prompt and Git CLI output appear to have the same colors both inside and outside of tmux. I do not set
termguicolors
in my .vimrc
and :set termguicolors?
reports notermguicolors
in both cases. I'll look at the help topic you referenced; thanks!– Rusty Shackleford
Mar 3 '17 at 19:16
I've only noticed the problem in Vim so far (like I said, I only recently started using tmux). For example, my terminal prompt and Git CLI output appear to have the same colors both inside and outside of tmux. I do not set
termguicolors
in my .vimrc
and :set termguicolors?
reports notermguicolors
in both cases. I'll look at the help topic you referenced; thanks!– Rusty Shackleford
Mar 3 '17 at 19:16
add a comment |
For my own reference later when I undoubtedly google this setting up my next machine.
- Vim8 / Neovim
- Windows 10
- Git bash
- Tmux 2.7
Use these instructions to get the necessary binaries and DLLs into Git bash's PATH:
https://blog.pjsen.eu/?p=440
Use these commands to configure:
echo 'set -g default-terminal "screen.xterm-256color"' > ~/.tmux.conf
tmux -2u
New contributor
add a comment |
For my own reference later when I undoubtedly google this setting up my next machine.
- Vim8 / Neovim
- Windows 10
- Git bash
- Tmux 2.7
Use these instructions to get the necessary binaries and DLLs into Git bash's PATH:
https://blog.pjsen.eu/?p=440
Use these commands to configure:
echo 'set -g default-terminal "screen.xterm-256color"' > ~/.tmux.conf
tmux -2u
New contributor
add a comment |
For my own reference later when I undoubtedly google this setting up my next machine.
- Vim8 / Neovim
- Windows 10
- Git bash
- Tmux 2.7
Use these instructions to get the necessary binaries and DLLs into Git bash's PATH:
https://blog.pjsen.eu/?p=440
Use these commands to configure:
echo 'set -g default-terminal "screen.xterm-256color"' > ~/.tmux.conf
tmux -2u
New contributor
For my own reference later when I undoubtedly google this setting up my next machine.
- Vim8 / Neovim
- Windows 10
- Git bash
- Tmux 2.7
Use these instructions to get the necessary binaries and DLLs into Git bash's PATH:
https://blog.pjsen.eu/?p=440
Use these commands to configure:
echo 'set -g default-terminal "screen.xterm-256color"' > ~/.tmux.conf
tmux -2u
New contributor
New contributor
answered Apr 5 at 0:55
Josh PeakJosh Peak
1012
1012
New contributor
New contributor
add a comment |
add a comment |
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f348771%2fwhy-do-vim-colors-look-different-inside-and-outside-of-tmux%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Could you please start
script
, startvim
, quitvim
and then quitscript
's shell, and attach the resultingtypescript
file? Then repeat the same steps withTERM=screen-256color vim
instead.– egmont
Mar 3 '17 at 11:07
@egmont Here you go: typescript-xterm-256color and typescript-screen-256color.
– Rusty Shackleford
Mar 3 '17 at 18:59
1
I can see 256-color escape sequences in the
xterm-256color
version (search for "38;5;" in the file), but cannot in thescreen-256color
. E.g. wherever there's ae[38;5;81m
inxterm-256color
(color #81 of the 256-color palette, a middle blue shade),screen-256color
containse[34m
instead (the standard blue of the 8-color palette). So the main question is why does vim not use the 256-color palette in case ofTERM=screen-256color
.– egmont
Mar 3 '17 at 21:04
Another interesting thing is that the
xterm-256color
version seems to print the screen twice, first with the legacy colors and then with the 256-color palette. Search for e.g. "F1" in the file, you'll find two matches inxterm-256color
, the first withe[34m
color, the second withe[38;5;81m
. I don't know what's going on here.– egmont
Mar 3 '17 at 21:06