Vim: начало или конец системного verilog-модуля? - PullRequest
1 голос
/ 23 октября 2019

Есть ли способ в vim перейти к началу или концу системного verilog-модуля, когда вы редактируете порты в середине его?

Например, при редактировании файла C вы можете перейти к началу функции, используя [m.

РЕДАКТИРОВАТЬ: Может быть, я должен был определить мой вопрос лучше, но я изначально имел в виду, что, пока вы находитесь внутри экземпляра модуля, и вы хотели бы перейти в начало или конец созданного экземпляра модуля.

component instance_name (
  .clk (clk),
  .rst (rst),
  .data_i (data_in), 
  .data_o (data_out)
);

1 Ответ

1 голос
/ 23 октября 2019

[m и ]m работают с брекетами. Но вы можете переопределить их в соответствии с вашим синтаксисом. Примерно так:

augroup verilog_maps | au!
    autocmd FileType verilog nnoremap <buffer><silent>[m ?^\s*module\><CR>
    autocmd FileType verilog nnoremap <buffer><silent>]m /^\s*module\><CR>
    autocmd FileType verilog nnoremap <buffer><silent>[M ?^\s*endmodule\><CR>
    autocmd FileType verilog nnoremap <buffer><silent>]M /^\s*endmodule\><CR>
augroup END
...