WsztRush

用VIM画图

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

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

首先,在VIM中安装DrawIt插件(可以参考这里),然后就可以开始画图之旅,在命令模式下使用:

  1. \di:开启DrawIt
  2. \ds:关闭DrawIt

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

  1. 方向键的上、下、左、右分别对应其四个方向
  2. Pgup:上右
  3. Pgdn:下右
  4. Home:左上
  5. End:左下

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

sudo apt-get install vim-gnome

简单体验下来,如果能灵活运用VIM本身的强大功能(复制、粘贴等),DrawIt用起来还是挺给力的!