Skip to content

Instantly share code, notes, and snippets.

@fallroot
Created February 23, 2012 11:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fallroot/1892514 to your computer and use it in GitHub Desktop.
Save fallroot/1892514 to your computer and use it in GitHub Desktop.
Sublime Text 2 Keymap to Markdown
#!/usr/bin/env ruby
#encoding: utf-8
require 'json'
old_keymap = JSON.parse IO.read('keymap-file')
result = "Key|Description\n---|---\n"
old_keymap.each do |keymap|
keys = keymap['keys']
command = keymap['command']
keys = keys.join(', ')
.gsub('+' , '' )
.gsub('super' , "\u2318")
.gsub('ctrl' , "\u2303")
.gsub('alt' , "\u2325")
.gsub('shift' , "\u21e7")
.gsub('enter' , "\u21a9")
.gsub('escape' , "\u238b")
.gsub('tab' , "\u21e5")
.gsub('backspace' , "\u232b")
.gsub('delete' , "\u2326")
.gsub('space' , "\u2423")
.gsub('up' , "\u2191")
.gsub('down' , "\u2193")
.gsub('left' , "\u2190")
.gsub('right' , "\u2192")
.gsub('plus' , "+" )
.gsub('equals' , "=" )
.gsub('minus' , "-" )
.gsub('backquote' , "`" )
.gsub('forward_slash', "/" )
command = command.gsub('_', ' ')
.capitalize
result << "#{keys}|#{command}\n"
end
File.open('sublime-text-2-keymap.md', 'w') do |file|
file << result
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment