77 karma · joined November 15, 2019
My projects do now have to have a boiler plate of unignoring the common ones (!.gitignore, !.gitattributes, !.github, !.editorconfig, etc), but then I'm free at any point to throw .foo.lang files, or .tmp/.cache dirs, or Claude helpers like .code_analysis.md, or .todos.txt, or whatever in my project without managing the fallout of forgetting to manage the .gitignore. I'm surprised more people don't go this route.
I support LibreOffice and what they're trying to do here, but this statement that it's not an "escalation" out of one side of their mouth and then admitting it's a "change in location and frequency" out of the other tells me that they are being disingenuous about it. An unobtrusive notice on where to donate seems like a reasonable direction, but if they don't view this obvious escalation as such, then what else will they do that they don't view as an escalation?
Just messing around I found you can extend the grid size with `hs.grid.setGrid('4x4')`, which you also may then want to shrink the text size with `hs.grid.ui.textSize = 30`, and finally if you use an alternative keyboard layout (eg: Colemak), you can set the grid to use it with `hs.grid.HINTS`. They really thought of everything with this feature.
Apple tries something weird every now and then and then a year later we get something different. Yes, Tahoe was a giant miss, but I'd wager macOS is not what really attracts devs to Apple anyway - it's the hardware that makes Macs such an appealing dev machine. Large glass trackpads with incredible touch controls, aluminum bodies, long lasting batteries, cool and quiet, great screens, years of support - the list goes on.
Snapdragon is only just now finally taking off in the Windows/Linux space, so the landscape could finally change here soon, but for now anyone who's gone ARM is not looking to ever go back to x64 hardware - at least for development (gaming is another convo).
3. six
`six` was instrumental in repairing the Python schism by giving people a way to incrementally move their 2.7 code to Python 3, and write code that was compatible in both. The six project didn't exist at first and the path to Python 3 was too painful without it. Six solved all that by smoothing over built-in libraries with different casing between versions, incompatible core libraries, the addition of unicode strings, print changing to a function, etc, etc. Perl 5 to Perl 6 (aka Raku) never got that.
You can, actually. ⌘-SHIFT-G in Finder lets you navigate to any folder by typing in the path - even hidden paths. No mortal user would ever be expected to know or discover that, but it's there.
* Command auto suggestions as you type based on your history
* History search (using up arrow) based on a partial command
* Helpful completions and descriptions when you hit TAB
* Muti-line command editing
* Syntax highlighting
You can get all those same features in Zsh by using plugins, but those features work out-of-the-box with Fish with zero configuration. Zsh is a bit of a pain to configure, and pretty anemic without plugins. Fish makes configuration optional because it works how you'd hope your shell would out of the box. Even though Zsh has those features as plugins, they're kinda janky, not well maintained, and often conflict with other plugins.
Additionally, Fish also has:
* Excellent built in commands (string, math, argparse)
* Sane scripting (word parsing where you don't need to quote everything, etc)
* Great documentation
* A web-based configuration if you're into that sort of thing (it's a bit of a gimmick for beginners)
The main reason I use Zsh (or Bash) at all is for POSIX/portability, or for when I can't install something else. But for an interactive shell on a machine I control, it's hard to compete with Fish for speed, features, and ease of use.
You could probably even use Hammerspoon to initiate the keyboard shortcut if you didn't want to mark the window manually.