====== TODO ======

==== Wanted ====
* Somebody to build and maintain a Windows executable

==== Questions ====
* How are selections supposed to behave ?

==== As Soon As Possible ====
* Make text tags "moded"
* Catch exit signals
* All components should be loaded using eval
* Make "recent" pathbar only show recently //edited// pages
	* Remove deleted pages
* Remove pages that are 'new' and never edited from the history
* "Edit image" dialog
	* Change ^E from "edit link" in "edit object"
* Logic to distinguish between page name and files (''m/\/|\\|\.\S+$/'')
* Drag-n'-drop move between namespaces in the index
* Auto-completion in "open page" dialog and similar dialogs
* More intelligent resolving of links (upward search)
* Parsetree nodes for items in a list
* Desktop support for file:// uris and images
	* use File::MimeInfo::Application
	* render small mimetype icons ?
* Search dialog
	* namespace (string)
	* recursive (toggle)
	* case sensitive (toggle)
* Start using ''/usr/share/zim/plugins''
* create the component base class
* document and autoload actions (also for components)

====== Version 1.0 ======
* Make "undo" work correctly after a  reload
* On move page, history should pass on undo stack to new name
* On delete page the undo stack should be erased
	* and entry from recent stack should be removed (?)
* Fix proper support for commandline switches
* Multiple formats in one tree
	* each repository has a default format
	* make page resolve independent of extension
	* at least support **pod** and **xml**
	* create Zim/Formats.pm as a hub to coordinate the formatters
* Menu items
	* new page (^N) (also add this in tree context menu)
		* like "jump to" +template selection ?
	* open repository (^O)
	* revert (reload without saving first) .. only makes sense with backup
	* save copy
	* export (+ export dialog)
	* properties (+ properties dialog ) ?
	* preferences
	* add a preferences dialog
		* split config file in "state" (.rw and .ro) and "preferences"
			* split ''%settings'' in ''%state'' and ''%config''
		* add per repository config
			* default file type
		* general config
			* tearoff menus
		* add "help" button that links right manual page
* Context menu items for index
	* "split" split page to namespace (each heading its own page)
	* "merge" include namespace content in a single page
	* "export" prompt export page/namespace
* More intelligent "insert image"
	* check directory logic
	* add copy/link option
	* filter files for acceptable mimetypes
* Page properties
	* read only 
	* no auto save
* Add perldoc plugin to help browser
* Release Gtk2::Ex::* modules to CPAN
* Make it possible to open just one file "word pad" style
	* hide the word "repository" from user in this case
	* switch --traditional ?
* Tag styles configurable (style sheet) - defaults do not work with all themes
* Think about supporting Locale settings
* Documentation
	* code documentation
		* parse tree documentation
		* [[zim:devel:class_diagram|class diagram]]
	* user documentation
* Test scripts
	*  for parser
		*  can we do the full round trip through zim ?
	*  for filename lookup
		*  check Z:P:F->realname versus Z->pagename
		*  utf8 chars in filename
	* utf8 content

====== Version 2.0 ======
* Add a [[zim:devel:database|database]] with meta data, indexes, history etc.
	* SQLite fits the profile for default backend
	* Content stays in plain files !
* mindmap widget
* complete plugin interface

====== version X ======
* Make folding lists, "in page" outlining
	* Combine this with the idea of index pages, all items automaticly link to pages below the outline page (but can be edited to link elsewhere)
* tools->word count
* make it possible to reorganise the toolbar
* plugin using gtksourceview for editing code
* package plugins
	* calender namespace ?
	* export to other formats
		* docbook ?
		* opendocument ?
	* other wiki dialects
	* archive / backup / revision control
* full Drag-n-Drop support
	* external image to text => link/embed
	* external file to text => link (desktop integration)
	* index item to text => link
	* text to index item => cut and append text to page
* Style difference for non-existing links
* Wiki code for sub-/super-script ?
* Can we make text in lists linewrap in a visually pleasing way ?
* Make ^Z work on complete words only
* Detect when a page has changed while we are displaying it
* Also use UIManager for the treeview context menu
* Persistent history for read-only repository in $XDG_CACHE_HOME ?
* "use_wikiword" option for autolinking in PageView
* Speed up loading the index, load per directory
* Internal references (images, tables, footnotes, ...)
	* anonymous links ?
	* dynamic numbering
	* each referenced item should have a unique id
		* map id to table record
		* map id to new page
		* let formatter number these ids on export
	* footnotes could be displayed in seperate pane below normal text
		* or in seperate window
* Configure browser per protocol + default
* Something to highlight the urgency of todo-list items like colours ?
* More heuristic version of follow_link => only follow when page doesn't exist ?
* Printing support
	* needs gnome libs, maybe implement as a plugin ?
