i didnt care about how i wrote my bash scripts, coz i know theyd ultimately be used just by myself. but for the past few day, i’ve been working on this project, mk-blog which uses some bash scripts, there are chances that others might look at them. besides in work they’re asking me maintain a server. so why not learn the standards. but i couldn’t find anything good online (i’m gonna blame my search engine). but whyd i worry when i’m here (a linux community). so…
i’d appreciate redirections to (official or community) bash coding standards
ShellCheck is a static analysis tool for bash/sh scripts - try it on your scripts. The README also shows some examples of what (not) to do.
The link to your project gives me a 404 btw, is it a private repository?
I can’t recommend shellcheck enough, there are even plugins (for vscode and intellij at least) which give you syntax highlighting in your IDE
You don’t need a plugin, just use the bash LSP server with any editor that support LSP servers. It supports explainshell, shellcheck and shfmt.
“Just”, lol. I’m sure yours is a much more comprehensive and powerful solution, but it definitely looks more complex than just installing a plugin on your IDE!
Is pluging a LSP server that hard on vscode/intellij? Because it’s automatic with a lot of LSP clients, open a
.sh
file, get asked if you want to install the corresponding LSP server, answer yes and that’s it. Some LSP clients don’t do automatic server install but you just have to install the server with your packet manager. At least that’s how it is with vim / emacs.No idea, I’d never even heard of one until your comment! Is it worth setting up? What else does it do?
Funny thing is that LSP was actually created for VSCode. That’s the now standard protocol to decouple language specific things (completion, formatting, linting…) from the editor so you don’t have to use an editor for each language. You can now use any editor that supports LSP, either directly or through a plugin, and turn it into a fully fledged IDE by installing the LSP servers for the language you need. I guess some VSCode plugins use LSP under the hood and just embed the server.
https://forums.swift.org/t/introducing-sourcekit-lsp/17964
Even Swift Supports it 😮
Thanks. I checked it out. It’d be cool if they have LSP setup.
And thanks for informing about the link, I made a typo :]
I love ShellCheck! It’s one of the biggest FOSS projects written in Haskell.
But it is written in haskell, unpractical language