Wikilink
-
A wikilink looks like this: [[wikilink]]. They are text surrounded by two square brackets.
- Not to be confused with an [[ECMAScript internal property]], which is also surrounded by doubel brackets :)
-
Wikilinks come, wait for it, from [[wiki]]s :) But they need not be limited only to things we usually think of as wikis.
- You could use [[wikilinks everywhere]].
- You can think of the Agora as a sort of distributed wiki, although users in this particular kind of wiki volunteer individual contributions instead of editing common pages (for now).
-
Wikilinks are the heart of this [[agora]].
-
[[wikilink]] resolves to
node/wikilink
in an [[agora]]. - When needed [[slugify]] rules are applied.
- Wikilinks are great because they allow for very easy linking: you just [[link it as you go along]], then the link either works (because someone wrote that node/article/resource already) or you can click through and backfill it. I call this procedure link-driven writing.
- Whenever there is more than one [[node]] with a given wikilink in an Agora (typical use case: notes kept on a certain topic by different users), the Agora will surface all of them when resolving the wikilink in question. Example: [[README]].
-
[[wikilink]] resolves to
- [[pull]] [[wikilinks]] [[wikilinks everywhere]]
Feel free to use [[[[backlinks]]]], [[wikilinks]], [[edges]], [[multilinks]], or [[whatever the fuck you want to call it]] anywhere when talking to me in reference to something on the [[anagora]] or otherwise, my browser will resolve wikilinks in the default order, aside from duckduckgo
as the 3rd step for unprefixed
.
What?! [[Wikilinks Everywhere]], enjoy 🥰!
Wikilinks
- a [[list]].
-
a [[thing]].
- I'm excited about [[wikilinks everywhere]].
-
[[vera]] suggested we rename these. Some brainstorming follows
- [[neil]] [[hyphalinks]]
- [[multilinks]]: as they are unlike regular links in that they can point to many different places -- which particular URL they resolve to depends on the user clicking them.
- [[querylinks]] ([[qlinks]]?): as they essentially behave as queries in the agora. queries return relevant subnodes/resources.
-
[[nodelinks]] as they map to nodes in the agora.
- [[edges]]?
- https://twitter.com/flancian/status/1437079541860769803
wikilinks
-
im also tempted to rebrand wikilinks
- it's kinda a weird word
- it's not the selling point for people to join the [[agora]] I thought it was going to be
- wikilinks are cool, I just feel like they need a cooler name
-
potential alternative names
- netlinks
Developed by [[@evan]] Boehs, [[unlicense]]d, powered by [[flancia]]
Wikilinks everywhere is a chrome extension that brings [[wikilinks]], and through it the [[internet]], to life. It can be installed on a large number of browsers and services, and will intelligently determine where [[broken]] wikilinks should go to based on your settings.
Sources
You can order or disable any of these sources at will. When a wikilink (regardless of if it is properly linked already) is detected the extension will go through these sources in that order you provided. The default order is explained below.
Options
Global
-
Error codes:
- Comma separated HTTP status codes
- Supports
n
xx - Default:
4xx, 5xx
Source specific
-
Ignore errors
- Checkbox
- Should error cases be ignored?
- Default: Unchecked
Actual sources
Note: The last source is the catchall, no matter what it will ignore errors and faithfully complete the link. This means do nothing has importance. Don't remove or reorder
Existing
If a existing link is already present do nothing
Note: the only difference between the existing source and others is it changes nothing in the browser. By default, if the existing link resolves to
global.error
, it will move on to the sources below and consider replacing it with them
Note: this might have made no sense. Don't mess with it, probably, it exists for a reason
Prefix
Things like WP:link
for wikipedia, or AG:link
for [[anagora]], the schema looks like PREFIX:page
.
Options
-
Prefixes
-
A table of prefixes and the corresponding url
- use
{page}
to have the provided back link, so with theWP
prefix the url would bewikipedia.org/wiki/{page}/
- DON'T INCLUDE THE
:
IN THE PREFIX
- use
-
A table of prefixes and the corresponding url
[[IWLEP]]
The user's [[IWLEP]] rules. See the IWLEP page for that config, but it is it looks a lot like your config, instead made by the author of the backlink. Don't worry, it can't be faked *unless the user gets hacked but lots worse things could happen.
Unprefixed
Iterates through all the listed urls in your order until one does not error, or all error.
{page}
is the value between the brackets
Options
-
List
-
Default:
wikipedia.org/wiki/{page}/
anogora.org/{page}/
-
Default:
Nothing
What does it say on the tin?
Concerns
Bandwidth
We use an extraordinarily large amount of bandwidth, and there is not much that we can do. That being said, the whole web is obese so I highly doubt we end up using more than 0.2 of the bandwidth of a standard blog (~1Kb a page so ~15kb a wikilink so ~150kb a page). Below is what we tried
✔️ Request methods
There is no STATUS
request so we had to make due with HEAD
. This will only fetch the part of the website that has the page name and useful information. It does not get the page contents, saving bucket loads of bandwidth.
👷♀️ Local catch
Once implemented we will store the last 1000 pages we checked, so if a wikilink is frequencintly used it will only be loaded once
❌ Catch server
This means storing the status code of every website we checked. I don't really like the idea of storing personal information like that.
Ratelimits
By
Browsers
- Powercord 🔌 (Discord) Plugin
- Chrome
- FireFox 🔥🦊
-
A [[project]]. [[open source]].
-
The [[goal]] is to make [[wikilinks]] work everywhere on the internet.
- A [[wikilink]] is any entity or phrase surrounded by two square brackets.
-
[[wikilinks]] can be [[lazily resolved]] in a user chosen [[context]].
- Default context: an [[agora]] of the user's choice.
- It has a [[browser extension]] component.
-
It has a [[social network]] component.
- People could start using [[wikilinks]] on any platform that supports user generated [[content]] online, social networks being likely the most popular interfaces.
- For the purpose of connecting to such platforms we'd like to develop an [[agora bridge]].
- [[go]] https://docs.google.com/document/d/1h2kSuh7TntPj_XZ7BnLPDwtwshq7skzF3BIYwLgVquA/edit#
- [[chat]] https://app.element.io/#/room/#wikilinks:matrix.org
- [[tweet]] https://twitter.com/flancian/status/1337835415215202308
- See also [[agora rfcs]], in particular 0 and 2.
-
The [[goal]] is to make [[wikilinks]] work everywhere on the internet.
[[2021-04-14]]
The plan is to get in at least two pomodoros in this to advance it somehow in the direction of a prototype. Will try to build on [[agora ext]].
Wikilinks everywhere
[[wikilinks]]
<link rel="stylesheet" href="https://doc.anagora.org/css/center.css"> <button class="pull-url" value="https://doc.anagora.org/css/center.css">">pull</button>
<div class="container-fluid text-center">
<div class="vertical-center-row">
<h1>500 Internal Error <small>wtf.</small></h1>
</div>
</div>
- public document at doc.anagora.org/wikilink
- video call at meet.jit.si/wikilink
2020 11 01
2020 11 02
2021 01 30
2021 07 18
2021 11 20
2021 11 21
2022 02 17
2023 03 12
2023 03 20
2023 03 22
2023 09 18
agora actions
agora fuzzy matching
agora help
agora node aliasing
agora pkg chapter
agora twitter integration
agroecology
apps script
armengolaltayo
chris aldrich
closing wikilinks
concrete nouns
digital gardener taxonomy
foam
hashtags
index
inserting wikilinks into quotes
integrated
link it as you go along
maitreya ai
node
oliver sauter
olofl
passive learning
the agora is a markdown extension
wikilinks
wikilinks everywhere