Would it be OK to refactor this so that lines 21-25, 
```
next if line =~ /^\s*(#.*|$)/
arr = line.split(":")
key = arr.shift
value = arr.join(":").strip
value.strip!
```
was in its own method?  My reasoning for that is that it without knowing the format of the `line` I'm confused as to what `key` and `value` mean (maybe because those terms are ubiquitous in our line of work).