aboutsummaryrefslogtreecommitdiff
path: root/wiki-engine.el
diff options
context:
space:
mode:
authorYuchen Pei <id@ypei.org>2023-07-09 17:17:41 +1000
committerYuchen Pei <id@ypei.org>2023-07-09 17:17:41 +1000
commit8d612cb1905ab3d989ab795e08495d9c716fb007 (patch)
treece8bb76a573549e8779b5721475f9f67854ab75d /wiki-engine.el
parent697db63180f49a3c33b440cf80eca74d39335826 (diff)
Implement wikilink following
Diffstat (limited to 'wiki-engine.el')
-rw-r--r--wiki-engine.el25
1 files changed, 13 insertions, 12 deletions
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