在Linux上其实并不缺少画图软件(比如yEd等),那么为什么还需要用VIM来画图:

  1. 更轻,不需要安装太多东西
  2. 更小,就是一些文本,比图片什么的小多了,使用起来也更简单
  3. 更有逼格


那么我们该怎么做呢?首先,在VIM中安装DrawIt插件,可以参考这里:
vundle让你不需要在纠结到哪里去找插件和配置,所有的插件都以相似的方式进行管理,很大程度上降低了使用成本!插件存放的路径为~/.vim/bundle/,目录建好后下载vundle:

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim 

以后配置都可以在~/.vimrc里面完成:

set nocompatible " 关闭兼容模式 filetype off " 关闭对文件类型的自动检测 set rtp+=~/.vim/bundle/Vundle.vim " 加入运行时路径 call vundle#begin() " 初始化 " 插件列表开始 Plugin 'VundleVim/Vundle.vim' " 插件列表结束 call vundle#end() " 完成 filetype plugin indent on " 打开文件类型检测

常用的插件来源配置有:

github.com	github上托管的插件(Plugin ‘tpope/vim-fugitive’) vim-scripts.org/vim/scripts.html	在该站维护的插件(Plugin ‘L9’)

配置完成后打开VIM就可以开始使用了,用到下面命令:

:PluginList:打开插件列表 :PluginInstall:安装插件 :PluginSearch foo:搜索插件,找到之后可以选择安装 :PluginClean:清理不用的插件

最后举个例子,当你想安装winmanager插件时:

在.vimrc中添加Plugin 'winmanager' 打开vim 执行:PluginList就可以看到winmanager插件 执行:PluginInstall进行安装

然后就可以开始画图之旅,在命令模式下使用:

\di #开启DrawIt \ds #关闭DrawIt 

开启之后有两种模式:画图和擦除,他们之间通过空格来切换。
可以使用按键来控制向八个方向画线(或者擦除):

方向键的上、下、左、右分别对应其四个方向 Pgup #上右 Pgdn #下右 Home #左上 End #左下

如下图(其实也不需要记,和键盘上的位置是一致的):

 Home Up Pgup \ | / \ | / \ | / \|/ Left----------Right /|\ / | \ / | \ / | \ End Down Pgdn

箭头的画法也很直观,简单的箭头用>、、\<、\^、\v来弄(感觉粗的箭头不太好控制):

 > <| _ _ . \ / /_\ '

用鼠标可以选择块,这对后面的操作有一定的简化,利用用\a(\l不带箭头)来根据选中的块来画线:

------- \----------- \----------- \----->

或用\b来画矩形框或者用\e来画椭圆:

+--------------------+ ************* | | **** **** | | ** ** +--------------------+ * * ** ** **** **** *************

完事了可以用\f来对图形进行填充:

+------------------+ |##################| |##################| |##################| +------------------+

位置有一些偏差是常有的事情,这时候不要急着重画:

用鼠标选中要移动的块,然后按住ctrl并拖动鼠标。 

当要擦除一整快的内容时,用方向键来搞也比较蛋疼,可以用:

用鼠标选中要擦除的部分,然后执行r (相当于用空格替换)。 

另外需要注意:ubuntu和mint上安装到VIM默认是不支持系统剪贴板的,需要安装:

sudo apt-get install vim-gnome 

简单体验下来,如果能灵活运用VIM本身的强大功能(复制、粘贴等),DrawIt用起来还是挺给力的!PS:提示一下,那些箭头符号都是键盘上按键,仔细找找吧!

本文转载自:http://www.linuxprobe.com/vim-originally-can-play-like-this.html

更多Linux干货请访问:http://www.linuxprobe.com/

高逼格的画图:VIM原来可以这样玩的更多相关文章

  1. 高逼格的实现WiFi共享,不安装第三方wifi共享软件,两种方式实现开启wifi的功能

    作为一枚程序员,不会点高逼格的doc命令,那么都有点感觉对不起自己的行业了,好了废话就到这里了   第一种方式: 首先使用cmd命令:window键+R 然后输入cmd回车 第一种方式: 第一步: 设 ...

  2. VopSdk一个高逼格微信公众号开发SDK(源码下载)

    看之前回复很多说明大家很有热情&文章被误删掉了,不想让有的朋友错失这个高逼格的东西,现在重新发布,这次就直接放出源码,文章最末下载地址. 看之前回复很多说明大家很有热情&文章被误删掉了 ...

  3. VopSdk一个高逼格微信公众号开发SDK:自动化生产(装逼模式开启)

    VopSdk一个高逼格微信公众号开发SDK(源码下载) VopSdk一个高逼格微信公众号开发SDK:自动化生产(装逼模式开启) 针对第一版,我们搞了第二版本,老规矩先定个目标. 一 我们的目标 a.移 ...

  4. 多服务器终端交互利器--polysh和atnodes到高逼格日志中心

    最近博客更新的少了,相对而言,我在自己的个人公众号里还是挺活跃的,大家可以扫描旁边的二维码,或者微信搜索公众号:“编程一生”加关注. 在分布式的年代,一个应用需要部署到多台服务器上.那么要查看日志文件 ...

  5. hexo——轻量、简易、高逼格的博客

    背景 写blog虽然经历了N多不同时代的产品,恒久不变的始终是自己无人问津的网站.虽然没几个人看,还是隔断时间就要折腾一下.从最开始的wordpress,到tale,到现在的hexo,网站变得越来越简 ...

  6. 分享几套生成iMac相关高逼格免费mockup的素材和在线工具

    好久没有过来转, 今天姐姐我分享几套高逼格的iMac相关设计资源, 希望各位靓妹帅哥会喜欢, 最重要滴是,都是FREE,此处应有掌声~~~ , yeah!! iMac桌面效果Mockup 只需要下载后 ...

  7. 教你制作高逼格的技术分享Keynote(PPT)

    本文来自 网易云社区 . 作为一个程序猿/媛,想必大家都参与过大大小小各式各样的技术分享,异或在不同的场合分享自己的技术心得.抛开分享内容的质量不谈,笔者发现通常这些分享者的演示文稿(Keynot或P ...

  8. 高逼格UILabel的闪烁动画效果

    高逼格UILabel的闪烁动画效果 最终效果图如下: 源码: YXLabel.h 与  YXLabel.m // // YXLabel.h // // Created by YouXianMing o ...

  9. Python爬虫,看看我最近博客都写了啥,带你制作高逼格的数据聚合云图

    转载请标明出处: http://blog.csdn.net/forezp/article/details/70198541 本文出自方志朋的博客 今天一时兴起,想用python爬爬自己的博客,通过数据 ...

随机推荐

  1. JS访问剪切板中的图片

    google出来一个html2canvas,它利用canvas来渲染读取的DOM树,也就是说它只能截取document里的内容,如果要像qq截图那样,应该怎么做?用过百度的Ueditor编辑器的朋友都 ...

  2. c++ 普通高精乘

    //第一次提交全错了,太过相信自己了. //给我教训是注意循环后变量的值,和pascal不一样. //就不贴错误代码了. //codevs3118 高精度练习之除法 #include<cstdi ...

  3. Debug的F5~F8用法

    快捷键(F6)单步执行程序,遇到方法时跳过. 快捷键(F8)执行此断点到最后,进入下一个断点开始之处. 快捷键(F5)单步执行程序,遇到方法时进入. 快捷键(F7)单步执行程序,从当前方法跳出.

  4. websocket++编译过程

    websocket++ 是一个开源 websocket 库,使用websocket++ 能够开发基于websocket 服务. 前一段时间成功编译 websocket++ ,分享一下,编译websoc ...

  5. jsp:useBean标准动作

    1.bean法则 JavaBean和企业JavaBean是完全不相干的两个东西.普通的非企业JavaBean需要满足一定的规范才能被JSP和servlet使用: 1)必须有一个无参数的公共构造函数: ...

  6. 常见的Web负载均衡方法

    用户手动选择 通过在主站首页入口提供不同线路,不同服务器链接的方式,来实现负载均衡.在一些提供下载业务的网站中比较常见,如:华军软件园. DNS轮询 大多域名注册商都支持对同一主机名添加多条A记录,这 ...

  7. DotNetBar v12.9.0.0 Fully Cracked

    更新信息: http://www.devcomponents.com/customeronly/releasenotes.asp?p=dnbwf&v=12.9.0.0 如果遇到破解问题可以与我 ...

  8. Oracle GoldenGate: 使用宏

         OGG宏与C语言中的宏一样,提供了函数封装的功能,即可以将一些配置参数整理为一个宏,然后在多个参数文件中共用,针对环境复杂或多个复制点的情况尤其有用.下面我们将介绍如何创建一个宏的库,以及在 ...

  9. 监听cell 滑动到 摸个分区

    //滑动过程中 - (void)scrollViewDidScroll:(UIScrollView *)scrollView { //    NSLog(@"000---%ld", ...

  10. C++数据结构之Linked Stack(链式栈)

    上一节用连续的方式实现栈,这种方法用一个确定大小的数组存储栈元素,因为当存储达到数组上限时会遇到麻烦. 连续实现的栈与链式实现的栈的最大不同在于,前者使用一个确定大小的数组存储每一个栈元素,后者使用带 ...