Class: GitNewlineAtEof::Application
- Inherits:
-
Object
- Object
- GitNewlineAtEof::Application
- Defined in:
- lib/git-newline-at-eof.rb
Instance Method Summary collapse
- #check_all ⇒ Object
- #discard_last_newline_all ⇒ Object
- #feed_last_line_all ⇒ Object
-
#initialize(argv) ⇒ Application
constructor
A new instance of Application.
- #run ⇒ Object
- #treat_all ⇒ Object
Constructor Details
#initialize(argv) ⇒ Application
Returns a new instance of Application.
6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/git-newline-at-eof.rb', line 6 def initialize(argv) @files = files @is_feed_last_line = false @is_discard_last_newline = false @is_treat_all = false @is_check_all = false opt = OptionParser.new opt.on('-f', '--feed-last-line') { |v| @is_feed_last_line = true } opt.on('-d', '--discard-last-newline') { |v| @is_discard_last_newline = true } opt.on('-a', '--treat-all') { |v| @is_treat_all = true } opt.on('-c', '--check-all') { |v| @is_check_all = true } opt.parse!(argv) end |
Instance Method Details
#check_all ⇒ Object
36 37 38 39 40 41 42 43 44 45 |
# File 'lib/git-newline-at-eof.rb', line 36 def check_all @files.each do |f| if no_newline?(f[:last_newlines_num]) puts "#{f[:filename]}: no newline at end of file" elsif discarded_newline?(f[:last_newlines_num]) discarded_num = f[:last_newlines_num] - 1 puts "#{f[:filename]}: discarded #{discarded_num} newline#{discarded_num > 1 ? 's' : ''} at end of file" end end end |
#discard_last_newline_all ⇒ Object
65 66 67 68 69 70 71 |
# File 'lib/git-newline-at-eof.rb', line 65 def discard_last_newline_all @files.each do |f| if discarded_newline?(f[:last_newlines_num]) discard_last_newline(f[:filename], f[:last_newlines_num] - 1) end end end |
#feed_last_line_all ⇒ Object
57 58 59 60 61 62 63 |
# File 'lib/git-newline-at-eof.rb', line 57 def feed_last_line_all @files.each do |f| if no_newline?(f[:last_newlines_num]) feed_last_line(f[:filename]) end end end |
#run ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/git-newline-at-eof.rb', line 21 def run if @is_check_all check_all elsif @is_treat_all treat_all else if @is_feed_last_line feed_last_line_all end if @is_discard_last_newline discard_last_newline_all end end end |
#treat_all ⇒ Object
47 48 49 50 51 52 53 54 55 |
# File 'lib/git-newline-at-eof.rb', line 47 def treat_all @files.each do |f| if no_newline?(f[:last_newlines_num]) feed_last_line(f[:filename]) elsif discarded_newline?(f[:last_newlines_num]) discard_last_newline(f[:filename], f[:last_newlines_num] - 1) end end end |