¶ ↑
Magic_frozen_string_literalMagic_frozen_string_literal is a little tool that allows you to quickly add the magic comment that indicates that the file can safely have its string literals frozen, as will be the default in Ruby 3.0.
Cloned from github.com/m-ryan/magic_encoding
¶ ↑
Installationgem install magic_frozen_string_literal rbenv rehash
¶ ↑
UsageRun the tool from the command line:
magic_frozen_string_literal <directory>
this will prepend every “*.rb”, “*.ru”, “Rakefile”, “*.rake”, “Gemfile”, “*.gemspec”, “*.rabl”, “*.jbuilder”, “*.haml”, “*.slim” file in the given <directory> (recursively) with the following magic comment followed by a blank line:
# frozen_string_literal: true
(“.haml” and “.slim” files will have a “-” prefix before the comment and no blank line after.)
The <directory> parameter is optional. It defaults to the current working directory.
Notes:
-
existing
frozen_string_literal
magic comments are replaced -
the rest of the file remains unchanged
-
empty files are not touched
-
if the file starts with #! (shebang), that line is preserved and the magic comment is added just below it