InterWiki: historyczna wersja

To jest stara wersja strony z , edytowana przez użytkownika 🍬. Może się ona różnić od obecnej wersji.

Podgląd

To jest dokumentacja pliku https://wandystan.eu/varia/intermap.txt

Co to jest InterWiki?

InterWiki to metoda linkowania do artykułów znajdujących się na innych stronach typu wiki przy użyciu krótkiego identyfikatora danego wiki. Przykładowo, używając składni typu [[Example:Tytuł strony]] (MediaWiki, PmWiki), [[Example>Tytuł strony]] (System Stron Wandejskich, DokuWiki), czy Example:"Tytuł strony" (UseModWiki) możemy zalinkować do artykułu znajdującego się pod adresem https://example.org/wiki/Tytuł_strony.

Główną zaletą takiego sposobu linkowania jest to, że jeżeli adres podlinkowanej witryny zmieni się, niepotrzebna jest aktualizacja linków na każdej stronie.

Czym jest plik intermap.txt?

Jest to plik, w którym zawarte są identyfikatory mikronacyjnych stron typu wiki (ale nie tylko), wraz z prefiksami oraz sufiksami dołączanymi do tytułu artykułu, aby uzyskać jego adres strony internetowej.

Składa się on z oddzielonych znakami nowej linii rekordów, składających się z oddzielonych znakiem spacji kolejno:

  1. Identyfikatora strony, zaczynającego się wielką literą i zawierającego jedynie bezdiakrytyczne znaki alfabetu łacińskiego oraz kropki;
  2. Prefiksu adresu strony internetowej;
  3. (opcjonalnie) Sufiksu adresu strony internetowej.

Dodatkowo, w pierwszej linijce zawsze zamieszczony jest adres niniejszego artykułu dokumentującego ten plik. Linijka ta jako jedyna zawsze zaczyna się kropką.

Format pliku jest zgodny z formatem InterMap używanym m. in. przez UseModWiki.

Jak używać pliku intermap.txt?

Należy ustawić cykliczne wykonywanie skryptu (np. za pomocą crona, czasomierzy systemd), który:

  1. Pobiera plik intermap.txt z https://wandystan.eu/varia/intermap.txt;
  2. Konwertuje go na format właściwy dla zainstalowanego systemu wiki (alternatywnie: wstawia dane w nim zawarte do bazy danych);
  3. Zapisuje go we właściwej lokalizacji.

Przykład takiego skryptu można znaleźć poniżej:

#! /bin/sh
#
# Any copyright is dedicated to the Public Domain.
# http://creativecommons.org/publicdomain/zero/1.0/
#
target=/path/to/the/wiki/installation/localmap.txt
trap 'rm -f "$target.tmp"' EXIT

test "$(
    exec 3>&1
    {
        curl -fsS https://wandystan.eu/varia/intermap.txt
        echo $? >&3
    } | tail -n +2 | while IFS=' ' read -r moniker prefix suffix
    do
        # Change the line below to fit your wiki system
        printf '%s: %s$1%s\n' "$moniker" "$prefix" "$suffix"
    done > "$target.tmp"
)" -eq 0 || exit 1
mv -f "$target.tmp" "$target"

Innym przykładem takiego skryptu jest intermap2php używany przez System Stron Wandejskich i wywoływany za pomocą następującej reguły make:

include.interwiki.php: ../varia/intermap.txt helpers/intermap2php
    helpers/intermap2php < $< > $@