こんにちは、鈴木です。
ActiveSpport の strip_heredoc というメソッドをご存知でしょうか?
行頭の不要なインデント
以下のスクリプトを見てください。
| 1 2 3 4 5 6 7 | # coding: utf-8 require 'active_support/core_ext/string/strip' puts <<-'EOS'   おじいさんは、山へ芝刈りに。   おばあさんは、川へ洗濯物に。 EOS | 
実行します。
| 1 2 |   おじいさんは、山へ芝刈りに。   おばあさんは、川へ洗濯物に。 | 
行頭がインデントされてしまいました・・。
strip_heredoc で行頭のインデントを消す
strip_heredoc を使ってみます。
| 1 2 3 4 5 6 7 8 | # coding: utf-8 require 'active_support/core_ext/string/strip' puts <<-'EOS'.strip_heredoc     # strip_heredoc を使った   おじいさんは、山へ芝刈りに。   おばあさんは、川へ洗濯物に。   めでたし、めでたし。 EOS | 
実行すると、以下の出力が得られます。
| 1 2 3 | おじいさんは、山へ芝刈りに。 おばあさんは、川へ洗濯物に。 めでたし、めでたし。 | 
良い感じです。
もう少し長いヒアドキュメントでも試してみます。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | # coding: utf-8 require 'active_support/core_ext/string/strip' puts <<-'EOS'.strip_heredoc   SELECT     *   FROM     sales_details     LEFT OUTER JOIN products ON products.id=sales_details.product_id     LEFT OUTER JOIN product_categories ON product_categories.id=products.product_category_id     LEFT OUTER JOIN sales ON sales.id=sales_details.sales_id     LEFT OUTER JOIN shops ON shops.id=sales.shop_id     LEFT OUTER JOIN coupons ON coupons.id=sales.coupon_id     LEFT OUTER JOIN customers ON customers.id=sales.customer_id     LEFT OUTER JOIN occupations ON occupations.id=customers.occupation_id     LEFT OUTER JOIN prefectures ON prefectures.code=customer.prefecture_code   WHERE     sales.sold_at < '2000-01-01'     AND products.name LIKE '%Web 限定%'     AND product_categories.name IN ('野菜', 'お米', '魚介類')     AND shops.name IN ('京都支店', '北海道支店', '名古屋支店')     AND coupons.name = 'Web 会員限定クーポン'     AND customer.gender = '男性'     AND occupations.name IN ('自営業', '教師', '医者')     AND prefectures.name = '京都'   ORDER BY     sales_details.sold_at DESC,     products.name,     product_categories.name,     shops.name,     occupation.name   ; EOS | 
実行結果は、、、
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | SELECT   * FROM   sales_details   LEFT OUTER JOIN products ON products.id=sales_details.product_id   LEFT OUTER JOIN product_categories ON product_categories.id=products.product_category_id   LEFT OUTER JOIN sales ON sales.id=sales_details.sales_id   LEFT OUTER JOIN shops ON shops.id=sales.shop_id   LEFT OUTER JOIN coupons ON coupons.id=sales.coupon_id   LEFT OUTER JOIN customers ON customers.id=sales.customer_id   LEFT OUTER JOIN occupations ON occupations.id=customers.occupation_id   LEFT OUTER JOIN prefectures ON prefectures.code=customer.prefecture_code WHERE   sales.sold_at < '2000-01-01'   AND products.name LIKE '%Web 限定%'   AND product_categories.name IN ('野菜', 'お米', '魚介類')   AND shops.name IN ('京都支店', '北海道支店', '名古屋支店')   AND coupons.name = 'Web 会員限定クーポン'   AND customer.gender = '男性'   AND occupations.name IN ('自営業', '教師', '医者')   AND prefectures.name = '京都' ORDER BY   sales_details.sold_at DESC,   products.name,   product_categories.name,   shops.name,   occupation.name ; | 
良い感じ・・です。

 
						