Tagline

B drive not responding, formating C instead.

I’ve been thinking of the direction I want to take Notae recently (after fixing that damned speed problem with Leopard that Apple seems to want to ignore). I want to do the following things:

  • .Mac Sync of notes and tags.
  • Cleaner tags. Right now, while it works, it feels a little off when you use the tag palette to find things. It could be exchanged with another GUI element that makes it easier to manage tags as well as organize by them.

Unfortunately, Spotlight in Leopard has a bug. A pretty bad one.

As the notes change, Spotlight feels the need to hit the Spotlight index file 22-27 times for no reason, and only for some people. Two out of my three machines are affected. I’ve been told there’s nothing I can change and that I should wait on an update to the OS to resolve the issue.

This sucks, generally, but looking at how the issue presents, I can’t see a clear way around it (as notes change, I load a new NIB — the act of reading the NIB causes Spotlight to go haywire).

Fixes

  • Comments for new notes are now empty.
  • Tag browser resets when a new note is made.
  • The demo period now resets for unregistered users of older versions.

Notae 2.2 has been released has been released with the following enhancements.

Features

  • Notes can be set as templates and inserted into other notes via a contextual menu.
  • Added the ability to automatically save a document when closed.
  • The search field can now match partial tag names in both All and Tag modes.
  • Contextual menus on table and text area for actions such as duplicate and export as well as the setting of many note attributes, including locked status, adding and removing tags, and template status.
  • Added a preference for displaying the open document selector when no documents are open.

Fixes

  • Copy Note as HTML is more reliable.
  • Spotlight index is now more comprehensive and reliable. Documents will be reindexed when opened and the new index written out when the document is saved again.
  • Resolved potential crash when fetching web pages.
  • Focus now goes to the text area when switching notes.
  • Note header now reliably disables its fields when appropriate.
  • Escape properly ends editing of items in the table view now.
  • Info palette now properly saves changes if it is closed without moving out of the field being edited.
  • Tags can be dragged from the tags palette to the note header’s tag field now.
  • Table properly rejects files that are not importable.
Yes.
0% (0 votes)
Yes, but I can live without it.
17% (3 votes)
Yes, and I'm annoyed that it's gone.
6% (1 vote)
No/Don't care.
78% (14 votes)
Total votes: 18

Notae 2.1 does not include any languages other than English. If there is demand for these translations, they will be added at a later time. Please provide feedback if this is important to you.

Features


  • Complete AppleScript support for note and tag creation, data access and editing, and import/export.
  • Resizable Tag Browser area.
  • New URL downloading system allows for queued imports of many URLs at once.

Fixes


  • More robust note display system means that one Web Note failing to load will no longer cause other Web Notes to not display in the document.

Notae 2.1 is knocking at the door, but I need some people to break it first. If you like integrating apps into your workflow, I’d love it if you poked at a beta Notae 2.1 for me. I think it’s done, but I do need some folks to test it, first.

A sample of what it can do:


tell application “Notae” activate make new document tell the front document make new note with properties {name:“Note 1”, note text:“Note 1”} set noteTwo to make new note with properties {name:“Note 2”, note text:“Note 2”} make new note with properties {name:“Note 3”, note text:“Note 3”} make new note with properties {name:“Note 4”, note text:“Note 4”}

make new tag with properties {name:“Tag 1”} set tagTwo to make new tag with properties {name:“Tag 2”} make new tag with properties {name:“Tag 3”} make new tag with properties {name:“Tag 4”}

add tag (tag “Tag 1”) to note 1 add tag tagTwo to noteTwo add tag (tag “Tag 3”) to note 3 add tag (tag “Tag 4”) to note 4 add tag (every tag) to note 1 add tag (tag “Tag 3”) to every note

export note 2 as native to (“Kalyke:Users:ahknight:Desktop:export” as alias) export (every note whose name is “Note 2”) as HTML to (“Kalyke:Users:ahknight:Desktop:export” as alias) without replacing export (every note whose note text contains “Note 2”) as text file to (“Kalyke:Users:ahknight:Desktop:export” as alias) with replacing

set theImportedNotes to import (“Kalyke:Users:ahknight:Desktop:export” as alias) set theImportTag to make new tag with properties {name:“Imported”} repeat with aNote in theImportedNotes add tag theImportTag to aNote end repeat

get the properties of every note whose tags contains tag “Tag 1” end tell
end tell

Result: {{paragraph count:1, creation date:date "Monday, July 16, 2007 2:55:57 AM", modification date:date "Monday, July 16, 2007 2:55:57 AM", size:360, editable:true, class:note, comment:"", note text:"Note 1", name:"Note 1", word count:2}}

If you’re interested, please use the contact form and let me know (use the Notae category).

If there’s something you want to be able to do via scripting that I didn’t demo above, please leave a comment and I’ll investigate doing it.

I’m not dead or gone, I’m just busy as hell.

  • Notae 2.1 is looking nice. Full AppleScript editing support including making new notes and tags and assigning tags and such. Search via AppleScript may be clunky to make it fast because Apple doesn’t let me override the logic of a “whose” statement, it appears. I’m thinking I may make a command like “find [class] where [property] [condition] [value] (in [list])” so you could do: find notes where name is “bob” in (find notes where tags contains “tag1”). I’ve not gotten that far, so we’ll see if I can make it work.
  • The day job has turned from programming to looking for programmers and money. Not fun.

Take note, Core Data programmers, something stupid is afoot, and it’s even documented.

If you pass object URIs around like candy within your program for things like drag-and-drop or token fields or any other representation of your objects and then have to get the object back, use objectRegisteredForID instead of objectWithID.

When you use objectWithID you should note that it will never return nil to you on failure. It will create an invalid object and leave it astray in your managed object context preventing your users from saving their document unless you track it down and delete it. What they get instead is the following in the console.log:

I’m looking for someone to translate Notae into Japanese and Traditional or Simplified Chinese.

Contact me with a quote.

Syndicate content
User login