From 8d612cb1905ab3d989ab795e08495d9c716fb007 Mon Sep 17 00:00:00 2001 From: Yuchen Pei Date: Sun, 9 Jul 2023 17:17:41 +1000 Subject: Implement wikilink following --- wiki-engine.el | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) (limited to 'wiki-engine.el') diff --git a/wiki-engine.el b/wiki-engine.el index a2fcaef..a9f65d5 100644 --- a/wiki-engine.el +++ b/wiki-engine.el @@ -25,22 +25,23 @@ ;; client to wiki engines, wiki server software. ;;; Code: -(require 'wiki-markup) +(require 'wiki-utils) -(defvar-local wiki-engine-host "https://en.wikipedia.org" - "The host of the current wiki engine instance.") +(defun wiki-make-wikilink-url (title)) -(defvar-local wiki-engine-path "/wiki/" - "The path to the current wiki engine instance.") - -(defun wiki-engine-mediawiki-fetch (title) - (interactive "sFetch wiki title: ") +(defun wiki-engine-mediawiki-fetch (base-url title fetcher) + "Fetch a mediawiki entry describing TITLE." (wiki-fetch-url - (format "%s%s%s?action=raw" - wiki-engine-host wiki-engine-path title)) - (wiki-mode)) - + (format "%s%s?action=raw" base-url title) + (lambda () + (wiki-mode) + (setq-local wiki-fetcher fetcher) + ))) +(defun wiki-wikipedia-fetch (title) + (interactive "sFetch wiki title: ") + (wiki-engine-mediawiki-fetch "https://en.wikipedia.org/wiki/" title + 'wiki-wikipedia-fetch)) (provide 'wiki-engine) ;;; wiki-engine.el ends here -- cgit v1.2.3