What's the correct way to treat numbers in snake case?

I have only ever encountered specific documentation on this topic in one place - the Rubocop Ruby Style Guide (https://github.com/rubocop-hq/ruby-style-guide#snake-case-symbols-methods-vars-with-numbers)

It's probably safe to say there is not a clear winner in one approach over the other. One could also argue that the premise of the format is that: for a given string, all letters are lowercase and all spaces become underscores. By that standard you wouldn't format something column1 unless it started out as Column1.

Personally I prefer column_1 approach.

I find it easier to read, and easier to execute batch find/replace regex queries or to make multi-line edits in my text editor.


I would like to cite Rust naming conventions:

In snake_case or SCREAMING_SNAKE_CASE, a "word" should never consist of a single letter unless it is the last "word". So, we have btree_map rather than b_tree_map, but PI_2 rather than PI2.

So write column_1.