Revision: 28900
http://sourceforge.net/p/bibdesk/svn/28900
Author: hofman
Date: 2024-05-14 09:11:13 +0000 (Tue, 14 May 2024)
Log Message:
-----------
Template join style with three character prefixes and +
Modified Paths:
--------------
trunk/bibdesk/NSArray_BDSKExtensions.h
trunk/bibdesk/NSArray_BDSKExtensions.m
trunk/bibdesk/TemplateOptions.plist
Modified: trunk/bibdesk/NSArray_BDSKExtensions.h
===================================================================
--- trunk/bibdesk/NSArray_BDSKExtensions.h 2024-05-13 16:06:18 UTC (rev
28899)
+++ trunk/bibdesk/NSArray_BDSKExtensions.h 2024-05-14 09:11:13 UTC (rev
28900)
@@ -87,6 +87,7 @@
@property (nonatomic, readonly) NSString
*componentsJoinedByCommaAndAmpersandWithSingleEtAlAfterFive;
@property (nonatomic, readonly) NSString
*componentsJoinedByCommaAndAmpersandWithEtAlAfterSix;
@property (nonatomic, readonly) NSString
*componentsJoinedByCommaWithEtAlAfterSix;
+@property (nonatomic, readonly) NSString *prefixesJoinedWithPlusAfterThree;
@property (nonatomic, readonly) NSArray *indexRanges;
@property (nonatomic, readonly) NSArray *indexRangeStrings;
Modified: trunk/bibdesk/NSArray_BDSKExtensions.m
===================================================================
--- trunk/bibdesk/NSArray_BDSKExtensions.m 2024-05-13 16:06:18 UTC (rev
28899)
+++ trunk/bibdesk/NSArray_BDSKExtensions.m 2024-05-14 09:11:13 UTC (rev
28900)
@@ -257,6 +257,29 @@
return [self count] > 6 ? [[[self firstSixObjects]
componentsJoinedByComma] stringByAppendingString:@", et al."] : [self
componentsJoinedByComma];
}
+- (NSString *)prefixesJoinedWithPlusAfterThree
+{
+ if ([self count] == 0) {
+ return @"";
+ } else if ([self count] == 1) {
+ static NSCharacterSet *charSet = nil;
+ if (charSet == nil)
+ charSet = [NSCharacterSet characterSetWithCharactersInString:@"
.-"];
+ NSString *string = [[self firstObject] description];
+ return [string substringToIndex:MIN(MIN(3, [string length]), [string
rangeOfCharacterFromSet:charSet].location)];
+ } else {
+ NSMutableString *string = [NSMutableString string];
+ for (NSUInteger i = 0; i < MIN(3, [self count]); i++) {
+ NSString *s = [[self objectAtIndex:i] description];
+ if ([s length])
+ [string appendString:[s substringToIndex:1]];
+ }
+ if ([self count] > 3)
+ [string appendString:@"+"];
+ return string;
+ }
+}
+
- (NSArray *)indexRanges {
NSMutableArray *array = [NSMutableArray array];
NSInteger start = NSIntegerMin, end = NSIntegerMin;
Modified: trunk/bibdesk/TemplateOptions.plist
===================================================================
--- trunk/bibdesk/TemplateOptions.plist 2024-05-13 16:06:18 UTC (rev 28899)
+++ trunk/bibdesk/TemplateOptions.plist 2024-05-14 09:11:13 UTC (rev 28900)
@@ -414,6 +414,12 @@
</dict>
<dict>
<key>displayName</key>
+ <string>ABC; ABC+</string>
+ <key>key</key>
+ <string>@prefixesJoinedWithPlusAfterThree</string>
+ </dict>
+ <dict>
+ <key>displayName</key>
<string>First name only</string>
<key>key</key>
<string>@firstObject</string>
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