ruco 0.0.47 → 0.0.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Readme.md +3 -1
- data/VERSION +1 -1
- data/lib/ruco/application.rb +2 -2
- data/lib/ruco/editor.rb +2 -1
- data/ruco.gemspec +2 -2
- data/spec/ruco/editor_spec.rb +52 -1
- metadata +4 -4
data/Readme.md
CHANGED
@@ -15,6 +15,7 @@ Features:
|
|
15
15
|
- opens file at line with `ruco foo/bar.rb:32` syntax
|
16
16
|
- keeps whatever newline format you use (\r \n \r\n)
|
17
17
|
- (optional) remove trailing whitespace on save
|
18
|
+
- (optional) blank line before eof on save
|
18
19
|
|
19
20
|
Install
|
20
21
|
=======
|
@@ -32,7 +33,8 @@ Customize
|
|
32
33
|
# set options
|
33
34
|
options.window_line_scroll_offset = 5 # default 1
|
34
35
|
options.history_entries = 10 # default 100
|
35
|
-
options.editor_remove_trailing_whitespace_on_save = true
|
36
|
+
options.editor_remove_trailing_whitespace_on_save = true # default false
|
37
|
+
options.editor_blank_line_before_eof_on_save = true # default false
|
36
38
|
...
|
37
39
|
|
38
40
|
# bind a key
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.48
|
data/lib/ruco/application.rb
CHANGED
@@ -178,7 +178,7 @@ module Ruco
|
|
178
178
|
move(:to, 9999, 9999)
|
179
179
|
end
|
180
180
|
end
|
181
|
-
|
181
|
+
|
182
182
|
action :find do
|
183
183
|
ask("Find: ", :cache => true){|result| editor.find(result) }
|
184
184
|
end
|
@@ -258,7 +258,7 @@ module Ruco
|
|
258
258
|
end
|
259
259
|
|
260
260
|
def parse_file_and_line(file)
|
261
|
-
if not File.exist?(file)
|
261
|
+
if file.to_s.include?(':') and not File.exist?(file)
|
262
262
|
short_file, go_to_line = file.split(':',2)
|
263
263
|
if File.exist?(short_file)
|
264
264
|
file = short_file
|
data/lib/ruco/editor.rb
CHANGED
@@ -48,6 +48,7 @@ module Ruco
|
|
48
48
|
def save
|
49
49
|
lines = text_area.send(:lines)
|
50
50
|
lines.each(&:rstrip!) if @options[:remove_trailing_whitespace_on_save]
|
51
|
+
lines << '' if @options[:blank_line_before_eof_on_save] and lines.last.to_s !~ /^\s*$/
|
51
52
|
content = lines * @newline
|
52
53
|
|
53
54
|
File.open(@file,'w'){|f| f.write(content) }
|
@@ -74,4 +75,4 @@ module Ruco
|
|
74
75
|
FileStore.new(File.expand_path('~/.ruco/sessions'), :keep => 20)
|
75
76
|
end
|
76
77
|
end
|
77
|
-
end
|
78
|
+
end
|
data/ruco.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{ruco}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.48"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Michael Grosser"]
|
12
|
-
s.date = %q{2011-02-
|
12
|
+
s.date = %q{2011-02-19}
|
13
13
|
s.default_executable = %q{ruco}
|
14
14
|
s.email = %q{michael@grosser.it}
|
15
15
|
s.executables = ["ruco"]
|
data/spec/ruco/editor_spec.rb
CHANGED
@@ -70,6 +70,57 @@ describe Ruco::Editor do
|
|
70
70
|
editor.modified?.should == false
|
71
71
|
end
|
72
72
|
end
|
73
|
+
|
74
|
+
describe 'blank line before end of file on save' do
|
75
|
+
it "adds a newline" do
|
76
|
+
write("aaa")
|
77
|
+
editor = Ruco::Editor.new(@file, :lines => 3, :columns => 5, :blank_line_before_eof_on_save => true)
|
78
|
+
editor.save
|
79
|
+
read.should == "aaa\n"
|
80
|
+
end
|
81
|
+
|
82
|
+
it "does not add a newline without option" do
|
83
|
+
write("aaa")
|
84
|
+
editor = Ruco::Editor.new(@file, :lines => 3, :columns => 5)
|
85
|
+
editor.save
|
86
|
+
read.should == "aaa"
|
87
|
+
end
|
88
|
+
|
89
|
+
it "adds weird newline" do
|
90
|
+
write("aaa\r\nbbb")
|
91
|
+
editor = Ruco::Editor.new(@file, :lines => 3, :columns => 5, :blank_line_before_eof_on_save => true)
|
92
|
+
editor.save
|
93
|
+
read.should == "aaa\r\nbbb\r\n"
|
94
|
+
end
|
95
|
+
|
96
|
+
it "does not add a newline for empty lines" do
|
97
|
+
write("aaa\n ")
|
98
|
+
editor = Ruco::Editor.new(@file, :lines => 3, :columns => 5, :blank_line_before_eof_on_save => true)
|
99
|
+
editor.save
|
100
|
+
read.should == "aaa\n "
|
101
|
+
end
|
102
|
+
|
103
|
+
it "does not add a newline when one is there" do
|
104
|
+
write("aaa\n")
|
105
|
+
editor = Ruco::Editor.new(@file, :lines => 3, :columns => 5, :blank_line_before_eof_on_save => true)
|
106
|
+
editor.save
|
107
|
+
read.should == "aaa\n"
|
108
|
+
end
|
109
|
+
|
110
|
+
it "does not add a weird newline when one is there" do
|
111
|
+
write("aaa\r\n")
|
112
|
+
editor = Ruco::Editor.new(@file, :lines => 3, :columns => 5, :blank_line_before_eof_on_save => true)
|
113
|
+
editor.save
|
114
|
+
read.should == "aaa\r\n"
|
115
|
+
end
|
116
|
+
|
117
|
+
it "does not add a newline when many are there" do
|
118
|
+
write("aaa\n\n")
|
119
|
+
editor = Ruco::Editor.new(@file, :lines => 3, :columns => 5, :blank_line_before_eof_on_save => true)
|
120
|
+
editor.save
|
121
|
+
read.should == "aaa\n\n"
|
122
|
+
end
|
123
|
+
end
|
73
124
|
|
74
125
|
describe 'convert tabs' do
|
75
126
|
before do
|
@@ -908,4 +959,4 @@ describe Ruco::Editor do
|
|
908
959
|
editor.view.should == "yyy\n\n\n"
|
909
960
|
end
|
910
961
|
end
|
911
|
-
end
|
962
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruco
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 127
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 48
|
10
|
+
version: 0.0.48
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Michael Grosser
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-02-
|
18
|
+
date: 2011-02-19 00:00:00 +01:00
|
19
19
|
default_executable: ruco
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|