Karsten Hopp deea3b
To: vim_dev@googlegroups.com
Karsten Hopp deea3b
Subject: Patch 7.3.227
Karsten Hopp deea3b
Fcc: outbox
Karsten Hopp deea3b
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp deea3b
Mime-Version: 1.0
Karsten Hopp deea3b
Content-Type: text/plain; charset=UTF-8
Karsten Hopp deea3b
Content-Transfer-Encoding: 8bit
Karsten Hopp deea3b
------------
Karsten Hopp deea3b
Karsten Hopp deea3b
Patch 7.3.227 (after 7.3.221)
Karsten Hopp deea3b
Problem:    Mac OS doesn't have the linewise clipboard fix.
Karsten Hopp deea3b
Solution:   Also change the Mac OS file. (Bjorn Winckler)
Karsten Hopp deea3b
Files:      src/os_macosx.m
Karsten Hopp deea3b
Karsten Hopp deea3b
Karsten Hopp deea3b
*** ../mercurial/vim73/src/os_macosx.m	2011-06-13 02:03:55.000000000 +0200
Karsten Hopp deea3b
--- src/os_macosx.m	2011-06-20 00:23:57.000000000 +0200
Karsten Hopp deea3b
***************
Karsten Hopp deea3b
*** 65,71 ****
Karsten Hopp deea3b
      NSString *bestType = [pb availableTypeFromArray:supportedTypes];
Karsten Hopp deea3b
      if (!bestType) goto releasepool;
Karsten Hopp deea3b
  
Karsten Hopp deea3b
!     int motion_type = MCHAR;
Karsten Hopp deea3b
      NSString *string = nil;
Karsten Hopp deea3b
  
Karsten Hopp deea3b
      if ([bestType isEqual:VimPboardType])
Karsten Hopp deea3b
--- 65,71 ----
Karsten Hopp deea3b
      NSString *bestType = [pb availableTypeFromArray:supportedTypes];
Karsten Hopp deea3b
      if (!bestType) goto releasepool;
Karsten Hopp deea3b
  
Karsten Hopp deea3b
!     int motion_type = MAUTO;
Karsten Hopp deea3b
      NSString *string = nil;
Karsten Hopp deea3b
  
Karsten Hopp deea3b
      if ([bestType isEqual:VimPboardType])
Karsten Hopp deea3b
***************
Karsten Hopp deea3b
*** 89,97 ****
Karsten Hopp deea3b
  
Karsten Hopp deea3b
      if (!string)
Karsten Hopp deea3b
      {
Karsten Hopp deea3b
! 	/* Use NSStringPboardType.  The motion type is set to line-wise if the
Karsten Hopp deea3b
! 	 * string contains at least one EOL character, otherwise it is set to
Karsten Hopp deea3b
! 	 * character-wise (block-wise is never used).
Karsten Hopp deea3b
  	 */
Karsten Hopp deea3b
  	NSMutableString *mstring =
Karsten Hopp deea3b
  		[[pb stringForType:NSStringPboardType] mutableCopy];
Karsten Hopp deea3b
--- 89,95 ----
Karsten Hopp deea3b
  
Karsten Hopp deea3b
      if (!string)
Karsten Hopp deea3b
      {
Karsten Hopp deea3b
! 	/* Use NSStringPboardType.  The motion type is detected automatically.
Karsten Hopp deea3b
  	 */
Karsten Hopp deea3b
  	NSMutableString *mstring =
Karsten Hopp deea3b
  		[[pb stringForType:NSStringPboardType] mutableCopy];
Karsten Hopp deea3b
***************
Karsten Hopp deea3b
*** 108,126 ****
Karsten Hopp deea3b
  					   options:0 range:range];
Karsten Hopp deea3b
  	}
Karsten Hopp deea3b
  
Karsten Hopp deea3b
- 	/* Scan for newline character to decide whether the string should be
Karsten Hopp deea3b
- 	 * pasted line-wise or character-wise.
Karsten Hopp deea3b
- 	 */
Karsten Hopp deea3b
- 	motion_type = MCHAR;
Karsten Hopp deea3b
- 	if (0 < n || NSNotFound != [mstring rangeOfString:@"\n"].location)
Karsten Hopp deea3b
- 	    motion_type = MLINE;
Karsten Hopp deea3b
- 
Karsten Hopp deea3b
  	string = mstring;
Karsten Hopp deea3b
      }
Karsten Hopp deea3b
  
Karsten Hopp deea3b
      if (!(MCHAR == motion_type || MLINE == motion_type || MBLOCK == motion_type
Karsten Hopp deea3b
  	    || MAUTO == motion_type))
Karsten Hopp deea3b
! 	motion_type = MCHAR;
Karsten Hopp deea3b
  
Karsten Hopp deea3b
      char_u *str = (char_u*)[string UTF8String];
Karsten Hopp deea3b
      int len = [string lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
Karsten Hopp deea3b
--- 106,118 ----
Karsten Hopp deea3b
  					   options:0 range:range];
Karsten Hopp deea3b
  	}
Karsten Hopp deea3b
  
Karsten Hopp deea3b
  	string = mstring;
Karsten Hopp deea3b
      }
Karsten Hopp deea3b
  
Karsten Hopp deea3b
+     /* Default to MAUTO, uses MCHAR or MLINE depending on trailing NL. */
Karsten Hopp deea3b
      if (!(MCHAR == motion_type || MLINE == motion_type || MBLOCK == motion_type
Karsten Hopp deea3b
  	    || MAUTO == motion_type))
Karsten Hopp deea3b
! 	motion_type = MAUTO;
Karsten Hopp deea3b
  
Karsten Hopp deea3b
      char_u *str = (char_u*)[string UTF8String];
Karsten Hopp deea3b
      int len = [string lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
Karsten Hopp deea3b
*** ../vim-7.3.226/src/version.c	2011-06-19 04:54:17.000000000 +0200
Karsten Hopp deea3b
--- src/version.c	2011-06-20 00:21:53.000000000 +0200
Karsten Hopp deea3b
***************
Karsten Hopp deea3b
*** 711,712 ****
Karsten Hopp deea3b
--- 711,714 ----
Karsten Hopp deea3b
  {   /* Add new patch number below this line */
Karsten Hopp deea3b
+ /**/
Karsten Hopp deea3b
+     227,
Karsten Hopp deea3b
  /**/
Karsten Hopp deea3b
Karsten Hopp deea3b
-- 
Karsten Hopp deea3b
Some of the well know MS-Windows errors:
Karsten Hopp deea3b
	EMULTI		Multitasking attempted, system confused
Karsten Hopp deea3b
	EKEYBOARD	Keyboard locked, try getting out of this one!
Karsten Hopp deea3b
	EXPLAIN		Unexplained error, please tell us what happened
Karsten Hopp deea3b
	EFUTURE		Reserved for our future mistakes
Karsten Hopp deea3b
Karsten Hopp deea3b
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp deea3b
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp deea3b
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp deea3b
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///