Формат числа - предпочитайте аннотированные токены (например, `% <foo>s`), а не аннотированные токены (например,`% s`) (Rubocop) - PullRequest
0 голосов
/ 16 апреля 2020

У меня есть эта строка кода, на которую жалуется Рубокоп

offset = -7
format('%.2i', offset)

Сообщение Рубокопа

rubocop: предупреждение C - Style / FormatStringToken: предпочитать аннотированные токены ( как %<foo>s) над аннотированными токенами (например, %s).

Но даже при чтении пояснений в документации https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Style/FormatStringToken я не могу сделать его совместимым.

Целью кода является добавление 0, когда offset представляет собой одно число di git, и не добавлять ничего, когда число уже имеет две цифры.

Я попробовал следующее :

offset = -7
format('%.2{offset}', offset: offset)

1 Ответ

1 голос
/ 16 апреля 2020

Чтобы указать стили, вы должны использовать <offset>, а не {offset}. Правильный синтаксис:

format('%<offset>.2i', offset: offset)
#=> "-07"

Часть <variable_name> идет сразу после % и до последовательности форматирования.

...