windows下使用vim编写C++代码(g++编译)

Windows下使用cmd + Vim进行编程(初级_vimrc配置(无插件配置))
https://blog.csdn.net/zxzxzx0119/article/details/80178383

_vimrc的简单配置
为什么要配置vim呢:因为

vim一开始的界面丑,没有语法高亮;
tab键是8个空格,不方便;
括号没有自动匹配,等等;

可以使用记事本打开直接编辑:然后进行相应配置,vimrc文件的配置源码可以好好读一下,还是有点用的,我这里把我的_vimrc文件贴出来(直接把我的拷过去复制粘贴全部覆盖),我觉得已经可以满足我平常用写写算法题的需求了(这里暂时没有插件,没有使用GDB调试(有兴趣的童鞋可以去网上搜))

set nocompatible
source $VIMRUNTIME/vimrc_example.vim
"source $VIMRUNTIME/mswin.vim
"behave mswin

set diffexpr=MyDiff()
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  let eq = ''
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      let cmd = '""' . $VIMRUNTIME . '\diff"'
      let eq = '"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction


"设置文件的代码形式 utf8
set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,chinese,cp936

"vim的菜单乱码解决
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

"vim提示信息乱码的解决
language messages zh_CN.utf-8

filetype on
filetype plugin indent on
"colorscheme evening    "配色方案
colorscheme desert
set helplang=cn     "设置中文帮助
set history=500     "保留历史记录
set guifont=Monaco:h10  "设置字体为Monaco,大小10
set tabstop=4       "设置tab的跳数
set expandtab
set backspace=2     "设置退格键可用
"set nu!        "设置显示行号
set wrap        "设置自动换行
"set nowrap         "设置不自动换行
set linebreak       "整词换行,与自动换行搭配使用
"set list       "显示制表符
set autochdir       "自动设置当前目录为正在编辑的目录
set hidden      "自动隐藏没有保存的缓冲区,切换buffer时不给出保存当前buffer的提示
set scrolloff=5     "在光标接近底端或顶端时,自动下滚或上滚
"Toggle Menu and Toolbar    "隐藏菜单栏和工具栏
"set guioptions-=m
"set guioptions-=T
set showtabline=2   "设置显是显示标签栏
set autoread        "设置当文件在外部被修改,自动更新该文件
set tabstop=4         
set softtabstop=4     
set shiftwidth=4     
set expandtab       
set mouse=a         "设置在任何模式下鼠标都可用
set nobackup        "设置不生成备份文件
"set go=                "不要图形按钮
set guioptions-=T           " 隐藏工具栏
"set guioptions-=m           " 隐藏菜单栏

"===========================
"查找/替换相关的设置
"===========================
set hlsearch "高亮显示查找结果
set incsearch "增量查找

"===========================
"状态栏的设置
"===========================
set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%] "显示文件名:总行数,总的字符数
set ruler "在编辑过程中,在右下角显示光标位置的状态行

"===========================
"代码设置
"===========================
syntax enable "打开语法高亮
syntax on "打开语法高亮
set showmatch "设置匹配模式,相当于括号匹配
set smartindent "智能对齐
"set shiftwidth=4 "换行时,交错使用4个空格
set autoindent "设置自动对齐
set ai! "设置自动缩进
"set cursorcolumn "启用光标列
set cursorline
hi CursorLine   cterm=NONE ctermbg=darkred ctermfg=white guibg=darkred guifg=white
set guicursor+=a:blinkon0 "设置光标不闪烁
set fdm=indent "


" 关闭NERDTree快捷键
map <leader>t :NERDTreeToggle<CR>
" 显示行号
let NERDTreeShowLineNumbers=1
let NERDTreeAutoCenter=1
" 是否显示隐藏文件
let NERDTreeShowHidden=1
" 设置宽度
let NERDTreeWinSize=21
" 在终端启动vim时,共享NERDTree
let g:nerdtree_tabs_open_on_console_startup=1
" 忽略一下文件的显示
let NERDTreeIgnore=['\.pyc','\~$','\.swp']
" 显示书签列表
let NERDTreeShowBookmarks=1

inoremap { {}<ESC>i
hi MatchParen ctermbg=DarkRed guibg=lightblue

vim下一些简单的操作
配置好了_vimrc文件之后我们就可以在cmd中使用vim main.cpp打开main.cpp文件了,进入到如下的界面之后,我们要进行编程,先要了解vim的一些模式,正常模式,输入模式,命令模式。这里我只讲基本的,用的比较多的。

(正常模式)当前光标下按 i,进入插入模式,可以进行编辑;
在插入模式下,按ESC键回到正常模式,输入 :wq,回车,保存并退出;(记得输入冒号)
在插入模式下,按ESC键回到正常模式,输入 :q!,回车,强制退出;(记得输入冒号)
正常模式下删除一行:dd;
正常模式下撤销 : u;
正常模式下全选删除 : 先按ggVG ,然后按d
这里只说了一些常见的,更多的可以网上搜,这里给出两个博客:
https://blog.csdn.net/longxibendi/article/details/38276847
https://www.cnblogs.com/chenlogin/p/6245958.html
可以好好学一下vim基本操作。

g++ -o main main.cpp  //编译
main.exe   //运行
main.exe < in.txt  //in.txt中输入文件
main.exe > out.txt  //输出到out.txt中
main.exe <in.txt> out.txt   //in.txt中输入文件 and 输出到out.txt
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值