this post was submitted on 27 Sep 2024
97 points (81.7% liked)

Showerthoughts

29678 readers
1392 users here now

A "Showerthought" is a simple term used to describe the thoughts that pop into your head while you're doing everyday things like taking a shower, driving, or just daydreaming. A showerthought should offer a unique perspective on an ordinary part of life.

Rules

  1. All posts must be showerthoughts
  2. The entire showerthought must be in the title
  3. Avoid politics
    1. NEW RULE as of 5 Nov 2024, trying it out
    2. Political posts often end up being circle jerks (not offering unique perspective) or enflaming (too much work for mods).
    3. Try c/politicaldiscussion, volunteer as a mod here, or start your own community.
  4. Posts must be original/unique
  5. Adhere to Lemmy's Code of Conduct-----

founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] victorz@lemmy.world 60 points 1 month ago (2 children)

Thank God they went with file name extensions so we didn't have to preface every source .txt file with header content to instruct the editor about what kind of content it would have.

[–] JackGreenEarth@lemm.ee 7 points 1 month ago (4 children)

Why do I need to put that at the start of bash, desktop, and html files then?

[–] cron@feddit.org 14 points 1 month ago (1 children)

Because both ways are used. Microsoft relies on file names, linux on the first bytes of the file.

[–] p_consti@lemmy.world 20 points 1 month ago* (last edited 1 month ago) (1 children)

Not quite correct. For html, that is to signal standard compliance, you can leave it away and the browser will still handle it. For the bash one, all (most) shell scripts use .sh, so you need to give a shebang to tell the loader which executable (sh, bash, zsh, csh, ...) to use

Also on Linux xdg does take file extensions into account, just executables do not

[–] cron@feddit.org 5 points 1 month ago

You're right, my comment was oversimplified.

[–] Revan343@lemmy.ca 5 points 1 month ago

For shell scripts it's because bash isn't the only shell; if you leave out the shebang line, Ubuntu will run your script in Dash instead

[–] xigoi@lemmy.sdf.org 4 points 1 month ago* (last edited 1 month ago)

For HTML, it’s to distinguish “standards mode” HTML from “quirks mode” HTML (which doesn’t need a header).

[–] LodeMike@lemmy.today 1 points 1 month ago (1 children)

Nothing unless you want to serve them without some other way to see what file type they are.

You can run bash scripts with bash.

Don't know what a desktop file is.

HTML has that because webservers used to not have auto media type detection and response headers.

[–] Ephera@lemmy.ml 4 points 1 month ago

.desktop files are a Linux/Unix thing. Basically, it's a fancy shortcut, usually to an application, which allows specifying additional infos, like e.g. translated names.
In particular, the contents of the application menu are defined by just a folder filled with .desktop files.

https://en.wikipedia.org/wiki/Shortcut_(computing)#Unix