Revision: 24057
http://sourceforge.net/p/bibdesk/svn/24057
Author: hofman
Date: 2019-07-18 22:41:14 +0000 (Thu, 18 Jul 2019)
Log Message:
-----------
normalize bibtex type and all fields in services search term
Modified Paths:
--------------
trunk/bibdesk/BDSKServiceProvider.m
Modified: trunk/bibdesk/BDSKServiceProvider.m
===================================================================
--- trunk/bibdesk/BDSKServiceProvider.m 2019-07-18 22:28:24 UTC (rev 24056)
+++ trunk/bibdesk/BDSKServiceProvider.m 2019-07-18 22:41:14 UTC (rev 24057)
@@ -86,7 +86,8 @@
// alternatively we can just type the title, like we used to.
[scanner setCharactersToBeSkipped:nil];
NSSet *citeKeyStrings = [NSSet
setForCaseInsensitiveStringsWithObjects:@"cite key", @"citekey", @"cite-key",
@"key", nil];
-
+ NSSet *pubTypeStrings = [NSSet
setForCaseInsensitiveStringsWithObjects:@"bibtex type", @"pub type", nil];
+
while(![scanner isAtEnd]){
// set these to nil explicitly, since we check for that later
queryKey = nil;
@@ -100,12 +101,17 @@
queryString = [queryString
stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
queryKey = [queryKey stringByTrimmingCharactersInSet:[NSCharacterSet
whitespaceCharacterSet]];
- // allow some additional leeway with citekey
- if([citeKeyStrings containsObject:queryKey])
- queryKey = BDSKCiteKeyString;
-
- if(queryKey && queryString) // make sure we have both a key and a value
- [searchConstraints setObject:queryString forKey:[queryKey
fieldName]]; // BibItem field names are capitalized
+ if(queryKey && queryString){ // make sure we have both a key and a
value
+ // allow some additional leeway with citekey, pubtype, and All
Fields
+ if([citeKeyStrings containsObject:queryKey])
+ [searchConstraints setObject:queryString
forKey:BDSKCiteKeyString];
+ else if([pubTypeStrings containsObject:queryKey])
+ [searchConstraints setObject:queryString
forKey:BDSKPubTypeString];
+ else if([BDSKAllFieldsString isCaseInsensitiveEqual:queryKey])
+ [searchConstraints setObject:queryString
forKey:BDSKAllFieldsString];
+ else
+ [searchConstraints setObject:queryString forKey:[queryKey
fieldName]]; // BibItem field names are capitalized
+ }
}
return searchConstraints;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit