summaryrefslogtreecommitdiff
path: root/src/os_macosx.m
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2011-06-20 00:25:44 +0200
committerBram Moolenaar <Bram@vim.org>2011-06-20 00:25:44 +0200
commit54b08a5e78516d3516109f935b34c7d6663370a0 (patch)
treeab41a69eb2f25a7cd2f815b2cfc9b9fce4e32cdb /src/os_macosx.m
parent251e19127170e7387da1f10b9c99c957b16477fc (diff)
downloadvim-git-54b08a5e78516d3516109f935b34c7d6663370a0.tar.gz
updated for version 7.3.227v7.3.227
Problem: Mac OS doesn't have the linewise clipboard fix. Solution: Also change the Mac OS file. (Bjorn Winckler)
Diffstat (limited to 'src/os_macosx.m')
-rw-r--r--src/os_macosx.m16
1 files changed, 4 insertions, 12 deletions
diff --git a/src/os_macosx.m b/src/os_macosx.m
index bc646677b..d919f6335 100644
--- a/src/os_macosx.m
+++ b/src/os_macosx.m
@@ -65,7 +65,7 @@ clip_mch_request_selection(VimClipboard *cbd)
NSString *bestType = [pb availableTypeFromArray:supportedTypes];
if (!bestType) goto releasepool;
- int motion_type = MCHAR;
+ int motion_type = MAUTO;
NSString *string = nil;
if ([bestType isEqual:VimPboardType])
@@ -89,9 +89,7 @@ clip_mch_request_selection(VimClipboard *cbd)
if (!string)
{
- /* Use NSStringPboardType. The motion type is set to line-wise if the
- * string contains at least one EOL character, otherwise it is set to
- * character-wise (block-wise is never used).
+ /* Use NSStringPboardType. The motion type is detected automatically.
*/
NSMutableString *mstring =
[[pb stringForType:NSStringPboardType] mutableCopy];
@@ -108,19 +106,13 @@ clip_mch_request_selection(VimClipboard *cbd)
options:0 range:range];
}
- /* Scan for newline character to decide whether the string should be
- * pasted line-wise or character-wise.
- */
- motion_type = MCHAR;
- if (0 < n || NSNotFound != [mstring rangeOfString:@"\n"].location)
- motion_type = MLINE;
-
string = mstring;
}
+ /* Default to MAUTO, uses MCHAR or MLINE depending on trailing NL. */
if (!(MCHAR == motion_type || MLINE == motion_type || MBLOCK == motion_type
|| MAUTO == motion_type))
- motion_type = MCHAR;
+ motion_type = MAUTO;
char_u *str = (char_u*)[string UTF8String];
int len = [string lengthOfBytesUsingEncoding:NSUTF8StringEncoding];