Assign 0.4.0 update

Published
25 November 2013
Tagged

A minor update to Assign.app tonight: Version 0.4.0 brings the ability to "drill down" into a folder. It's something I occasionally found myself doing, expecting it to work, and it wasn't like the right-arrow key was doing anything anyway.

Catalogue search times are quite slow when you get beyond ten characters or so. This is mainly because I'm constructing a "fuzzy string" with which to search the catalogue:

NSMutableArray *foundFolders = [NSMutableArray arrayWithArray:self.folders];

NSMutableString *searchString = [NSMutableString stringWithCapacity:(str.length * 2 + 1)];
  [searchString appendString:@"*"];
  
  for (int i=0; i < [str length]; i++)
    [searchString appendFormat:@"%c*", [str characterAtIndex:i]];
  
  NSPredicate *match = [NSPredicate predicateWithFormat:@"pathRelativeToParent LIKE[cd] %@",searchString];
  [foundFolders filterUsingPredicate:match];

It's a bit ugly, but it definitely catches every case. I've slimmed down the wait time a bit by making the app discard entries whose pathRelativeToParent is shorter than the search string, but even then it runs a bit slow. My advice: don't make the catalogue too deep, or you might be there for a while.