0
点赞
收藏
分享

微信扫一扫

Noilinux .vimrc 常用设置

兵部尚输 2022-03-20 阅读 89
vim
set nu "设置行标号
set tabstop=4 "这一条以及以下三条都把缩进设为4
set shiftwidth=4
set softtabstop=4
set autochdir  "自动切换到当前目录
set smartindent "以下两行都是智能缩进相关
set autoindent
set mouse=a "激活鼠标
set cursorline "行高亮
inoremap ( ()<ESC>i   
inoremap [ []<ESC>i
inoremap " ""<ESC>i
inoremap ' ''<ESC>i
inoremap {<CR>  {<CR>}<ESC>O
inoremap kj <esc>
"C,C++ 按F5编译运行
map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
    exec "w"
    if &filetype == 'c'
        exec "!g++ % -o %<"
        exec "! ./%<"
    elseif &filetype == 'cpp'
        exec "!g++ % -o %<"
        exec "! ./%<"
    elseif &filetype == 'java'
        exec "!javac %"
        exec "!java %<"
    elseif &filetype == 'sh'
        :!./%
    endif
endfunc
"C,C++的调试
map <F8> :call Rungdb()<CR>
func! Rungdb()
    exec "w"
    exec "!g++ % -g -o %<"
    exec "!gdb ./%<"
endfunc
"""""新文件标题""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"新建.c,.h,.sh,.java文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"
""定义函数SetTitle,自动插入文件头
func SetTitle()
    "如果文件类型为.sh文件
    if &filetype == 'sh'
        call setline(1,"\#########################################################################")
        call append(line("."), "\# 文件名称: ".expand("%"))
        call append(line(".")+1, "\# 作者: zyx2022")
        call append(line(".")+2, "\# 班级:44816")
        call append(line(".")+3, "\# 编程时间: ".strftime("%c"))
        call append(line(".")+4, "\#########################################################################")
        call append(line(".")+5, "\#!/bin/bash")
        call append(line(".")+6, "")
    else
        call setline(1, "/*************************************************************************")
        call append(line("."), "    > 文件名称: ".expand("%"))
        call append(line(".")+1, "    > 作者: zyx2022")
        call append(line(".")+2, "    > 班级:44816")
        call append(line(".")+3, "    > 编程时间: ".strftime("%c"))
        call append(line(".")+4, " ************************************************************************/")
        call append(line(".")+5, "")
    endif
    if &filetype == 'cpp'
        call append(line(".")+6, "#include<iostream>")
        call append(line(".")+7, "using namespace std;")
        call append(line(".")+8, "")
    endif
    if &filetype == 'c'
        call append(line(".")+6, "#include<stdio.h>")
        call append(line(".")+7, "")
    endif
    "新建文件后,自动定位到文件末尾
    autocmd BufNewFile * normal G
endfunc
举报

相关推荐

0 条评论