对 sysadmins .vimrc 中的条目的建议

Gar*_*eth 21 linux command-line-interface dotfiles vim vimrc

至少我总是在 /etc/vim/vimrc 中取消注释“syntax on”

dry*_*jed 17

首先,如果您使用的机器多于几台,请考虑将您的~/.vim/,~/.vimrc和其他有用的配置文件(screen、您的 shell 等)放在版本控制系统中。我更喜欢使用darcs——它在 Debian 系统上很便宜(不需要安装 Haskell 编译器,直接安装包),分布式,并且有很好的交互模式。如果你知道/喜欢git,你也可以坚持下去。

我当前的配置文件在我的 darcs 存储库中可用,http://repo.harnir.net/. 我~/.vimrc关注的一些具体例子。抱歉,没有脚本等链接,因为我是新用户,但您可以在http://vim.org/.

系统管理员必备的 ViM 脚本

  • 当您编辑远程文件时,备份脚本是必须的。我使用cbackup.vim脚本,它将每个编辑过的文件的最后 10 个副本保存在一个中央目录中并自动删除旧的 - 只需放入您的~/.vim/plugins/目录中并忘记它:-)

  • TaskList可让您快速搜索当前文件中的FIXME,XXXTODO标签,显示它们并只需按一个键即可转到标签。如果您使用这些标签,请考虑安装这个

  • dbext对于所有 DBA 来说都是必不可少的,对于使用数据库的程序员也非常有用。让我们运行查询,检查数据库的结构等等。它本质上是对于像工具前端mysqlsqlite3sqlplus和其他人。如果您使用数据库,这是必须的!

语法文件

我还没有看到很多有用的语法,系统管理员使用的大多数文件都是配置文件/etc,它们通常被很好地突出显示。在我~/.vim/syntax/目前有CSS 颜色的语法,这很棒(对 Web 开发人员也有好处),但其余的写得不是很好,我可能会在空闲时间更新它们。其他值得拥有的语法文件包括:dhcpd.conf、/etc/network/ interfacesnginx配置文件和SpamAssassin的 local.cf。

有用的语法提示:如果无法识别配置文件(具有奇怪的名称,例如/etc/apache2/sites-enabled/some.domain.com,您可以在其名称后附加正确的扩展名(在本例中为.conf)或在其末尾添加 ViM 模型行:

# vim:filetype=apache

ViM 配置选项

大多数配置选项都非常流行,例如set nocompatible ruler等。非常好的选项是:

  • set gdefault: 反转g模式s///g-/g默认情况下将使用该选项,因此您无需每次都添加它 - 只需添加它即可将其关闭

  • set incsearch ignorecase smartcase hlsearch: 搜索文件必不可少 - 增量,实时显示匹配,搜索忽略大小写,除非您使用大写字母

  • set pastetoggle=<F6>: 或您喜欢的其他键,在pastenopaste模式之间切换,如果您从 ServerFault 之类的网页复制粘贴某些内容,则必须这样做:-)

  • set noerrorbells visualbell t_vb=: 每次做某事时都摆脱烦人的铃声或视觉铃声;)

函数、键盘映射

  • 将您的用户名和当前日期粘贴到文件中,如果您在团队中工作并在文件中添加有关谁在何时更改某些内容的注释,这将非常有用。只需写入xxsig并按空格,它就会变成类似harnir 20090531. 为了让 root 正常工作(即写下您的用户名而不是root),您需要使用sudo.

    iabbrev xxsig <Esc>:r ![ -n "$SUDO_USER" ] && echo "$SUDO_USER `date '+\%Y\%m\%d'`" \|\| echo "$USER `date '+\%Y\%m\%d'`"<CR>I<BS><Esc>A
    
  • 插入注释“行”,例如# -- Some title -------------------{{{1,长度为 78 个字符 -\com#在正常模式下按它就可以了。您将自动进入替换模式,以便您可以添加标题:

    nmap \com# O# <Esc>72A-<Esc>3A{<Esc>A1<Esc><Home>4<Right>R<Space>
    

您可以轻松地修改它为其他评论系统("//,等),或只检查我的配置文件。

结束触摸

如果您在 RCS 系统中有您的配置文件,您可能希望有时包含特定于特定机器的配置选项。为此,最好~/.vimrc.local在配置结束时自动包含文件(当然,如果存在)。

如果文件可读(展开(“~/.vimrc.local”))
        源 ~/.vimrc.local
万一


Ada*_*ins 6

不太确定这其中的哪一部分与系统管理员特别相关,但我的要点是:

syntax on
set background=dark
set shiftwidth=2
set tabstop=2
if has("autocmd")
  filetype plugin indent on
endif
set showcmd             " Show (partial) command in status line.
set showmatch           " Show matching brackets.
set ignorecase          " Do case insensitive matching
set smartcase           " Do smart case matching
set incsearch           " Incremental search
Run Code Online (Sandbox Code Playgroud)

我也总是确保机器可以访问nginx 语法高亮文件


jti*_*man 4

我们的 CTO 在 GitHub 上有一个功能丰富的Vim 配置

强调:

  • 语法突出显示、2 个空格制表符、扩展制表符。
  • NERDtree,一个类似于 TextMate 项目抽屉的文件树视图。
  • FuzzyFileFinder,用于执行 TextMate 的 cmd-T 功能的插件。
  • 许多颜色主题,其中有一个很好的默认主题(暮光)。

我发现它非常适合 Ruby 编码,因为我们的系统管理工具是用 Ruby 编写的。