Если вы знаете, что всегда находитесь за тегом, вы можете заменить все до «#»
url.replace(/^.+#/, '');
. В качестве альтернативы это регулярное выражение будет соответствовать последним номерам вашего URL:
url.match(/(?<=\D)\d+$/);
//(positive look behind for any non-digit) one more digits until the end of the string
Прежде всего: существуют шаблоны плагинов, вам следует поискать в сети «vim template plugin». Возможно, вы найдете что-то полезное.
Если вы хотите сделать это самостоятельно:
Создайте файл шаблона следующим образом (я принимаю ~/tmpl/tmpl.cpp
в качестве имени):
/*
* Author : <<name>>
* Date : <<date>>
*/
и в вашем vimrc:
function AddTemplate(tmpl_file)
exe "0read " . a:tmpl_file
let substDict = {}
let substDict["name"] = $USER
let substDict["date"] = strftime("%Y %b %d %X")
exe '%s/<<\([^>]*\)>>/\=substDict[submatch(1)]/g'
set nomodified
normal G
endfunction
autocmd BufNewFile *.c,*.cc,*.cpp,*.h call AddTemplate("~/tmpl/tmpl.cpp")
set nomodified
сообщает Vim, что файл не был изменен. Таким образом, вы можете выйти из файла с помощью :q
, если вы не добавите дополнительный текст. Полезно, если вы ввели неверное имя файла.
Если вы хотите воздействовать только на файлы в специальном каталоге ~/project
, вы можете добавить следующее в начале функции AddTemplate
:
let fully_qualified_file = expand('%:p')
if 0 != match(fully_qualified_file, $HOME . '/project/.*')
return
endif