Add script to upgrade HAML syntax

[skip-ci]
This commit is contained in:
Maikel Linke
2024-01-25 16:55:49 +11:00
parent d2b1511397
commit 4516d90ede
3 changed files with 182 additions and 0 deletions

22
script/haml-up.rb Executable file
View File

@@ -0,0 +1,22 @@
#!/usr/bin/env ruby
# frozen_string_literal: true
# Upgrade HAML attribute syntax to prepare for HAML 6.
#
# HAML 6 stopped supporting nested hash attributes other than `data` and `aria`.
# We used to be able to write:
#
# %div{ ng: { class: "upper", bind: "model" } }
#
# This needs to be written in a flat structure now:
#
# %div{ "ng-class" => "upper", "ng-bind" => "model" }
#
# This script rewrites HAML files automatically. It may be used like:
#
# git ls-files '*.haml' | while read f; do ./haml-up.rb "$f"; done
#
require "haml_up"
puts ARGV[0]
HamlUp.new.upgrade_file(ARGV[0])