xowa offline wiki application

gnosygnu 2a4abd8f75 Gui: Fix NullPointerException when pressing backspace on empty search box [#841] il y a 3 ans
100_core 659bca3660 Parser: Prepend `0` to all strings starting with `.`, even just `.` [#838] il y a 3 ans
110_gfml 775bff3bac Wikibase: Do not fail for FormatStatements and getPropertyOrder [#658] il y a 4 ans
140_dbs a2fe75f402 RandomRootPage: Do not fail to find page for some random selections; also, do not show 'Redirected from redirected_title' [#719] il y a 4 ans
150_gfui e117823e60 Gui: Manually fire javascript event and exit [#836] il y a 3 ans
400_xowa 2a4abd8f75 Gui: Fix NullPointerException when pressing backspace on empty search box [#841] il y a 3 ans
401_xowa_updater 66877212bf Embeddable: Create core dbs in proper subdirectory il y a 7 ans
baselib bdae819908 Scribunto: Trim zeroes when stringifying Doubles [#697] il y a 4 ans
gplx.gflucene ecbcf1e707 GFLucene: Add lucene binaries [#707] il y a 4 ans
lib aeef520228 Dev: Fix failing tests after project rebuild [#826] il y a 4 ans
res ff0f92b950 Gui: Encode and decode image sources [#829] il y a 3 ans
tst de67253a9c v3.2.1.1 il y a 8 ans
.gitignore aeef520228 Dev: Fix failing tests after project rebuild [#826] il y a 4 ans
LICENSE-APACHE2.txt 42c54e2029 Developer: Change license to GPLv3 / Apache2 il y a 7 ans
LICENSE-GPLv3.txt 1179e2848f Developer: Change license to GPLv3 / Apache2 in source code headers il y a 7 ans
LICENSE.txt 1179e2848f Developer: Change license to GPLv3 / Apache2 in source code headers il y a 7 ans
README.md b3120bab39 Dev: Update README.md for command-line il y a 5 ans
build.xml baaef32df2 'v3.3.4.1' il y a 8 ans
xowa.home.version 7550894dda Release: Update for 4.6.11.2009 [#801] il y a 4 ans
xowa_get_and_make.sh 6663b769d5 Dev: Fix broken 'xowa_get_and_make.sh' due to JDK 8 and new *Test files [#718] il y a 4 ans

README.md

Overview

XOWA is an offline Wikipedia application that lets you run Wikipedia on your computer.

XOWA showing Wikipedia's article on Wikipedia

Features

  • Run a complete copy of English Wikipedia from your computer.
  • Display 5.0+ million articles in full HTML formatting.
  • Show images within an article. Access 4.0+ million images using the offline image databases.
  • Set up over 800+ other wikis including: English Wiktionary, English Wikisource, English Wikiquote, English Wikivoyage, Non-English wikis (French Wiktionary, German Wikisource, Dutch Wikivoyage), Wikidata, Wikimedia Commons and many more.
  • Update your wiki whenever you want, using Wikimedia's database backups.
  • Navigate between offline wikis. Click on "Look up this word in Wiktionary" and instantly view the page in Wiktionary.
  • Edit articles to remove vandalism or errors.
  • Install to a flash memory card for portability to other machines.
  • Run on Windows, Linux and Mac OS X. (Android Alpha available)
  • Run as an HTTP server to browse from Firefox, Chrome or Safari
  • View the HTML source for any wiki page.
  • Search for any page by title using a Wikipedia-like Search box. Search across wikis as well.
  • Browse pages by alphabetical order using Special:AllPages.
  • Find a word on a page.
  • Access a history of viewed pages.
  • Bookmark your favorite pages.
  • Preview articles by hovering over links
  • Customize any one of over 50 options

Requirements

XOWA is written in Java and requires 1.7 or above.

Installation

  • Download xowa_app_your_operating_system_name.zip from https://github.com/gnosygnu/xowa/releases/
  • Unzip to any folder on your hard drive (or flash memory card)
  • Run XOWA
    • On '''Windows''', double-click '''C:\xowa\xowa_64.exe'''
    • On '''Linux''', open a terminal and run sh /home/your_user_name/xowa/xowa_linux_64.sh
    • On '''OS X''', open a terminal and run sh /Users/your_user_name/xowa/xowa_macosx_64.sh

Development Info

Compilation instructions (Command-line)

REQUIREMENTS

PROCESS

  • Copy-paste https://github.com/gnosygnu/xowa/blob/master/xowa_get_and_make.sh to a plain-text file; EX: /cygdrive/c/xowa_dev/xowa_get_and_make.sh
  • Adjust these environment variables to your system: PLAT_NAME, ROOT_DIR, ANT_BINARY, JAVA_JDK_DIR
  • cd to your ROOT_DIR
  • Run the file using "sh xowa_get_and_make.sh"
  • Run the xowa_dev.jar
    • (Windows) java -jar xowa_dev.jar
    • (Linux) SWT_GTK3=0 && java -jar xowa_dev.jar
    • (Mac OS X) java -Xmx256m -d64 -XstartOnFirstThread -jar xowa_dev.jar

Compilation instructions (ANT command-line)

Setup the XOWA app

  • Download the latest XOWA app package for your operating system. For example, if you're on a 64-bit Linux system, "xowa_app_linux_64_v1.9.5.1.zip".
  • Unzip the XOWA app package to a directory. For the sake of simplicity, these instructions assume this directory is "/xowa/"
  • Review your directories. You should have the following:
    • An XOWA jar: "/xowa/xowa_linux_64.jar"
    • An XOWA "/bin/any/" directory with several jar files. For example, "/xowa/bin/any/java/apache/commons-compress-1.5.jar"
    • An XOWA "/bin/linux_64/" directory with an SWT jar: "/xowa/bin/linux_64/swt/swt.jar"

Setup the XOWA source

  • Download the latest XOWA source archive. For example: "xowa_source_v1.9.5.1.7z"
  • Unzip the source to "/xowa/dev". When you're done, you'll have a file called "/xowa/dev/build.xml" as well as others
    • NOTE: if you're not on a Linux 64-bit system, overwrite the swt jar at "/xowa/dev/150_gfui/lib/swt.jar" with the copy from your "/bin/OS" directory. For example, if you're on a 64 bit Windows system, replace "/xowa/dev/150_gfui/lib/swt.jar" with "/bin/windows_64/swt/swt.jar"

Run the ant file

  • Open up a console, and run "ant -buildfile build.xml -Dplat_name=linux_64"

IDE instructions (Eclipse)

Environment

The '''xowa_source.7z''' was built with Eclipse Indigo. There are no OS dependencies, nor are there dependencies on Eclipse.

Setup

  • Follow the steps in these two sections from above:
    • Setup the XOWA app
    • Setup the XOWA source
  • Launch Eclipse. Choose a workbench folder of "/xowa/dev"
  • If the projects don't load, do File -> Import -> Existing Projects Into Workspace
  • Select all projects. Do File -> Refresh.
  • Right-click on 400_xowa in the Package Explorer. Select Debug As -> Java Application. Select Xowa_main. XOWA should launch.
  • Right-click on 400_xowa in the Package Explorer. Select Debug As -> JUnit Test. All tests should pass.

Eclipse-specific settings

This section documents specific project customizations that differ from the standard Eclipse defaults.

Project properties

Resource -> Text file encoding -> Other -> UTF-8

Preferences

These settings are available under Window -> Preferences

  • Disable Spelling
    • General -> Editors -> Text Editors -> Spelling *Ignore Warnings
    • Java -> Compiler -> Errors/Warnings
      • Annotations -> Unhandled token in '@SuppressWarnings'
      • Potential programming problems -> Serializable class without serialVersionUID
      • Generic Types -> Unnecessary generic type operation (In Eclipse Luna: "Unchecked generic type operation")
      • Generic Types -> Usage of a raw type
      • Unnecessary Code -> Unused import
Configuration arguments
  • Configuration arguments
    • Run -> Debug Configurations -> Arguments
      • --root_dir /xowa/ --show_license n --show_args n

License

XOWA is licensed under the terms of the General Public License (GPL) Version 3, or alternatively under the terms of the Apache License Version 2.0.

See LICENSE.txt for more information.