Big, important update to my export Nozbe as a mind map script. It is now possible to save changes made on the mind-map back to Nozbe!
Smaller changes also present in this release:
- download actions as CSV file (to be viewed in OOCalc, Excel or other spreadsheet),
- more information on the map (project tags, marking repeating and shared actions).
Below just the short description. Expect more elaborate and illustrated instruction within next few days.
Installation
Installation of all necessary prerequisities is covered in previous article. Note that XMind has just published update (3.0.1) which removes the necessity to install the marker package, so it makes sense to upgrade it if you have previous version.
Once you have python, setuptools, lxml and xmind installed, execute the following:
easy_install http://mekk.waw.pl/download/nozbe2xmind/mekk.xmind-0.3.0-py2.5.egg
easy_install http://mekk.waw.pl/download/nozbe2xmind/mekk.nozbe2xmind-0.3.0-py2.5.egg
(or check http://mekk.waw.pl/download/nozbe2xmind/ for newest versions)
Optional step: if you haven't upgraded to XMind 3.0.1, you would like to try editing contexts on the map, or just would like to use Nozbe context icons on maps for your own purposes, install the NozbeIconsMarkerPackage.xmp:
- download the NozbeIconsMarkerPackage.xmp file and save it
- run XMind
- select
Import...
from theFile
menu- select
Marker Package
in the window displayed and clickNext
button on the bottom of the window- select
From File
, clickBrowse...
, find the the file you downloaded- click
Finish
If you use XMind 3.0.1 this step is not necessary (and you can remove previously installed icons if you don't want them anymore).
Downloading from Nozbe
If you are on Windows, open console (menu Start, Run... and type cmd
), if on Linux,
open terminal. Type the following command (you can save it as nozbedownload.bat
or sth
similar to avoid retyping the key):
python -m mekk.nozbe2xmind.run download --key=*your-api-key* --map=mynozbe.xmind
To download the CSV (spreadsheet) file, do:
python -m mekk.nozbe2xmind.run download --key=*your-api-key* --csv=mynozbe.csv
Add --complete
if you want to download completed actions too (by default they are not
downloaded).
You can ask the program for detailed help:
python -m mekk.nozbe2xmind.run --help
Also, on Linux you can use shorter syntax:
nozbe2xmind download --key="..." --map=out.xmind
The script should output something like:
Loading projects...
DONE.
Loading actions...
DONE.
Loading contexts
DONE.
Saved to mynozbe.xmind
Open the created file in XMind and enjoy.
In case Nozbe developers or testers are reading it: it is possible to work against the test site. Just add
--devel=user,pwd
whereuser
andpwd
are credentials for HTTP authentication.
Saving back
It is now possible to save changes made on the map back to Nozbe.
What can be saved
You can:
- edit names of projects and actions (just edit texts on the map),
- move actions between projects (just drag and drop them),
- create new projects (just add new children of the map center),
- create new actions (just add new children of some project),
- flag actions as completed (add "completed" marker to the action),
- revert actions to uncompleted (remove this marker),
- edit project tags and descriptions (edit topic label and topic notes).
If you have the icons package installed, you should also be able to edit contexts (by changing markers), but this is not very convenient and I don't really recommend it.
There are some restrictions you should keep to make it possible.
Click the Help
sheet on the map
(bottom left corner of XMind window) for details (most important: keep projects as direct children
of the map center).
The script which saves the changes is forgiving - it just saves everything it understands and skips the rest. And it does not delete anything even if you do (so you can delete some projects and actions from the map if you want to concentrate on the rest).
How saving works
Once you edited your map in XMind, just save it, and run the upload script. It will analyze the map, compare it to what you originally downloaded (there is a hidden attachment inside the map which contains your original data), detect what you did, and try to match your actions to the rules described above. So, for example, if it finds that some action topic changed the text, it will offer renaming the action this topic represents.
So:
-
Finish your XMind edits and save,
-
Review the changes before upload:
python -m mekk.nozbe2xmind.run info --map=mynozbe.xmind
this will print the list of changes the program found on the map, but without uploading them
(so you can use the info
command to check what is to change before uploading)
-
Actually upload the data:
python -m mekk.nozbe2xmind.run upload --key=*your-api-key* --map=mynozbe.xmind
-
Visit Nozbe and see the changed data.
-
Remove the map (if you want to edit further, redownload again).
Warnings
A few words of warning:
-
This is an early release. There may be bugs. It may happen that the program crashes, or fails to upload the data. It may happen that it misinterprets something you do. Try it on non-critical project, or maybe even separate account, before using on crucial data. Try making a few small changes and uploading them before changing a lot.
-
Until you are comfortable with a tool, use
info
before usingupload
and review its output. -
Do not upload the same map twice, it will create duplicate copies of newly added projects and actions. Once you uploaded, redownload the map if you want to edit further (but, of course, you can run
info
many times). -
Do not edit directly while editing on the map (at least, do not edit via the web the actions you move or edit on the map). Changes are saved as a whole, so if you:
- download the map
- rename some action directly on Nozbe
- move the same action to another project on the map,
- upload map changes the action will return to the name it has on the map. Having said that, adding new actions to Inbox while editing map should be safe.
If something really wrong happens, do not remove the xmind file. The attachment inside contains parseable archive of all you projects and actions as they were downloaded.
Further plans
I consider the following ideas for further development:
-
Start working on some GUI. Initially just something simple (up to two buttons download and upload), later on more elaborate window showing the list of changes and maybe even allowing one to pick which should be saved and which should not.
-
Make the installation easier (binary Windows distribution).
-
Look for further ideas of map improvements.
And, of course, test, test, test...