`

Vim快捷键与配置

阅读更多
Cursor movement

h - move left
j - move down
k - move up
l - move right
w - jump by start of words (punctuation considered words)
W - jump by words (spaces separate words)
e - jump to end of words (punctuation considered words)
E - jump to end of words (no punctuation)
b - jump backward by words (punctuation considered words)
B - jump backward by words (no punctuation)
0 - (zero) start of line
^ - first non-blank character of line
$ - end of line
G - Go To command (prefix with number - 5G goes to line 5)
Note: Prefix a cursor movement command with a number to repeat it. For example, 4j moves down 4 lines.
Insert Mode - Inserting/Appending? text

i - start insert mode at cursor
I - insert at the beginning of the line
a - append after the cursor
A - append at the end of the line
o - open (append) blank line below current line (no need to press return)
O - open blank line above current line
ea - append at end of word
Esc - exit insert mode
Editing

r - replace a single character (does not use insert mode)
J - join line below to the current one
cc - change (replace) an entire line
cw - change (replace) to the end of word
c$ - change (replace) to the end of line
s - delete character at cursor and subsitute text
S - delete line at cursor and substitute text (same as cc)
xp - transpose two letters (delete and paste, technically)
u - undo
. - repeat last command
Marking text (visual mode)

v - start visual mode, mark lines, then do command (such as y-yank)
V - start Linewise visual mode
o - move to other end of marked area
Ctrl+v - start visual block mode
O - move to Other corner of block
aw - mark a word
ab - a () block (with braces)
aB - a {} block (with brackets)
ib - inner () block
iB - inner {} block
Esc - exit visual mode
Visual commands

> - shift right
< - shift left
y - yank (copy) marked text
d - delete marked text
~ - switch case
Cut and Paste

yy - yank (copy) a line
2yy - yank 2 lines
yw - yank word
y$ - yank to end of line
p - put (paste) the clipboard after cursor
P - put (paste) before cursor
dd - delete (cut) a line
dw - delete (cut) the current word
x - delete (cut) current character
Exiting

:w - write (save) the file, but don't exit
:wq - write (save) and quit
:q - quit (fails if anything has changed)
:q! - quit and throw away changes
Search/Replace?

/pattern - search for pattern
?pattern - search backward for pattern
n - repeat search in same direction
N - repeat search in opposite direction
:%s/old/new/g - replace all old with new throughout file
:%s/old/new/gc - replace all old with new throughout file with confirmations
Working with multiple files

:e filename - Edit a file in a new buffer
:bnext (or :bn) - go to next buffer
:bprev (of :bp) - go to previous buffer
:bd - delete a buffer (close a file)
:sp filename - Open a file in a new buffer and split window
ctrl+ws - Split windows
ctrl+ww - switch between windows
ctrl+wq - Quit a window
ctrl+wv - Split windows vertically


vim -p file1 file2 file3 同时用3个tab打开3个文件

:tabnew filename - Edit a file in a new tab
:tabs - show tabs information
:tabn - go to the next tab
:tabp - go to the previous tab
:tabfirst - go to the first tab
:tablast - go to the last tab

Some useful config(written in ~/.vimrc)

set expandtab     "输入tab时用space来取代
set shiftwidth=4  "输入tab等于输入4个space
set smarttab      "用一次退格键就可以删除由tab产生的4个space
set autoindent    "自动缩进

"({[<的自动补全
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
:inoremap { {}<ESC>i
:inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap < <><ESC>i
:inoremap > <c-r>=ClosePair('>')<CR>

function ClosePair(char)
    if getline('.')[col('.')-1] == a:char
        return "\<Right>"
    else
        return a:char
    endif
endf

"智能提示
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags

"配色
colorscheme default "(具体的名字可以在/usr/share/vim/colors或~/.vim/colors中找)
分享到:
评论

相关推荐

    Windows快捷键与Vim快捷键冲突解决

    ### Windows快捷键与Vim快捷键冲突解决 #### 背景介绍 在日常工作中,很多程序员和文本编辑爱好者都喜欢使用Vim这款高效且功能强大的文本编辑器。然而,在不同的操作系统下,Vim的默认快捷键可能会与系统自带的...

    VIM快捷键 VIM插件

    ### VIM快捷键与插件详解 #### 一、引言 VIM是一款高度可配置且功能强大的文本编辑器,在开发领域中广受欢迎。本文将详细介绍VIM中的常见快捷键以及一个具体的插件——c-support.vim的功能和用法。 #### 二、VIM...

    idea vim 快捷键设置配置导出

    如果导入的设置包含`keymaps`,那么你的Vim快捷键配置也会被应用。同时,`inspection`和`options`文件夹中的内容涉及到代码检查设置和个性化选项,`codestyles`则包含了代码风格模板,它们同样可以在导入设置时一起...

    vim快捷键整理-英文版

    英文版的vim快捷键整理。 一张图片上总结了vim的快捷键。

    vim常用快捷键和配置设置

    在IT行业中,高效的工作流程至关重要,而Vim作为一个强大的文本编辑器,提供了许多快捷键和配置选项,能够显著提升程序员的工作效率。以下是一些关于Vim常用快捷键、配置和插件的详细说明: 1. **Vim中的Tab操作**...

    vim快捷键使用说明

    ### VIM快捷键使用说明 #### 一、引言 Vim是一款强大的文本编辑器,在Linux及Unix系统中被广泛使用。它具有丰富的功能和高度的可定制性,支持多种编程语言,是学习Linux编程不可或缺的工具之一。本文将详细介绍VIM...

    vim 常用快捷键笔记

    ### vim 常用快捷键知识点 #### 一、引言 Vim 是一款功能强大的文本编辑器,广泛应用于各种操作系统之中,特别是 Linux 和 Unix 平台。它源自 vi 编辑器,但添加了许多增强功能,使得它更加高效且易于定制。本文将...

    vi/vim快捷键以及配置

    ### VI/VIM 快捷键及配置详解 #### 一、VI/VIM 概述 VI/VIM(Vi IMproved)是一种广泛使用的文本编辑器,最初由 Bill Joy 开发,随后由 Bram Moolenaar 扩展为 VIM。VI 是 UNIX 系统的标准编辑器之一,而 VIM 则在...

    vim快捷键图解

    **vim快捷键图解** `vim` 是一个强大的文本编辑器,在Linux和其他Unix-like系统中广泛使用,甚至在Windows上也有支持。它以其高效的编辑功能和丰富的快捷键系统著称,使得程序员和系统管理员能够快速操作文本。这篇...

    VIM最全快捷键图,超清版本,包含超清PDF版本

    此外,VIM支持自定义配置,用户可以通过`.vimrc`文件设置个人喜好,包括快捷键绑定、颜色方案、自动补全等。例如,你可以将`nnoremap &lt;leader&gt;w :w&lt;CR&gt;`添加到`.vimrc`中,使`&lt;Leader&gt;w`成为保存文件的快捷键。 ...

    vim快捷键速记表 适合初学者

    ### vim快捷键速记表详解 #### 一、引言 `vim`是一款高度可配置且功能强大的文本编辑器,在Linux和其他Unix-like操作系统中广泛使用。对于初学者来说,掌握`vim`的基本快捷键是提高编码效率的关键。本文将根据提供...

    vim快捷键大全

    ### Vim快捷键大全知识点 #### 一、Vim简介与模式 **Vim**是一款功能强大的文本编辑器,尤其在Linux环境下备受用户喜爱。它基于Vi编辑器开发而来,不仅继承了Vi的所有特性,还增加了许多扩展功能。Vim支持多种操作...

    vim快捷键操作

    首先,我们可以自定义Vim的行为,通过运行`vim ~/.vimrc`进入配置文件。在这个文件中,可以设置各种选项,例如: - `set nu`启用行号显示。 - `set tabstop=4`设置一个制表符等于4个空格。 - `set ai`开启自动缩进。...

    绿色vim及添加右键快捷方式

    标题中的“绿色vim”指的是一个无需安装、可直接运行的Vim编辑器版本,它通常包含所有必要的组件,用户可以直接解压使用,不需在系统上进行任何注册或配置。这种便携式的设置使得绿色Vim成为那些频繁在不同计算机间...

    VIM FOR PHP配置

    1. **.vimrc**:这是VIM的配置文件,它包含了用户自定义的设置和快捷键。在`.vimrc`中,你可以定制VIM的行为,例如设置颜色方案、启用或禁用某些插件、调整缓冲区大小、设置自动缩进等。对于PHP开发,可能已经配置了...

    linux mac vim配置

    以下是一些常用的Vim快捷键和配置技巧: 1. **快捷键配置**: - `i` 进入插入模式。 - `Esc` 或 `Ctrl + [` 返回正常模式。 - `yy` 复制当前行。 - `p` 粘贴。 - `dd` 删除当前行。 - `u` 撤销最近的操作。 ...

    让你的 OSX Finder 带上 VIM 的快捷键功能.zip

    在安装ViFinder后,你可以享受到以下VIM快捷键带来的便利: 1. **移动光标**:在Finder窗口中,你可以使用`h`向左,`j`向下,`k`向上,`l`向右来移动光标,就像在VIM编辑器中一样。 2. **选择文件**:按住`v`进入...

    vim基本使用快捷键

    以下是从标题“vim基本使用快捷键”以及描述“一些简单的vim快捷键”中提取并详细解释的相关知识点。 ### Vim基本模式介绍与切换 Vim主要分为三种模式:普通模式(Normal Mode)、插入模式(Insert Mode)和命令行...

    Vim常用快捷键,VSCode个人常用配置和Qt主题配置文件

    以下是一些常见的Vim快捷键: 1. **启动/退出模式**: - `i`:进入插入模式(Insert mode),可以在当前光标位置输入字符。 - `Esc`:退出插入模式,返回正常模式(Normal mode)。 - `:q`:在正常模式下退出...

Global site tag (gtag.js) - Google Analytics