Vim定制化 -- .vimrc -- 键位映射

3

Vim定制 --

我在我的.vimrc文件中添加了以下内容:

inoremap /* /**/< Left >

  1. 我的意图是,当我键入开放式注释 /* 时,它应该自动打印出结束注释。
  2. 当在注释中时,在.vimrc中添加什么,以便在每次输入回车时,在下一行打印一个“*”符号。

    / *

      • /

如果我必须在创建的每个文件的顶部自动添加一些行(在特定文件夹中),例如许可证头。如何做到这一点--我可以考虑制作一个模板文件,执行cp temp.c abc.c,然后vi abc.c。还有其他方法吗?


如果可能的话,我希望将光标设置为“块状”,使用简单的竖线“|”作为光标,这样会更容易定位。 - Vivek Sharma
5个回答

5
使用这个
inoremap <buffer> /*          /**/<Left><Left>
inoremap <buffer> /*<Space>   /*<Space><Space>*/<Left><Left><Left>
inoremap <buffer> /*<CR>      /*<CR>*/<Esc>O
inoremap <buffer> <Leader>/*  /*

这段代码的作用是:将快捷键<Leader>/* 映射为注释符/*。 - Vivek Sharma
它将把序列/*映射为/*。leader指的是""字符。 - Artem Barger
默认情况下,无论如何,<Leader> 可以通过 :let mapleader 或其他方法进行更改。 - ephemient

2

谢谢,我不知道是否有类似的东西可用,我以为人们可能正在使用像我提到的那种解决方法。不过还是谢谢。 - Vivek Sharma

2

你尝试过NerdCommenter吗?它是一个插件,可以方便地为多种文件类型(包括C和C++注释)添加代码注释。


1

thegeekstuff有一份很好的指南,介绍如何使用autocommand来完成大部分操作。例如,将以下内容添加到.vimrc(或等效文件)中,即可在多行C风格注释中的新行上添加“*”。

:autocmd FileType c,cpp
\     comments=sr:/*,mb:*,ex:*/,://

autocmd FileType c,cpp,h comments=sr:/,mb:,ex:*/,://
不起作用
- Vivek Sharma
哼...我正在使用vim,并且我的.vimrc文件中有以下行:autocmd FileType c,cpp,h,java set formatoptions=croql cindent comments=sr:/*,mb:*,el:*/,://我还有一个: set nocompatible作为第一条可能导致你问题的命令。 - beggs

0

回应评论中的问题

如果可能的话,我想把我的光标制成一个简单的竖线“|”,这样就更容易定位了

:help 'guicursor'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接