I work in three different platforms: #GitBashForWindows (mostly, because that’s the environment for my job), #macOS, and #Linux. My shell environment is pretty complex, and as #CrossPlatform a I can make it. The most annoying thing I have to handle in my scripts is the difference between paths on a Windows system vs anywhere else, and especially the leaky magic Git Bash for Windows employs to deal with it (that’s the main thing I want to communicate in this post).

I’m a very experienced #Bash user/programmer, but more and more I find myself converting Bash scripts to #Python.

These days my Python scripts are run via a #uv shebang line, which I love. uv creates an environment to run such a script. That environment is not active while I’m _editing_ the script (using #HelixEditor) so, Helix reports all the symbols that it could only have gotten from that venv. I don’t yet know of a non-brute-force way to fix that (that is the second thing I wanted to communicate in this post).

@YesJustWolf I’m not a uv user (yet) but with pdm I used to install the LSP inside the venv, then launch that from a per-project helix config. Not great but it works.
@YesJustWolf if you need a cross-platform shell I can recommend you @nushell