I’ve been a little remiss in cleaning up links on both the destination such as deleting a note w/o deleting the link from HM or 1/2 of a note to note link. Is there a way other than a one at a time search or [find-by-stumble] to search them out?
Thanks.
PS: I’m using “note” as a generic object term. Basically any link that shows in the bookmark window.
Sounds to me like something HM — more specifically a background service for HM — could warn you of then do if requested. The macOS event system can tell a suitably privileged process when ever a filed is opened, closed, modified, deleted.
May be add this one to the feature requests?
Another option would be to have HM scan its database to check the existence of both ends of every hook, perhaps on start up or when requested. That would also give an opportunity to update links that are partially wrong — a file has been moved so the file name has changed, but the inode is good.
Here is the script you can run in Script Editor to find the bookmarks that don’t hooked items.
Sorry we don’t have delete bookmark function yet.
Summary
tell application "Hookmark"
set _allBookmarks to every bookmark
set _listOfUrls to {}
set re1 to a reference to _listOfUrls
if (count of _allBookmarks) is not equal to 0 then
repeat with _theItem in _allBookmarks
set _hookedBookmarks to hooked bookmarks of _theItem
if (count of _hookedBookmarks) is 0 then
set _aHookedBookmark to {title:name of _theItem, |url|:address of _theItem, path:path of _theItem}
set end of _listOfUrls to _aHookedBookmark
end if
end repeat
end if
get _listOfUrls
end tell