加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

vimrc同步文档

发布时间:2020-12-15 23:15:58 所属栏目:安全 来源:网络整理
导读:目录 18.04 content redhat 18.04 content if has("syntax") syntax on endif " Source a global configuration file if available if filereadable("/etc/vim/vimrc.local") source /etc/vim/vimrc.local endif set showcmd " Show (partial) command in st

目录

  • 18.04 content
  • redhat

18.04 content

if has("syntax")  
syntax on  
endif  
" Source a global configuration file if available  
if filereadable("/etc/vim/vimrc.local")  
source /etc/vim/vimrc.local  
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  
set autowrite       " Automatically save before commands like :next and :make  
set hidden      " Hide buffers when they are abandoned  
set mouse=a     " Enable mouse usage (all modes) 启用鼠标方便翻页,移动光标  

set nu           "show line number  
set nobackup        "no backup  
"set cursorline       "high this line  
set ruler            "show cursor site in right below   
autocmd InsertLeave * se nocul  " 用浅色高亮当前行  
set tabstop=4      " 统一缩进为4  
set shiftwidth=4  

set pastetoggle=<F6> "插入模式粘贴不会自动缩进避免混乱  
set autoindent    "自动缩进  
set cindent  

"set foldenable " 开始折叠  
"set foldmethod=syntax " 设置语法折叠  
set foldcolumn=0 " 设置折叠区域的宽度  
setlocal foldlevel=1 " 设置折叠层数  
set foldopen=all     "光标到达折叠快时,自动打开  
"set foldclose=all    " 离开代码块后,自动折叠  

" 用空格键来开关折叠  
nnoremap <space> @=((foldclosed(line(‘.‘)) < 0) ? ‘zc‘ : ‘zo‘)<CR>  

set autoread  " 设置当文件被改动时自动载入  

set completeopt=longest,menu  
set completeopt=preview,menu "代码补全   
set nocompatible "取消vi 兼容模式  

"start----- 自动补全  -----------------
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(‘)‘)<CR>  
:inoremap { {<CR>}<ESC>O
:inoremap } <c-r>=ClosePair(‘}‘)<CR>  
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(‘]‘)<CR>  
:inoremap " ""<ESC>i
:inoremap ‘ ‘‘<ESC>i
function! ClosePair(char)
if getline(‘.‘)[col(‘.‘) - 1] == a:char  
   return "&;Right>"
else  
   return a:char
endif
endfunction
"end------------------------------------------
  

"----- 打开文件类型检测-----------------
filetype plugin indent on
autocmd FileType c,cpp map <buffer> <leader><space> :w<cr>:make<cr>  
  
"start---------- definition  SetTitle() ------------------------------------ 
  
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java  exec ":call SetTitle()"  
func SetTitle()   
    if &filetype == ‘sh‘   
        call setline(1,"#########################################################################")  
        call append(line("."),"# File Name: ".expand("%"))  
        call append(line(".")+1,"# Author: ims")  
        call append(line(".")+2,"# Created Time: ".strftime("%c"))  
        call append(line(".")+3,"#########################################################################")  
        call append(line(".")+4,"#!/bin/bash")  
        call append(line(".")+5,"")  
    else  
        call setline(1,"/*************************************************************************")  
        call append(line("."),"    > File Name: ".expand("%"))  
        call append(line(".")+1,"    > Author: ims")  
        call append(line(".")+2,"    > Created Time: ".strftime("%c"))  
        call append(line(".")+3," ************************************************************************/")  
        call append(line(".")+4,"")  
    endif  

    if &filetype == ‘cpp‘  
        call append(line(".")+5,"#include<iostream>")  
        call append(line(".")+6,"using namespace std;")  
        call append(line(".")+7,"")  
        call append(line(".")+8,"int main()")  
        call append(line(".")+9,"{")  
        call append(line(".")+10,"t")  
        call append(line(".")+11,"treturn 0;")  
        call append(line(".")+12,"}")  
    endif

    if &filetype == ‘c‘
        call append(line(".")+5,"#include<stdio.h>")  
        call append(line(".")+6,"")  
        call append(line(".")+7,"}")  
    endif

    normal 12G"
endfunc
  
"end----------- SetTitle() --------------------------------

"start------- set title of file of .py ----------
autocmd BufNewFile *.py  exec ":call SetTitleOfFilePy()"  
func SetTitleOfFilePy()   
    call setline(1,"#! /usr/bin/python3.5")  
    call append(line("."),"# -*- coding: UTF-8 -*-")  
    call append(line(".")+1,"####################################################################")  
    call append(line(".")+2,"# File Name: ".expand("%"))  
    call append(line(".")+3,"# Author: ims")  
    call append(line(".")+4,"# Created Time: ".strftime("%c"))  
    call append(line(".")+5,"####################################################################")  
    call append(line(".")+6,"")  
    call append(line(".")+7,"")  
    normal 9G  
endfunc  
"end--------------------------------------------
      

 
"start------运行.c/.cpp/.java/.sh文件-----------------

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‘  
        exec "!chmod +x %"   
        :!./%  
    endif  
endfunc 

"notice: csdn复制后<CR>  后面会有2个空格,要删除,不然,运行后直接回到编辑界面 
"end------------------------------------------

"start------运行.py 文件 <F4> ----------------

map <F4> :call RunPy()<CR>  
func! RunPy()  
    exec "w"  
    exec "!chmod +x %"  
    :!./%  
endfunc
"end-----------------------------------

"start------------调试C/C++ 绑定<F8>---------------
    map <F8> :call Rungdb()<CR>  
    func! Rungdb()  
        exec "w"  
        exec "!g++ % -g -Wall -o %<"  
        exec "!gdb ./%<"  
    endfunc  
"end---------------------------------------------------

let Tlist_Show_One_File=1 

let Tlist_Exit_OnlyWindow=1
" Open and close all the three plugins on the same time 
nmap <F8>   :TrinityToggleAll<CR> 

" Open and close the srcexpl.vim separately 
nmap <F9>   :TrinityToggleSourceExplorer<CR> 

" Open and close the taglist.vim separately 
nmap <F10>  :TrinityToggleTagList<CR> 

" Open and close the NERD_tree.vim separately 
nmap <F11>  :TrinityToggleNERDTree<CR>

redhat

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读