红宝石中的 <<-EOH 和 <<~EOH(如果有的话)有什么区别



<<-EOH<<~EOH

之间是否有区别

我质疑,因为当我使用<<-EOH时,括号并不能正确地突出显示Ruby/Chef代码,并且我已经在生产中运行了大量的代码。因此,当一切正常时,不可能批准我的公关,唯一的问题是我的编辑无法突出显示。

当我通过 <<~EOH切换<<-EOH时,代码可以通过括号正确识别,并且代码突出显示正常。

括号或 <<-EOH上的错误是错误的吗?

bash 'run_a_command_block' do
  code <<-EOH
    /usr/bin/python /usr/local/bin/a_regular_script.py
  EOH
  action :nothing
end

尖锐的Heredoc将不明显的内容置于最低凹入行的水平:

straight = <<-END_OF_TEXT
      Hello.
    This is:
      a regular dash.
END_OF_TEXT
squiggly = <<~END_OF_TEXT
      Hello.
    This is:
      using the squiggly dash.
END_OF_TEXT
separator = "-" * 30
puts separator
puts straight
puts separator
puts squiggly
puts separator

此输出:

------------------------------
      Hello.
    This is:
      a regular dash.
------------------------------
  Hello.
This is:
  using the squiggly dash.
------------------------------

我刚找到答案。他们做不同的事情。直曲线保持多线字符串的结构(线更改(,而弯曲的每条线是一条线时的连接。

请参考:https://infinum.co/the-capsized-eight/multiline-strings-ruby-2-3-0-the-squiggly-heredoc#disqus_thread

我将检查是否具有最新的括号版本。如果是,我按建议打开票。

谢谢大家。

相关内容

  • 没有找到相关文章

最新更新