高逼格的画图:VIM原来可以这样玩
在Linux上其实并不缺少画图软件(比如yEd等),那么为什么还需要用VIM来画图:
- 更轻,不需要安装太多东西
- 更小,就是一些文本,比图片什么的小多了,使用起来也更简单
- 更有逼格
那么我们该怎么做呢?首先,在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原来可以这样玩的更多相关文章
- 高逼格的实现WiFi共享,不安装第三方wifi共享软件,两种方式实现开启wifi的功能
作为一枚程序员,不会点高逼格的doc命令,那么都有点感觉对不起自己的行业了,好了废话就到这里了 第一种方式: 首先使用cmd命令:window键+R 然后输入cmd回车 第一种方式: 第一步: 设 ...
- VopSdk一个高逼格微信公众号开发SDK(源码下载)
看之前回复很多说明大家很有热情&文章被误删掉了,不想让有的朋友错失这个高逼格的东西,现在重新发布,这次就直接放出源码,文章最末下载地址. 看之前回复很多说明大家很有热情&文章被误删掉了 ...
- VopSdk一个高逼格微信公众号开发SDK:自动化生产(装逼模式开启)
VopSdk一个高逼格微信公众号开发SDK(源码下载) VopSdk一个高逼格微信公众号开发SDK:自动化生产(装逼模式开启) 针对第一版,我们搞了第二版本,老规矩先定个目标. 一 我们的目标 a.移 ...
- 多服务器终端交互利器--polysh和atnodes到高逼格日志中心
最近博客更新的少了,相对而言,我在自己的个人公众号里还是挺活跃的,大家可以扫描旁边的二维码,或者微信搜索公众号:“编程一生”加关注. 在分布式的年代,一个应用需要部署到多台服务器上.那么要查看日志文件 ...
- hexo——轻量、简易、高逼格的博客
背景 写blog虽然经历了N多不同时代的产品,恒久不变的始终是自己无人问津的网站.虽然没几个人看,还是隔断时间就要折腾一下.从最开始的wordpress,到tale,到现在的hexo,网站变得越来越简 ...
- 分享几套生成iMac相关高逼格免费mockup的素材和在线工具
好久没有过来转, 今天姐姐我分享几套高逼格的iMac相关设计资源, 希望各位靓妹帅哥会喜欢, 最重要滴是,都是FREE,此处应有掌声~~~ , yeah!! iMac桌面效果Mockup 只需要下载后 ...
- 教你制作高逼格的技术分享Keynote(PPT)
本文来自 网易云社区 . 作为一个程序猿/媛,想必大家都参与过大大小小各式各样的技术分享,异或在不同的场合分享自己的技术心得.抛开分享内容的质量不谈,笔者发现通常这些分享者的演示文稿(Keynot或P ...
- 高逼格UILabel的闪烁动画效果
高逼格UILabel的闪烁动画效果 最终效果图如下: 源码: YXLabel.h 与 YXLabel.m // // YXLabel.h // // Created by YouXianMing o ...
- Python爬虫,看看我最近博客都写了啥,带你制作高逼格的数据聚合云图
转载请标明出处: http://blog.csdn.net/forezp/article/details/70198541 本文出自方志朋的博客 今天一时兴起,想用python爬爬自己的博客,通过数据 ...
随机推荐
- Apache—DBUtils框架简介
转载自:http://blog.csdn.net/fengdongkun/article/details/8236216 Apache—DBUtils框架简介.DbUtils类.QueryRunner ...
- 小记:xml画一个爱心。
aixin.xml: <!-- height:width=viewportHeight:viewportWidth --> <vector xmlns:android=" ...
- linux下安装vtune_amplifier_xe_2015_update4
说明: linux系统: CentOS 6.0 Vtune版本: 2015 安装过程: 1.下载vtune_amplifier_xe_2015_update4.tar.gz(到官网去下载 ...
- UITableViewStyleGrouped 模式下 headview 多出一块高度问题
self.tableView.tableHeaderView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, self.tableView ...
- NOIP 2013 提高组 day1 T2 火柴排队 归并 逆序对
描述 涵涵有两盒火柴,每盒装有 n 根火柴,每根火柴都有一个高度.现在将每盒中的火柴各自排成一列,同一列火柴的高度互不相同,两列火柴之间的距离定义为:∑i=1n(ai−bi)2∑i=1n(ai−bi) ...
- Chart For Asp.Net ----Overview
一个图表有很多元素构成,所有元素都能通过图表API控制.图表API是面向对象的,可扩展的,高复用的.支持很多图表元素如:data series,data points in a series,char ...
- 'NSInteger' (aka 'long') to 'int32
怎么去掉Xcode工程中的某种类型的警告 Implicit conversion loses integer precision: 'NSInteger' (aka 'long') to 'int32 ...
- 在oracle中创建空间索引
Oracle spatial可以方便的存储空间数据,大量的空间数据必需要使用空间索引去查询.在oracle中创建空间索引必需先建立元数据,否则无法创建索引.创建元数据的代码: insert into ...
- Thread IsBcakgroud
C#中,Thread类有一个IsBackground 的属性.MSDN上对它的解释是:获取或设置一个值,该值指示某个线程是否为后台线程.个人感觉这样的解释等于没有解释. .Net中的线程,可以分为后台 ...
- C# IList<T>转为DataTable
public class WebUtil { /// <summary> /// 转换IList<T>为DataTable/// </summary> /// &l ...