From fdf5c7cf04625a2e9e2dfeb6abc79f74ac9283ca Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Sun, 3 Feb 2008 14:38:14 +0100 Subject: [PATCH] Sparkle support for automatic updates With this commit the versioning scheme of MacVim has also changed; CFBundleVersion is now a number (indicating the build), and CFBundleShortVersionString contains the version number (e.g. 7.1). --- .../English.lproj/MainMenu.nib/classes.nib | 93 +++++++++++------ .../English.lproj/MainMenu.nib/info.nib | 21 ++-- .../MainMenu.nib/keyedobjects.nib | Bin 7564 -> 9287 bytes src/MacVim/Info.plist | 8 +- src/MacVim/MacVim.xcodeproj/project.pbxproj | 20 ++++ src/MacVim/Sparkle.framework/Headers | 1 + src/MacVim/Sparkle.framework/Resources | 1 + src/MacVim/Sparkle.framework/Sparkle | 1 + .../A/Headers/NSApplication+AppCopies.h | 13 +++ .../A/Headers/NSFileManager+Authentication.h | 11 ++ .../A/Headers/NSFileManager+Verification.h | 15 +++ .../Versions/A/Headers/NSString+extras.h | 61 +++++++++++ .../Versions/A/Headers/RSS.h | 98 ++++++++++++++++++ .../Versions/A/Headers/SUAppcast.h | 27 +++++ .../Versions/A/Headers/SUAppcastItem.h | 57 ++++++++++ .../A/Headers/SUAutomaticUpdateAlert.h | 21 ++++ .../Versions/A/Headers/SUConstants.h | 20 ++++ .../Versions/A/Headers/SUStatusChecker.h | 26 +++++ .../Versions/A/Headers/SUStatusController.h | 33 ++++++ .../Versions/A/Headers/SUUnarchiver.h | 25 +++++ .../Versions/A/Headers/SUUpdateAlert.h | 40 +++++++ .../Versions/A/Headers/SUUpdater.h | 55 ++++++++++ .../Versions/A/Headers/SUUtilities.h | 20 ++++ .../Versions/A/Headers/Sparkle.h | 22 ++++ .../Versions/A/Resources/Info.plist | 22 ++++ .../A/Resources/SUStatus.nib/classes.nib | 12 +++ .../A/Resources/SUStatus.nib/info.nib | 16 +++ .../A/Resources/SUStatus.nib/keyedobjects.nib | Bin 0 -> 6873 bytes .../SUAutomaticUpdateAlert.nib/classes.nib | 12 +++ .../SUAutomaticUpdateAlert.nib/info.nib | 16 +++ .../keyedobjects.nib | Bin 0 -> 6571 bytes .../en.lproj/SUUpdateAlert.nib/classes.nib | 21 ++++ .../en.lproj/SUUpdateAlert.nib/info.nib | 16 +++ .../SUUpdateAlert.nib/keyedobjects.nib | Bin 0 -> 10634 bytes .../A/Resources/en.lproj/Sparkle.strings | Bin 0 -> 6908 bytes .../Sparkle.framework/Versions/A/Sparkle | Bin 0 -> 197376 bytes src/MacVim/Sparkle.framework/Versions/Current | 1 + 37 files changed, 762 insertions(+), 43 deletions(-) create mode 120000 src/MacVim/Sparkle.framework/Headers create mode 120000 src/MacVim/Sparkle.framework/Resources create mode 120000 src/MacVim/Sparkle.framework/Sparkle create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/NSApplication+AppCopies.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/NSFileManager+Authentication.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/NSFileManager+Verification.h create mode 100755 src/MacVim/Sparkle.framework/Versions/A/Headers/NSString+extras.h create mode 100755 src/MacVim/Sparkle.framework/Versions/A/Headers/RSS.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUAppcast.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUAutomaticUpdateAlert.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUConstants.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUStatusChecker.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUStatusController.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUUnarchiver.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUUpdateAlert.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUUpdater.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/SUUtilities.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Headers/Sparkle.h create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/Info.plist create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/classes.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/info.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/keyedobjects.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/classes.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/info.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/classes.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/info.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/keyedobjects.nib create mode 100644 src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings create mode 100755 src/MacVim/Sparkle.framework/Versions/A/Sparkle create mode 120000 src/MacVim/Sparkle.framework/Versions/Current diff --git a/src/MacVim/English.lproj/MainMenu.nib/classes.nib b/src/MacVim/English.lproj/MainMenu.nib/classes.nib index 09e79c993f..1dbd06362c 100644 --- a/src/MacVim/English.lproj/MainMenu.nib/classes.nib +++ b/src/MacVim/English.lproj/MainMenu.nib/classes.nib @@ -1,31 +1,62 @@ -{ - IBClasses = ( - { - ACTIONS = {newVimWindow = id; }; - CLASS = AppController; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = {addNewTab = id; }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - fileOpen = id; - fontSizeDown = id; - fontSizeUp = id; - newWindow = id; - orderFrontPreferencePanel = id; - selectNextWindow = id; - selectPreviousWindow = id; - }; - CLASS = MMAppController; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file + + + + + IBClasses + + + ACTIONS + + fileOpen + id + fontSizeDown + id + fontSizeUp + id + newWindow + id + orderFrontPreferencePanel + id + selectNextWindow + id + selectPreviousWindow + id + + CLASS + MMAppController + LANGUAGE + ObjC + SUPERCLASS + NSObject + + + ACTIONS + + addNewTab + id + + CLASS + FirstResponder + LANGUAGE + ObjC + SUPERCLASS + NSObject + + + ACTIONS + + checkForUpdates + id + + CLASS + SUUpdater + LANGUAGE + ObjC + SUPERCLASS + NSObject + + + IBVersion + 1 + + diff --git a/src/MacVim/English.lproj/MainMenu.nib/info.nib b/src/MacVim/English.lproj/MainMenu.nib/info.nib index 0384cf233e..0fe119084e 100644 --- a/src/MacVim/English.lproj/MainMenu.nib/info.nib +++ b/src/MacVim/English.lproj/MainMenu.nib/info.nib @@ -1,21 +1,20 @@ - + - IBDocumentLocation - 68 69 356 240 0 0 1024 746 - IBEditorPositions - - 29 - 130 475 458 44 0 0 1024 746 - IBFramework Version - 489.0 + 629 + IBLastKnownRelativeProjectPath + ../../MacVim.xcodeproj + IBOldestOS + 5 IBOpenObjects - 29 + 57 IBSystem Version - 8S165 + 9B18 + targetFramework + IBCocoaFramework diff --git a/src/MacVim/English.lproj/MainMenu.nib/keyedobjects.nib b/src/MacVim/English.lproj/MainMenu.nib/keyedobjects.nib index 66cb63120915824e42eaee161b112b69a833923e..f58db777c012b9552a5310329c93c38c2a075b1a 100644 GIT binary patch literal 9287 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 literal 7564 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 diff --git a/src/MacVim/Info.plist b/src/MacVim/Info.plist index 1d24daeb97..d9a0d3d9c6 100644 --- a/src/MacVim/Info.plist +++ b/src/MacVim/Info.plist @@ -538,10 +538,12 @@ ${PRODUCT_NAME} CFBundlePackageType APPL + CFBundleShortVersionString + 7.1 CFBundleSignature VIMM CFBundleVersion - (first snapshot) + 20 NSMainNibFile MainMenu NSPrincipalClass @@ -598,5 +600,9 @@ Window + New item + + SUFeedURL + http://bjorn.winckler.googlepages.com/macvim_latest.xml diff --git a/src/MacVim/MacVim.xcodeproj/project.pbxproj b/src/MacVim/MacVim.xcodeproj/project.pbxproj index 5903ce881b..8222cd6d70 100644 --- a/src/MacVim/MacVim.xcodeproj/project.pbxproj +++ b/src/MacVim/MacVim.xcodeproj/project.pbxproj @@ -7,6 +7,8 @@ objects = { /* Begin PBXBuildFile section */ + 031AD5D40D4DE1F60026C5D7 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 031AD5D30D4DE1F60026C5D7 /* Sparkle.framework */; }; + 031AD5EE0D4DE2490026C5D7 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 031AD5D30D4DE1F60026C5D7 /* Sparkle.framework */; }; 1D09AB420C6A4D520045497E /* MMTypesetter.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D09AB400C6A4D520045497E /* MMTypesetter.m */; }; 1D0E051C0BA5F83800B6049E /* Colors.plist in Resources */ = {isa = PBXBuildFile; fileRef = 1D0E051B0BA5F83800B6049E /* Colors.plist */; }; 1D1474980C56703C0038FA2B /* MacVim.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D1474960C56703C0038FA2B /* MacVim.m */; }; @@ -97,6 +99,16 @@ /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ + 031AD5ED0D4DE2360026C5D7 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 031AD5EE0D4DE2490026C5D7 /* Sparkle.framework in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 1D0DCAD80BA3604D00B6CCFA /* CopyFiles */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; @@ -135,6 +147,7 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 031AD5D30D4DE1F60026C5D7 /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = ""; }; 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; }; @@ -230,6 +243,7 @@ 1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */, 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, 1D80FBE40CBBD6F200102A1C /* Carbon.framework in Frameworks */, + 031AD5D40D4DE1F60026C5D7 /* Sparkle.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -274,6 +288,7 @@ 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { isa = PBXGroup; children = ( + 031AD5D30D4DE1F60026C5D7 /* Sparkle.framework */, 1D80FBE30CBBD6F200102A1C /* Carbon.framework */, 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, ); @@ -429,6 +444,7 @@ 1D0DCAD80BA3604D00B6CCFA /* CopyFiles */, 1D9EB2840C366D7B0074B739 /* CopyFiles */, 1DE608B80C58807F0055263D /* CopyFiles */, + 031AD5ED0D4DE2360026C5D7 /* CopyFiles */, ); buildRules = ( ); @@ -600,8 +616,10 @@ "$(FRAMEWORK_SEARCH_PATHS_QUOTED_2)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_3)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_2)", + "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", ); FRAMEWORK_SEARCH_PATHS_QUOTED_2 = "\"$(SYSTEM_DEVELOPER_DIR)/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks\""; + FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)\""; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_ENABLE_OBJC_EXCEPTIONS = YES; @@ -627,7 +645,9 @@ "$(FRAMEWORK_SEARCH_PATHS_QUOTED_2)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_3)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_2)", + "$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)", ); + FRAMEWORK_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)\""; FRAMEWORK_SEARCH_PATHS_QUOTED_2 = "\"$(SYSTEM_DEVELOPER_DIR)/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks\""; GCC_DYNAMIC_NO_PIC = YES; GCC_ENABLE_OBJC_EXCEPTIONS = YES; diff --git a/src/MacVim/Sparkle.framework/Headers b/src/MacVim/Sparkle.framework/Headers new file mode 120000 index 0000000000..a177d2a6b9 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Resources b/src/MacVim/Sparkle.framework/Resources new file mode 120000 index 0000000000..953ee36f3b --- /dev/null +++ b/src/MacVim/Sparkle.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Sparkle b/src/MacVim/Sparkle.framework/Sparkle new file mode 120000 index 0000000000..b2c52731ea --- /dev/null +++ b/src/MacVim/Sparkle.framework/Sparkle @@ -0,0 +1 @@ +Versions/Current/Sparkle \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/NSApplication+AppCopies.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/NSApplication+AppCopies.h new file mode 100644 index 0000000000..ee901e6854 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/NSApplication+AppCopies.h @@ -0,0 +1,13 @@ +// +// NSApplication+AppCopies.h +// Sparkle +// +// Created by Andy Matuschak on 3/16/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + +@interface NSApplication (SUAppCopies) +- (int)copiesRunning; +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/NSFileManager+Authentication.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/NSFileManager+Authentication.h new file mode 100644 index 0000000000..c995911ca4 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/NSFileManager+Authentication.h @@ -0,0 +1,11 @@ +// +// NSFileManager+Authentication.m +// Sparkle +// +// Created by Andy Matuschak on 3/9/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +@interface NSFileManager (SUAuthenticationAdditions) +- (BOOL)movePathWithAuthentication:(NSString *)src toPath:(NSString *)dst; +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/NSFileManager+Verification.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/NSFileManager+Verification.h new file mode 100644 index 0000000000..f0ce7c20c0 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/NSFileManager+Verification.h @@ -0,0 +1,15 @@ +// +// NSFileManager+Verification.h +// Sparkle +// +// Created by Andy Matuschak on 3/16/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + +// For the paranoid folks! +@interface NSFileManager (SUVerification) +- (BOOL)validatePath:(NSString *)path withMD5Hash:(NSString *)hash; +- (BOOL)validatePath:(NSString *)path withEncodedDSASignature:(NSString *)encodedSignature; +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/NSString+extras.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/NSString+extras.h new file mode 100755 index 0000000000..498e4d01c9 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/NSString+extras.h @@ -0,0 +1,61 @@ +/* + +BSD License + +Copyright (c) 2002, Brent Simmons +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of ranchero.com or Brent Simmons nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, +OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +/* + NSString+extras.h + NetNewsWire + + Created by Brent Simmons on Fri Jun 14 2002. + Copyright (c) 2002 Brent Simmons. All rights reserved. +*/ + + +#import +#import + + +@interface NSString (extras) + +- (NSString *)stringWithSubstitute:(NSString *)subs forCharactersFromSet:(NSCharacterSet *)set; + +- (NSString *) trimWhiteSpace; + +- (NSString *) stripHTML; + +- (NSString *) ellipsizeAfterNWords: (int) n; + ++ (BOOL) stringIsEmpty: (NSString *) s; + + +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/RSS.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/RSS.h new file mode 100755 index 0000000000..82da04a443 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/RSS.h @@ -0,0 +1,98 @@ +/* + +BSD License + +Copyright (c) 2002, Brent Simmons +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of ranchero.com or Brent Simmons nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, +OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +/* + RSS.h + A class for reading RSS feeds. + + Created by Brent Simmons on Wed Apr 17 2002. + Copyright (c) 2002 Brent Simmons. All rights reserved. +*/ + + +#import +#import +#import "NSString+extras.h" + + +@interface RSS : NSObject { + + NSDictionary *headerItems; + NSMutableArray *newsItems; + NSString *version; + + BOOL flRdf; + BOOL normalize; + } + + +/*Public*/ + +- (RSS *) initWithTitle: (NSString *) title andDescription: (NSString *) description; + +- (RSS *) initWithData: (NSData *) rssData normalize: (BOOL) fl; + +- (RSS *) initWithURL: (NSURL *) url normalize: (BOOL) fl; +- (RSS *) initWithURL: (NSURL *) url normalize: (BOOL) fl userAgent:(NSString *)userAgent; + +- (NSDictionary *) headerItems; + +- (NSMutableArray *) newsItems; + +- (NSString *) version; + +// AMM's extensions for Sparkle +- (NSDictionary *)newestItem; + + +/*Private*/ + +- (void) createheaderdictionary: (CFXMLTreeRef) tree; + +- (void) createitemsarray: (CFXMLTreeRef) tree; + +- (void) setversionstring: (CFXMLTreeRef) tree; + +- (void) flattenimagechildren: (CFXMLTreeRef) tree into: (NSMutableDictionary *) dictionary; + +- (void) flattensourceattributes: (CFXMLNodeRef) node into: (NSMutableDictionary *) dictionary; + +- (CFXMLTreeRef) getchanneltree: (CFXMLTreeRef) tree; + +- (CFXMLTreeRef) getnamedtree: (CFXMLTreeRef) currentTree name: (NSString *) name; + +- (void) normalizeRSSItem: (NSMutableDictionary *) rssItem; + +- (NSString *) getelementvalue: (CFXMLTreeRef) tree; + +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAppcast.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAppcast.h new file mode 100644 index 0000000000..209fe20614 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAppcast.h @@ -0,0 +1,27 @@ +// +// SUAppcast.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + +@class RSS, SUAppcastItem; +@interface SUAppcast : NSObject { + NSArray *items; + id delegate; +} + +- (void)fetchAppcastFromURL:(NSURL *)url; +- (void)setDelegate:delegate; + +- (SUAppcastItem *)newestItem; +- (NSArray *)items; + +@end + +@interface NSObject (SUAppcastDelegate) +- appcastDidFinishLoading:(SUAppcast *)appcast; +@end \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h new file mode 100644 index 0000000000..c0202e3d9e --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h @@ -0,0 +1,57 @@ +// +// SUAppcastItem.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + + +@interface SUAppcastItem : NSObject { + NSString *title; + NSDate *date; + NSString *description; + + NSURL *releaseNotesURL; + + NSString *DSASignature; + NSString *MD5Sum; + + NSURL *fileURL; + NSString *fileVersion; + NSString *versionString; +} + +// Initializes with data from a dictionary provided by the RSS class. +- initWithDictionary:(NSDictionary *)dict; + +- (NSString *)title; +- (void)setTitle:(NSString *)aTitle; + +- (NSDate *)date; +- (void)setDate:(NSDate *)aDate; + +- (NSString *)description; +- (void)setDescription:(NSString *)aDescription; + +- (NSURL *)releaseNotesURL; +- (void)setReleaseNotesURL:(NSURL *)aReleaseNotesURL; + +- (NSString *)DSASignature; +- (void)setDSASignature:(NSString *)aDSASignature; + +- (NSString *)MD5Sum; +- (void)setMD5Sum:(NSString *)aMd5Sum; + +- (NSURL *)fileURL; +- (void)setFileURL:(NSURL *)aFileURL; + +- (NSString *)fileVersion; +- (void)setFileVersion:(NSString *)aFileVersion; + +- (NSString *)versionString; +- (void)setVersionString:(NSString *)versionString; + +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAutomaticUpdateAlert.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAutomaticUpdateAlert.h new file mode 100644 index 0000000000..fc0ac9fd06 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUAutomaticUpdateAlert.h @@ -0,0 +1,21 @@ +// +// SUAutomaticUpdateAlert.h +// Sparkle +// +// Created by Andy Matuschak on 3/18/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + +@class SUAppcastItem; +@interface SUAutomaticUpdateAlert : NSWindowController { + SUAppcastItem *updateItem; +} + +- initWithAppcastItem:(SUAppcastItem *)item; + +- (IBAction)relaunchNow:sender; +- (IBAction)relaunchLater:sender; + +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUConstants.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUConstants.h new file mode 100644 index 0000000000..bfbe625bb3 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUConstants.h @@ -0,0 +1,20 @@ +// +// SUConstants.h +// Sparkle +// +// Created by Andy Matuschak on 3/16/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +extern NSString *SUUpdaterWillRestartNotification; + +extern NSString *SUCheckAtStartupKey; +extern NSString *SUFeedURLKey; +extern NSString *SUShowReleaseNotesKey; +extern NSString *SUSkippedVersionKey; +extern NSString *SUScheduledCheckIntervalKey; +extern NSString *SULastCheckTimeKey; +extern NSString *SUExpectsDSASignatureKey; +extern NSString *SUPublicDSAKeyKey; +extern NSString *SUAutomaticallyUpdateKey; +extern NSString *SUAllowsAutomaticUpdatesKey; \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUStatusChecker.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUStatusChecker.h new file mode 100644 index 0000000000..e83d15206e --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUStatusChecker.h @@ -0,0 +1,26 @@ +// +// SUStatusChecker.h +// Sparkle +// +// Created by Evan Schoenberg on 7/6/06. +// + +#import +#import + +@class SUStatusChecker; + +@protocol SUStatusCheckerDelegate +//versionString will be nil and isNewVersion will be NO if version checking fails. +- (void)statusChecker:(SUStatusChecker *)statusChecker foundVersion:(NSString *)versionString isNewVersion:(BOOL)isNewVersion; +@end + +@interface SUStatusChecker : SUUpdater { + id scDelegate; +} + +// Create a status checker which will notifiy delegate once the appcast version is determined. +// Notification occurs via the method defined in the SUStatusCheckerDelegate informal protocol. ++ (SUStatusChecker *)statusCheckerForDelegate:(id)delegate; + +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUStatusController.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUStatusController.h new file mode 100644 index 0000000000..19a3f89ecf --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUStatusController.h @@ -0,0 +1,33 @@ +// +// SUStatusController.h +// Sparkle +// +// Created by Andy Matuschak on 3/14/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + + +@interface SUStatusController : NSWindowController { + double progressValue, maxProgressValue; + NSString *title, *statusText, *buttonTitle; + IBOutlet NSButton *actionButton; +} + +// Pass 0 for the max progress value to get an indeterminate progress bar. +// Pass nil for the status text to not show it. +- (void)beginActionWithTitle:(NSString *)title maxProgressValue:(double)maxProgressValue statusText:(NSString *)statusText; + +// If isDefault is YES, the button's key equivalent will be \r. +- (void)setButtonTitle:(NSString *)buttonTitle target:target action:(SEL)action isDefault:(BOOL)isDefault; +- (void)setButtonEnabled:(BOOL)enabled; + +- (double)progressValue; +- (void)setProgressValue:(double)value; +- (double)maxProgressValue; +- (void)setMaxProgressValue:(double)value; + +- (void)setStatusText:(NSString *)statusText; + +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUnarchiver.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUnarchiver.h new file mode 100644 index 0000000000..da111c1580 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUnarchiver.h @@ -0,0 +1,25 @@ +// +// SUUnarchiver.h +// Sparkle +// +// Created by Andy Matuschak on 3/16/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + + +@interface SUUnarchiver : NSObject { + id delegate; +} + +- (void)unarchivePath:(NSString *)path; +- (void)setDelegate:delegate; + +@end + +@interface NSObject (SUUnarchiverDelegate) +- (void)unarchiver:(SUUnarchiver *)unarchiver extractedLength:(long)length; +- (void)unarchiverDidFinish:(SUUnarchiver *)unarchiver; +- (void)unarchiverDidFail:(SUUnarchiver *)unarchiver; +@end \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUpdateAlert.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUpdateAlert.h new file mode 100644 index 0000000000..69c2817498 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUpdateAlert.h @@ -0,0 +1,40 @@ +// +// SUUpdateAlert.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + +typedef enum +{ + SUInstallUpdateChoice, + SURemindMeLaterChoice, + SUSkipThisVersionChoice +} SUUpdateAlertChoice; + +@class WebView, SUAppcastItem; +@interface SUUpdateAlert : NSWindowController { + SUAppcastItem *updateItem; + id delegate; + + IBOutlet WebView *releaseNotesView; + IBOutlet NSTextField *description; + NSProgressIndicator *releaseNotesSpinner; + BOOL webViewFinishedLoading; +} + +- initWithAppcastItem:(SUAppcastItem *)item; +- (void)setDelegate:delegate; + +- (IBAction)installUpdate:sender; +- (IBAction)skipThisVersion:sender; +- (IBAction)remindMeLater:sender; + +@end + +@interface NSObject (SUUpdateAlertDelegate) +- (void)updateAlert:(SUUpdateAlert *)updateAlert finishedWithChoice:(SUUpdateAlertChoice)updateChoice; +@end diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUpdater.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUpdater.h new file mode 100644 index 0000000000..5f82914bc1 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUpdater.h @@ -0,0 +1,55 @@ +// +// SUUpdater.h +// Sparkle +// +// Created by Andy Matuschak on 1/4/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + +// Before you use Sparkle in your app, you must set SUFeedURL in Info.plist to the +// address of the appcast on your webserver. If you don't already have an +// appcast, please see the Sparkle documentation to learn about how to set one up. + +// .zip, .dmg, .tar, .tbz, .tgz archives are supported at this time. + +// By default, Sparkle offers to show the user the release notes of the build they'll be +// getting, which it assumes are in the description (or body) field of the relevant RSS item. +// Set SUShowReleaseNotes to in Info.plist to hide the button. + +@class SUAppcastItem, SUUpdateAlert, SUStatusController; +@interface SUUpdater : NSObject { + SUAppcastItem *updateItem; + + SUStatusController *statusController; + SUUpdateAlert *updateAlert; + + NSURLDownload *downloader; + NSString *downloadPath; + + NSTimer *checkTimer; + NSTimeInterval checkInterval; + + BOOL verbose; + BOOL updateInProgress; +} + +// This IBAction is meant for a main menu item. Hook up any menu item to this action, +// and Sparkle will check for updates and report back its findings verbosely. +- (IBAction)checkForUpdates:sender; + +// This method is similar to the above, but it's intended for updates initiated by +// the computer instead of by the user. It does not alert the user when he is up to date, +// and it remains silent about network errors in fetching the feed. This is what you +// want to call to update programmatically; only use checkForUpdates: with buttons and menu items. +- (void)checkForUpdatesInBackground; + +// This method allows you to schedule a check to run every time interval. You can +// pass 0 to this method to cancel a previously scheduled timer. You probably don't want +// to call this directly: if you set a SUScheduledCheckInterval key in Info.plist or +// the user defaults, Sparkle will set this up for you automatically on startup. You might +// just want to call this every time the user changes the setting in the preferences. +- (void)scheduleCheckWithInterval:(NSTimeInterval)interval; + +@end \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUtilities.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUtilities.h new file mode 100644 index 0000000000..5af355083b --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/SUUtilities.h @@ -0,0 +1,20 @@ +// +// SUUtilities.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import + +id SUInfoValueForKey(NSString *key); +NSString *SUHostAppName(); +NSString *SUHostAppDisplayName(); +NSString *SUHostAppVersion(); +NSString *SUHostAppVersionString(); + +NSComparisonResult SUStandardVersionComparison(NSString * versionA, NSString * versionB); + +// If running make localizable-strings for genstrings, ignore the error on this line. +NSString *SULocalizedString(NSString *key, NSString *comment); diff --git a/src/MacVim/Sparkle.framework/Versions/A/Headers/Sparkle.h b/src/MacVim/Sparkle.framework/Versions/A/Headers/Sparkle.h new file mode 100644 index 0000000000..13e9b2156f --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Headers/Sparkle.h @@ -0,0 +1,22 @@ +// +// Sparkle.h +// Sparkle +// +// Created by Andy Matuschak on 3/16/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#import "SUUpdater.h" +#import "SUUtilities.h" +#import "SUConstants.h" +#import "SUAppcast.h" +#import "SUAppcastItem.h" +#import "SUUpdateAlert.h" +#import "SUAutomaticUpdateAlert.h" +#import "SUStatusController.h" +#import "SUUnarchiver.h" +#import "SUStatusChecker.h" + +#import "NSApplication+AppCopies.h" +#import "NSFileManager+Authentication.h" +#import "NSFileManager+Verification.h" \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/Info.plist b/src/MacVim/Sparkle.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000000..c154cb61e1 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + Sparkle + CFBundleIdentifier + org.andymatuschak.Sparkle + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + Sparkle + CFBundlePackageType + FMWK + CFBundleSignature + ???? + CFBundleVersion + 1.1 + + diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/classes.nib b/src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/classes.nib new file mode 100644 index 0000000000..ff40c9ddf7 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/classes.nib @@ -0,0 +1,12 @@ +{ + IBClasses = ( + {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, + { + CLASS = SUStatusController; + LANGUAGE = ObjC; + OUTLETS = {actionButton = id; }; + SUPERCLASS = NSWindowController; + } + ); + IBVersion = 1; +} \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/info.nib b/src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/info.nib new file mode 100644 index 0000000000..99183444cb --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/info.nib @@ -0,0 +1,16 @@ + + + + + IBDocumentLocation + 69 10 356 240 0 0 1280 832 + IBFramework Version + 443.0 + IBOpenObjects + + 5 + + IBSystem Version + 8H14 + + diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/keyedobjects.nib b/src/MacVim/Sparkle.framework/Versions/A/Resources/SUStatus.nib/keyedobjects.nib new file mode 100644 index 0000000000000000000000000000000000000000..378b22f2a6e3c51f385cd62f3c93f35a69cedf27 GIT binary patch literal 6873 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 + + + + IBDocumentLocation + 188 142 356 240 0 0 1280 1002 + IBFramework Version + 443.0 + IBOpenObjects + + 5 + + IBSystem Version + 8H14 + + diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib new file mode 100644 index 0000000000000000000000000000000000000000..c4201cf26aa4490d0092bd8c36f61259550aa224 GIT binary patch literal 6571 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 Zr5sj{Vqu9tM%(ey&U1`&=fCpCKLLTjt6~5E literal 0 HcmV?d00001 diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/classes.nib b/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/classes.nib new file mode 100644 index 0000000000..0071ac0776 --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/classes.nib @@ -0,0 +1,21 @@ +{ + IBClasses = ( + {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, + {CLASS = NSObject; LANGUAGE = ObjC; }, + { + ACTIONS = {installUpdate = id; remindMeLater = id; skipThisVersion = id; }; + CLASS = SUUpdateAlert; + LANGUAGE = ObjC; + OUTLETS = {description = NSTextField; releaseNotesView = WebView; }; + SUPERCLASS = NSWindowController; + }, + { + ACTIONS = {installUpdate = id; remindMeLater = id; skipThisVersion = id; }; + CLASS = SUUpdateAlertController; + LANGUAGE = ObjC; + OUTLETS = {releaseNotesView = id; }; + SUPERCLASS = NSWindowController; + } + ); + IBVersion = 1; +} \ No newline at end of file diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/info.nib b/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/info.nib new file mode 100644 index 0000000000..2b25ad033c --- /dev/null +++ b/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/info.nib @@ -0,0 +1,16 @@ + + + + + IBDocumentLocation + 425 40 356 240 0 0 1280 832 + IBFramework Version + 446.1 + IBOpenObjects + + 5 + + IBSystem Version + 8I127 + + diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/keyedobjects.nib b/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/keyedobjects.nib new file mode 100644 index 0000000000000000000000000000000000000000..be3dbd9069137fd7dfa8bbde36f0a264de1c690c GIT binary patch literal 10634 zcmaia2Ygdy_y2jGCux&3X>XG@t8H>GLu8dMW(93QhCmrDd(^bOZ6j$?laygaA5akW z#f6ACp@4vjfQk!TxNsm_M8$=QxJ6zUqQCRpn-&EA@4xqxY=bZ03=X;*ps>V<- z7SGGu4+JPMFn|$~AQ>!^Is~HC^}(5HbYchmiUlL#iVpEep$c&t)ND=Qza z&QWVh5)JJ@7OvO>CNNJMR+_6fs|mydoNP=d3{t=f`Op)3!9~y?O5jo$2i4F7&2T*| zfQ4`aEP@;1Cb$`v!vpXjtbo<94jzMzun9K97T5-_!fUV>_Q8kn5qtv2;2ZcBeuCrh z8~hF@;UAo1BQX#ov5;)ij$A-;NdXx^O383Cf{YAVM~hC&*Le zIkJ_!KwcqllXu7`0tRK6Gjbu|;kX^xMun;-U8d#V`SR=cVJj0@_iOpuq z*i-Cj_6&QLJ;%1PZ8XlFXD_f9*-P*hdzo!#udr9yYwUIQ2HU~jWN)#z**k0}dzbBD z``N*99l}ka&?k}|Y>*0RAVE6V!2ubN2~Kc<8$95JEXal&@PQv>P@o;OhYrvYE`UyO zA#{c=&=tBtcgTevkf*_Lln%-9fl!l*!1R=rmsD4)u~@Jw7z)Pc42*=s2-!$f2kpR6 zAQn?&dh5w$<)eZ%F$8jKN?CbXph4BnrlAEwU|!~sEdJ~B(Ain^j>(CSb;v7>n!=t5O8o5C7czB&cHr{BjNbSKsZpR zMknET>g+f+9A8#GHWG>Ref%H(IX}Yp^UvlH!oT22^9bc8et_?pM}QkSNLO&W7nNQB zg;0cR*VZef;s(y9m5&?Oh|a5)gw$w!FZ6~!&=>km)EA@1ChI3*Y~BL>pm;j=Z;Hhu z4f;YRwyvmBl7^KIj8sPgZIbVW0XXZ$a0#kD5hY?Pc(Oi6DGXc%17Q#pqh3cg#RI6w zay34#tQ^1fo`a!c0}O$oFbpn(;V=S5LK%#L(J%(aLOC~cKQH19{3M638p|EOoQoA3710vs!*YW)L1+i4#d$ys8F=U=s>)FLRtBU zK$RM*l(JFD!KzX;YcO2bhN?0<&@{}EQ#`L?&Fq2Py;H|LLJoO zLJys1%*&J3!vP!vszIM=0Np_v+- zYv$lkpe}}HAE<^x*m_VjP**Xh5lw`xYJ!>uc?up5b2_ndFVEms^M06#;?$xbv(Sy^ zz*X3|ys1h|65}^;;E(XTbZuV^mplY>;TpIWILw3j+{ROR8kcxFxASCljFQI2kSdQJ zG+1s7#NujIBoM8U<0wF-lwYP!tdK7aR|gtnO(6tRjXXLMiM6i!H_Co85^yMB2;l&%CaHn>C@a?P}EH>=vy?m zo7~(BPkR;3o%=rg2NuIEa4Xz~TDl$XfF*d`2}|+&E?5S4qcO^>1L)@X8=n(WQG%zjn&_0^25ZP_#1rqQ~6Zc^5{2S~P0Mpw&IAHt3`HT2?^|tb$_nKb%eT%+`Uh zTgS8S>D|`AL#yE-Sc~W^MuD|SgrrlkecOfJbUi%01|Eh-;8ECcy773#4}w$ZAsPuG zCdCaLsSVAQl5?gA(*5MXzvUjM-A4GIbzh(Dad=`CJONLN^`ME*mJ}*G8lnce zd;yiBqQY)+es6)5*WnG=foOR%ft9!5ZFmQE!dBP?yJ3%JsnS68jJjx~DO@u!5{d}N zu0TiE&QWLRrtK!|-tnd<@0d zTV#|2@F{!-pTiNH;0yQ?zJjChHA1dcXzf=_BVa5RQr;M-R)yS1^+J(44X0grXDNwa z$h(d&pMyc6VJbpXKtk)V55B|ko$x*Upp87CJ{VVr=jHa&|N4T&cvoGvpW)LMl&APi zp?-lAx==iqcNcRY#uLN0DYSKpKg1NJdC)rEUvO$QoPxgv!nIf{dJGP#p&AY6BJYam zFD^6z2oPj`gwQjP-quC9McV}mkwA7l7!Rr9{-n0E{g`+r;)bU`lh5HIASo<(}V+@!hI=%`w&M%6Hq zol40*E~W~Q4UR--VGtgH#D0>NFN8@Z4MFHNYR2i!d*RWCkK+}lbYjP7e+3`R5m6#1 zh!o`{ImCyD3|H|x`5kyHO{4?T9x7H62X@9}ip@zUK;cD3BNyV@y5Of9agpu_Zf$0P zO5PV&I|x7h_@!D-Aw9$(-SE2PgEI#qg`@}v>PdRxy8Ga#AFg`|eqTiTBc@{-rV|c= zVOA&rF^JhD5(ByiincQ4dh{2#BFMsZt@ce?5CE(eG zU#!E^nSke65kN;+IjLAfD#*A*B%PpE4GaYv#o|OpNu26UCyIpIJW`7jk!rYP1F0b@sU>x!o&?DiWCjV51`;L_(#VJKp?ny>j1T7{ z_()#HNAb~o3?IwO1%F7S^Pv?ZN1U6Q(;AzqFuUb8MMK?DddzrTG!BY(g+zUm?8qU!1{}h;QeLrRWp{d&`O1 z_uMuKUWCJ+=b65Uiot`#^Aaayz*nA(1-+OP5E;LUIFsZp4o`7L!}Ztz;pu;??-6!H+mp zUd!uv)g$B%vV`18mXf>3GIBRrPVOQ1lKc1sK9Nu2llc@rl~3c-c_qJ`2Y9`Xp5ejx zWr3N21S7>TgnGey<#Eh27=}bnsgyGGo1;Tbb-{3~t*uwTJxHw$G=(q_&sMeeB5YJj z7w8X5LZQg41fQzWXh`gI*uy}Gd0B5Lq|mu#+xT72eljo+9@VIZ6SY}M6ILw9osh?c zaGXrN^~fNSx26UmxGqTIeyfyi_nmtCLBUvKC@@DCO%te_{@`56M?@lx0*`HB8=IS^ z>4{m^GqYrqh?HX19d8rayozilkBe;OXe)>Y1+^>{h|a#o2rr)4F>!)PEUJdoKuj%*AbC9<0Jf3mSCQv+0+yjstx-+r zFUVdJm33Q&gFNyQd6{fSk~N#p;oad< z_~#e(MXpsackW@blf0|*E3%91CVLR%d*ODn5AGoQ$pJhLlI^%FbBKIEJ|rI@B*Y5{j!)tnpOMTu2*Bo8s|ESj#O12;Q>t(P}gpsR>pOLoy%5 zo|tjYXrm3=+GLQ5cGoP^HY{pHs{weNNAb9lhb52WAN*T5|B`?BOlb#iZ#Mw|`cCwbV0_G$Fh9h8_&j*-)AVLXwlQIo3S0i8) z1k79wFa^C4C9QxF}shyZ;1}n|i31X3=b#Lw(c_PAXG{wu4IAo_3%e z=>@bCy%0jQ3++m~(e4O{vT{8xY4zmDKx~EvHvOL94j4Jm=op?vSVCCpPqfU{cBSp& zpgr|xV{zL{=SZp=78jy_V7BPr)<$?a-kwmQ`2aFEaYGwML$;RdMWBoYW~zceN~wGU zzn(AP*YQXBV?4#)I2)^sO?)BWh)e@LxTof}J%tPR>?JJHyKpYrDy=+H8%JWQ%KFX{ zqDU7~Lo_WQM=Qk40?bG%XiunE4^^<0_CZr^r^Uoa`_lp3g0;{hG*Or@MqavtuMW-Q=tI$gjO^eH@Dz-h()c?vi>oQ|M<^a4&R#Qwu?#;JQu zAFGE*S&NZ~fYq*@onT-v56j zPuGwfK-HWT`uOb{l5ay5A(E#L3&*fB3nkP(#&#GqqEG8-kX`|`bOzMZ5GkS!sP(Ye zlOm785_%<#(in|n@sSQcP{FiIBT?Lt(l=Ca?_a|m?&kzW#U!d(!JtF{K`@P~t&OR1 zvCUb5e-roQcH5y?7j3U z#NX5O8HAFSo3&c?A-+~*u35o&b-k{dt#n%p-IgFkdK%K2>wB)}Q`1Z6aNA)!eN|J_ zddwac374E1VuCGA#K}XK7Rre6dgZHdpGg^>HTo}vDlt~Jo+j9 z3^UZ{^auoKAK}T3!o6dd+MecH_*48D+%;Q-8>;oe8mvP4$+3ET$B~GLI%(9OU^+YJ zQKCSh-_Y;q4=d@n{JE9%d;TonilD``BQ^%La8Zjzof;MP*AifvwwTgL1evM6!AXyk z$6Ev|Zd)Nr{$KJkEk-$?M;5VodIE!bs_A#uejxpmo}_=_I#1y$`|}t1EBs}?9apwu zFC(ak2xFRF%j+?4)oAe(w^+>lB~ACt$dXpEB$h0+?=CCHZI@`GHi#u?4!$(OfO-0& zQfiM(QtW$bKe62MasTokT}*t%@V_3P$6U&G%HQCx@z?ndv6M>5*J>n; z{%EDP8THw4$H;m92MIf|Oy)v6F(-d(C3EvP`PQ@42ze}<<>352oP7YQ{$2hK--&at z!=V%Ftx;pzc0Ynh6zpiwv+lH+kPcuSHIT03y9G$6oY7Fr2CNI~`xrub06B>nzCSI7 zt++|G9ja&_`X_FdCGq*_kj?1jD=_oPNDsnD7Z#y;dtnCItJ|)aOllE3DEf%~aYTF# zBp5@6_&(#v!?DwGP2$zbeC=DD=?BHJdx;T|sIW5D_YqwxO{P4QYP%*;t2{y)it>at zSu{yRzp2=dO=HtpCA*vjSQV>gHB4o-td76O5Ayf#vU0oUSh%v}5eE7cZ zG8l!qrW|dT2g6ZUXh|4>CBWO-+dB)sv73)pTZdLF!Z&!m@cms1YW#70tG5kpy9+f* z`BkV*VdZ&f@q{Jr)@EnR**)YIb|1T+J-{AhE7(fb!d9`>Yz=#et!3-jdiF4TggweO zki~2x+r&1r$JrC?N&Y4O3b#Ry@~`Qkp6SC70ArN|#1R z7O6mT>N?y76)O@vhwVK>hX)ep_{x>N&knV)L)w1duu}ci>LA=^$N#bL;7jptkdN

( zpR+I6QFe@d%YI-#vE%Fn`;GmkWy#}`FHf#djwjDczAkw|^1|dr$%~WkNPaN+vE)t3k0(Ewye)Zm@}cBUlYcQK znWll7T9jH-Dg{C+hlv%_PXs| z+dd!Ssln74sST--)GJeCsZFV~Qs<;Lr_N2iHub*L z$5KB`{VDZinkTI=Z9-Zs?bfulX-}rTnD%6 zl4L?Bvr4H_N2!z4S?VfvmwHI~QlZpS>Miw^ilzS27^zm8E8Qc#A{|aoNpGKCoL-TB zUHbLucckB$epmY4>C4kw($}ZInEp=sf%Fg3kEI_^KV>)CQ|*eqi#^{y)IP~R#Xikm zX%E=1v2*);`}Ot(_C@xa?EkT^v43Fy&i;=h)zRLO?-=Nq zqK>#@j$^Uo0mlkQi(`%BamQB2YmPS@yB!A|#~jBUCo_^V92rVRmyDhn12V>BOwI^o z%*nVZ<3Aa|9mO?6eeu6AAH;;#9w>s$+5 zH@H@~4!91w4!J&b9d>=<`pk92b=-Br-PzsCJ=9&{p6(90XS!#*uX11QzQ)bn^WE3G z7r1Y5-{`)>z0|$Tz1-d6UgKWtUhjU%{ib`j`y2Pqo>Y(Iv3oK+PLJEu+0)h2-P6M} z$TQe8)N`3XU)u-m-Rr_6It7`Ue4N|bvWyXte>)uXPwCU zHS1KiFZ;smF4^6(bF=fZ3$lx{du5N!o|N5?eO30{>}#{&n&WAaF`7(X&d>wtAd|iCqe7U~izLCCBzA?UX-#Fg{U!!lnZ;5ZIZ<%ko z?_S?p-zMKq-!9)C-#*^~-$CCY--o`#zE6Cg`HuL$^d0pb^L^_(;rqi+{eHjVZ}0Eu z@8s|7@9OXF@8Qq)7y5hpd;9zPi~armgZ#XpM0v-o2l=)bMs%2WRb8qh0> literal 0 HcmV?d00001 diff --git a/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings b/src/MacVim/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings new file mode 100644 index 0000000000000000000000000000000000000000..6bf42f79b03ffd17af6b43ea71a0ba4eda2c5f7e GIT binary patch literal 6908 zcmeHM+iuf95S{0Kg&Tni6$-aUgdi$?sE`V(gis&d*hwwYIEs^o{5){ZOqN|YQR;?l zf&{7@d+)PnX3xw{fBcl^ax96QONrkuesA!X%TOjLk7SIRTPY+%U51(~nd6u3ebf%| zm7`A^b;p?LKw9z`r57@go_s@XiFZ<~YoYuW4|~3pM=N{3s@1pT4Q4)wAnALRjlb8D zN`?28?r4ZF?ydp~DfTizEq9-yj_(;-S!?|hAdsUiQ*0)R

9bv=gE4isb}jh%C|I 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�J$G{!-et`Tr@b@`Bj`i;SRN#*Bem?`aqrLaD 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