首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vimrc写入文件

vimrc写入文件
EN

Stack Overflow用户
提问于 2012-07-06 00:52:56
回答 1查看 344关注 0票数 3

我一直在尝试使用vim来简化latex的编写。为此,我想编写一个函数来简化矩阵的编写。这是我想让它做的事情。

在插入模式下

如果我输入mmatrix (不是打字错误。我想要两个m)

我想让它询问我所需的行数和列数

然后打开一个具有所需数量的占位符(表示为<++>)的空白矩阵

下面是我写的代码

代码语言:javascript
复制
imap mmatrix <C-o>:call Matrix
func! Matrix(rows, columns)
    for row in a:rows
       for col in a:columns
           exec "normal! i<++>&  "
       endfor
       exec "normal! i\\\\ <CR>"
    endfor
endfunction

因此,对于2x2矩阵,它应该看起来像

代码语言:javascript
复制
<++>& <++>\\
<++>& <++>\\

然而,这并不起作用。我可以知道如何修改此文件以使其执行我想要的操作吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-06 05:47:59

我让它起作用了:

代码语言:javascript
复制
func! Matrix(rows, columns)
   for row in range(a:rows)
      for col in range(a:columns)
          exe "norm i<++>&  "
      endfor
      exe "norm Xi\\\\\\\<cr>"
   endfor
endfunction

另一种选择是使用命令而不是imap,例如:

代码语言:javascript
复制
command! -nargs=1 M :call Matrix(<args>)

然后,您可以在正常模式下使用:M 2,4调用该函数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11348974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档