3 ms·
but having to press shift for the underscore is a pain But having to press shift for a capitalised word is not a pain. OK, sounds about right.
by simonblack 4y ago
but having to press shift for the underscore is a pain
But having to press shift for a capitalised word is not a pain. OK, sounds about right.
- stevula 4y agoHa! You got me there.
- irrational 4y agoFor me it is easier/faster to type uppercase letters than an underscore. But, I have small hands.
- kitsunesoba 4y agoSame. I'm noticeably faster with camelCase.
- timbit42 4y agoThat's why kebab-case-is-best.
- inDigiNeous 4y agoWell, this-case-has-the-problem-of-mixing-with-the-letters-more-easily. When you type snake_case it is clearly not in the line of the letters. But yeah kebab-case-might-be-easier than camelCaseToRead in the long run.
- shrimp_emoji 4y agoThis haunts me. It seems almost as good as snek_case but doesn't require a Shift. If we're not Shifting the letters, why are we shifting the -s? My OCD. (Or my autism?) Help. Another consideration: whether the program you're typing in will stop at underscores or hyphens when using Ctrl + Shift + Left/Right Arrow when highlighting. If I want to highlight `this_variable_with_a_long_name` without using the mouse, it's going to be a pain if I have to hit the left arrow key six times instead of once. (Frustratingly, it varies from editor to editor.)
- fiddlerwoaroof 4y agoThis might be configurable: vim and emacs, at least, let you define which characters are part of a word.
- askvictor 4y agoBecause many languages don't require whitespace between symbols (e.g. x) and operators (e.g. +). So in Python, x+3 is valid (x plus three). As is x+y. And x-y. So how does the interpreter/compiler know if coffee-bean is a single variable, or an operation (coffee - bean) between two variables?
- brookst 4y agoSounds like job security! x-y = ‘a string or something’ # # bunch of lines of code here # x = 5 y = 2 assert x-y == 3
- eyelidlessness 4y agoThe reason we (most of us) can’t have kebab-case is the same reason it mostly occurs in lisps and other declarative syntaxes: infix operators. ie if you can have identifiers or keywords like-this and you can also have subtraction like-this, you have some serious syntax ambiguities to deal with. As far as keyboard navigation around partial or whole words, I find it really helpful to have separate keybindings. For me (on a Mac so keyboard layouts matter), opt+left/right moves a “whole word” (as in to the nearest non-word character) and ctrl+left/right moves to the nearest internal word boundary (where boundary is mostly arbitrary; in bouncyCase it moves to the nearest non contiguous case change, in any-punctuated_case it moves to the nearest punctuation). Agree it’s frustrating how much this varies by editor, but being able to configure the behavior is one of my first checks when deciding if I’ll use the editor at all.
- simonblack 4y agokebab-case is all very well as long as a hyphen is not treated as the 'minus sign' Many years ago, I was programming in COBOL, where kebab-case is the norm. For a while there I was programming in both "C" AND in COBOL. That was a nightmare, I invariably used the wrong syntax for my variable-names, as both languages used incompatible syntax for those variable-names.
- bostonvaulter2 4y agoI've bound underscore to a top-level key in my default keymap. It's made a big difference to me!
- layer8 4y agoThe position of the -/_ key is a bit awkward relative to the right-hand shift key in the US layout.
- snozolli 4y agoYou skipped the important half of the sentence: and it’s also quite far from the home row on the keyboard. I'm not going to adopt a coding style that requires me to reach that far repeatedly for every name.