Skip to content

Commit 334061f

Browse files
committed
Add Emojify Source Editor Extension
1 parent ba40aef commit 334061f

File tree

9 files changed

+451
-0
lines changed

9 files changed

+451
-0
lines changed

EmojifyApplication.xcodeproj/project.pbxproj

Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,48 @@
1010
7C62C7221D10A6E9007374D4 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C62C7211D10A6E9007374D4 /* AppDelegate.swift */; };
1111
7C62C7241D10A6E9007374D4 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7C62C7231D10A6E9007374D4 /* Assets.xcassets */; };
1212
7C62C7271D10A6E9007374D4 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7C62C7251D10A6E9007374D4 /* MainMenu.xib */; };
13+
7C62C7351D10A706007374D4 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7C62C7341D10A706007374D4 /* Cocoa.framework */; };
14+
7C62C73A1D10A706007374D4 /* SourceEditorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C62C7391D10A706007374D4 /* SourceEditorExtension.swift */; };
15+
7C62C73C1D10A706007374D4 /* SourceEditorCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C62C73B1D10A706007374D4 /* SourceEditorCommand.swift */; };
16+
7C62C7401D10A706007374D4 /* Emojify.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 7C62C7321D10A706007374D4 /* Emojify.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
1317
/* End PBXBuildFile section */
1418

19+
/* Begin PBXContainerItemProxy section */
20+
7C62C73E1D10A706007374D4 /* PBXContainerItemProxy */ = {
21+
isa = PBXContainerItemProxy;
22+
containerPortal = 7C62C7161D10A6E9007374D4 /* Project object */;
23+
proxyType = 1;
24+
remoteGlobalIDString = 7C62C7311D10A706007374D4;
25+
remoteInfo = EmojifyCommands;
26+
};
27+
/* End PBXContainerItemProxy section */
28+
29+
/* Begin PBXCopyFilesBuildPhase section */
30+
7C62C7441D10A706007374D4 /* Embed App Extensions */ = {
31+
isa = PBXCopyFilesBuildPhase;
32+
buildActionMask = 2147483647;
33+
dstPath = "";
34+
dstSubfolderSpec = 13;
35+
files = (
36+
7C62C7401D10A706007374D4 /* Emojify.appex in Embed App Extensions */,
37+
);
38+
name = "Embed App Extensions";
39+
runOnlyForDeploymentPostprocessing = 0;
40+
};
41+
/* End PBXCopyFilesBuildPhase section */
42+
1543
/* Begin PBXFileReference section */
1644
7C62C71E1D10A6E9007374D4 /* EmojifyApplication.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = EmojifyApplication.app; sourceTree = BUILT_PRODUCTS_DIR; };
1745
7C62C7211D10A6E9007374D4 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
1846
7C62C7231D10A6E9007374D4 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
1947
7C62C7261D10A6E9007374D4 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
2048
7C62C7281D10A6E9007374D4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
49+
7C62C7321D10A706007374D4 /* Emojify.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = Emojify.appex; sourceTree = BUILT_PRODUCTS_DIR; };
50+
7C62C7341D10A706007374D4 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
51+
7C62C7381D10A706007374D4 /* EmojifyCommands.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = EmojifyCommands.entitlements; sourceTree = "<group>"; };
52+
7C62C7391D10A706007374D4 /* SourceEditorExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SourceEditorExtension.swift; sourceTree = "<group>"; };
53+
7C62C73B1D10A706007374D4 /* SourceEditorCommand.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SourceEditorCommand.swift; sourceTree = "<group>"; };
54+
7C62C73D1D10A706007374D4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
2155
/* End PBXFileReference section */
2256

2357
/* Begin PBXFrameworksBuildPhase section */
@@ -28,13 +62,23 @@
2862
);
2963
runOnlyForDeploymentPostprocessing = 0;
3064
};
65+
7C62C72F1D10A706007374D4 /* Frameworks */ = {
66+
isa = PBXFrameworksBuildPhase;
67+
buildActionMask = 2147483647;
68+
files = (
69+
7C62C7351D10A706007374D4 /* Cocoa.framework in Frameworks */,
70+
);
71+
runOnlyForDeploymentPostprocessing = 0;
72+
};
3173
/* End PBXFrameworksBuildPhase section */
3274

3375
/* Begin PBXGroup section */
3476
7C62C7151D10A6E9007374D4 = {
3577
isa = PBXGroup;
3678
children = (
3779
7C62C7201D10A6E9007374D4 /* EmojifyApplication */,
80+
7C62C7361D10A706007374D4 /* EmojifyCommands */,
81+
7C62C7331D10A706007374D4 /* Frameworks */,
3882
7C62C71F1D10A6E9007374D4 /* Products */,
3983
);
4084
sourceTree = "<group>";
@@ -43,6 +87,7 @@
4387
isa = PBXGroup;
4488
children = (
4589
7C62C71E1D10A6E9007374D4 /* EmojifyApplication.app */,
90+
7C62C7321D10A706007374D4 /* Emojify.appex */,
4691
);
4792
name = Products;
4893
sourceTree = "<group>";
@@ -58,6 +103,33 @@
58103
path = EmojifyApplication;
59104
sourceTree = "<group>";
60105
};
106+
7C62C7331D10A706007374D4 /* Frameworks */ = {
107+
isa = PBXGroup;
108+
children = (
109+
7C62C7341D10A706007374D4 /* Cocoa.framework */,
110+
);
111+
name = Frameworks;
112+
sourceTree = "<group>";
113+
};
114+
7C62C7361D10A706007374D4 /* EmojifyCommands */ = {
115+
isa = PBXGroup;
116+
children = (
117+
7C62C7391D10A706007374D4 /* SourceEditorExtension.swift */,
118+
7C62C73B1D10A706007374D4 /* SourceEditorCommand.swift */,
119+
7C62C73D1D10A706007374D4 /* Info.plist */,
120+
7C62C7371D10A706007374D4 /* Supporting Files */,
121+
);
122+
path = EmojifyCommands;
123+
sourceTree = "<group>";
124+
};
125+
7C62C7371D10A706007374D4 /* Supporting Files */ = {
126+
isa = PBXGroup;
127+
children = (
128+
7C62C7381D10A706007374D4 /* EmojifyCommands.entitlements */,
129+
);
130+
name = "Supporting Files";
131+
sourceTree = "<group>";
132+
};
61133
/* End PBXGroup section */
62134

63135
/* Begin PBXNativeTarget section */
@@ -68,16 +140,35 @@
68140
7C62C71A1D10A6E9007374D4 /* Sources */,
69141
7C62C71B1D10A6E9007374D4 /* Frameworks */,
70142
7C62C71C1D10A6E9007374D4 /* Resources */,
143+
7C62C7441D10A706007374D4 /* Embed App Extensions */,
71144
);
72145
buildRules = (
73146
);
74147
dependencies = (
148+
7C62C73F1D10A706007374D4 /* PBXTargetDependency */,
75149
);
76150
name = EmojifyApplication;
77151
productName = EmojifyApplication;
78152
productReference = 7C62C71E1D10A6E9007374D4 /* EmojifyApplication.app */;
79153
productType = "com.apple.product-type.application";
80154
};
155+
7C62C7311D10A706007374D4 /* Emojify */ = {
156+
isa = PBXNativeTarget;
157+
buildConfigurationList = 7C62C7411D10A706007374D4 /* Build configuration list for PBXNativeTarget "Emojify" */;
158+
buildPhases = (
159+
7C62C72E1D10A706007374D4 /* Sources */,
160+
7C62C72F1D10A706007374D4 /* Frameworks */,
161+
7C62C7301D10A706007374D4 /* Resources */,
162+
);
163+
buildRules = (
164+
);
165+
dependencies = (
166+
);
167+
name = Emojify;
168+
productName = EmojifyCommands;
169+
productReference = 7C62C7321D10A706007374D4 /* Emojify.appex */;
170+
productType = "com.apple.product-type.xcode-extension";
171+
};
81172
/* End PBXNativeTarget section */
82173

83174
/* Begin PBXProject section */
@@ -94,6 +185,12 @@
94185
DevelopmentTeamName = "Bhargav Gurlanka (Personal Team)";
95186
ProvisioningStyle = Automatic;
96187
};
188+
7C62C7311D10A706007374D4 = {
189+
CreatedOnToolsVersion = 8.0;
190+
DevelopmentTeam = QXD5K32E7D;
191+
DevelopmentTeamName = "Bhargav Gurlanka (Personal Team)";
192+
ProvisioningStyle = Automatic;
193+
};
97194
};
98195
};
99196
buildConfigurationList = 7C62C7191D10A6E9007374D4 /* Build configuration list for PBXProject "EmojifyApplication" */;
@@ -110,6 +207,7 @@
110207
projectRoot = "";
111208
targets = (
112209
7C62C71D1D10A6E9007374D4 /* EmojifyApplication */,
210+
7C62C7311D10A706007374D4 /* Emojify */,
113211
);
114212
};
115213
/* End PBXProject section */
@@ -124,6 +222,13 @@
124222
);
125223
runOnlyForDeploymentPostprocessing = 0;
126224
};
225+
7C62C7301D10A706007374D4 /* Resources */ = {
226+
isa = PBXResourcesBuildPhase;
227+
buildActionMask = 2147483647;
228+
files = (
229+
);
230+
runOnlyForDeploymentPostprocessing = 0;
231+
};
127232
/* End PBXResourcesBuildPhase section */
128233

129234
/* Begin PBXSourcesBuildPhase section */
@@ -135,8 +240,25 @@
135240
);
136241
runOnlyForDeploymentPostprocessing = 0;
137242
};
243+
7C62C72E1D10A706007374D4 /* Sources */ = {
244+
isa = PBXSourcesBuildPhase;
245+
buildActionMask = 2147483647;
246+
files = (
247+
7C62C73A1D10A706007374D4 /* SourceEditorExtension.swift in Sources */,
248+
7C62C73C1D10A706007374D4 /* SourceEditorCommand.swift in Sources */,
249+
);
250+
runOnlyForDeploymentPostprocessing = 0;
251+
};
138252
/* End PBXSourcesBuildPhase section */
139253

254+
/* Begin PBXTargetDependency section */
255+
7C62C73F1D10A706007374D4 /* PBXTargetDependency */ = {
256+
isa = PBXTargetDependency;
257+
target = 7C62C7311D10A706007374D4 /* Emojify */;
258+
targetProxy = 7C62C73E1D10A706007374D4 /* PBXContainerItemProxy */;
259+
};
260+
/* End PBXTargetDependency section */
261+
140262
/* Begin PBXVariantGroup section */
141263
7C62C7251D10A6E9007374D4 /* MainMenu.xib */ = {
142264
isa = PBXVariantGroup;
@@ -238,7 +360,9 @@
238360
7C62C72C1D10A6E9007374D4 /* Debug */ = {
239361
isa = XCBuildConfiguration;
240362
buildSettings = {
363+
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
241364
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
365+
CODE_SIGN_IDENTITY = "Mac Developer";
242366
COMBINE_HIDPI_IMAGES = YES;
243367
INFOPLIST_FILE = EmojifyApplication/Info.plist;
244368
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
@@ -251,7 +375,9 @@
251375
7C62C72D1D10A6E9007374D4 /* Release */ = {
252376
isa = XCBuildConfiguration;
253377
buildSettings = {
378+
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
254379
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
380+
CODE_SIGN_IDENTITY = "Mac Developer";
255381
COMBINE_HIDPI_IMAGES = YES;
256382
INFOPLIST_FILE = EmojifyApplication/Info.plist;
257383
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
@@ -261,6 +387,38 @@
261387
};
262388
name = Release;
263389
};
390+
7C62C7421D10A706007374D4 /* Debug */ = {
391+
isa = XCBuildConfiguration;
392+
buildSettings = {
393+
CODE_SIGN_ENTITLEMENTS = EmojifyCommands/EmojifyCommands.entitlements;
394+
CODE_SIGN_IDENTITY = "Mac Developer";
395+
COMBINE_HIDPI_IMAGES = YES;
396+
INFOPLIST_FILE = EmojifyCommands/Info.plist;
397+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @executable_path/../../../../Frameworks";
398+
MACOSX_DEPLOYMENT_TARGET = 10.11;
399+
PRODUCT_BUNDLE_IDENTIFIER = com.bhargavg.EmojifyApplication.EmojifyCommands;
400+
PRODUCT_NAME = "$(TARGET_NAME)";
401+
SKIP_INSTALL = YES;
402+
SWIFT_VERSION = 3.0;
403+
};
404+
name = Debug;
405+
};
406+
7C62C7431D10A706007374D4 /* Release */ = {
407+
isa = XCBuildConfiguration;
408+
buildSettings = {
409+
CODE_SIGN_ENTITLEMENTS = EmojifyCommands/EmojifyCommands.entitlements;
410+
CODE_SIGN_IDENTITY = "Mac Developer";
411+
COMBINE_HIDPI_IMAGES = YES;
412+
INFOPLIST_FILE = EmojifyCommands/Info.plist;
413+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @executable_path/../../../../Frameworks";
414+
MACOSX_DEPLOYMENT_TARGET = 10.11;
415+
PRODUCT_BUNDLE_IDENTIFIER = com.bhargavg.EmojifyApplication.EmojifyCommands;
416+
PRODUCT_NAME = "$(TARGET_NAME)";
417+
SKIP_INSTALL = YES;
418+
SWIFT_VERSION = 3.0;
419+
};
420+
name = Release;
421+
};
264422
/* End XCBuildConfiguration section */
265423

266424
/* Begin XCConfigurationList section */
@@ -281,6 +439,14 @@
281439
);
282440
defaultConfigurationIsVisible = 0;
283441
};
442+
7C62C7411D10A706007374D4 /* Build configuration list for PBXNativeTarget "Emojify" */ = {
443+
isa = XCConfigurationList;
444+
buildConfigurations = (
445+
7C62C7421D10A706007374D4 /* Debug */,
446+
7C62C7431D10A706007374D4 /* Release */,
447+
);
448+
defaultConfigurationIsVisible = 0;
449+
};
284450
/* End XCConfigurationList section */
285451
};
286452
rootObject = 7C62C7161D10A6E9007374D4 /* Project object */;
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "0800"
4+
wasCreatedForAppExtension = "YES"
5+
version = "2.0">
6+
<BuildAction
7+
parallelizeBuildables = "YES"
8+
buildImplicitDependencies = "YES">
9+
<BuildActionEntries>
10+
<BuildActionEntry
11+
buildForTesting = "YES"
12+
buildForRunning = "YES"
13+
buildForProfiling = "YES"
14+
buildForArchiving = "YES"
15+
buildForAnalyzing = "YES">
16+
<BuildableReference
17+
BuildableIdentifier = "primary"
18+
BlueprintIdentifier = "7C62C7311D10A706007374D4"
19+
BuildableName = "Emojify.appex"
20+
BlueprintName = "Emojify"
21+
ReferencedContainer = "container:EmojifyApplication.xcodeproj">
22+
</BuildableReference>
23+
</BuildActionEntry>
24+
<BuildActionEntry
25+
buildForTesting = "YES"
26+
buildForRunning = "YES"
27+
buildForProfiling = "YES"
28+
buildForArchiving = "YES"
29+
buildForAnalyzing = "YES">
30+
<BuildableReference
31+
BuildableIdentifier = "primary"
32+
BlueprintIdentifier = "7C62C71D1D10A6E9007374D4"
33+
BuildableName = "EmojifyApplication.app"
34+
BlueprintName = "EmojifyApplication"
35+
ReferencedContainer = "container:EmojifyApplication.xcodeproj">
36+
</BuildableReference>
37+
</BuildActionEntry>
38+
</BuildActionEntries>
39+
</BuildAction>
40+
<TestAction
41+
buildConfiguration = "Debug"
42+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
43+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
44+
shouldUseLaunchSchemeArgsEnv = "YES">
45+
<Testables>
46+
</Testables>
47+
<MacroExpansion>
48+
<BuildableReference
49+
BuildableIdentifier = "primary"
50+
BlueprintIdentifier = "7C62C7311D10A706007374D4"
51+
BuildableName = "Emojify.appex"
52+
BlueprintName = "Emojify"
53+
ReferencedContainer = "container:EmojifyApplication.xcodeproj">
54+
</BuildableReference>
55+
</MacroExpansion>
56+
<AdditionalOptions>
57+
</AdditionalOptions>
58+
</TestAction>
59+
<LaunchAction
60+
buildConfiguration = "Debug"
61+
selectedDebuggerIdentifier = ""
62+
selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn"
63+
launchStyle = "0"
64+
useCustomWorkingDirectory = "NO"
65+
ignoresPersistentStateOnLaunch = "NO"
66+
debugDocumentVersioning = "YES"
67+
debugServiceExtension = "internal"
68+
allowLocationSimulation = "YES"
69+
launchAutomaticallySubstyle = "2">
70+
<RemoteRunnable
71+
runnableDebuggingMode = "0"
72+
BundleIdentifier = "com.apple.dt.Xcode"
73+
RemotePath = "/Applications/Xcode-beta.app">
74+
</RemoteRunnable>
75+
<MacroExpansion>
76+
<BuildableReference
77+
BuildableIdentifier = "primary"
78+
BlueprintIdentifier = "7C62C71D1D10A6E9007374D4"
79+
BuildableName = "EmojifyApplication.app"
80+
BlueprintName = "EmojifyApplication"
81+
ReferencedContainer = "container:EmojifyApplication.xcodeproj">
82+
</BuildableReference>
83+
</MacroExpansion>
84+
<AdditionalOptions>
85+
</AdditionalOptions>
86+
</LaunchAction>
87+
<ProfileAction
88+
buildConfiguration = "Release"
89+
shouldUseLaunchSchemeArgsEnv = "YES"
90+
savedToolIdentifier = ""
91+
useCustomWorkingDirectory = "NO"
92+
debugDocumentVersioning = "YES"
93+
launchAutomaticallySubstyle = "2">
94+
<BuildableProductRunnable
95+
runnableDebuggingMode = "0">
96+
<BuildableReference
97+
BuildableIdentifier = "primary"
98+
BlueprintIdentifier = "7C62C71D1D10A6E9007374D4"
99+
BuildableName = "EmojifyApplication.app"
100+
BlueprintName = "EmojifyApplication"
101+
ReferencedContainer = "container:EmojifyApplication.xcodeproj">
102+
</BuildableReference>
103+
</BuildableProductRunnable>
104+
</ProfileAction>
105+
<AnalyzeAction
106+
buildConfiguration = "Debug">
107+
</AnalyzeAction>
108+
<ArchiveAction
109+
buildConfiguration = "Release"
110+
revealArchiveInOrganizer = "YES">
111+
</ArchiveAction>
112+
</Scheme>

0 commit comments

Comments
 (0)