`
shrek
  • 浏览: 73972 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
qja
社区版块
存档分类
最新评论

vim技巧(摘自linux宝库)

    博客分类:
  • vim
阅读更多
vim在屏幕行间移动
当文件的某些行比较长,超过屏幕宽度时,通常会折行,分成若干个屏幕行(screen line)。尤其
是查看一些由程序生成的文件的时候比较常见。j和k键只能在文本行之间移动。需要在屏幕行间移
动的时候要用gj和gk

===================================================
用vim格式化代码
从别的编辑器里粘贴到vim里的代码经常由于不正常的缩进变得格式混乱。在vim的官方FAQ
(http://vimdoc.sourceforge.net/cgi-bin/vimfaq2html3.pl)找到的:
格式化全文: gg=G
自动缩进当前行: ==

====================================================

已经在编辑状态(insert mode)了,如何快速执行 normal mode 的命令?
在编辑文本时,需要快速定位到某个位置,如下一个 d 的位置,难道要
<esc></esc>、fd、i 这般繁琐吗?
其实,使用 Ctrl-O 就可以临时切换到 normal mode, 执行一个命令后自动返回 insert mode。
于是上述命令序列可以改为:
Ctrl-O、fd 即可。
Ctrl-O 要按两个键呢,很麻烦,于是来个 keymap
" make ` functions <c-o></c-o>in insert mode
inoremap ` <c-o></c-o>
nnoremap ` i`<esc></esc>

在 normal mode 下按 ` (左上角那个),会正常插入 `,
而在 insert mode 下则相当于按 Ctrl-O,
于是上述命令序列又可简化为
`fd 即可。
在 insert mode 想粘贴剪贴板内容时,可以输入 `P,爽吧?
这样就可以在 insert mode 下天马行空,不用再按 <esc></esc>和a 切来切去了。

====================================================

vim 的剪贴板怎么怪怪的?
用 y 命令拷贝的文本怎么不能在 X/Windows 的其它应用中使用呢?
事实上,vim 有多个所谓寄存器来寄存剪切的内容。
平时是不是只用 y <motion></motion>和 p 命令呢?
其实这时使用的是 unamed 寄存器(对应寄存器*,不知对否?),即没有给定名称的,
而给定名称的,可以加前缀 "r 使用。
例如,将当前行放到寄存器a中,输入: "aY
将另一行(先移到其它行)放到寄存器b中,输入: "bY
粘贴寄存器a,输入:"aP
粘贴寄存器b,输入:"bP

好了,扯远了,X/Windows 的剪贴板的内容是存在寄存器+中,不信,自己试试:"+P
能不能将简单的 y 和 p命令与系统剪贴板联系起来呢?
就这句,浪费了我许多口水:)
set clipboard+=unnamed " set clipboard
分享到:
评论

相关推荐

    Linux中vim安装包

    **Linux中的Vim编辑器** Vim(Vi Improved)是一款强大的文本编辑器,在Linux系统中广泛使用。它基于早期的Vi编辑器,并进行了大量的增强和...通过不断实践和学习,可以掌握Vim的各种技巧,让编辑工作变得更为高效。

    Vim v7.3 Linux版

    Vim v7.3 Linux版,可做收藏、学习、研究。  Vim是一款Linux下的字符界面的编辑器。最初针对Linux字符界面设计开发。但随着其功能的逐步完善和发展目前已经成为诸多Linux爱好者最喜爱的编辑器之一。由于其丰富的...

    vim7.3 for linux

    4. **Vim的使用技巧** - hjkl移动:在普通模式下,使用hjkl键代替方向键进行光标移动。 - yank(复制)、delete(剪切)、put(粘贴):基础的文本操作命令。 - visual模式:按v进入,可以选中文本块进行操作。 ...

    vim使用-linux

    在Linux操作系统中,`vim`(Vi Improved)是一款强大的文本编辑器,深受程序员和系统管理员的喜爱。它的功能丰富、高度可定制,并且支持命令行操作,使其成为高效编辑代码的利器。本篇文章将深入探讨`vim`在Linux...

    linux_vim插件_最新

    linux_vim linux_vim linux_vimlinux_vim linux_vim linux_vimlinux_vim linux_vim linux_vimlinux_vim linux_vim linux_vimlinux_vim linux_vim linux_vimlinux_vim linux_vim linux_vimlinux_vim linux_vim linux_...

    linuxvim操作图片

    linuxvim操作图片linuxvim操作图片linuxvim操作图片linuxvim操作图片

    Vim实用技巧.pdf_vim实用_vim_

    本篇将详细探讨"Vim实用技巧",帮助你提升在Vim中的工作效率。 1. **启动与退出**:在命令行输入`vim`后接文件名即可打开文件,`:q`退出编辑,`:wq`保存并退出,`:q!`不保存强制退出。 2. **模式切换**:Vim有三种...

    vim插件-linux使用

    Vim,全称Vi Improved,是一款强大的文本编辑器,尤其在Linux系统中广泛使用。它以其高度可定制性、高效编辑功能以及丰富的插件系统深受程序员和系统管理员的喜爱。本篇将详细介绍 Vim 插件在Linux环境下的使用,...

    vim_for_linux.zip

    Vim(Vi IMproved)是Linux环境中广泛使用的高级文本编辑器,它继承了Vi的强大功能并进行了诸多改进。"vim_for_linux.zip" 是一个专为Linux用户设计的压缩包,旨在通过自动化脚本帮助用户轻松地安装Vim及其相关插件...

    linux离线安装vim编辑器工具,提供vim全量依赖包

    提供全量vim安装所需依赖,在客户内网环境下,通常无法联网,无法使用yum安装vim,此时可以使用rpm安装包进行安装 1.把此资源包放到服务器 2.解压之后进入文件夹 3.执行yum install -y vim-* 或者rpm -Uvh *.rpm --...

    两篇很牛的vim使用技巧

    两篇很牛的vim使用技巧 vim 技巧 chinaunix

    RedHat Linux9中vim升级方法及如何安装五笔输入法

    在Red Hat Linux 9中,有时我们可能需要对默认的VIM编辑器进行升级,以获得更多的功能或修复已知的问题。本篇文章将详细介绍如何从默认的VIM 1.6版本升级到7.2版本,并解决在录入中文时无法保存以及删除中文只能删除...

    Vim实用技巧 文字版 完整全本 pdf

    《Vim实用技巧》这本书旨在帮助用户掌握Vim的高级用法,提升编辑效率。 一、Vim的基本操作 1. 启动与退出:通过命令行输入`vim`加文件名启动,使用`:q`退出,`:q!`强制退出,`:wq`保存并退出。 2. 模式切换:Vim...

    VIM 实用技巧 第二版(全本)

    VIM 实用技巧第二版(全本) ,不是试读章节.是全本.用于VIM 的使用很好的一本书

    linux环境下,vim82.zip

    《Linux环境下的Vim82离线安装详解》 Vim(Vi Improved)是一款功能强大的文本编辑器,尤其在Linux环境中被广泛使用。Vim82版本是Vim的一个重要迭代,它带来了许多新特性,如多窗口支持、增强的语法高亮、更好的...

    Vim实用技巧.mobi

    《Vim实用技巧》为那些想要提升自己的程序员编写,阅读本书是熟练地掌握高超的Vim技巧的必由之路。全书共21章,包括121个技巧。每一章都是关于某一相关主题的技巧集合。每一个技巧都有针对性地解决一个或一类问题,...

    Vim实用技巧电子书

    《vim实用技巧》为那些想要提升自己的程序员编写,阅读本书是熟练地掌握高超的vim技巧的必由之路。全书共21章,包括121个技巧。每一章都是关于某一相关主题的技巧集合。每一个技巧都有针对性地解决一个或一类问题,...

    Linux&vim常见命令.zip

    在IT领域,Linux和vim是两个非常重要的工具,尤其对于系统管理员和开发者来说,它们是日常工作的必备技能。本文将详细讲解Linux系统的基本命令以及vim编辑器的使用,旨在帮助初学者快速掌握这两个核心概念。 首先,...

    vim配置包,linux若要使用vim,需要先安装vim包

    Vim(Vi IMproved)是Linux系统中广泛使用的高级文本编辑器,它是Bill Joy的原始Vi编辑器的增强版本。在Linux环境下,无论是系统管理、编程还是日常文档处理,Vim都是一个不可或缺的工具。本压缩包提供的内容显然是...

Global site tag (gtag.js) - Google Analytics