автосверните Oracle встроенные представления в Vim с помощью .vimrc

Я видел волшебные команды Vim прежде, которые Вы могли добавить к своему .vimrc, чтобы иметь сгибы, созданные после открытия конкретного типа файла. Я не забываю иметь такой код, который создал бы сгибы, после открытия файла, в каждом методе Ruby и классе. Затем с одной командой я мог свернуть все те сгибы метода. Кто-либо знает, как сделать это со встроенными представлениями в МН / SQL? Скажите, что у меня есть следующий SQL:

SELECT blah,
       teh_max
FROM (
       SELECT blah,
              MAX(bar) AS teh_max
       FROM (
              SELECT blah,
                     bar
              FROM foo
            )
       GROUP BY blah
     )
ORDER BY blah

Я хотел бы, чтобы сгибы были созданы, когда я открываю это в Vim так, чтобы я мог перейти к a FROM ( строка, хит zc в командном режиме, и имеют встроенное представление, запускающееся в той строке быть свернутым. Было бы хорошо свернуть все сгибы с одной командой, также.

5
задан Sarah Vessels 25 June 2010 в 16:33
поделиться

1 ответ

Сворачивание на основе синтаксиса активируется установкой метода свертывания на синтаксис :

" for all windows
set foldmethod=syntax
" for the current window
setlocal foldmethod=syntax

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

The "fold" argument makes the fold level increase by one for this item.
Example: 
   :syn region myFold start="{" end="}" transparent fold
   :syn sync fromstart
   :set foldmethod=syntax
This will make each {} block form one fold.

Итак, вам придется обратиться к файлам синтаксиса для любых типов файлов, которые вам нужны, и добавить аргумент fold в соответствующие регионы или, возможно, добавить в свои собственные регионы. В вашем случае это похоже на то, что синтаксис C / C ++ складывается фигурными скобками, за исключением скобок.

Файлы синтаксиса по умолчанию обычно хранятся в / usr / share / vim / vimXX / syntax в Linux (и, предположительно, в \ vimXX \ syntax в Windows? ), где XX - номер версии без точки (например, 72). Они могут быть переопределены общесистемными файлами в / usr / share / vim / vimfiles / syntax или для каждого пользователя файлами в ~ / .vim / syntax .

3
ответ дан 15 December 2019 в 06:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: