#!/usr/bin/zsh
nl=$'\n'
dnl=$'\n\n'
url=$1
msgcontent=$url; shift
argi=1
for arg ($@); do
argi=$(($argi + 1))
msgcontent=${msgcontent}${nl}Argument\ ${argi}': '${arg}
done
title="${0:A}"
msg="An application attempted to open a web page:${dnl}\"${msgcontent}\"${dnl}Copy the URL to clipboard?"
kdialog --title $title --yesno $msg
answer=$?
if [[ $answer = 0 ]]; then wl-copy $url; fi
If you want to translate it to Bash, keep in mind that arrays behave differently between the two shells, and syntax like for arg ($@); do would likely misbehave or not work at all.
Also, there's an issue where some applications do something weird, and the URL seems to be a zero-length argument. I have absolutely no idea what's up with that.
You can set some browser-unrelated program or script as your desktop environment's default browser, for example I wrote a Zsh script that creates a KDE dialog and asks me to copy the URL to the clipboard.
I'm not currently at my PC, but if you want it I can paste it in a comment here when I get to it - it shouldn't be too hard to translate it to Bash, either.
Other than that? /usr/bin/true is a pretty nice default browser for applications to start without your consent, very minimal and lightweight.
I imagine reflections would make the process more straightforward, requires expressions are powerful but either somewhat verbose or possibly incomplete.
For instance, in your example foo could have any of the following declarations in a class:
Tip:
you can replace your periods with three dashes to get a horizontal separator, which I think is what you were going for. It's markdown syntax, it should work for most clients.
I can see the footguns, but I can also see the huge QoL improvement - no more std::enable_if spam to check if a class type has a member, if you can just check for them.
... at least I hope it would be less ugly than std::enable_if.
The first one that comes to mind is Fortnite, it has been used for advertising Halo and Star Wars, at least I think those were sponsors veiled as simple crossovers but I'm sure they're not the only sponsors/crossovers.
Though, mostly I was refering to almost every live-service game as of late, if you count "please check out the shop and buy these new skins" as advertisements. They're not being paid by third parties to deliver them, but they sure were as annoying as TV ads when I experienced them...
The latest example I can think of is Sea Of Thieves, where I still haven't fully figured out how menus work because sometimes half of the screen points you to some kind of shop.
Meh, its base-2 exponent is not a power of 2. I'm more of a 65536 kinda guy.