How to get the list of all installed color schemes in Vim?

前端 未结 11 850

Is there a way to get a list of all installed color schemes in Vim? That would make very easy to select one without looking at the .vim directory.

相关标签:
11条回答
  • 2021-01-29 17:36

    You can see the list of color schemes under /usr/share/vim/vimNN/colors (with NN being the version, e.g. vim74 for vim 7.4).

    This is explained here.

    On the linux servers I use via ssh, TAB prints ^I and CTRLd prints ^D.

    0 讨论(0)
  • 2021-01-29 17:37

    Looking at my system's menu.vim (look for 'Color Scheme submenu') and @chappar's answer, I came up with the following function:

    " Returns the list of available color schemes
    function! GetColorSchemes()
       return uniq(sort(map(
       \  globpath(&runtimepath, "colors/*.vim", 0, 1),  
       \  'fnamemodify(v:val, ":t:r")'
       \)))
    endfunction
    

    It does the following:

    1. Gets the list of available color scheme scripts under all runtime paths (globpath, runtimepath)
    2. Maps the script paths to their base names (strips parent dirs and extension) (map, fnamemodify)
    3. Sorts and removes duplicates (uniq, sort)

    Then to use the function I do something like this:

    let s:schemes = GetColorSchemes()
    if index(s:schemes, 'solarized') >= 0
       colorscheme solarized
    elseif index(s:schemes, 'darkblue') >= 0
       colorscheme darkblue
    endif
    

    Which means I prefer the 'solarized' and then the 'darkblue' schemes; if none of them is available, do nothing.

    0 讨论(0)
  • 2021-01-29 17:39

    If you are willing to install a plugin, I recommend https://github.com/vim-scripts/CycleColor.

    to cycle through all installed colorschemes. Nice way to easily choose a colorscheme.

    0 讨论(0)
  • 2021-01-29 17:40

    If you have your vim compiled with +menu, you can follow menus with the :help of console-menu. From there, you can navigate to Edit.Color\ Scheme to get the same list as with in gvim.

    Other method is to use a cool script ScrollColors that previews the colorschemes while you scroll the schemes with j/k.

    0 讨论(0)
  • 2021-01-29 17:42

    Just for convenient reference as I see that there are a lot of people searching for this topic and are too laz... sorry, busy, to check themselves (including me). Here a list of the default set of colour schemes for Vim 7.4:

    blue.vim
    darkblue.vim,
    delek.vim
    desert.vim
    elflord.vim
    evening.vim
    industry.vim                                                                                                                                                 
    koehler.vim                                                                                                                                                  
    morning.vim                                                                                                                                                  
    murphy.vim                                                                                                                                                   
    pablo.vim                                                                                                                                                    
    peachpuff.vim                                                                                                                                                
    ron.vim                                                                                                                                                      
    shine.vim                                                                                                                                                    
    slate.vim                                                                                                                                                    
    torte.vim                                                                                                                                                    
    zellner.vim 
    
    0 讨论(0)
  • A great solution, and my thanks to your contributors. For years I've been struggling with a totally crappy color scheme -- using SSH under Windows Vista to a Redhat system, terminal type xterm. The editor would come up with a black background and weird colors for various keywords. Worse -- that weird color scheme sticks in the xterm terminal after leaving Vim.

    Really confusing.

    Also, Backspace failed during an insert mode, which was nasty to remember -- though Delete did the same thing.

    The cure --

    1. In the SSH monitor, select Edit/Settings.

      a. Choose Profile Settings/Colors

      b. check 'enable ANSI colors'

      c. The standard Text colors are probably OK

    2. Add these lines to $HOME/.vimrc:

      colorscheme default

      if &term == "xterm"

      set t_kb=^H

      fixdel

      endif

    3. NOTE: the ^H MUST be typed as ctrl-V ctrl-H. Seems peculiar, but this seems to work.

    0 讨论(0)
提交回复
热议问题