您现在的位置是:网站首页> 编程资料编程资料
ruby开发vim插件小结_ruby专题_
                     2023-05-26
                490人已围观
                
                2023-05-26
                490人已围观
            
简介 ruby开发vim插件小结_ruby专题_
在开始编写插件之前,你需要确认 Vim 是否支持 Ruby,通过以下命令来判别:
$ vim --version | grep +ruby
如果输出为空,则表示你当前的vim不支持Ruby,需要重新编译一下,并启用对Ruby的支持。
顺便说下我当前的环境是:
vim 7.4
 ruby 2.1.0
 环境检查没有问题那么就开始吧。 在~/.vim/plugin目录下创建一个 demo.vim 文件。
在开头写上以下代码:
 if !has('ruby') echo "Error: Required vim compiled with +ruby" finish endif 这段代码就是用 VimL 编写的,它将检查 Vim 是否支持 Ruby。
接下来再判断该插件是否已经加载过了,以免重复加载:
 if exists('g:loaded_ruby_demo_plugin') finish endif let g:loaded_ruby_demo_plugin = 1 所有的检查都没有问题,则开始插件的正文了。先定义一个函数。
function! DemoFun1() ruby<
function与endfunction是vim中用于定义函数的,在”ruby< 然后再举个例子说下函数的参数处理。 这里定义了一个函数接收一个参数,然后将其输出。使用 VIM.evaluate 将vim的变量转化为Ruby的变量。 为了方便我们再定义两个命令,以简化对这两个函数的调用。 要获取完整的代码可以访问: https://gist.github.com/wusuopu/c1182efefa85d4f6839b 接下来再简单说下vim中Ruby的使用。 vim为Ruby提供了一个VIM模块,通过它可以在Ruby中访问vim的接口。同时还提供了两个全局变量:$curwin、$curbuf,它们分别代表了当前窗口对象以及当前缓冲区对象。 VIM模块中有 Buffer 和 Window 两个对象,分别是用来对缓冲区和窗口进行操作的。同时VIM模块还提供了message、set_option、command和evaluate四个函数。 想要查看更多的帮忙信息,可以在vim中执行如下命令: 好了,先写这么多吧,其余的自己去尝试吧。 
                
             function! DemoFun2(arg1) ruby<< EOF puts "you input: #{VIM.evaluate('a:arg1')}" EOF endfunction  command! -nargs=0 DemoFun1 call DemoFun1() command! -nargs=1 -rang DemoFun2 call DemoFun2(
 :help ruby 
相关内容
- 优化Ruby脚本效率实例分享_ruby专题_
- 艰难完成 nginx + puma 部署 rails 4的详细记录_ruby专题_
- Ruby中常用的字符串处理函数使用实例_ruby专题_
- Ruby中用线程实现经典的生产者消费者问题代码实例_ruby专题_
- Ruby中使用多线程队列(Queue)实现下载博客文章保存到本地文件_ruby专题_
- Ruby中使用mechanize批量下载校内网相册照片_ruby专题_
- Ruby中的Mechanize的使用教程_ruby专题_
- Ruby中区分运行来源的方法_ruby专题_
- Ruby中检测Gem是否安装的方法_ruby专题_
- Ruby中一些常用的文件操作方法小结_ruby专题_
 
                                
                                                         
                                
                                                         
                                
                                                         
 
    