MindReader: Send topic(s) to a new map based on entered keyword

Hans poured over the MindReader code and made several great suggestions, additions, and bug-fixes. For example, MindReader now adds a gray "blob" icon if it does not a responsible resource or an action verb to use in assigning a context. The big addition though is of a new GyroQ MindReader "s" tag.

The existing "o" tag works uses the "mindreaderOpen.mmbas" macro to open a map based on keyword entered at the GyroQ prompt. The new "s" tag works similarly, but takes that one step further by "cutting" the currently selected topics and pasting them into the destination map selected. If it doesn't find a keyword match, it will paste them into the in-tray of your "daily capture map".

Since the macro is preforming a "cut" operation, you should use it with caution initially. If for some reason the macro crashes, you should be able to retrieve your topics by "pasting" them to a map.

MindManager Mindreader GyroQ tag overview

How to get the new "s" tag
If you are new to MindReader, you should install the set of files it needs based on the instructions on the MindReader Project Page. If you are an existing user, you need to paste the "packed text" for the s tag" from the GyroQ tag library into GyroQ and download the updated copy of MindReaderOpen.mmbas. You can get the macro from the macro library or by downloading the mindreader.zip file. Note that if you run "s" without the new MindreaderOpen.mmbas, it will cut your topics but not paste them!

Note that you can use the "mra" tag to quickly add new maps/keywords to your mindreader.mmap configuration file. It will also prompt you for new verbs and contacts, but you can "cancel" past those sections.

You can follow developments on MindReader by following the post-comments on the "A configurable GyroQ Tag for parsing Action Items" post.

28 Comments »

  1. Hans said,

    March 18, 2007 @ 5:05 am

    Now we only have to convince Gyronix that the 20-slot limit is not a good thing. It's like GTD where you are only allowed to have 5 contexts…

  2. ActivityOwner said,

    March 18, 2007 @ 8:12 am

    The 20 tag limit actually hasn't been as bad as I expected. It has prompted some creativity (e.g. mindreader) and forces some routine spring cleaning. You can archive infrequently used tags off as packed text and bring them back if needed pretty easily.

    I only use about 12 tags heavily right now, but keep some (like mri) to make updating the site easier or out of a "I should really be using that" mindset.

    What could probably use some improvement is managing the association of a tag with a given entry letter/number. I'm trying to keep my tags at fixed letters now, but they sometimes drift up or down. That can lead to users having old/new copies upon upgrade or inadvertently overwriting one.

    Thanks again for the "s" upgrade!

  3. ActivityOwner said,

    March 18, 2007 @ 12:36 pm

    Note: I added a save command to the macro so that the destination map is saved after the new information is pasted into it.

  4. Tom Hodgers said,

    March 18, 2007 @ 1:39 pm

    Hello again,
    I need some help for newbies!
    On the Project Mindreader – Quickstart page it says: "Paste the combined packed text for the o,q,c, and mri tags into the GyroQ dialog box."
    Is this "dialog box" the GyroQ tag edit box or something else? GyroQ help does not mention a dialog box.
    If I try to insert the combined packed text into the tag edit box I receive an error message; "…..invalid GyroActivator sequence"
    Inserting the individual o,q,c and mri tags works OK.
    Also, do I just install the two macros from mindreader.zip into "My Maps", wouldn't it be better if MindReader had its own sub-folder? or is there another address inside the MindManager 6 directory where they should go? (like Generic Smart Map Part has its own scripts sub-folder).
    Where do these macros end up?

    Sorry for the stupid questions,

    Tom

  5. ActivityOwner said,

    March 18, 2007 @ 1:59 pm

    Hi Tom — These are good questions. The "MindReader" application is working pretty well now, but the weakness is better documenting how to install and use it.

    [Anyone interested in helping with a wiki-like approach to this?]

    By "dialog box" I mean the GyroQ "box" that you type action items into (I don't think it has an official name). It has the smarts to recognized packed text being fed into it and switch into "tag install" mode.

    Make sure you are using v1.9.3 though as the older versions can have trouble with the large combined packed text string. I can see how this might not be intuitive. Gyronix now mainly uses the approach of putting the packed text in the note of a map and having user choose "Install GyroQ tags".

    The packed text has the advantage of bringing along both the gyroactivator code and the tag description information. You could also go to the "code" links on the tag library page and put the actual code into the tag edit box, but you need to also put in the descriptions using this method.

    The two mindreader macros and the mindreader.mmap configuration file currently go in the root "my maps" directory. I agree they would be better in a subdirectory, but this was the easiest approach I could use to ensure a working install (e.g. not require user to have to create a subdirectory) with my knowledge of how things worked at the time.

    At some point I would like to move it all to an "AO" subdirectory, but then I need to convert the currently installed users, without adding confusion for all 6 of them :-).

    Another tempting option would be to put everything in the GyroQ directory and just have users unzip everything there — including a gyroQ.ini file containing all the sites tags.

    Let me know how it goes and please keep the questions coming as that is the easiest way to add needed documentation to the site.

  6. Tom Hodgers said,

    March 18, 2007 @ 2:04 pm

    Another question,
    Where is the "starter mindreader.mmap configuration file" situated?
    No mindreader.mmap appears in My Maps folder and, although MindManager generates and stores in My Maps the mrsample.mmap when I test tag with "o mrsample", it also returns a Sax Basic "….. unable to create document" error message.

    Thanks,

    Tom

  7. ActivityOwner said,

    March 18, 2007 @ 2:25 pm

    Hi Tom — In the early iterations mindreader was downloaded, but now it needs to be created by running the "mri" tag, which builds it on the fly. This allows much more customized contexts, etc. and is easier than trying to reconfigure it after the fact.

    You can supplement it after the initial configuration by running the "mra" tag.

    Did you run "mri" yet?

  8. Tom Hodgers said,

    March 18, 2007 @ 2:42 pm

    Update to "o mrsample2 tag test.
    The previous test I did was with the individually installed o tag.
    I have now installed the combined pack text as you indicated (everything OK) but now, when testing, the mrsample mmap is shown briefly then the Sax error message shows and the map is NOT installed to My Maps.
    Testing with q tag also generates error messages, although the map appears in MindManager, first off – the sequence {pin:5055;send;run:queue:GyroQ\Gyroctivator-Queue.txt}returned an error:
    Message from MindManager 6:
    A runtime error occurred while executing the macro C:\Documents and Settings\..\My Maps\MindreaderNLP.mmbas
    then a Sax Basic "unable to create object" message and then a "GyroQ failed to send the queue file" message.

    Tom

  9. ActivityOwner said,

    March 18, 2007 @ 2:57 pm

    Hi Tom — Sorry for the hassle. Let's see if we can figure out what is happening.

    If you ran "mri" successfully, you should have a mindreader.mmap file in your "my maps" directory. It should also have a mrsample.mmap test map there. Just confirm those to be sure.

    The way "o" works is that it opens a new unnamed map and puts the text you typed into the Gyroq "box" into the centraltopic along with a note that indicates if you are using "o" or "s". It then passes control to MindReaderOpen.mmbas, which scans grabs the central topic text and compares it against the keywords in the "links" branch of mindreader.mmap. If it finds a match, it launches the hyperlink to open the desired map.

    If it doesn't find a match, it directs you to your "daily capture map.mmap". Do you have one of those in your "My Maps" directory. If that is missing it could cause a problem.

    I uploaded a new version of mindreaderopen this morning. I'll check it on another machine to make sure I didn't introduce a bug. In the meantime, let me know if the above helps.

    You can clear your queue by clicking on the icon in lower right corner. If you put the cure to cancer in your queue before the crash, you can scan the txt files in the GyroQ directory to see what it was.

  10. ActivityOwner said,

    March 18, 2007 @ 3:09 pm

    Hi Tom — I tested things out as a different user on my machine and things seem to be working.

    Is the first error you describe happening during "mri" execution?

  11. Tom Hodgers said,

    March 18, 2007 @ 3:48 pm

    Yes, errors shown when trying to run mri from GyroQ input box. Has to be done by clicking on extended GyroQ mri tag in order to configure. Now works OK. Both maps now appear in My Maps folder.

    I have the GyroQ Tag Library #2 – Post to In-tray by date map-part installed. Why does the q tag open another In-tray and not this one? Is there any difference between the q tag and the In-Tray: Action Item tag?

    Thanks for your help,

    Tom

  12. ActivityOwner said,

    March 18, 2007 @ 3:58 pm

    What error did you get when you run "mri" from gyroQ box? I've never heard of different behavior there.

    So "o" and "q" are working for you now?

    The "q" tag looks for a main-topic that contains a category of "in-tray*". If it doesn't fine one, it creates it. This allows it to work across a wide range of project maps rather than just the daily-capture-map. The library-2 tag uses a different approach to sort out items as they come in.

  13. Tom Hodgers said,

    March 18, 2007 @ 4:30 pm

    I received the same error messages I mentioned earlier i.e. " ….. runtime error" and "….. unable to create object" messages.

    Earlier you mentioned: "You can clear your queue by clicking on the icon in lower right corner. If you put the cure to cancer in your queue before the crash, you can scan the txt files in the GyroQ directory to see what it was."
    Which icon?
    I clear unwanted queue by Right clicking on GyroQ icon in system tray, selecting Options and clicking on Discard Queue.

    Thanks,

    Tom

  14. Tom Hodgers said,

    March 18, 2007 @ 5:25 pm

    Yet another question, sorry!

    How do you set-up and configure the map that holds the key-words for use with the o tag – "Mind Reader" open map based on keyword?

  15. ActivityOwner said,

    March 18, 2007 @ 6:48 pm

    Yes — just wanted to make sure you knew how to clear the queue after a glitch using the GyroQ icon and that you can look at the text in the queue file if you need to remember something you put in there first.

    The [edit] mindreader.mmap file holds the keywords (topic text) used with "o" in the links branch. The hyperlink for each topic is the destination associated with the keyword.

    Have you installed GyroQ 1.9.3?
    http://www.activityowner.com/2007/03/03/gyroq-193-pre-release/
    That 1.9.2 can't handle all the packed text combined.

  16. Tom Hodgers said,

    March 18, 2007 @ 7:38 pm

    Cannot find mindmanager.mmap in My Maps. Any word (e.g. a valid map name) inserted in o tag of GyroQ only shows the GyroQ Daily Capture Map.
    Why doesn't o tag produce mindmanager.mmap if it doesn't exist?

    Yes, I have version 1.9.3 installed.

  17. ActivityOwner said,

    March 18, 2007 @ 7:52 pm

    Wait — now I remember you actually caught the broken link in the 1.9.3 post! I guess you do have it installed :-). In testing the code again I noticed I had slightly different versions of mri in the individual and combined packed text. Neither gave me errors though. They are harmonized now.

  18. ActivityOwner said,

    March 18, 2007 @ 8:03 pm

    hmmm — "o" would give an error if you didn't have a mindreader.mmap file configured, I realized now I referred to it as mindmanager.mmap above, when I meant mindreader.mmap. I'm going to edit in corrections for posterity.

    mindreader only opens maps you have pre-associated with keywords.

    It might be a nice feature someday to have it fall back to searching for actual map name matches, but that would get involved once you throw sub-directories into the mix.

    Try this:
    type "o mapmap" — That should open the mindreader file.
    check out the "links" maintopic. You should see branches for defaultmap, mapmap, ntepad, etc. You can manually insert a subtopic with the keyword you choose, and then hyperlink that topic to the map you want it associated with.

    The "mra" tag will walk you through the hyperlinking automatically as well as prompt for more verbs and contacts if you want to add any.

    Sorry about the hassle — I think you are close now.

  19. Tom Hodgers said,

    March 18, 2007 @ 11:32 pm

    Thanks,
    Everything OK now.
    I opened mapmap then installed the mra tag which replaces the mri tag.
    All links working perfectly.

  20. Mike Wilkerson said,

    March 21, 2007 @ 4:06 pm

    I may be missing something, but I keep wanting to say "do this by 4/30/07" and I want MindReader to parse the date and check the deadline box for me. But it appears that MindReader only does things like "next week" or "end of week". Is there a way to give an exact date?

  21. ActivityOwner said,

    March 21, 2007 @ 4:37 pm

    Hi Mike — The current syntax to do what you want is:

    "do this by #4/30/07#"

    code will parse stuff between the # # as a date so #4/30# or #April 30" will work as well. If it successfully parses it, it will remove the # and the stuff in between.

    The code looks like:
    s=InStr(lStr,"#")
    e=InStrRev(lStr,"#")
    On Error Resume Next
    If s>0 And e>s Then atopic.Task.DueDate=DateValue(Mid(astr,s+1,e-s-1))

    It would take a bit more work to make it smart enough to generically identify date strings (especially in US/EU generic way) without the # # hint.

  22. Mike Wilkerson said,

    March 21, 2007 @ 6:29 pm

    Thanks. That helps (the #date# thing).

    The other thing I'm seeing is that MindReader doesn't automatically assign %me% as the owner of an activity, and since I work in a shared map environment, I have to be a stickler about setting myself as the owner by default on all activities.

    Also, even if I should assign the activity to someone else, in order to see the delegation to show up right, I need my name to be shown as the original owner.

    So if I don't specific an owner, it's owned by me, and the owners field should say, "Mike Wilkerson". If I do specify an owner, the ownership is delegated, so the owner field should read "Mike Wilkerson;Someone Else".

    Is there already a way to do that with MindReader?

  23. ActivityOwner said,

    March 21, 2007 @ 7:21 pm

    Right now MindReader recognizes 3 types of resource patterns
    waiting for X : X
    Contact X about : @X
    I owe X : X, %me%

    What you want is:
    Waiting for X: Mike, X
    Contact X about : Mike, X@
    I owe X: X, Mike

    Here is the solution to get that behavior:

    Open mindreader.mmap ("o mapmap") and go to the "resources" branch. For each of the "waiting for", go into the notes and put your name in first. For example if you have "Waiting for X" /note:X, change it to note: MIke,X.
    Go into the "Contact X" items and change "X@" to "Mike, X@". Go into the "I owe X" items and change "X, %me%" to "X, MIke".

    The question is if an how to fold the behavior are looking for into the default install script. I also use it in a shared environment but my main use is to drop action items onto my local maps (daily capture, direct report 1:1, personal projects, etc.). Hans has described using it in a less personal way — e.g. where most topics are not his by default. Need to find a happy medium. Suggestions welcome.

    The current %me% isn't good in a shared environment as anyone running a dashboard will see %me% as themselves. I'll look as substituting _rm_me in the install script to avoid that issue.

  24. ActivityOwner said,

    March 21, 2007 @ 7:26 pm

    Whoops — one more piece to deal with to get what you want — situations when no resource assignment is made.

    To handle that you want to add a line of code to mindreaderNLP.mmbas. Change

    For each atopic in itopics
    astr=atopic.Text

    to

    For each atopic in itopics
    atopic.task.resources="Mike Wilkerson"
    astr=atopic.text

    That will assign all items to you unless overwritten by a resource string match as described in above comment.

  25. Ryan Britton said,

    May 15, 2007 @ 5:54 am

    Hi guys,

    I love the MindReader concept but I cannot seem to get it working :(

    – I have the latest versions of MindManager, ResultsManager and GyroQ
    – I have the lastest versions of MindReaderNLP and MindReaderOpen (mmbas files)
    – I copied the packed mindreader script into GyroQ and created the relevant Tags
    – I ran mri and it created the mindreader.mmap and misc files successfully
    – but whenever I try to use "q" or "c" I get a strange error popping up before it even completes parsing the first action item (the sequence {pin:5055;send;run:queue:GyroQ\GyroActivator-Queue.txt} returned an error: [blank]

    I have tried restarting, reinstalling and discarding the queue all with no effect….

    Please help! – I would really like to use MindReader :(

    PS: I am using Vista – could this make a difference?

  26. ActivityOwner said,

    May 15, 2007 @ 6:54 am

    Hi Ryan — I don't think I've seen this error before. Does "o" work OK?

    Let's try to narrow things down by running MindReaderNLP.mmbas directly from MindManager.

    Choose "Tools", "Macro", "Macros", then click "Add", enter a title of "Process with MindReader", then for the "Path" browse to "My Documents\My Maps\mindreaderNLP.mmbas"

    For "menu" assign it to the "Topic Context Menu". This will allow you to enter one or more topics, select them, and then click right to have MindReader parse them. I actually use this approach instead of "c" as it is more convenient for real-time use.

    Based on what error/results you get for above we can try to narrow down the problem.

  27. Amit said,

    May 21, 2009 @ 10:55 pm

    I am new to gyroq and minjet..my Q – can I use this tag (and tag library) if I use Mindjet Connect? I read the instructions as "All require that you install MindReaderOpen.mmbas and MindReaderNLP.mmbas in your my maps directory and configure your mindreader.mmap file using mri." – I am not sure if I can install these on CONNECT service by mindjet.

    Pls suggest.

  28. ActivityOwner said,

    May 22, 2009 @ 5:28 am

    Yes — it works fine with MindJet Connect. This is an old post so some things have changed. You want to run the setup.exe from the wiki to have everything installed for you. It all goes into "My Maps\AO" on your local machine.

    http://wiki.activityowner.com/index.php?title=Setup

    In order to send things to mjc maps, you want to open them, select the destination topic, and then use the "k" tag to set a destination keyword for it.

    Just post a comment if you run into trouble or have any questions.

RSS feed for comments on this post · TrackBack URI

Leave a Comment

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.