Make screen obey you LIKE A BOSS
Go to file
2010-12-09 16:59:12 -05:00
autotest stuff 2010-12-09 16:20:21 -05:00
bin rename to screenomat 2010-12-09 16:59:12 -05:00
lib rename to screenomat 2010-12-09 16:59:12 -05:00
spec rename to screenomat 2010-12-09 16:59:12 -05:00
.gitignore docs and cleanup 2010-12-09 16:36:04 -05:00
.project initial commit 2010-12-09 09:19:01 -05:00
.screenomat rename to screenomat 2010-12-09 16:59:12 -05:00
Gemfile initial commit 2010-12-09 09:19:01 -05:00
Gemfile.lock rename to screenomat 2010-12-09 16:59:12 -05:00
README.md rename to screenomat 2010-12-09 16:59:12 -05:00
screenomat.gemspec rename to screenomat 2010-12-09 16:59:12 -05:00

screenomat

You like screen, I like screen. Make getting those big multi-command line-running projects even easier to get started up with screenomat.

How?

Make a .screenomat file in your app and write:

session do
  screen "bundle exec autotest", :title => "autotest"
  screen "rails c", :title => "dev console"
  screen "rails s", :title => "dev server"
  screen "less +F -fr log/test.log", :title => "test log tail"
  screen! :title => "bash"
end

Then run:

screenomat

whoa

More?

session :backend do
  screen "bundle exec autotest", :title => "autotest"
  screen "less +F -fr log/test.log", :title => "test log tail"
  screen! :title => "bash"
end

session :frontend do
  screen "bundle exec autotest", :title => "autotest"
  screen "rails c", :title => "console"
  screen "rails s", :title => "server"
  screen "rake jasmine", :title => "jasmine"
  screen! :title => "bash"
end

Then run:

screenomat backend

or even:

screenomat frontend

Defaults?

Like magic screenomat bits anywhere? ~/.screenomat is what you want! Same syntax!

Ruby? DRY?

Just like Gemfile, *.gemspec, and other modern Ruby things, .screenomat is Ruby code. Like DRYing things? You can do it!

class Screenomat::DSL::Session
  def whoa(&block)
    screen :title => "first"
    instance_eval(&block)
    screen :title => "last"
  end
end

session :first do
  whoa do
    screen "bundle exec autotest", :title => 'autotest'
  end
end

session :second do
  whoa do
    screen %{echo "cats"}
  end
end

What's left?

A bunch. I write what I need. Feel like adding fun things and/or tests? Fork, hack, pull request. You know the drill.