LinuxForum.Fans
Тема

Подсветка синтаксиса в vim

Автор: ormorph 16 сообщений 7238 просмотров
#208087

В редакторе vim по умолчанию не включается подсветка синтаксиса, причина в том, что устанавливается минимальная сборка.
Что то не нашел дополнительного ебилда в /usr/portage/app-vim который бы заставил его по умолчанию работать как надо с подсветкой, хотя в базовом исходнике vim-а все файлы необходимые для этого присутствуют, не говоря уж о том, что большинство ебилдов, в /usr/portage/app-vim просто качают архивы которые дублируют файлы в исходнике vim-а .
Сам то я давно решил эту проблему, простым копированием нужных файлов с исходника в каталог $HOME/.vim
В результате при обновлении все пока остается на месте и работает как надо.

Вот и вопрос возник, может я что то пропустил в ебилдах?

#208092

>В редакторе vim по умолчанию не включается подсветка синтаксиса, причина в том, что устанавливается минимальная сборка.

нет, причина в том, что по-умолчанию она выключена.

>Вот и вопрос возник, может я что то пропустил в ебилдах?

нет, только в vimtutor.

#208108
mydoom написал:
нет, причина в том, что по-умолчанию она выключена.

Хм где именно выключена? подсветка появилась после простого копирования каталога syntax из исходника в каталог $HOME/.vim
боюсь что я в vim не специалист, но судя по:

Показать
cat .vim/syntax/README.txt
This directory contains Vim scripts for syntax highlighting.

These scripts are not for a language, but are used by Vim itself:

syntax.vim Used for the ":syntax on" command. Uses synload.vim.

manual.vim Used for the ":syntax manual" command. Uses synload.vim.

synload.vim Contains autocommands to load a language file when a certain
file name (extension) is used. And sets up the Syntax menu
for the GUI.

nosyntax.vim Used for the ":syntax off" command. Undo the loading of
synload.vim.


A few special files:

2html.vim Converts any highlighted file to HTML (GUI only).
colortest.vim Check for color names and actual color on screen.
hitest.vim View the current highlight settings.
whitespace.vim View Tabs and Spaces.


If you want to write a syntax file, read the docs at ":help usr_44.txt".

If you make a new syntax file which would be useful for others, please send it
to Bram@vim.org. Include instructions for detecting the file type for this
language, by file name extension or by checking a few lines in the file.
And please write the file in a portable way, see ":help 44.12".

If you have remarks about an existing file, send them to the maintainer of
that file. Only when you get no response send a message to Bram@vim.org.

If you are the maintainer of a syntax file and make improvements, send the new
version to Bram@vim.org.

For further info see ":help syntax" in Vim.

некоторых файлов все же не хватает.
В частности не нашел где colortest.vim

#208115
newzenon написал:
ormorph, есть же отдельная тема посвященная vim/ http://linuxforum.ru/viewtopic.php?id=56

Там нет ни чего нового, что там пишется у меня включено, по этому вопрос больше не по самому vim сколько его реализацией в gentoo.

#208121
ormorph написал:
сколько его реализацией в gentoo.

Так в Gentoo как соберешь, так и будет.
Разукрашки беру обычно где-то тут

#208128
newzenon написал:
Так в Gentoo как соберешь, так и будет.

Вот тут меня и берут смутные сомнения, все ли установлено, для vim
Судя по ебилду разработчики весь процесс сборки vim переложили на класс vim.

newzenon написал:
Разукрашки беру обычно где-то тут

Ну разукрашка у меня самого стоит сторонняя adaryn.

Только вопрос про подсветку синтаксиса в сборке под gentoo.
Само собой если самому написать ебилд все будет тип топ, но тут вопрос, нет ли какого другого уже готового способа.

#208130

ormorph, а флаги посмотреть? Потом в package.use добавить.
Кстати что делает глобальный флаг vim-syntax, случаем не знаешь? Много где встречается, все хотел посмотреть что он делает.

#208136

Ну от данного флага у меня толку нет, он по идее добавляет строчку syntax on в скрипт /etc/vim/vimrc
Но у меня от него толку мало, так как строчка и так добавляется когда устанавливаешь в ручную пакеты с синтаксисом, например gentoo-syntax.
Уже все флаги перепробовал, только толку от них нет.
Что какой флаг делает при сборке самого vim, прописано в файле класса:
/usr/portage/eclass/vim.eclass

#208147

Пересмотрел ебилды, что делает флаг gentoo-syntax , он просто добавляет зависимости для сборки некоторых библиотек, gtk+, pam в зависимостях некоторые пакеты синтаксиса из /usr/portage/app-vim/

причем на мой взгляд сделано как то через Ж, сама библиотека не зависит от данных пакетов, они нужны только для vim, по этому странновато выглядит процесс пере-сборки библиотеки при добавлении данного флага oO

ЗЫ: строчка syntax on изначально присутствует в скрипте /etc/vim/vimrc

#208153

Ну и самих флагов сборки тоже кот наплакал smile

text

# equery u vim ~smith/ :( [ Legend : U - final flag setting for installation] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for app-editors/vim-7.3.322: U I + + X : Link console vim against X11 libraries to enable title and clipboard features in xterm + + acl : Adds support for Access Control Lists + + bash-completion : Enable bash-completion support - - cscope : Enables cscope interface -- in vim for example - - debug : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see http://www.gentoo.org/proj/en/qa/backtraces.xml + + gpm : Adds support for sys-libs/gpm (Console-based mouse driver) - - minimal : Install a very minimal build (disables, for example, plugins, fonts, most drivers, non-critical features) + + nls : Adds Native Language Support (using gettext - GNU locale utilities) - - perl : Adds optional support/bindings for the Perl language + + python : Adds optional support/bindings for the Python language - - ruby : Adds support/bindings for the Ruby language - - vim-pager : Install vimpager and vimmanpager links

То что касается vim:

text

# eix vim                                                                      ~smith/ :)
[i] app-editors/gvim
     Available versions:  7.2.442 7.3.135 7.3.189 (~)7.3.219 (~)7.3.244 7.3.266 (~)7.3.322{tbz2} {acl aqua bash-completion cscope debug gnome gpm gtk motif neXt netbeans nls perl python ruby}
     Installed versions:  7.3.322{tbz2}(17:36:37 14.11.2011)(acl bash-completion gpm gtk nls python -aqua -cscope -debug -gnome -motif -neXt -netbeans -perl -ruby)
     Homepage:            http://www.vim.org/
     Description:         GUI version of the Vim text editor

[i] app-editors/vim Available versions: 7.2.442 7.3.135 7.3.189 (~)7.3.219 (~)7.3.244 7.3.266 (~)7.3.322{tbz2} {X acl bash-completion cscope debug gpm minimal nls perl python ruby vim-pager} Installed versions: 7.3.322{tbz2}(17:34:20 14.11.2011)(X acl bash-completion gpm nls python -cscope -debug -minimal -perl -ruby -vim-pager) Homepage: http://www.vim.org/ Description: Vim, an improved vi-style text editor

[i] app-editors/vim-core Available versions: 7.2.442 7.3.135 7.3.189 (~)7.3.219 (~)7.3.244 7.3.266 (~)7.3.322{tbz2} {acl bash-completion livecd nls} Installed versions: 7.3.322{tbz2}(17:31:55 14.11.2011)(acl bash-completion nls -livecd) Homepage: http://www.vim.org/ Description: vim and gvim shared files

* app-vim/vim-latex Available versions: 1.8.23.20110214 {html} Homepage: http://vim-latex.sourceforge.net/ Description: vim plugin: a comprehensive set of tools to view, edit and compile LaTeX documents

* app-vim/vim-r Available versions: (~)110805 (~)111014 (~)111114 Homepage: http://www.vim.org/scripts/script.php?script_id=2628 Description: vim plugin: integrate vim with R

* app-vim/vim-spell-cs Available versions: 20061021 Homepage: http://www.vim.org/ Description: vim spell files: Czech (cs)

* app-vim/vim-spell-da Available versions: (~)20060116 Homepage: http://www.vim.org/ Description: vim spell files: Danish (da)

* app-vim/vim-spell-de Available versions: 20051008 (~)20080213 Homepage: http://www.vim.org/ Description: vim spell files: German (de)

* app-vim/vim-spell-el Available versions: 20080402 Homepage: http://www.vim.org/ Description: vim spell files: Greek (el)

* app-vim/vim-spell-en Available versions: 20060123 Homepage: http://www.vim.org/ Description: vim spell files: English (en)

* app-vim/vim-spell-es Available versions: 20060208 Homepage: http://www.vim.org/ Description: vim spell files: Spanish (es)

* app-vim/vim-spell-fr Available versions: 20060121 Homepage: http://www.vim.org/ Description: vim spell files: French (fr)

* app-vim/vim-spell-he Available versions: 20100312 Homepage: http://www.vim.org/ Description: vim spell files: Hebrew (he)

* app-vim/vim-spell-hu Available versions: 20100312 Homepage: http://www.vim.org/ Description: vim spell files: Hungarian (hu)

* app-vim/vim-spell-it Available versions: 20100312 Homepage: http://www.vim.org/ Description: vim spell files: Italian (it)

* app-vim/vim-spell-nl Available versions: 20051007 Homepage: http://www.vim.org/ Description: vim spell files: Dutch (nl)

* app-vim/vim-spell-pl Available versions: 20060218 Homepage: http://www.vim.org/ Description: vim spell files: Polish (pl)

* app-vim/vim-spell-pt Available versions: 20100312 Homepage: http://www.vim.org/ Description: vim spell files: Portuguese (pt)

* app-vim/vim-spell-ru Available versions: (~)20060506 20070506 Homepage: http://www.vim.org/ Description: vim spell files: Russian (ru)

* app-vim/vimbuddy Available versions: 0.9.2 Homepage: http://www.vim.org/scripts/script.php?script_id=8 Description: vim plugin: vimbuddy for the status line

* app-vim/vimcalc Available versions: (~)1.3 Homepage: http://www.vim.org/scripts/script.php?script_id=3329 Description: vim plugin: provides an interactive calculator inside vim

[i] app-vim/vimcommander Available versions: 80 Installed versions: 80(00:45:53 13.10.2011) Homepage: http://www.vim.org/scripts/script.php?script_id=808 Description: vim plugin: Total Commander style file explorer

* app-vim/vimoutliner Available versions: 0.3.4-r2 Homepage: http://www.vimoutliner.org/ Description: vim plugin: easy and fast outlining

* app-vim/vimpress Available versions: (~)2.1.0 (~)2.1.5 Homepage: http://www.vim.org/scripts/script.php?script_id=3510 Description: vim plugin: manage wordpress blogs from vim

* app-vim/vimpython Available versions: 1.13 Homepage: http://www.vim.org/scripts/script.php?script_id=30 Description: vim plugin: A set of menus/shortcuts to work with Python files

* app-vim/zencoding-vim Available versions: 0.53 (~)0.54 (~)0.55 (~)0.56 Homepage: http://www.vim.org/scripts/script.php?script_id=2981 http://mattn.github.com/zencoding-vim/ Description: vim plugin: HTML and CSS hi-speed coding

* dev-perl/Shell-EnvImporter Available versions: 1.70.0 Homepage: http://search.cpan.org/dist/Shell-EnvImporter/ Description: Import environment variable changes from external commands or shell scripts

* media-sound/vimpc Available versions: (~)0.02.2 (~)0.03 (~)0.04 **9999 Homepage: http://vimpc.sourceforge.net/ Description: An ncurses based mpd client with vi like key bindings.

Found 28 matches.

ы. Подсветка у меня включена в /etc/vim/vimrc - syntax enable

#208164

newzenon
У вас сразу подсветка работала?
Если да то посмотрите присутствуют ли у вас файлы sh.vim и syncolor.vim
это
qlist vim|grep syncolor.sh

ну и если присутствуют, то покажите какому пакету они принадлежат
что то типа:
equery b /usr/share/vim/vim73/syntax/syncolor.vim

#208166
ormorph написал:
newzenon
У вас сразу подсветка работала?

Уже не помню настройки и плагины мигрировали с Debian.

ormorph написал:

Если да то посмотрите присутствуют ли у вас файлы sh.vim и syncolor.vim
это
qlist vim|grep syncolor.sh

syncolor.sh - такого нет.

text

# locate sh.vim
/usr/share/vim/vim73/ftplugin/csh.vim
/usr/share/vim/vim73/ftplugin/sh.vim
/usr/share/vim/vim73/ftplugin/tcsh.vim
/usr/share/vim/vim73/ftplugin/zsh.vim
/usr/share/vim/vim73/indent/sh.vim
/usr/share/vim/vim73/indent/tcsh.vim
/usr/share/vim/vim73/indent/zsh.vim
/usr/share/vim/vim73/keymap/polish-slash.vim
/usr/share/vim/vim73/syntax/csh.vim
/usr/share/vim/vim73/syntax/gnash.vim
/usr/share/vim/vim73/syntax/mush.vim
/usr/share/vim/vim73/syntax/sh.vim
/usr/share/vim/vim73/syntax/tcsh.vim
/usr/share/vim/vim73/syntax/wsh.vim
/usr/share/vim/vim73/syntax/zsh.vim
ormorph написал:

ну и если присутствуют, то покажите какому пакету они принадлежат
что то типа:
equery b /usr/share/vim/vim73/syntax/syncolor.vim
text

# equery b /usr/share/vim/vim73/syntax/syncolor.vim                       /home/smith/ :)
 * Searching for /usr/share/vim/vim73/syntax/syncolor.vim ... 
app-editors/vim-core-7.3.322 (/usr/share/vim/vim73/syntax/syncolor.vim)
#208171

Ага нашел где собака зарыта smile
размаскировал версию vim-а 7.3.322 теперь все заработало и без данных файлов в $HOME/.vim/syntax
ЗЫ: newzenon обновите кеш locate, ато ищет не все файлы wink

#208172
ormorph написал:

ЗЫ: newzenon обновите кеш locate, ато ищет не все файлы wink

Обновлен и так, updatedb у меня в кроне. wink

#208174

О_о это моя очепятка :D
Присмотрелся надо было вместо syncolor.sh ->syncolor.vim
Пошел ка я уж просплюсь oO

Войдите или зарегистрируйтесь, чтобы ответить.