Revision: 3201
http://skim-app.svn.sourceforge.net/skim-app/?rev=3201&view=rev
Author: hofman
Date: 2007-11-12 14:55:26 -0800 (Mon, 12 Nov 2007)
Log Message:
-----------
Ignore hyphenation when cleaning selection string.
Modified Paths:
--------------
trunk/NSString_SKExtensions.m
Modified: trunk/NSString_SKExtensions.m
===================================================================
--- trunk/NSString_SKExtensions.m 2007-11-12 21:15:41 UTC (rev 3200)
+++ trunk/NSString_SKExtensions.m 2007-11-12 22:55:26 UTC (rev 3201)
@@ -75,16 +75,21 @@
NSCAssert1(buffer != NULL, @"failed to allocate memory for string of
length %d", length);
- BOOL isFirst = NO;
+ BOOL isFirst = NO, wasHyphen = NO;
int bufCnt = 0;
for(cnt = 0; cnt < length; cnt++){
ch = CFStringGetCharacterFromInlineBuffer(&inlineBuffer, cnt);
if(NO ==
CFCharacterSetIsCharacterMember(CFCharacterSetGetPredefined(kCFCharacterSetWhitespaceAndNewline),
ch)){
+ wasHyphen = (ch == '-');
isFirst = YES;
buffer[bufCnt++] = ch; // not whitespace, so we want to keep it
} else {
if(isFirst){
- buffer[bufCnt++] = ' '; // if it's the first whitespace, we
add a single space
+ if(wasHyphen &&
CFCharacterSetIsCharacterMember((CFCharacterSetRef)[NSCharacterSet
newlineCharacterSet], ch))
+ bufCnt--; // ignore the last hyphen and current newline
+ else
+ buffer[bufCnt++] = ' '; // if it's the first whitespace,
we add a single space
+ wasHyphen = NO;
isFirst = NO;
}
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit