简介

DrawIt 插件用来在 Vim 中进行简单的画图功能。可以方便地移动光标并画出横线、竖线、斜线、箭头和交叉字符,也带有实用的画图功能,轻松画带箭头的线、矩形及椭圆。

官方主页:https://github.com/vim-scripts/DrawIt

帮助文档:https://github.com/vim-scripts/DrawIt/blob/master/doc/DrawIt.txt

常用操作

开启/关闭

开启 DrawIt 模式:\di

关闭 DrawIt 模式:\ds

开启/关闭橡皮擦

空格键

画线

向左画横线:左箭头

向右画横线:右箭头

向上画竖线:上箭头

向下画竖线:下箭头

向上画 \:<Home>

向上画 /:<Page Up>

向下画 /:<End>

向下画 \:<Page Down>

画斜线的记忆方法:

| Home |  | PageUp      |

| end    |  | Page Down |

想像这四个键被一把大X覆盖住了。

移动光标

左移:h

右移:l

上移:k

下移:j

画箭头

上箭头:^

下箭头:v

左箭头:<

右箭头:>

胖上箭头:\^

胖下箭头:\v

胖左箭头:\<

胖右箭头:\>

高级操作

选择区域:按下鼠标左键并拖动鼠标 或 <Ctrl> + v

在选择区域画直线:\l

在选择区域画带箭头直线:\a

在选择区域画盒子:\b

在选择区域画椭圆:\e

在封闭区域内填充字符:\f(按下 \f 后会提示“Enter fill character”,输入要填充的字符再回车)

\h create a canvas for \a \b \e \l

\s adds spaces to canvas

选择区域填充指定字符:\ra ... \rz(r 后面的字符就是要填充的字符)

\pa ... like \ra ... \rz, except that blanks are considered to be transparent

以上是自己使用的实践结果,未翻译过来的表示我还不明白的用法,待进一步研究。有兴趣的可以参考简介中的帮助文档链接,有非常详细的使用教程。

附录

从别的教程中偷师学来的

移动块

选择区域后,按住 <Ctrl> 再移动鼠标到指定位置

擦除块

选择区域后,按 \r<空格>,表示用空格替换指定区域的内容

参考链接:https://www.linuxprobe.com/vim-originally-can-play-like-this.html

Vim 使用 DrawIt 画图的更多相关文章

  1. 我的Shell + VIM配置

    1. 安装powerline-shell 下载powerline-shell # cd /opt/ # git clone https://github.com/milkbikis/powerline ...

  2. 高逼格的画图:VIM原来可以这样玩

    在Linux上其实并不缺少画图软件(比如yEd等),那么为什么还需要用VIM来画图: 更轻,不需要安装太多东西 更小,就是一些文本,比图片什么的小多了,使用起来也更简单 更有逼格 那么我们该怎么做呢? ...

  3. Drawit插件

    gvim用不了画矩形的功能,只能在vim下用 \di,\ds开始/结束画图(Vim里\按键没有被映射,可以做leader按键) 用鼠标选择一块之后,\b画矩形,\e画椭圆 选单行\a画箭头,\l画线 ...

  4. 【转】所需即所获:像 IDE 一样使用 vim

    转自:  https://github.com/yangyangwithgnu/use_vim_as_ide 所需即所获:像 IDE 一样使用 vim yangyangwithgnu@yeah.net ...

  5. 程序员的编辑器——VIM

    from:http://blog.chinaunix.net/uid-11278770-id-148579.html Chinaunix首页 | 论坛 | 认证专区 | 博客 登录 | 注册      ...

  6. nginx环境下搭建nagios 3.5.0,及配置pnp4nagios画图

    本文基于<LNMP最新源码安装脚本>,Nagios依赖PHP环境和perl环境,由于Nginx不支持Perl的CGI,需先来搭建Perl环境,Nagios原理介绍略.一.下载最新稳定源码包 ...

  7. Vim+Ctags+Cscope安装

    对比了下,感觉还是Vim比较专业. 一:使用说明: ‘/’查找忽略大小写,比如需要查找“book”,当输入/b的时候会自动找到第一个以"b"开头的单词 实现C程序的缩减 查询中自由 ...

  8. [转]Vim插件管理工具Vundle

    原文:http://www.linuxzen.com/vimpei-zhi-xi-lie-cha-jian-guan-li.html 当转载成为一种习惯.. 最近对Vim进行了一番较大的配置变动,所以 ...

  9. 将VIM打造成强大的IDE

    转载自:所需即所获:像 IDE 一样使用 vim 如侵犯您的版权,请联系:2378264731@qq.com --------------------------------------------- ...

随机推荐

  1. Codeforces Round #480 (Div. 2)980C Posterized+分组类贪心

    传送门:http://codeforces.com/contest/980/problem/C 参考 题意:给定n个数字,每个数在0~256间,现在给至多连续k的数分为一组,给出字典序最小的答案. 思 ...

  2. HDU 6394 Tree 分块 || lct

    Tree 题意: 给你一颗树, 每一个节点都有一个权值, 如果一个石头落在某个节点上, 他就会往上跳这个的点的权值步. 现在有2种操作, 1 把一个石头放在 x 的位置 询问有跳几次才跳出这棵树, 2 ...

  3. 牛客多校第六场 C Generation I 组合数学 阶乘逆元模板

    链接:https://www.nowcoder.com/acm/contest/144/C来源:牛客网 Oak is given N empty and non-repeatable sets whi ...

  4. Go组件学习——手写连接池并没有那么简单

    1.背景 前段时间在看gorm,发现gorm是复用database/sql的连接池. 于是翻了下database/sql的数据库连接池的代码实现,看完代码,好像也不是很复杂,但是总觉得理解不够深刻,于 ...

  5. C++数据类型(data type)介绍

    在编写程序时,数据类型(data type)定义了使用存储空间的(内存)的方式. 程序员通过定义数据类型(data type),告诉特定存储空间这里要存储的数据类型是什么,以及你即将操作他的方式.(注 ...

  6. Erlang模块ets翻译

    概要: 内置的存储 描述: 这个模块是Erlang内置存储BIFs的接口.这些提供了在Erlang运行时系统中存储大量数据的能力,并且能够对数据进行持续的访问时间.(在ordered_set的情况下, ...

  7. String对象为什么不可变

    转载:https://www.cnblogs.com/leskang/p/6110631.html 一.什么是不可变对象? As we all know, 在Java中, String类对象是不可变的 ...

  8. Dijkstra算法的Java实现

    package main.java; import main.java.utils.GraphUtil; import java.util.ArrayDeque; import java.util.L ...

  9. 更改mac电脑图片默认存储位置

    1.创建存储位置screenshot 2.打开terminal 3.defaults write com.apple.screencapture location ~/Desktop/screensh ...

  10. 开发利器JRebel部署SpringBoot项目

    不要以为年纪轻轻就跌倒了人生谷底,未来还有更大的下降空间等着你. idea下载和安装JRebel 激活JRebel 访问https://my.jrebel.com/ 使用facebook或twitte ...