87
submitted 1 week ago* (last edited 1 week ago) by t0mri@lemmy.ml to c/linux@lemmy.ml

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 lol). so...

i'd appreciate redirections to (official or community) bash coding standards

you are viewing a single comment's thread
view the rest of the comments
[-] alyth@lemmy.world 63 points 1 week ago* (last edited 1 week ago)

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?

[-] smeg@feddit.uk 11 points 1 week ago

I can't recommend shellcheck enough, there are even plugins (for vscode and intellij at least) which give you syntax highlighting in your IDE

[-] ivn@jlai.lu 15 points 1 week ago

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.

[-] smeg@feddit.uk 1 points 1 week ago

"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!

[-] ivn@jlai.lu 6 points 1 week ago

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.

[-] smeg@feddit.uk 1 points 1 week ago

No idea, I'd never even heard of one until your comment! Is it worth setting up? What else does it do?

[-] ivn@jlai.lu 7 points 1 week ago

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.

[-] bionicjoey@lemmy.ca 7 points 1 week ago

I love ShellCheck! It's one of the biggest FOSS projects written in Haskell.

[-] t0mri@lemmy.ml 7 points 1 week ago

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 :]

[-] someacnt_@lemmy.world -4 points 1 week ago

But it is written in haskell, unpractical language

[-] someacnt_@lemmy.world 1 points 1 week ago

Well Why do I love trolling this much..

this post was submitted on 26 Jun 2024
87 points (96.8% liked)

Linux

45595 readers
653 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS