watson-ruby icon indicating copy to clipboard operation
watson-ruby copied to clipboard

Break up the comment parsing to smaller module

Open alpaca-tc opened this issue 11 years ago • 0 comments

I want to break up the comment parsing in watson-ruby to smaller module. There are three reasons for this.

  • First, extracting comments from a file which contains compound filetype is complex.
  • Second, watson-ruby can not read shebang and detect filetype without extension.
  • Third, Watson's way to extract comments from a file has many incorrect detection.

They are the reasons why I present a suggestion.


Currently I am writing the gem called CommentExtractor. It can easily extract comments from a file as follows.

path = 'path/to/file'
if parser = CommentExtractor::Parser.for(path)
  comments = parser.parse

  comments.each do |c|
    puts "#{c.file}:#{c.line} - #{c.value}" #=> "path/to/file:2 - I am comment"
  end
end

If watson-ruby merged CommentExtractor, it becomes that easier to extract comments. Let me know if you have any opinion, suggestions or problems on my suggestion.


links

alpaca-tc avatar Feb 18 '14 10:02 alpaca-tc