三种模式

1 命令模式
  插入 a i o A I O
  定位 gg G :n nG ngg $ 0
  删除 x nx dd ndd dG
  复制和剪切 yy-p dd-p
  替换 r R
  撤销和恢复 u Ctrl+r
  搜索和替换 /关键词 n :范围/old/new/g 2 插入模式
  
3 编辑模式
  :set nu
  :wq ZZ :wq!
  :q :q!
  :w file_name  
一些技巧  配置文件:~/.vimrc

1 导入命令的执行结果 :r !command
  :r filename 导入文件内容
  :!command 不退出的情况下使用系统命令
  :r !命令 eg. :r !date 2 定义快捷键 (编辑模式设置只是临时生效,要永久生效需要写入配置文件[不用前面的':'])
命令模式下的快捷键: :map 快捷键 触发命令  注意 ^是Ctrl+V, 不是Shift+6, 也可以用<C+p>
  范例 :map ^P I#<ESC> 行首加#注释
     :map ^B 0x 删除行首的#
     :map ^H 0
     :map ^L $
    

插入模式下的快捷键: imap 快捷键 命令
    :imap ^H <Left> //这样可以不用方向键移动光标了
    :imap ^L <Right>
    :imap ^B <Backspace>
    :imap ^D <Delete> 3 连续行注释
  :n1,n2s/^/#/g
  :n1,n2s/^#//g
  :n1,n2s/^/\/\//g
    正则表达式: ^行首 $行尾 4 替换
  :ab mymail xxx@mail.com
    当插入mymail时会自动变成后者 以上只有写入配置文件才能永久生效
配置文件为 用户的家目录下的 .vimrc 进入家目录 cd 或 cd ~

个人配置文件  ~/.vimrc

"Basic
set nu
set autoindent
set mouse=a
set backspace=
set smartindent "Scheme color
set tabstop=
syntax enable
set t_Co=
set background=dark
colorscheme molokai " 设置vim背景透明,还要先设置终端背景透明度(直接在终端配置文件里设置即可)
hi Normal ctermfg= ctermbg=none "快捷键映射
"map -- 命令模式, imap -- 插入模式
" ^H <= ctrl+v h <CR> == Enter
autocmd bufenter * if (winnr("$") == && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
"
map <F3> :NERDTreeToggle<CR>
map <F5> :w<Enter>
map I#<ESC>
map 0x<ESC>
map <Tab> I<Tab><Esc>
map <C-\> I<Backspace><Esc>
map ^H
map ^L $
map <C-up> ddkkp
map <C-down> ddp
map <C-S-down> yyp
map <C-S-up> ddk map <CR> A<CR><Esc> map <C-F5> :!python3 % <CR> 在py文件中直接 Ctrl+F5 运行该文件 "插入模式下 不用方向键 快速移动光标,退格,删除
imap <C-h> <Left>
imap <C-l> <Right>
imap <C-k> <Up>
imap <C-j> <Down>
imap <C-b> <Backspace>
imap <C-d> <Delete>
imap <F5> <ESC>:w<Enter>
imap () ()<Left>
imap [] []<Left>
imap {} {}<Left>
imap <> <><Left>
imap '' ''<Left>
imap "" ""<Left>
"插件管理工具
"Vundle for plugin
set nocompatible
filetype off set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim' "可以在这是添加要安装的插件
Plugin 'Valloric/YouCompleteMe' "Plugin 'SirVer/ultisnips'
"Plugin 'honza/vim-snippets' Plugin 'scrooloose/nerdtree' Plugin 'kien/ctrlp.vim' Plugin 'tomasr/molokai' Plugin 'rkulla/pydiction' Plugin 'pangloss/vim-javascript' Plugin 'Shougo/neocomplcache.vim' Plugin 'moll/vim-node'
Plugin 'myhere/vim-nodejs-complete' Plugin 'mattn/emmet-vim' call vundle#end()
filetype plugin indent on "Python pydiction -- Tab-complete
filetype plugin on
let g:pydiction_location = '/home/sqd/.vim/bundle/pydiction/complete-dict'
let g:pydiction_menu_height = "Node.js vim-node
autocmd User Node if &filetype == "javascript" | setlocal expandtab | endif autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags

效果图

Vim编辑器的使用和基本配置的更多相关文章

  1. 【Linux 操作系统】vim编辑器配置及常用命令

    最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...

  2. 第6天【egrep、bash环境配置及脚本、vim编辑器】

    bash环境配置及脚本(02)_recv bash环境配置及脚本(02)_recv bash环境配置文件: 按生效范围划分,存在两类: 全局配置: /etc/profile /etc/bashrc 个 ...

  3. 安卓程序代写 网上程序代写[原]vim编辑器配置及常用命令

    最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...

  4. vim编辑器配置及常用命令

    最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...

  5. vim编辑器常规配置

    为了很舒服的编写程序,请把vim配置好 # apt install vim    安装vim编辑器 #sudo vim /etc/vim/vimrc   ///必须加上权限sudo 在这个文件中,会有 ...

  6. Ubuntu 18.04中的Vim编辑器的高级配置

    VIM (Unix及类Unix系统文本编辑器) Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.VIM是开源软件. Vim普遍被推崇为类Vi编辑器中 ...

  7. Linux学习Day5:Vim编辑器、配置网卡、配置Yum软件仓库

    今天首先学习Vim编辑器的使用,通过它可以对Linux系统的文件进行编写和修改.在Linux系统中一切都是文件,所以熟练掌握Vim编辑器的使用十分重要.最后通过配置主机网卡的实验,来加深Vim编辑器中 ...

  8. CentOS7 配置阿里云yum源,vim编辑器,tab自动补全

    1.进入yum的文件夹 命令:cd   /etc/yum.repos.d/ 2.下载wget 命令:yum -y install wget 3.删除yum文件夹所有yum源 命令:rm -rf    ...

  9. 03. 树莓派初始配置——安装vim编辑器

    安装vim编辑器 树莓派系统默认是不带vim编辑器的,默认安装的vi编辑器在编辑文档的时候用得特别不舒服,对人体的血压和树莓派的寿命影响较大. 解决办法:一行命令 1. 安装vim编辑器 sudo a ...

随机推荐

  1. Git一些其它的功能

    Git 开始之前我们配置过user.name和user.email.其实还有很多其他的配置项 例如:让Git显示颜色,会让命令输出来更醒目: $ git config --global color.u ...

  2. HTML URL编码参考(转载)

    URL编码(URL encoding)的作用是将字符转化为可在因特网上安全传输的格式.URL——统一资源定位符Web浏览器通过URL从Web服务器上请求页面.URL就是网页的地址,如:http://w ...

  3. insertAdjacentHTML方法详解

    添加HTML内容与文本内容以前用的是innerHTML与innerText方法, 最近发现还有insertAdjacentHTML和 insertAdjacentText方法, 这两个方法更灵活,可以 ...

  4. DPI与PPI

    首先应该明白几个概念: 1寸=3.3333333厘米(cm)1英寸(in)=2.54厘米(cm)屏幕尺寸: 屏幕对角线的长度.电脑电视同理.LCD是由液态晶体组成的显示屏(本向不发光) 有于电脑手机显 ...

  5. 3.Perl 多线程:Threads(exit thread_only)

    还可以在导入threads模块时设置: use threads ('exit' => 'thread_only');

  6. Silverlight中以客户端加载另一项目客户端(先登录后加载的一般实现)

    近几日,本人在对一个老的Silverlight的GIS项目进行维护,发现该项目的实现是先把所有的资源加载至客户端,其中包括登录部分和业务实现部分,我就在想可不可以把登录部分和业务实现部分开来.如果用户 ...

  7. C++侵入式链表

    C++标准模板库中的list是非侵入式的链表,当我们通过对象来删除容器中的对象时,需要从头到尾查找一次得到iterator,最后通过iterator来删除对象.这样删除容器中的对象时比较缓慢,所以就实 ...

  8. 用xftp传送避免乱码问题

    用xftp传送文件时,需要输入ip地址,可连通的端口号,采用sftp协议 输入数据库传送,属性binary,二进制 上传文件,图片中文名称正常显示等,需要该属性支持UTF-8

  9. 2016 百度之星初赛 Gym Class(优先队列+拓扑排序)

    Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Pract ...

  10. MFC应用程序编写实例—完整版(原创)

    前段时间,将近花了一周至两周上班和上班后的闲余时间,做了一个用于调试和测试工作项目的应用软件,下面将实现软件的重要步骤及主要功能讲解一遍,方便日后查阅. 程序开始后,提示登录框,输入用户名,密码后,登 ...