Rather than begin/rescue, use a ruby version check:
```
if RUBY_VERSION.to_f >= 1.9
  r = desc % val
else
  r = desc.gsub(/%\{[^}]+\}/) { |m| val[m[2...-1]] }
end