Vim XMLns контекстная осведомленность - PullRequest
2 голосов
/ 23 октября 2009

Я использовал Vim g:xmldata_ для описания возможных элементов XML, чтобы иметь возможность использовать omni-Compette для XML. Проблема не в каждом A узле a0, a1, an. Иногда A узел имеет только a0. И документация a0 и A различны и зависят от родителя A.

E
|
|--A
|  \-a0     // documentation of E.A.a0
|  \-a1
|
\--B
   \-A
     \-a0     // documentation of E.B.A.a0

Документация A и a0 различна. Но пользователь увидит тот же текст помощи в полном окне предварительного просмотра.

Вот тестовый xmldata для игры. Поместите это

let g:xmldata_test = {
\ 'vimxmlroot': ['E'],
\ 'E': [['A', 'B']],
\ 'B': [['A']],
\ 'A': [['a0', 'a1']],
\ 'vimxmltaginfo': {
\ 'a0': ['', 'documentation that only confuses an user'] }}

в автозагрузке / xml / test.vim
И выполнить при редактировании некоторого XML-документа

:XMLns test 

Чтобы открыть полное окно, просто введите <и нажмите C-X C-O </p>

Есть ли способ сообщить Vim, для чего a0 Я хочу установить справочную информацию?

...