Общий вопрос
Как вы можете вручную загрузить определенный пакет из Vim-LaTeX в Vim и как его можно автоматизировать для каждого файла LaTeX?
Я не заинтересован в копировании соответствующих частей из скриптов конкретного пакета в .vimrc
в качестве обходного пути.
Конкретная проблема
Это лишь дополнительная часть, объясняющая, как решение такой проблемы может быть полезным.
Краткое напоминание
В кратком введении в LaTeX 2ε вы можете прочитать, что:
Символ тильды '~' создает пробел, который нельзя увеличить, и дополнительно запрещает разрыв строки.
На польском языке мы не должны оставлять короткие соединения в конце строки. ~
полезно здесь, но писать его после соединений громоздко (и портит процесс набора текста, и вы можете просто забыть об этом иногда).
Vim-LaTeX (пакет vim-latexsuite
в Debian; я использую версию 20100129-2 в squeeze, на всякий случай) обеспечивает дополнительную настройку для каждого пакета. Для польских текстов мы используем пакет polski в LaTeX, а его аналог Vim-LaTeX изменяет пробел, поэтому он автоматически заменяет пробел тильдой после коротких слов.
вопрос
Для больших документов LaTeX обычное деление текста на несколько файлов. И тут возникает проблема с обнаружением пакетов в Vim-LaTeX. Если я открою основной файл .tex
(т. Е. Тот, который включает другие файлы .tex
), где присутствует \usepackage{polski}
, то замена пространства работает нормально. Это не тот файл, в котором вы много пишете, поэтому здесь он не очень полезен. Но если я открою любой другой файл .tex
(который включен в основной файл .tex
), который, очевидно, не имеет преамбулы (поэтому в ней нет \usepackage{polski}
), обнаружение пакета завершится неудачно, поэтому замена пространства не будет здесь работают.
Частичное решение
Я нашел какое-то частичное ошибочное решение.
au FileType tex call Tex_pack_one('polski')
Это плохо, потому что не работает, если вы открываете другой файл .tex
в новом окне (например, через :sp
или :vs
), даже если у этого файла есть \usepackage{polski}
(так что это регрессия).
Простое тестирование. Перейдите в режим вставки и напишите i i i
. Вы должны увидеть, что i~i~i
. Откройте полный документ LaTeX (с преамбулой и \usepackage{polski}
) в новом окне. Повторите тест там. Откройте третий документ LaTeX (без преамбулы) и повторите тест снова.
Цитата из моей почты в списке рассылки vim-latex об использовании latex-master-file
Отправлено: вс, 22 мая 2011 г. в 11:23 (GMT+02: 00)
Я удалил упомянутую ранее au FileType tex call
Tex_pack_one('polski')
из .vim.rc
чтобы избежать любых конфликтов, и добавил пустой файл main.tex.latexmain
. С польским пакетом ситуация с PoV такая же, как и с моим частичным решением. Только первый открытый файл работает правильно, другие окна с файлами .tex
- нет.
Я начинаю думать, что проблема заключается в том, как внутренняя загрузка пакетов работает в vim-latex (как ориентировано в основном для редко используемых меню [поправьте меня, если я ошибаюсь], это должно быть расширено только один раз), предотвращая выполнение сценариев пакетов более чем один раз. Также в польском пакете могут быть ошибки. Я знаю Vim и могу удобно использовать его возможности редактирования, но я еще не изучил язык сценариев Vim (написание простого .vimrc
не требует специальных знаний), поэтому я не могу судить здесь и нуждаюсь в помощи опытных пользователей / программистов Vim.