Skip to content

Instantly share code, notes, and snippets.

@thefonso
Forked from jugyo/gist:865454
Created August 17, 2012 02:42
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 thefonso/3375436 to your computer and use it in GitHub Desktop.
Save thefonso/3375436 to your computer and use it in GitHub Desktop.
TextMate command to convert haml to html
#!/usr/bin/env ruby
# Input: Selected Text or Nothing
# Output: Replace Selected Text
require 'tempfile'
def unindent(text)
lines = text.split(/\n/)
level = lines.map{|l| l[/^\s*/].size}.min
[lines.map{|l| l[level..-1]}.join("\n"), level]
end
text, level = unindent(STDIN.read)
Tempfile.open('haml2html') do |t|
t << text
t.flush
output = `#{File.join(ENV['TM_GEM_BIN'], 'haml')} #{t.path}`
puts output.split("\n").map{|l| ' ' * level + l}.join("\n")
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment