WikiLink - The Mediawiki Interface: Difference between revisions
No edit summary |
(→Usage) |
||
Line 130: | Line 130: | ||
Thus for example after |
Thus for example after |
||
<!--$$WikiSetPageText["Sandbox", "A robotic edit, |
<!--$$WikiSetPageText["Sandbox", "A robotic edit, at 19:39, 31-August-2005."]$$--> |
||
<!--Robot Land, no human edits to "END"--> |
<!--Robot Land, no human edits to "END"--> |
||
{{InOut| |
{{InOut| |
||
Line 148: | Line 148: | ||
The function <code>WikiSetPageTexts</code> is most useful for batch uploads, as it does considerably more error checking, and filters out edits which won't change the page text. It takes as argument a list of <code>{"title", "text"}</code> pairs, and returns a list of those pairs which failed. |
The function <code>WikiSetPageTexts</code> is most useful for batch uploads, as it does considerably more error checking, and filters out edits which won't change the page text. It takes as argument a list of <code>{"title", "text"}</code> pairs, and returns a list of those pairs which failed. |
||
<!--$$WikiSetPageTexts[{{"Sandbox", "A robotic edit, by --[[User:Scott|Scott]]"}, {"Sandbox2", "The determinant of the knot [[3_1]] is 3."}}]$$--> |
<!--$$WikiSetPageTexts[{{"Sandbox", "A robotic edit, by --"<>"[[User:Scott|Scott]] 15:39, 31 Aug 2005 (EDT)"}, {"Sandbox2", "The determinant of the knot [[3_1]] is 3."}}]$$--> |
||
<!--Robot Land, no human edits to "END"--> |
<!--Robot Land, no human edits to "END"--> |
||
{{InOut| |
{{InOut| |
Revision as of 14:39, 31 August 2005
WikiLink is actually two separate things; firstly, a java class for interfacing with a mediawiki server, and secondly, a Mathematica package providing a wrapper around this. This page documents the Mathematica package, whie the java class, and its addition functionality, will be documented elsewhere.
License
WikiLink.nb, WikiLink.m and wikilink.jar are copyright Scott Morrison, available under your choice of the MIT or GPL licenses. The other components are copyright by other parties, all available under the Apache license.
Download
Download WikiLink.zip (file description). Unzip this, probably in the same place you've unzipped the KnotTheory` package. This will create a subdirectory called WikiLink, containing (at least) these files:
Filename | Description |
---|---|
WikiLink.nb | The Mathematica notebook containing wrapper function definitions. |
WikiLink.m | The Mathematica package automatically generated from WikiLink.nb. |
wikilink.jar | The WikiLink java class and source code (MediawikiConnection.java). |
jdom.jar |
Libraries (all available under either GPL or the Apache license) required by wikilink.jar |
Importing the package in Mathematica
First, you'll need to set some paths, so WikiLink` can find the java files it needs.
In[1]:=
|
KnotAtlasPath = "c:\\scott\\math.berkeley.edu\\Work\\Mathematica\\KnotAtlas\\";
|
In[2]:=
|
AppendTo[$Path, KnotAtlasPath];
|
In[3]:=
|
SetDirectory[KnotAtlasPath];
|
In[4]:=
|
<< "WikiLink\\WikiLink.m"
|
In[5]:=
|
SetJarPath[KnotAtlasPath <> "WikiLink\\"];
|
We then try to connect to the wiki. Executing this line will prompt you for a username and password.
In[6]:=
|
CreateWikiConnection[
"http://katlas.math.toronto.edu/w/index.php",
wikiUserName=InputString["Enter Your Username:"],
InputString["Enter Your Password"]
]
|
The function WikiUserName[]
checks that we're logged in
|
In[8]:=
|
WikiUserName[]
|
Out[8]=
|
ScottManualRobot
|
Usage
WikiLink` provides only a few functions.
|
|
|
|
Thus for example after
In[13]:=
|
WikiSetPageText["Sandbox", "A robotic edit, by --[[User:Scott|Scott]]"]
|
Out[13]=
|
True
|
we get
In[14]:=
|
WikiGetPageText["Sandbox"]
|
Out[14]=
|
A robotic edit, by --[[User:Scott|Scott]]
|
The function WikiSetPageTexts
is most useful for batch uploads, as it does considerably more error checking, and filters out edits which won't change the page text. It takes as argument a list of {"title", "text"}
pairs, and returns a list of those pairs which failed.
In[15]:=
|
WikiSetPageTexts[{{"Sandbox", "A robotic edit, by --[[User:Scott|Scott]]"}, {"Sandbox2", "The determinant of the knot [[3_1]] is 3."}}]
|
Out[15]=
|
{}
|
In[16]:=
|
WikiGetPageText["Sandbox2"]
|
Out[16]=
|
The determinant of the knot [[3_1]] is 3.
|
Troubleshooting
The instruction ShowJavaConsole[]
will bring up a window in which some debugging information is displayed.
Compatibility
WikiLink has been tested against mediawiki 1.4.5beta3 and 1.4.7.