避免通过调用函数将文本添加到文件的开头

时间:2020-08-27 08:28:27

标签: function vim neovim

我创建了一个函数,可以在某些方法下添加注释部分。我在初始化文件中写了这个:

function! Generate_comments()
    call append(0, '""" ')
    call append(1, 'Description:')
    call append(2, ' ')
    call append(3, 'Args:')
    call append(4, '    param1 (int): desc param1')
    call append(5, '    param2 (str): desc param2')
    call append(6, 'Returns:')
    call append(7, '    returns...')
    call append(8, '""" ')
endfunction

将其分配给映射:

nnoremap <Leader>cc  :call Generate_comments() <CR>

问题是,它将文本添加到文件的开头,而不是紧接在光标所在的行下方。您能告诉我如何在光标下正确添加吗?

1 个答案:

答案 0 :(得分:3)

append()完美地工作!

function! Generate_comments()
    let snippet = [
        \ '""" ',
        \ 'Description:' ,
        \ ' ',
        \ 'Args:',
        \ '    param1 (int): desc param1',
        \ '    param2 (str): desc param2',
        \ 'Returns:',
        \ '    returns...',
        \ '""" ']
    call append(line('.'), snippet)
endfunction