`
wosmvp
  • 浏览: 21369 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
最近访客 更多访客>>
社区版块
存档分类
最新评论

…… Eo_oE …… V0.1.0

阅读更多
安装方式:
  sudo gem install easyoperate


为什么使用及怎么使用Eo?

1.建立 ~/.eorc 文件(嗯,是YAML格式),假设为下
  vim-rails:
    path: ~/vim/vim-rails/ #本地地址
    repo: git://github.com/tpope/vim-rails.git #远程地址
    autorun: 'puts "Thanks to Tim Pope";cp_autoload;cp_plugin'
       #方法之间使用 ‘;’分割,此处的定义将在本vim-rails初始化,及每次更新后自动运行,这里的意思就是每次更新后打印Thanks to Tip Pope,然后运行cp_autoload,此命令在正文定义,运行cp_plugin
    scm:   # 可以选择svn或git,只在初始化时使用,默认为git
    cmd:   # 在这里你可以定义其它命令,如上方cp_autoload等
      cp_autoload: `cp autoload/rails.vim ~/.vim/autoload/`
      cp_plugin: `cp plugin/rails.vim '~/.vim/plugin/`
      example: 'puts "Hi,This is example method"'


2. 你可以在命令行下通过
$ eo -h  # 查看帮助
$ eo -s  # 得到上面定义的所有的库,如vim-rails
$ eo -i  # 初始化
$ eo -u  # 更新

你可以使用正则,例如
$ eo -s v.*s 等,上面的命令都可以使用

你还可以通过
$ eo 
进行此程序的命令行,不说谈,使用h 来取得详细帮助
你可以此状态下通过
$ C vim-rails
或者直接shell下通过
$ eo -c vim-rails
来进入vim-rails的命令行,(是的,在这也可以使用正则)
在此命令行下,你可以运行你在eorc中自定义的命令,如cp_plugin,example等
也可以运行shell命令等,详情使用h 取得更详细的帮助


是不是很好玩有用呢…… 
分享到:
评论
2 楼 wosmvp 2008-12-23  
新版本有几个更新:

支持任意“SCM”,可以自己书写格式,放在~/.eo/scm 目录下,
以内置的git为例:
首先文件名为 git.rb
内部格式内容如下:
module Scm
  module Git
    def init
      system("git clone #{self.repo} #{self.path}")
    end

    def update
      old_commit = now_commit
      system("git pull")
      new_commit = now_commit
      if new_commit != old_commit && self.autorun
        self.autorun.split(';').each do |x|
          eval x
        end
      end
    end

    def now_commit
      return `git log --pretty=format:%H -1`
    end
  end
end

你需要完成的方法包括init,update方法

另外,你也可以自己在加入对象时,直接加入 update / init 方法,例如下面例子中前两个例子
arch_system:
 cmd:
   init: system('sudo pacman -S $(cat ~/GIT/configure/pkglist)')
   update: system('sudo pacman -Suy')

rubygems:
 cmd:
   init: system('sudo gem install $(cat ~/GIT/configure/gemlist)')
   update: system('sudo gem update')

cache-money:
  path: ~/Lab/cache-money
  autorun: "puts '这个命令会在每次有更新和初始化时自动运行';system('gvim .')"
  repo: git://github.com/nkallen/cache-money.git
  cmd:
    hello: puts "这个命令你可以选择此项后,运行hello来运行,当然你应该将我换成更有用的命令 :)"

jrails:
  path: ~/Lab/jrails
  scm: svn  #你可以在~/.eo/scm中定义新格式,也可在那覆盖内置的格式,
  #此处不定义将默认为git,也可以通过下面cmd定义方法来覆盖定义的方法,见第一个例子,
  #实际上来说就是将第一个例子做为一个git对象来处理的,但通过后面的覆盖方法,来实现想实现的功能
  #欢迎通过http://www.zhangjinzhu.com/articles/107
  #https://github.com/wosmvp/eo/tree 提交你的意见或其它尚未支持的有用的格式
  #如 cvs,rsync,vimplugin等等等等
  repo: http://ennerchi.googlecode.com/svn/trunk/plugins/jrails

上面的是从我的.eorc中整理取出一小部分,
感觉这么好玩的工具怎么没人用啊,是没人用Linux呢,还是我写的比较烂呢……呵呵
1 楼 wosmvp 2008-12-13  
如果将自己的系统配置等版本化,再收录自己喜欢或关注的软件仓库后,你可以凭一个eorc配置文件,迅速秒杀出一个自己的工作平台……

现在不需要老上github看看没个自己喜欢的工具有没有更新了,不需要在每个仓库都git pull/svn update了,每天 eo -u 一次,加上自动运行命令,嗯,世界好清静 

相关推荐

Global site tag (gtag.js) - Google Analytics