Make screen obey you LIKE A BOSS
autotest | ||
bin | ||
lib | ||
spec | ||
.gitignore | ||
.project | ||
.screenomat | ||
Gemfile | ||
Gemfile.lock | ||
README.md | ||
screenomat.gemspec |
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.