简体   繁体   中英

Ubuntu, vim, and the solarized color palette

I'd really like to get in on all the colorful goodness of the solarized colorscheme , but I can't seem to get it configured just right.
I have the main solarized file in my .vim/colors folder, I've set my terminal profile colors to what is listed on the site, and I've added the lines

 set background=dark
 let g:solarized_termcolors=16
 colorscheme solarized

to my .vimrc, but vim looks grey-ed out and is using a bright green color as the default. Any ideas?

Here's my recommendation for things to try:

  1. ensure syntax on is in your .vimrc
  2. Check what t_Co vim has picked up from your term emulator (a quick :echo &t_Co ). If it's 8 you'll want to se t_Co=16 . You might also try se t_Co=256 though without let g:solarized_termcolors=16 this will use the 256 fallback mode, which isn't quite the correct color scheme.

I'd comment on the question above for the following, but karma of 50 is required. Please do email me via the project site to troubleshoot this further as I am in the process of establishing a good walkthrough for common color issues.

set t_Co=16 and let g:solarized_termcolors=16 did not work for me. This is what worked:

syntax on
let g:solarized_termcolors=256
set t_Co=256 
set background=dark
colorscheme solarized

I hope this helps someone.

I found out how do do it from this article.

I wrote the following script to do the gnome-terminal stuff.

gconftool-2 --set "/apps/gnome-terminal/profiles/Default/use_theme_background" --type bool false
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/use_theme_colors" --type bool false
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/palette" --type string "#070736364242:#D3D301010202:#858599990000:#B5B589890000:#26268B8BD2D2:#D3D336368282:#2A2AA1A19898:#EEEEE8E8D5D5:#00002B2B3636:#CBCB4B4B1616:#58586E6E7575:#65657B7B8383:#838394949696:#6C6C7171C4C4:#9393A1A1A1A1:#FDFDF6F6E3E3"
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/background_color" --type string "#00002B2B3636"
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/foreground_color" --type string "#838394949696"

If you are trying to use vim with solarized inside of tmux, this is the fix for your issue.

https://github.com/krisleech/vimfiles/wiki/Fix-solarized-theme-in-tmux

For the copy and paste lovers, this is how you install the solarized vim colorscheme on Ubuntu:

sudo apt-get install wget unzip curl
cd
wget http://ethanschoonover.com/solarized/files/solarized.zip
unzip solarized.zip
mkdir .vim
mkdir .vim/colors/
mv solarized/vim-colors-solarized/colors/solarized.vim ~/.vim/colors/
cp .vimrc .vimrc.old
echo "syntax enable" > .vimrc
echo "set background=dark" >> .vimrc
echo "colorscheme solarized" >> .vimrc
curl https://raw.github.com/seebi/dircolors-solarized/master/dircolors.256dark > ~/.dircolors
source .bashrc
rm -r solarized
rm solarized.zip

And presto

Trying it out myself, it seems to work better without the

let g:solarized_termcolors=16

Setting it to 16, I get the bright green color you seem to describe. Maybe try leaving it at the default of 256?

This doesn't, however, perfectly mimic the colors from the screenshots (although the light version looks fairly close). I only get the colors with the screenshot if I use gvim.

I didn't use the terminal profile colors provided, however, so you may get a different result.

This worked for me for exherbo

git clone https://github.com/sigurdga/gnome-terminal-colors-solarized
cd gnome-terminal-colors-solarized
sh install.sh -s dark -p <my_current_profile>

256 colors in vim may also help

From the README ( emphasis mine) :

IMPORTANT NOTE FOR TERMINAL USERS:

If you are going to use Solarized in Terminal mode (ie not in a GUI version like gvim or macvim), please please please consider setting your terminal emulator's colorscheme to used the Solarized palette. I've included palettes for some popular terminal emulator as well as Xdefaults in the official Solarized download available from [Solarized homepage]. If you use Solarized without these colors, Solarized will need to be told to degrade its colorscheme to a set compatible with the limited 256 terminal palette (whereas by using the terminal's 16 ansi color values, you can set the correct, specific values for the Solarized palette).

If you do use the custom terminal colors, solarized.vim should work out of the box for you. If you are using a terminal emulator that supports 256 colors and don't want to use the custom Solarized terminal colors, you will need to use the degraded 256 colorscheme. To do so, simply add the following line before the colorschem solarized line:

 let g:solarized_termcolors=256 

Again, I recommend just changing your terminal colors to Solarized values either manually or via one of the many terminal schemes available for import .

What worked for me on Ubuntu 16.04 with the included Terminal application was to simply select Solarized for both "Text and Background Color" (choose light or dark) and "Palette" in Terminal > Preferences > Profiles > (select yours) > Edit > Colors

Some other answers recommend choosing a 256 color palette but, as mentioned in the documentation, this gives you a degraded (and visibly worse in my opinion) colorscheme.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM