diff options
Diffstat (limited to 'README.org')
| -rw-r--r-- | README.org | 95 | 
1 files changed, 95 insertions, 0 deletions
diff --git a/README.org b/README.org new file mode 100644 index 0000000..c87c34b --- /dev/null +++ b/README.org @@ -0,0 +1,95 @@ +#+title: wiki.el - an Emacs wiki mode for editing and browsing wiki files +#+author: Yuchen Pei +#+language: en + +NOTE: this project is very much WIP. + +* Intro +  :PROPERTIES: +  :UPDATED:  [2023-07-23 Sun 17:56] +  :END: + +wiki.el is an Emacs wiki mode for editing and browsing wiki files. +There are several goals and areas of emphasis that differentiates it +from other packages handling wiki. + +First, it aims at a unified approach to various wiki markups and +engines. On the markup front it will support standard or default +markups of various wiki engines, as well as standalone markups like +creole. + +On the engine front it will support fetching and browsing wiki titles +from various engines, as well as locally. Down the road we would like +to develop a minor mode that can help with link navigation and +browsing for non-wiki markups like markdown and rst. It remains to be +determined whether submitting edited wiki entries directly from emacs +is feasible under this unified approach. + +Second, it aims to be close to the Emacs core, including not only +using as many builtin features as possible and needed, but also +working in a similar way to core packages. Specifically, an org-like +set of navigation and editing features belongs to the second category. + +As a non-goal, wiki.el does not try to come up with its own markup +rules or languages, nor does it attempt to export wiki files to other +formats. + +Currently supported features: + +- Font-locking for basic mediawiki markups to the extent that +  Wikipedia titles are readable: headings, emphasis, linking, +  reference, etc. +- Fetching and link jumping work for mediawiki, oddmuse and moinmoin +  sites. Files are saved locally, that may be used for caching. +- Outline and imenu integration. + +* Install and use +  :PROPERTIES: +  :UPDATED:  [2023-07-23 Sun 18:08] +  :END: + +Clone, require, M-x: + +#+begin_src emacs-lisp +(add-to-list 'load-path "~/.emacs.d/lisp/wiki.el") +(require 'wiki) +#+end_src + +Some entry points: +- ~wiki-<site-name>-fetch~: fetch a title from a wiki site. These +  functions are defined by the macro ~defun-wiki-fetchers~, for all +  sites in the alist ~wiki-sites~. For example +  - M-x ~wiki-wikipedia-en-fetch~ RET Emacs RET +  - M-x ~wiki-parabolawiki-fetch~ RET Installation Guide RET +  - M-x ~wiki-libreplanet-fetch~ RET Group:Freedom Ladder RET +  - M-x ~wiki-emacswiki-fetch~ RET SandBox RET +- ~wiki-open-url~: fetches a title from a url. Example: +  - M-x ~wiki-open-url~ https://libreplanet.org/wiki/Group_talk:Freedom_Ladder RET + +* Prior Art +  :PROPERTIES: +  :UPDATED:  [2023-07-23 Sun 17:55] +  :END: + +EmacsWiki has [[https://www.emacswiki.org/emacs/WikiModes][a list of wiki modes]], classified under two categories: + +#+begin_quote +1. The first kind allows you to download a page from a remote wiki, +   edit it using Emacs, and submit it back to the wiki. +2. The second kind allows you to treat local files as a local wiki +   without using a browser. Usually these modes allow you to publish +   the local wiki as a set of static HTML pages. +#+end_quote + +wiki.el mainly falls under the first category, though it cannot be +used for submitting back to wiki yet. The modes listed under the first +category are mostly specialised to one engine / markup. + +wiki.el also supports editing local files as a local wiki, with native +linking support, though it does not aim to contain features for +exporting and publication. + +* Copyright and contact +  :PROPERTIES: +  :UPDATED:  [2023-07-23 Sun 17:18] +  :END:  | 
