Difference between revisions of "Mediawiki-el"

From ArchWiki
Jump to: navigation, search
(Typos.)
(One intermediate revision by the same user not shown)
Line 49: Line 49:
  
 
Now enjoy editing wiki pages in emacs!
 
Now enjoy editing wiki pages in emacs!
 +
 +
==Tips and tricks==
 +
 +
MediaWiki provies a hook to customize configuration.
 +
For example, if {{keypress|C-return}} does not work for you, you can redefine it easily:
 +
{{bc|
 +
(setq mediawiki-mode-hook
 +
    (lambda ()
 +
        (define-key mediawiki-mode-map (kbd "C-c RET") 'mediawiki-open-page-at-point)
 +
))
 +
}}
 +
 +
===Autofill off===
 +
Wikis do not autofill paragraphs. If you do so, it might confuse history diffs, and thus making them useless.
 +
So you'd be better off turning the auto-fill feature completely off.
 +
Add to the hook the following line:
 +
{{bc|
 +
(setq mediawiki-mode-hook (lambda ()
 +
                          ;; ...
 +
                            (turn-off-auto-fill)
 +
))
 +
}}
 +
 +
===Specifying the browser===
 +
A convenient feature of Mediawiki is the {{ic|mediawiki-browse}} function which let you see the result of the page in a web browser.
 +
The browser is chosen following the ''browse-url'' plugin. You can configure this behaviour. For example:
 +
{{bc|
 +
(setq browse-url-generic-program (executable-find "luakit")
 +
browse-url-browser-function 'browse-url-generic)
 +
}}
  
 
== See also ==
 
== See also ==

Revision as of 13:51, 20 July 2012

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary end

Installation

There is a package in AUR:emacs-mediawiki-bzrAUR.

Or you can directly download the source from https://launchpad.net/mediawiki-el .

Configuration

After you install the package from AUR, open your emacs configuration file (usually, ~/.emacs) and add the following line in it.

(require 'mediawiki)

Then add the mediawiki sites to the configuration file. For example, the following line adds ArchWiki to it.

(setq mediawiki-site-alist
      (append '("ArchWiki" "https://wiki.archlinux.org/" "username" "password" "Main Page")
              mediawiki-site-alist))

Where Archwiki is the name for the site. https:/wiki.archlinux.org/ is the url of the site and username and password is your username and password of this site. Main Page is the default page opened when you connect to the site.

Other sites can also be added by appending the configuration list to the list variable mediawiki-site-alist.

Usage

After the configuration, you can use emacs to edit the wiki pages directly. Open your emacs and do the following to connect to the site.

M-x mediawiki-site RET {site name} RET

Now that you are connected, the default page should be opened. If you would rather edit another page. do the following to open it.

M-x mediawiki-open RET {page title} RET

Some useful keybindings are:

  • C-x C-s – save this page
  • C-c C-c – save this page and bury the buffer
  • C-return – open the page under point for editing
  • TAB – go to the next wiki link
  • M-n – next page in the page ring
  • M-p – previous page in the page ring
  • M-g – reload the current page

Now enjoy editing wiki pages in emacs!

Tips and tricks

MediaWiki provies a hook to customize configuration. For example, if Template:Keypress does not work for you, you can redefine it easily:

(setq mediawiki-mode-hook
    (lambda ()
        (define-key mediawiki-mode-map (kbd "C-c RET") 'mediawiki-open-page-at-point)
))

Autofill off

Wikis do not autofill paragraphs. If you do so, it might confuse history diffs, and thus making them useless. So you'd be better off turning the auto-fill feature completely off. Add to the hook the following line:

(setq mediawiki-mode-hook (lambda ()
                          ;; ...
                            (turn-off-auto-fill)
))

Specifying the browser

A convenient feature of Mediawiki is the mediawiki-browse function which let you see the result of the page in a web browser. The browser is chosen following the browse-url plugin. You can configure this behaviour. For example:

(setq browse-url-generic-program (executable-find "luakit")
browse-url-browser-function 'browse-url-generic)

See also