]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/nyquist/keymaps/hexwire/keymap_to_readme.rb
Update readme
[qmk_firmware.git] / keyboards / nyquist / keymaps / hexwire / keymap_to_readme.rb
1 #!/usr/bin/env ruby
2
3 class KeymapConverter
4
5   def initialize(filename)
6     @filename = filename
7     @mode = :search
8   end
9
10   def read_keymaps
11     lines = IO.readlines(@filename)
12     lines.each { |line| parse_line line[0..-2] }
13   end
14
15   def parse_line(line)
16     case @mode
17     when :search
18       if line =~ /KC_KEYMAP/
19         puts "### #{line}"
20         puts "```"
21         @mode = :parse
22       end
23     when :parse
24       if line =~ /\)/
25         @mode = :search
26         puts "```\n\n"
27       else 
28         line = line[4..-1]
29         line.sub!(/(,)^-/m, "|")
30         line.sub!(/( {4})/, "    |")
31
32         puts line
33       end
34     end
35   end
36
37 end
38
39 converter = KeymapConverter.new('keymap.c')
40 converter.read_keymaps