it-swarm.com.de

Wie bekomme ich die Liste aller installierten Farbschemata in Vim?

Gibt es eine Möglichkeit, eine Liste aller in Vim installierten Farbschemata abzurufen? Das würde es sehr einfach machen, eine auszuwählen, ohne das Verzeichnis .vim zu durchsuchen.

389
tunnuz

Art

:colorscheme dann Space gefolgt von TAB.

oder wie Peter sagte,

:colorscheme dann Space gefolgt von CTRLd

Die Kurzversion des Befehls lautet :colo, sodass Sie sie in den beiden vorherigen Befehlen anstelle der "langen Form" verwenden können.

Wenn Sie weitere Themen suchen und in der Vorschau anzeigen möchten, gibt es verschiedene Websites wie Vim-Farben

569
Xavier T.

Die Liste der Farbschemata finden Sie unter /usr/share/vim/vimNN/colors (wobei NN die Version ist, z. B. vim74 für Version 7.4).

Dies wird erklärt hier .

Auf den Linux-Servern verwende ich via ssh, TAB druckt ^I und CTRLd druckt ^D.

48
Fabien

Nur zum bequemen Nachschlagen, da ich sehe, dass viele Leute nach diesem Thema suchen und zu faul sind ... Entschuldigung, beschäftigt, um sich selbst zu überprüfen (einschließlich mir). Hier eine Liste der Standardfarbschemata für 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 
28
runlevel0

Wenn Sie bereit sind, ein Plugin zu installieren, empfehle ich https://github.com/vim-scripts/CycleColor .

um alle installierten Farbschemata zu durchlaufen. Gute Möglichkeit, ein Farbschema zu wählen.

12
John C Earls

Hier ist eine kleine Funktion, die ich geschrieben habe, um alle Farbschemata im Verzeichnis $ VIMRUNTIME/colors auszuprobieren.

Fügen Sie die folgende Funktion zu Ihrem vimrc hinzu, öffnen Sie dann Ihre Quelldatei und rufen Sie die Funktion über den Befehl auf.

function! DisplayColorSchemes()
   let currDir = getcwd()
   exec "cd $VIMRUNTIME/colors"
   for myCol in split(glob("*"), '\n')
      if myCol =~ '\.vim'
         let mycol = substitute(myCol, '\.vim', '', '')
         exec "colorscheme " . mycol
         exec "redraw!"
         echo "colorscheme = ". myCol
         sleep 2
      endif
   endfor
   exec "cd " . currDir
endfunction
7
chappar

Wenn Sie Ihr Vim mit +menu kompiliert haben, können Sie Menüs mit dem :help von console-menu folgen. Von dort aus können Sie zu Edit.Color\ Scheme navigieren, um dieselbe Liste wie in gvim zu erhalten.

Eine andere Methode ist die Verwendung eines coolen Skripts ScrollColors , das eine Vorschau der Farbschemata anzeigt, während Sie die Schemata mit j/k scrollen.

6
souser12345

Als ich mir die Datei menu.vim meines Systems (siehe Untermenü 'Farbschema') und die Antwort von @ chappar ansah, kam ich auf die folgende Funktion:

" 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

Es macht Folgendes:

  1. Ruft die Liste der verfügbaren Farbschemaskripte unter allen Laufzeitpfaden (globpath, runtimepath) ab.
  2. Ordnet die Skriptpfade ihren Basisnamen zu (entfernt übergeordnete Verzeichnisse und Erweiterungen) (map, fnamemodify)
  3. Sortiert und entfernt Duplikate (uniq, sort)

Dann, um die Funktion zu benutzen, mache ich so etwas:

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

Das heißt, ich bevorzuge das "solarisierte" und dann das "dunkelblaue" Schema. Wenn keiner von ihnen verfügbar ist, nichts tun.

5
roy

Eine großartige Lösung, und ich danke Ihren Mitwirkenden. Seit Jahren kämpfe ich mit einem völlig beschissenen Farbschema - mit SSH unter Windows Vista auf einem RedHat-System vom Terminaltyp xterm. Der Editor hatte einen schwarzen Hintergrund und seltsame Farben für verschiedene Stichwörter. Schlimmer noch - das seltsame Farbschema bleibt nach dem Verlassen von Vim im xterm-Terminal stecken.

Wirklich verwirrend.

Außerdem schlug die Rücktaste während eines Einfügemodus fehl, an den man sich nicht erinnern konnte - obwohl Delete dasselbe tat.

Die Heilung --

  1. Wählen Sie im SSH-Monitor Bearbeiten/Einstellungen.

    ein. Wählen Sie Profileinstellungen/Farben

    b. aktiviere ANSI Farben

    c. Die Standard-Textfarben sind wahrscheinlich in Ordnung

  2. Fügen Sie diese Zeilen zu $ ​​HOME/.vimrc hinzu:

    farbschema Standard

    if & term == "xterm"

    setze t_kb = ^ H

    fixdel

    endif

  3. HINWEIS: Das ^ H MUSS als Strg-V Strg-H eingegeben werden. Scheint eigenartig, aber das scheint zu funktionieren.

2
William Barrett

Versuchen

set wildmenu
set wildmode=list:full
set wildcharm=<C-z>
let mapleader=','
nnoremap <leader>c :colorscheme <C-z><S-Tab>

in deinem ~/.vimrc.

Die ersten beiden Zeilen lassen mögliche Übereinstimmungen als Listen erscheinen. Sie können eines oder beide verwenden.

In der vierten Zeile wird anstelle des Standardwerts , der Anführer \ angegeben.

In der letzten Zeile können Sie einfach ,c eingeben, um eine Liste und eine Aufforderung zum Ändern des Farbschemas zu erhalten.

In der dritten Zeile können Tabs effektiv in Key Maps angezeigt werden.

(Natürlich, all diese Strategien habe ich aus dem Internet gelernt, und vor allem SO, seit kurzem.)

0
Brady Trainor