editserver 0.1.1 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,6 @@
1
1
  require 'optparse'
2
2
  require 'yaml'
3
+ require 'webrick/log'
3
4
  require 'rack'
4
5
  require 'editserver'
5
6
 
@@ -17,12 +18,13 @@ class Editserver
17
18
  }
18
19
 
19
20
  @rackopts = {
20
- :environment => 'development',
21
- :pid => nil,
22
- :Port => 9999,
23
21
  :Host => '127.0.0.1',
24
- :AccessLog => [],
25
- :config => ''
22
+ :Port => 9999,
23
+ :Logger => WEBrick::Log.new(nil, WEBrick::BasicLog::WARN), # be less chatty
24
+ :AccessLog => [], # rack does its own access logging, so keep this blank
25
+ :pid => nil,
26
+ :config => '',
27
+ :environment => 'deployment'
26
28
  }
27
29
  end
28
30
 
@@ -64,7 +66,7 @@ class Editserver
64
66
  if @opts[:norcfile]
65
67
  empty
66
68
  elsif File.exists? rcfile
67
- opts = YAML.load_file File.expand_path rcfile
69
+ opts = YAML.load_file File.expand_path(rcfile)
68
70
  opts ||= {}
69
71
  opts['rack'] ||= {}
70
72
  opts['editor'] ||= {}
@@ -101,8 +103,35 @@ class Editserver
101
103
 
102
104
  def run
103
105
  options.parse @args
104
- $0 = 'editserver'
105
- server.start
106
+
107
+ begin
108
+ $0 = 'editserver'
109
+ puts banner
110
+ server.start
111
+ ensure
112
+ puts fx("\nGoodbye!", [32,1])
113
+ end
114
+ end
115
+
116
+ private
117
+
118
+ def banner
119
+ %Q(\
120
+ __ __
121
+ /\\ \\ __/\\ \\__
122
+ __ \\_\\ \\/\\_\\ \\ ,_\\ ____ __ _ __ __ __ __ _ __
123
+ /'__`\\ /'_` \\/\\ \\ \\ \\/ /',__\\ /'__`\\/\\`'__\\/\\ \\/\\ \\ /'__`\\/\\`'__\\
124
+ /\\ __//\\ \\L\\ \\ \\ \\ \\ \\_/\\__, `\\/\\ __/\\ \\ \\/ \\ \\ \\_/ |/\\ __/\\ \\ \\/
125
+ \\ \\____\\ \\___,_\\ \\_\\ \\__\\/\\____/\\ \\____\\\\ \\_\\ \\ \\___/ \\ \\____\\\\ \\_\\
126
+ \\/____/\\/__,_ /\\/_/\\/__/\\/___/ \\/____/ \\/_/ \\/__/ \\/____/ \\/_/
127
+
128
+ Listening on #{fx "#{rackopts[:Host]}:#{rackopts[:Port]}", [32,1]}\
129
+ ).gsub(/^ {8}/, '')
130
+ end
131
+
132
+ def fx str, effects = []
133
+ return str unless $stdout.tty?
134
+ str.gsub /^(.*)$/, "\e[#{[effects].flatten.join ';'}m\\1\e[0m"
106
135
  end
107
136
  end
108
137
  end
@@ -1,3 +1,3 @@
1
1
  class Editserver
2
- VERSION = '0.1.1'
2
+ VERSION = '0.1.3'
3
3
  end
@@ -16,7 +16,7 @@ describe Editserver::Command do
16
16
  cmd.instance_variable_get(:@opts).must_equal(:rcfile => '~/.editserverrc')
17
17
  cmd.instance_variable_get(:@editoropts).must_equal('default' => nil, 'terminal' => nil)
18
18
  cmd.instance_variable_get(:@rackopts).keys.sort_by(&:to_s).must_equal [
19
- :environment, :pid, :Port, :Host, :AccessLog, :config
19
+ :Host, :Port, :Logger, :AccessLog, :pid, :config, :environment
20
20
  ].sort_by &:to_s
21
21
  end
22
22
  end
@@ -24,6 +24,7 @@ describe Editserver::Editor do
24
24
 
25
25
  describe :@@terminal do
26
26
  it "should have a reader and writer for the metaclass's @@terminal" do
27
+ @klass.terminal = nil
27
28
  @klass.terminal.must_equal nil
28
29
  @klass.terminal = 'xterm -fg white -bg black'
29
30
  @klass.terminal.must_equal %w[xterm -fg white -bg black]
@@ -1,6 +1,7 @@
1
1
  $:.unshift File.expand_path('../../lib', __FILE__)
2
2
 
3
3
  require 'rack/mock'
4
+ require 'editserver/editor'
4
5
  require 'editserver/response'
5
6
  require 'minitest/pride' if $stdout.tty?
6
7
  require 'minitest/autorun'
@@ -6,7 +6,6 @@ require 'minitest/pride' if $stdout.tty?
6
6
  require 'minitest/autorun'
7
7
  require 'editserver'
8
8
  require 'editserver/version'
9
- require 'editserver/command'
10
9
 
11
10
  describe Editserver do
12
11
  describe :VERSION do
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 1
8
- - 1
9
- version: 0.1.1
8
+ - 3
9
+ version: 0.1.3
10
10
  platform: ruby
11
11
  authors:
12
12
  - Sung Pae