РЕДАКТИРОВАТЬ 2:
Если вы отредактируете python.vim
, вы найдете следующую строку:
syn keyword pythonStatement def class nextgroup=pythonFunction skipwhite
Это критическая строка для вас.Таким образом, в основном, это стили def
и class
с pythonStatement
, и все, что следует за ним, имеет стиль pythonFunction
.Возможно, вы захотите переписать его в что-то вроде
syn keyword pythonStatement def nextgroup=pythonFunction skipwhite
syn keyword pythonStatement class nextgroup=pythonClass skipwhite
, где pythonClass
определяется вами как в моем редактировании 1 (изменить по вашему желанию) или связан с одним из множества вариантов цвета, предлагаемых вашимсхема.Сделайте :hi
, чтобы увидеть список и связать ваш новый цветовой стиль с существующим как
HiLink pythonClass Special
(или что-то еще).Возможно, вам придется немного поиграть, чтобы поразить ваше личное сладкое пятно.
Я бы ответил на это в первый раз, если бы вы сформулировали свой вопрос лучше и сделали бы прямую просьбу вместо напыщенной речи.Я не совсем понял, что именно вы хотели.В любом случае, я оставлю свой предыдущий ответ ниже.
Pre Edit 2:
Пытались ли вы реально изменить цветовую тему на что-то похожее на то, что использует TextMate?Вот несколько примеров кода Python в моем vim с красивой подсветкой синтаксиса.
Конечно, отдельные вкусы различаются, и то, что я считаю привлекательным, может не понравиться другим, но перед тем, как отмахнуться от негоvim и разжигая войну пламени здесь, вы должны взглянуть на то, какие другие цветовые схемы доступны.Google был бы хорошим местом для начала.
РЕДАКТИРОВАТЬ:
Вот быстрый пример, который показывает вам, как изменить подсветку.Это пример с текущей темой
blah
в классе и __blah__
оба стилизованы схемой выделения pythonFunction
.Поэтому я просто временно изменяю его на случайный цвет и подчеркиваю его как
:hi pythonFunction cterm=underline ctermfg=217 ctermbg=16
Результат:
Так что это всего лишь общее представление окак это сделать.Вы должны изменить эти определения в файле цветовой схемы, чтобы они каждый раз загружались.Если вы хотите, чтобы __blah__
отличался от blah
в классе, вам придется взглянуть на python.vim
или любой другой скрипт, который вы используете, и настроить его соответствующим образом.