Mandoku is a framework for supporting research on premodern Chinese texts. This includes the tasks of
- Philologically establishing a text, possibly by referencing and collating multiple versions of a text and digital facsimile(s).
- Reading, annotating, analyzing and translating a text.
- Working with repositories of texts, compare, study and analyze differences among these texts.
- Establish and maintain metadata about such texts, for example concerning the dates, authors, place of creation etc. of the texts.
- Compare notes, share information with other researchers working on these texts.
Technically speaking this is achieved by
- defining a text format.
- establishing conventions for collaboration to use texts based on this format.
- developing a working environment and tools for handling these texts.
The mandoku text format
The format used by mandoku is derived from the file format used in Emacs’ org-mode (see Org-Mode: Your Life in Plain Text) with some extensions and additional conventions. For more information, see mandoku-format.org.
Mandoku and related repositories needed are now on melpa, the
archive for emacs packages. The easiest way to get up and running
is to get a working Emacs (for OS X, I recommend
start it up, copy and paste the follwing code into the
scratch buffer, go to the end and press
For advanced users: The second line sets the base directory for the
folder hierarchy used by
Mandoku. If it does not suit you, change
it as needed.
(unless (require 'mandoku nil t) (setq mandoku-base-dir "~/krp") (require 'cl) (load "package") ;;we need the melpa repository for mandoku (add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t) (package-initialize) (defvar mandoku-starter-packages (list 'magit 'json 'org 'org-plus-contrib 'mandoku 'mandoku-meta-kr 'mandoku-meta-zb ) "Libraries that should be installed by default.") (unless (every #'package-installed-p mandoku-starter-packages) (package-refresh-contents) (dolist (package mandoku-starter-packages) (unless (package-installed-p package) (message "installing %s" package) (package-install package)))) (require 'mandoku) ;; (require 'mandoku-link) (mandoku-initialize) (unless (< 0 (length mandoku-user-account)) (find-file (expand-file-name "mandoku-settings.org" mandoku-user-dir )) (search-forward "uservalues")) )
The first time you run this, a lot of packages will be downloaded into the elpa folder. This takes a few minutes. You will then be asked for some additional information and might have to restart emacs.