После просмотра десятков цветовых схем я не смог найти ничего лучше, чем цветовая схема vim по умолчанию.

Хотел бы немного покрутить, но не могу найти файл схемы, существует ли такой файл? или есть способ сохранить текущую схему в файл и отредактировать ее?

vim
1
user1252446 18 Мар 2014 в 03:46

3 ответа

Лучший ответ

Это может зависеть от системы, но чтобы увидеть имя текущей цветовой схемы, просто используйте

:colorscheme

Если это default, вы можете найти его через locate default.vim или find / -name default.vim.

Для меня это в

/usr/share/vim/vim73/colors/default.vim
1
Explosion Pills 18 Мар 2014 в 03:50
$VIMRUNTIME/colors/default.vim

Не поможет вам, так как не определяет ни одного цвета. Фактические цвета по умолчанию определяются с помощью «специального» синтаксиса в:

$VIMRUNTIME/syntax/syncolor.vim

Вот его суть:

if &background == "dark"
  SynColor Comment        term=bold cterm=NONE ctermfg=Cyan ctermbg=NONE gui=NONE guifg=#80a0ff guibg=NONE
  SynColor Constant       term=underline cterm=NONE ctermfg=Magenta ctermbg=NONE gui=NONE guifg=#ffa0a0 guibg=NONE
  SynColor Special        term=bold cterm=NONE ctermfg=LightRed ctermbg=NONE gui=NONE guifg=Orange guibg=NONE
  SynColor Identifier     term=underline cterm=bold ctermfg=Cyan ctermbg=NONE gui=NONE guifg=#40ffff guibg=NONE
  SynColor Statement      term=bold cterm=NONE ctermfg=Yellow ctermbg=NONE gui=bold guifg=#ffff60 guibg=NONE
  SynColor PreProc        term=underline cterm=NONE ctermfg=LightBlue ctermbg=NONE gui=NONE guifg=#ff80ff guibg=NONE
  SynColor Type           term=underline cterm=NONE ctermfg=LightGreen ctermbg=NONE gui=bold guifg=#60ff60 guibg=NONE
  SynColor Underlined     term=underline cterm=underline ctermfg=LightBlue gui=underline guifg=#80a0ff
  SynColor Ignore         term=NONE cterm=NONE ctermfg=black ctermbg=NONE gui=NONE guifg=bg guibg=NONE
else
  SynColor Comment        term=bold cterm=NONE ctermfg=DarkBlue ctermbg=NONE gui=NONE guifg=Blue guibg=NONE
  SynColor Constant       term=underline cterm=NONE ctermfg=DarkRed ctermbg=NONE gui=NONE guifg=Magenta guibg=NONE
  SynColor Special        term=bold cterm=NONE ctermfg=DarkMagenta ctermbg=NONE gui=NONE guifg=SlateBlue guibg=NONE
  SynColor Identifier     term=underline cterm=NONE ctermfg=DarkCyan ctermbg=NONE gui=NONE guifg=DarkCyan guibg=NONE
  SynColor Statement      term=bold cterm=NONE ctermfg=Brown ctermbg=NONE gui=bold guifg=Brown guibg=NONE
  SynColor PreProc        term=underline cterm=NONE ctermfg=DarkMagenta ctermbg=NONE gui=NONE guifg=Purple guibg=NONE
  SynColor Type           term=underline cterm=NONE ctermfg=DarkGreen ctermbg=NONE gui=bold guifg=SeaGreen guibg=NONE
  SynColor Underlined     term=underline cterm=underline ctermfg=DarkMagenta gui=underline guifg=SlateBlue
  SynColor Ignore         term=NONE cterm=NONE ctermfg=white ctermbg=NONE gui=NONE guifg=bg guibg=NONE
endif
SynColor Error            term=reverse cterm=NONE ctermfg=White ctermbg=Red gui=NONE guifg=White guibg=Red
SynColor Todo             term=standout cterm=NONE ctermfg=Black ctermbg=Yellow gui=NONE guifg=Blue guibg=Yellow
5
romainl 18 Мар 2014 в 04:04

Это то, что находится в моем файле default.vim

" Vim color file
" Maintainer:   Bram Moolenaar <Bram@vim.org>
" Last Change:  2001 Jul 23

" This is the default color scheme.  It doesn't define the Normal
" highlighting, it uses whatever the colors used to be.

" Set 'background' back to the default.  The value can't always be estimated
" and is then guessed.
hi clear Normal
set bg&

" Remove all existing highlighting and set the defaults.
hi clear

" Load the syntax highlighting defaults, if it's enabled.
if exists("syntax_on")
  syntax reset
endif

let colors_name = "default"

" vim: sw=2

Как видите, цвета не определены. Однако вы можете взглянуть на другие цветовые схемы в той же папке, что и default.vim, чтобы понять, как определять цвета, затем вы можете либо добавить их в default.vim, либо создать свою собственную цветовую схему.

Также см

:help coloring 
0
Brett Y 18 Мар 2014 в 04:10