1
1
mirror of https://github.com/qvacua/vimr.git synced 2024-12-23 13:53:06 +03:00

Re-add some demos

This commit is contained in:
Tae Won Ha 2020-08-19 07:49:24 +02:00
parent 81f21cbefd
commit aac853f2a8
No known key found for this signature in database
GPG Key ID: E40743465B5B8B44
31 changed files with 852 additions and 3910 deletions

View File

@ -5,19 +5,12 @@ import PackageDescription
let package = Package(
name: "Commons",
platforms: [.macOS(.v10_13)],
products: [
.library(
name: "Commons",
targets: ["Commons"]),
],
products: [.library(name: "Commons", targets: ["Commons"])],
dependencies: [
.package(url: "https://github.com/Quick/Nimble", .upToNextMinor(from: "8.1.1")),
],
targets: [
.target(
name: "Commons",
dependencies: []
),
.target(name: "Commons", dependencies: []),
.testTarget(
name: "CommonsTests",
dependencies: ["Commons", "Nimble"],

View File

@ -38,7 +38,6 @@
children = (
4B7FBFF924EC936C002D12A1 /* EnvVarTest */,
4B7FBFE424EC92F2002D12A1 /* Products */,
4B7FC00624EC9425002D12A1 /* Frameworks */,
);
sourceTree = "<group>";
};
@ -61,13 +60,6 @@
path = EnvVarTest;
sourceTree = "<group>";
};
4B7FC00624EC9425002D12A1 /* Frameworks */ = {
isa = PBXGroup;
children = (
);
name = Frameworks;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */

View File

@ -1,47 +0,0 @@
/**
* Tae Won Ha - http://taewon.de - @hataewon
* See LICENSE
*/
import Foundation
import RxSwift
extension PrimitiveSequence where Element == Never, Trait == CompletableTrait {
func wait(
onCompleted: (() -> Void)? = nil,
onError: ((Error) -> Void)? = nil
) throws {
var trigger = false
var err: Error? = nil
let condition = NSCondition()
condition.lock()
defer { condition.unlock() }
let disposable = self.subscribe(onCompleted: {
onCompleted?()
condition.lock()
defer { condition.unlock() }
trigger = true
condition.broadcast()
}, onError: { error in
onError?(error)
err = error
condition.lock()
defer { condition.unlock() }
trigger = true
condition.broadcast()
})
while !trigger { condition.wait(until: Date(timeIntervalSinceNow: 5)) }
disposable.dispose()
if let e = err {
throw e
}
}
}

View File

@ -1,59 +0,0 @@
/**
* Tae Won Ha - http://taewon.de - @hataewon
* See LICENSE
*/
#import <Foundation/Foundation.h>
typedef NS_ENUM(NSInteger, NeoVimServerMsgId) {
NeoVimServerMsgIdServerReady = 0,
NeoVimServerMsgIdNeoVimReady,
NeoVimServerMsgIdResize,
NeoVimServerMsgIdClear,
NeoVimServerMsgIdEolClear,
NeoVimServerMsgIdSetMenu,
NeoVimServerMsgIdBusyStart,
NeoVimServerMsgIdBusyStop,
NeoVimServerMsgIdMouseOn,
NeoVimServerMsgIdMouseOff,
NeoVimServerMsgIdModeChange,
NeoVimServerMsgIdSetScrollRegion,
NeoVimServerMsgIdScroll,
NeoVimServerMsgIdUnmark,
NeoVimServerMsgIdBell,
NeoVimServerMsgIdVisualBell,
NeoVimServerMsgIdFlush,
NeoVimServerMsgIdSetForeground,
NeoVimServerMsgIdSetBackground,
NeoVimServerMsgIdSetSpecial,
NeoVimServerMsgIdSetTitle,
NeoVimServerMsgIdSetIcon,
NeoVimServerMsgIdStop,
NeoVimServerMsgIdDirtyStatusChanged,
NeoVimServerMsgIdCwdChanged,
NeoVimServerMsgIdColorSchemeChanged,
NeoVimServerMsgIdAutoCommandEvent,
#ifdef DEBUG
NeoVimServerDebug1,
#endif
};
typedef NS_ENUM(NSInteger, NeoVimAgentMsgId) {
NeoVimAgentMsgIdAgentReady = 0,
NeoVimAgentMsgIdInput,
NeoVimAgentMsgIdInputMarked,
NeoVimAgentMsgIdDelete,
NeoVimAgentMsgIdResize,
NeoVimAgentMsgIdScroll,
NeoVimAgentMsgIdGetEscapeFileNames,
NeoVimAgentMsgIdFocusGained,
#ifdef DEBUG
NeoVimAgentDebug1,
#endif
};

File diff suppressed because it is too large Load Diff

View File

@ -1,76 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1020"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4BF1851F21313EE300954FE7"
BuildableName = "DrawerDev.app"
BlueprintName = "DrawerDev"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4BF1851F21313EE300954FE7"
BuildableName = "DrawerDev.app"
BlueprintName = "DrawerDev"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
<LocationScenarioReference
identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier"
referenceType = "1">
</LocationScenarioReference>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,76 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1020"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4BF01CCB2235015E00411218"
BuildableName = "DrawerPerf.app"
BlueprintName = "DrawerPerf"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Release"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4BF01CCB2235015E00411218"
BuildableName = "DrawerPerf.app"
BlueprintName = "DrawerPerf"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
<LocationScenarioReference
identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier"
referenceType = "1">
</LocationScenarioReference>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,86 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1020"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4BF01CCB2235015E00411218"
BuildableName = "DrawerPerf.app"
BlueprintName = "DrawerPerf"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4BF01CCB2235015E00411218"
BuildableName = "DrawerPerf.app"
BlueprintName = "DrawerPerf"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
<LocationScenarioReference
identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier"
referenceType = "1">
</LocationScenarioReference>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4BF01CCB2235015E00411218"
BuildableName = "DrawerPerf.app"
BlueprintName = "DrawerPerf"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,78 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1160"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B3C735724BB2631006274F0"
BuildableName = "EnvTest.app"
BlueprintName = "EnvTest"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B3C735724BB2631006274F0"
BuildableName = "EnvTest.app"
BlueprintName = "EnvTest"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B3C735724BB2631006274F0"
BuildableName = "EnvTest.app"
BlueprintName = "EnvTest"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,36 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction>
<BuildActionEntries>
<BuildActionEntry
buildForRunning = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0225EF224AAE260052362B"
BuildableName = "MinimalNvimViewDemo.app"
BlueprintName = "MinimalNvimViewDemo"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<LaunchAction
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0225EF224AAE260052362B"
BuildableName = "MinimalNvimViewDemo.app"
BlueprintName = "MinimalNvimViewDemo"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<LocationScenarioReference
identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier"
referenceType = "1">
</LocationScenarioReference>
</LaunchAction>
</Scheme>

View File

@ -1,101 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1020"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0225EF224AAE260052362B"
BuildableName = "MinimalNvimViewDemo.app"
BlueprintName = "MinimalNvimViewDemo"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0225EF224AAE260052362B"
BuildableName = "MinimalNvimViewDemo.app"
BlueprintName = "MinimalNvimViewDemo"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0225EF224AAE260052362B"
BuildableName = "MinimalNvimViewDemo.app"
BlueprintName = "MinimalNvimViewDemo"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
<AdditionalOption
key = "MallocStackLogging"
value = ""
isEnabled = "YES">
</AdditionalOption>
<AdditionalOption
key = "PrefersMallocStackLoggingLite"
value = ""
isEnabled = "YES">
</AdditionalOption>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0225EF224AAE260052362B"
BuildableName = "MinimalNvimViewDemo.app"
BlueprintName = "MinimalNvimViewDemo"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,99 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1020"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B90F0031FD2AF59008A39E0"
BuildableName = "NvimView.framework"
BlueprintName = "NvimView"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0A1B102129F49500F1E02F"
BuildableName = "NvimViewTests.xctest"
BlueprintName = "NvimViewTests"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B90F0031FD2AF59008A39E0"
BuildableName = "NvimView.framework"
BlueprintName = "NvimView"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B90F0031FD2AF59008A39E0"
BuildableName = "NvimView.framework"
BlueprintName = "NvimView"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B90F0031FD2AF59008A39E0"
BuildableName = "NvimView.framework"
BlueprintName = "NvimView"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,85 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1020"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0A1B102129F49500F1E02F"
BuildableName = "NvimViewTests.xctest"
BlueprintName = "NvimViewTests"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0A1B102129F49500F1E02F"
BuildableName = "NvimViewTests.xctest"
BlueprintName = "NvimViewTests"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4B0A1B102129F49500F1E02F"
BuildableName = "NvimViewTests.xctest"
BlueprintName = "NvimViewTests"
ReferencedContainer = "container:NvimView.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
<LocationScenarioReference
identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier"
referenceType = "1">
</LocationScenarioReference>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,26 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>SNAPSHOT-357</string>
<key>CFBundleVersion</key>
<string>357</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2017 Tae Won Ha. All rights reserved.</string>
<key>NSPrincipalClass</key>
<string></string>
</dict>
</plist>

View File

@ -0,0 +1,816 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 52;
objects = {
/* Begin PBXBuildFile section */
1929B11F4306BF8AA97E080F /* Geometry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B78E7E39A629E6F562E0 /* Geometry.swift */; };
1929B2DB631E6EB5C3452B68 /* MyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BAF033A398BFBC2A7890 /* MyView.swift */; };
1929B2F38470E1DC39215987 /* CellAttributesCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BEA272F8FBB77C464EB9 /* CellAttributesCollection.swift */; };
1929B45811AAE477DFA4C107 /* FontUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B9AC87B65FDA23239EA7 /* FontUtils.swift */; };
1929B9F7DD2EB3277A133EAF /* Runs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BC404D40D77F35EA10BB /* Runs.swift */; };
1929BAA738326459033CADAE /* Typesetter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B92EC70C40EE6647886E /* Typesetter.swift */; };
1929BC29B7858F8E963FD9BE /* AttributesRunDrawer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B8E30EBB02E9CF99E5E3 /* AttributesRunDrawer.swift */; };
1929BCC8C561F0DE73B67D90 /* CellAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BDFF7AC6A198BDC64B14 /* CellAttributes.swift */; };
1929BD694DE393302A1AF42E /* ColorUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B51A7E7A07A38C8497FF /* ColorUtils.swift */; };
1929BE00E22B5E472B89C7AA /* Defs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B201A097751F817A23B1 /* Defs.swift */; };
1929BE88F4A892215227D0AB /* UGrid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BEB34345F348237FE0E4 /* UGrid.swift */; };
1929BF95400085EE3F0FFAD5 /* FontTrait.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B9D7F040B8B9E2F038DF /* FontTrait.swift */; };
4B0225F3224AAE260052362B /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B0225F2224AAE260052362B /* AppDelegate.swift */; };
4B0225F5224AAE260052362B /* Document.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B0225F4224AAE260052362B /* Document.swift */; };
4B0225F8224AAE260052362B /* Document.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4B0225F6224AAE260052362B /* Document.xib */; };
4B0225FA224AAE270052362B /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4B0225F9224AAE270052362B /* Assets.xcassets */; };
4B0225FD224AAE270052362B /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4B0225FB224AAE270052362B /* MainMenu.xib */; };
4BD67C9924ECF53E00147C51 /* Commons in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67C7C24ECF35300147C51 /* Commons */; };
4BD67C9A24ECF53E00147C51 /* NvimServerTypes in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67C9324ECF47000147C51 /* NvimServerTypes */; };
4BD67C9B24ECF53E00147C51 /* MessagePack in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67C9624ECF4B300147C51 /* MessagePack */; };
4BD67CA524ED037000147C51 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BD67CA424ED037000147C51 /* AppDelegate.swift */; };
4BD67CA724ED037100147C51 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4BD67CA624ED037100147C51 /* Assets.xcassets */; };
4BD67CAA24ED037100147C51 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4BD67CA824ED037100147C51 /* MainMenu.xib */; };
4BD67CB524ED03B000147C51 /* 0.json in Resources */ = {isa = PBXBuildFile; fileRef = 4BD67CB024ED03B000147C51 /* 0.json */; };
4BD67CB624ED03B000147C51 /* FontTrait.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BD67CB124ED03B000147C51 /* FontTrait.swift */; };
4BD67CB724ED03B000147C51 /* PerfTester.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BD67CB224ED03B000147C51 /* PerfTester.swift */; };
4BD67CB824ED03B000147C51 /* 2.json in Resources */ = {isa = PBXBuildFile; fileRef = 4BD67CB324ED03B000147C51 /* 2.json */; };
4BD67CB924ED03B000147C51 /* 1.json in Resources */ = {isa = PBXBuildFile; fileRef = 4BD67CB424ED03B000147C51 /* 1.json */; };
4BD67CBB24ED03BF00147C51 /* Commons in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67CBA24ED03BF00147C51 /* Commons */; };
4BD67CBE24ED03ED00147C51 /* Typesetter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B92EC70C40EE6647886E /* Typesetter.swift */; };
4BD67CBF24ED03F800147C51 /* Runs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BC404D40D77F35EA10BB /* Runs.swift */; };
4BD67CC024ED03F800147C51 /* UGrid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BEB34345F348237FE0E4 /* UGrid.swift */; };
4BD67CC124ED040100147C51 /* CellAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BDFF7AC6A198BDC64B14 /* CellAttributes.swift */; };
4BD67CC324ED040700147C51 /* NvimServerTypes in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67CC224ED040700147C51 /* NvimServerTypes */; };
4BD67CC424ED040E00147C51 /* ColorUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B51A7E7A07A38C8497FF /* ColorUtils.swift */; };
4BD67CC524ED041400147C51 /* CellAttributesCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BEA272F8FBB77C464EB9 /* CellAttributesCollection.swift */; };
4BD67CC624ED041A00147C51 /* FontUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B9AC87B65FDA23239EA7 /* FontUtils.swift */; };
4BD67CC724ED042000147C51 /* Geometry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B78E7E39A629E6F562E0 /* Geometry.swift */; };
4BD67CC824ED042600147C51 /* Defs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B201A097751F817A23B1 /* Defs.swift */; };
4BD67CCA24ED042F00147C51 /* MessagePack in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67CC924ED042F00147C51 /* MessagePack */; };
4BD67CCC24ED089800147C51 /* Commons in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67CCB24ED089800147C51 /* Commons */; };
4BD67CCE24ED089A00147C51 /* NvimView in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67CCD24ED089A00147C51 /* NvimView */; };
4BD67CD124ED08D400147C51 /* PureLayout in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67CD024ED08D400147C51 /* PureLayout */; };
4BF1852321313EE400954FE7 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BF1852221313EE400954FE7 /* AppDelegate.swift */; };
4BF1852521313EE500954FE7 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4BF1852421313EE500954FE7 /* Assets.xcassets */; };
4BF1852821313EE500954FE7 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4BF1852621313EE500954FE7 /* MainMenu.xib */; };
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
4B022619224AAEA80052362B /* Embed Frameworks */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = "";
dstSubfolderSpec = 10;
files = (
);
name = "Embed Frameworks";
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
1929B201A097751F817A23B1 /* Defs.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Defs.swift; path = ../Sources/NvimView/Defs.swift; sourceTree = "<group>"; };
1929B51A7E7A07A38C8497FF /* ColorUtils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ColorUtils.swift; path = ../Sources/NvimView/ColorUtils.swift; sourceTree = "<group>"; };
1929B78E7E39A629E6F562E0 /* Geometry.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Geometry.swift; path = ../Sources/NvimView/Geometry.swift; sourceTree = "<group>"; };
1929B8E30EBB02E9CF99E5E3 /* AttributesRunDrawer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = AttributesRunDrawer.swift; path = ../Sources/NvimView/AttributesRunDrawer.swift; sourceTree = "<group>"; };
1929B92EC70C40EE6647886E /* Typesetter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Typesetter.swift; path = ../Sources/NvimView/Typesetter.swift; sourceTree = "<group>"; };
1929B9AC87B65FDA23239EA7 /* FontUtils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = FontUtils.swift; path = ../Sources/NvimView/FontUtils.swift; sourceTree = "<group>"; };
1929B9D7F040B8B9E2F038DF /* FontTrait.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FontTrait.swift; sourceTree = "<group>"; };
1929BAF033A398BFBC2A7890 /* MyView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MyView.swift; sourceTree = "<group>"; };
1929BC404D40D77F35EA10BB /* Runs.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Runs.swift; path = ../Sources/NvimView/Runs.swift; sourceTree = "<group>"; };
1929BDFF7AC6A198BDC64B14 /* CellAttributes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = CellAttributes.swift; path = ../Sources/NvimView/CellAttributes.swift; sourceTree = "<group>"; };
1929BEA272F8FBB77C464EB9 /* CellAttributesCollection.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = CellAttributesCollection.swift; path = ../Sources/NvimView/CellAttributesCollection.swift; sourceTree = "<group>"; };
1929BEB34345F348237FE0E4 /* UGrid.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = UGrid.swift; path = ../Sources/NvimView/UGrid.swift; sourceTree = "<group>"; };
4B0225F0224AAE260052362B /* MinimalNvimViewDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MinimalNvimViewDemo.app; sourceTree = BUILT_PRODUCTS_DIR; };
4B0225F2224AAE260052362B /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
4B0225F4224AAE260052362B /* Document.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Document.swift; sourceTree = "<group>"; };
4B0225F7224AAE260052362B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/Document.xib; sourceTree = "<group>"; };
4B0225F9224AAE270052362B /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
4B0225FC224AAE270052362B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
4B0225FE224AAE270052362B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
4BD67CA224ED037000147C51 /* DrawerPerf.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DrawerPerf.app; sourceTree = BUILT_PRODUCTS_DIR; };
4BD67CA424ED037000147C51 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
4BD67CA624ED037100147C51 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
4BD67CA924ED037100147C51 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
4BD67CAB24ED037100147C51 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
4BD67CB024ED03B000147C51 /* 0.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = 0.json; sourceTree = "<group>"; };
4BD67CB124ED03B000147C51 /* FontTrait.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FontTrait.swift; sourceTree = "<group>"; };
4BD67CB224ED03B000147C51 /* PerfTester.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PerfTester.swift; sourceTree = "<group>"; };
4BD67CB324ED03B000147C51 /* 2.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = 2.json; sourceTree = "<group>"; };
4BD67CB424ED03B000147C51 /* 1.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = 1.json; sourceTree = "<group>"; };
4BF1852021313EE300954FE7 /* DrawerDev.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DrawerDev.app; sourceTree = BUILT_PRODUCTS_DIR; };
4BF1852221313EE400954FE7 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
4BF1852421313EE500954FE7 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
4BF1852721313EE500954FE7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
4BF1852921313EE500954FE7 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
4B0225ED224AAE260052362B /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
4BD67CD124ED08D400147C51 /* PureLayout in Frameworks */,
4BD67CCC24ED089800147C51 /* Commons in Frameworks */,
4BD67CCE24ED089A00147C51 /* NvimView in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
4BD67C9F24ED037000147C51 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
4BD67CBB24ED03BF00147C51 /* Commons in Frameworks */,
4BD67CC324ED040700147C51 /* NvimServerTypes in Frameworks */,
4BD67CCA24ED042F00147C51 /* MessagePack in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
4BF1851D21313EE300954FE7 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
4BD67C9924ECF53E00147C51 /* Commons in Frameworks */,
4BD67C9A24ECF53E00147C51 /* NvimServerTypes in Frameworks */,
4BD67C9B24ECF53E00147C51 /* MessagePack in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
1929B38C5A0A59172A3402B2 /* NvimView Sources */ = {
isa = PBXGroup;
children = (
1929B8E30EBB02E9CF99E5E3 /* AttributesRunDrawer.swift */,
1929BDFF7AC6A198BDC64B14 /* CellAttributes.swift */,
1929BEA272F8FBB77C464EB9 /* CellAttributesCollection.swift */,
1929B51A7E7A07A38C8497FF /* ColorUtils.swift */,
1929B201A097751F817A23B1 /* Defs.swift */,
1929B9AC87B65FDA23239EA7 /* FontUtils.swift */,
1929B78E7E39A629E6F562E0 /* Geometry.swift */,
1929BC404D40D77F35EA10BB /* Runs.swift */,
1929B92EC70C40EE6647886E /* Typesetter.swift */,
1929BEB34345F348237FE0E4 /* UGrid.swift */,
);
name = "NvimView Sources";
sourceTree = "<group>";
};
4B0225F1224AAE260052362B /* MinimalNvimViewDemo */ = {
isa = PBXGroup;
children = (
4B0225F2224AAE260052362B /* AppDelegate.swift */,
4B0225F4224AAE260052362B /* Document.swift */,
4B0225F6224AAE260052362B /* Document.xib */,
4B0225F9224AAE270052362B /* Assets.xcassets */,
4B0225FB224AAE270052362B /* MainMenu.xib */,
4B0225FE224AAE270052362B /* Info.plist */,
);
path = MinimalNvimViewDemo;
sourceTree = "<group>";
};
4B90EFFA1FD2AF59008A39E0 = {
isa = PBXGroup;
children = (
1929B38C5A0A59172A3402B2 /* NvimView Sources */,
4BD67CA324ED037000147C51 /* DrawerPerf */,
4BF1852121313EE400954FE7 /* DrawerDev */,
4B0225F1224AAE260052362B /* MinimalNvimViewDemo */,
4B90F0051FD2AF59008A39E0 /* Products */,
);
sourceTree = "<group>";
};
4B90F0051FD2AF59008A39E0 /* Products */ = {
isa = PBXGroup;
children = (
4BF1852021313EE300954FE7 /* DrawerDev.app */,
4B0225F0224AAE260052362B /* MinimalNvimViewDemo.app */,
4BD67CA224ED037000147C51 /* DrawerPerf.app */,
);
name = Products;
sourceTree = "<group>";
};
4BD67CA324ED037000147C51 /* DrawerPerf */ = {
isa = PBXGroup;
children = (
4BD67CA424ED037000147C51 /* AppDelegate.swift */,
4BD67CB124ED03B000147C51 /* FontTrait.swift */,
4BD67CB224ED03B000147C51 /* PerfTester.swift */,
4BD67CA624ED037100147C51 /* Assets.xcassets */,
4BD67CA824ED037100147C51 /* MainMenu.xib */,
4BD67CAB24ED037100147C51 /* Info.plist */,
4BD67CB024ED03B000147C51 /* 0.json */,
4BD67CB424ED03B000147C51 /* 1.json */,
4BD67CB324ED03B000147C51 /* 2.json */,
);
path = DrawerPerf;
sourceTree = "<group>";
};
4BF1852121313EE400954FE7 /* DrawerDev */ = {
isa = PBXGroup;
children = (
4BF1852221313EE400954FE7 /* AppDelegate.swift */,
4BF1852421313EE500954FE7 /* Assets.xcassets */,
4BF1852621313EE500954FE7 /* MainMenu.xib */,
4BF1852921313EE500954FE7 /* Info.plist */,
1929B9D7F040B8B9E2F038DF /* FontTrait.swift */,
1929BAF033A398BFBC2A7890 /* MyView.swift */,
);
path = DrawerDev;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
4B0225EF224AAE260052362B /* MinimalNvimViewDemo */ = {
isa = PBXNativeTarget;
buildConfigurationList = 4B022602224AAE270052362B /* Build configuration list for PBXNativeTarget "MinimalNvimViewDemo" */;
buildPhases = (
4B0225EC224AAE260052362B /* Sources */,
4B0225ED224AAE260052362B /* Frameworks */,
4B0225EE224AAE260052362B /* Resources */,
4B022619224AAEA80052362B /* Embed Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = MinimalNvimViewDemo;
packageProductDependencies = (
4BD67CCB24ED089800147C51 /* Commons */,
4BD67CCD24ED089A00147C51 /* NvimView */,
4BD67CD024ED08D400147C51 /* PureLayout */,
);
productName = MinimalNvimViewDemo;
productReference = 4B0225F0224AAE260052362B /* MinimalNvimViewDemo.app */;
productType = "com.apple.product-type.application";
};
4BD67CA124ED037000147C51 /* DrawerPerf */ = {
isa = PBXNativeTarget;
buildConfigurationList = 4BD67CAD24ED037100147C51 /* Build configuration list for PBXNativeTarget "DrawerPerf" */;
buildPhases = (
4BD67C9E24ED037000147C51 /* Sources */,
4BD67C9F24ED037000147C51 /* Frameworks */,
4BD67CA024ED037000147C51 /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = DrawerPerf;
packageProductDependencies = (
4BD67CBA24ED03BF00147C51 /* Commons */,
4BD67CC224ED040700147C51 /* NvimServerTypes */,
4BD67CC924ED042F00147C51 /* MessagePack */,
);
productName = DrawerPerf;
productReference = 4BD67CA224ED037000147C51 /* DrawerPerf.app */;
productType = "com.apple.product-type.application";
};
4BF1851F21313EE300954FE7 /* DrawerDev */ = {
isa = PBXNativeTarget;
buildConfigurationList = 4BF1852D21313EE500954FE7 /* Build configuration list for PBXNativeTarget "DrawerDev" */;
buildPhases = (
4BF1851C21313EE300954FE7 /* Sources */,
4BF1851D21313EE300954FE7 /* Frameworks */,
4BF1851E21313EE300954FE7 /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = DrawerDev;
packageProductDependencies = (
4BD67C7C24ECF35300147C51 /* Commons */,
4BD67C9324ECF47000147C51 /* NvimServerTypes */,
4BD67C9624ECF4B300147C51 /* MessagePack */,
);
productName = DrawerDev;
productReference = 4BF1852021313EE300954FE7 /* DrawerDev.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
4B90EFFB1FD2AF59008A39E0 /* Project object */ = {
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 1200;
LastUpgradeCheck = 0930;
ORGANIZATIONNAME = "Tae Won Ha";
TargetAttributes = {
4B0225EF224AAE260052362B = {
CreatedOnToolsVersion = 10.2;
ProvisioningStyle = Manual;
};
4BD67CA124ED037000147C51 = {
CreatedOnToolsVersion = 12.0;
};
4BF1851F21313EE300954FE7 = {
CreatedOnToolsVersion = 9.4.1;
ProvisioningStyle = Manual;
};
};
};
buildConfigurationList = 4B90EFFE1FD2AF59008A39E0 /* Build configuration list for PBXProject "NvimViewSupport" */;
compatibilityVersion = "Xcode 8.0";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
);
mainGroup = 4B90EFFA1FD2AF59008A39E0;
packageReferences = (
4BD67C9224ECF46900147C51 /* XCRemoteSwiftPackageReference "neovim" */,
4BD67C9524ECF4AB00147C51 /* XCRemoteSwiftPackageReference "MessagePack" */,
4BD67CCF24ED08CB00147C51 /* XCRemoteSwiftPackageReference "PureLayout" */,
);
productRefGroup = 4B90F0051FD2AF59008A39E0 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
4BF1851F21313EE300954FE7 /* DrawerDev */,
4B0225EF224AAE260052362B /* MinimalNvimViewDemo */,
4BD67CA124ED037000147C51 /* DrawerPerf */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
4B0225EE224AAE260052362B /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
4B0225FA224AAE270052362B /* Assets.xcassets in Resources */,
4B0225F8224AAE260052362B /* Document.xib in Resources */,
4B0225FD224AAE270052362B /* MainMenu.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
4BD67CA024ED037000147C51 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
4BD67CB924ED03B000147C51 /* 1.json in Resources */,
4BD67CB824ED03B000147C51 /* 2.json in Resources */,
4BD67CB524ED03B000147C51 /* 0.json in Resources */,
4BD67CA724ED037100147C51 /* Assets.xcassets in Resources */,
4BD67CAA24ED037100147C51 /* MainMenu.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
4BF1851E21313EE300954FE7 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
4BF1852521313EE500954FE7 /* Assets.xcassets in Resources */,
4BF1852821313EE500954FE7 /* MainMenu.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
4B0225EC224AAE260052362B /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
4B0225F5224AAE260052362B /* Document.swift in Sources */,
4B0225F3224AAE260052362B /* AppDelegate.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
4BD67C9E24ED037000147C51 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
4BD67CC824ED042600147C51 /* Defs.swift in Sources */,
4BD67CC724ED042000147C51 /* Geometry.swift in Sources */,
4BD67CC624ED041A00147C51 /* FontUtils.swift in Sources */,
4BD67CC524ED041400147C51 /* CellAttributesCollection.swift in Sources */,
4BD67CC424ED040E00147C51 /* ColorUtils.swift in Sources */,
4BD67CC124ED040100147C51 /* CellAttributes.swift in Sources */,
4BD67CBF24ED03F800147C51 /* Runs.swift in Sources */,
4BD67CC024ED03F800147C51 /* UGrid.swift in Sources */,
4BD67CBE24ED03ED00147C51 /* Typesetter.swift in Sources */,
4BD67CA524ED037000147C51 /* AppDelegate.swift in Sources */,
4BD67CB724ED03B000147C51 /* PerfTester.swift in Sources */,
4BD67CB624ED03B000147C51 /* FontTrait.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
4BF1851C21313EE300954FE7 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
4BF1852321313EE400954FE7 /* AppDelegate.swift in Sources */,
1929BF95400085EE3F0FFAD5 /* FontTrait.swift in Sources */,
1929B2DB631E6EB5C3452B68 /* MyView.swift in Sources */,
1929BC29B7858F8E963FD9BE /* AttributesRunDrawer.swift in Sources */,
1929BCC8C561F0DE73B67D90 /* CellAttributes.swift in Sources */,
1929B2F38470E1DC39215987 /* CellAttributesCollection.swift in Sources */,
1929BD694DE393302A1AF42E /* ColorUtils.swift in Sources */,
1929BE00E22B5E472B89C7AA /* Defs.swift in Sources */,
1929B45811AAE477DFA4C107 /* FontUtils.swift in Sources */,
1929B11F4306BF8AA97E080F /* Geometry.swift in Sources */,
1929B9F7DD2EB3277A133EAF /* Runs.swift in Sources */,
1929BAA738326459033CADAE /* Typesetter.swift in Sources */,
1929BE88F4A892215227D0AB /* UGrid.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
4B0225F6224AAE260052362B /* Document.xib */ = {
isa = PBXVariantGroup;
children = (
4B0225F7224AAE260052362B /* Base */,
);
name = Document.xib;
sourceTree = "<group>";
};
4B0225FB224AAE270052362B /* MainMenu.xib */ = {
isa = PBXVariantGroup;
children = (
4B0225FC224AAE270052362B /* Base */,
);
name = MainMenu.xib;
sourceTree = "<group>";
};
4BD67CA824ED037100147C51 /* MainMenu.xib */ = {
isa = PBXVariantGroup;
children = (
4BD67CA924ED037100147C51 /* Base */,
);
name = MainMenu.xib;
sourceTree = "<group>";
};
4BF1852621313EE500954FE7 /* MainMenu.xib */ = {
isa = PBXVariantGroup;
children = (
4BF1852721313EE500954FE7 /* Base */,
);
name = MainMenu.xib;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
4B022600224AAE270052362B /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_OBJC_WEAK = YES;
COMBINE_HIDPI_IMAGES = YES;
FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac";
INFOPLIST_FILE = MinimalNvimViewDemo/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.qvacua.MinimalNvimViewDemo;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
};
name = Debug;
};
4B022601224AAE270052362B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_OBJC_WEAK = YES;
COMBINE_HIDPI_IMAGES = YES;
FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac";
INFOPLIST_FILE = MinimalNvimViewDemo/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.qvacua.MinimalNvimViewDemo;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
};
name = Release;
};
4B90F00A1FD2AF59008A39E0 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 357;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.13;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
SWIFT_DISABLE_SAFETY_CHECKS = YES;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 5.0;
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
};
name = Debug;
};
4B90F00B1FD2AF59008A39E0 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 357;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = fast;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.13;
MTL_ENABLE_DEBUG_INFO = NO;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_DISABLE_SAFETY_CHECKS = YES;
SWIFT_OPTIMIZATION_LEVEL = "-O";
SWIFT_VERSION = 5.0;
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
};
name = Release;
};
4BD67CAE24ED037100147C51 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
COMBINE_HIDPI_IMAGES = YES;
INFOPLIST_FILE = DrawerPerf/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.qvacua.DrawerPerf;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SWIFT_VERSION = 5.0;
};
name = Debug;
};
4BD67CAF24ED037100147C51 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
COMBINE_HIDPI_IMAGES = YES;
INFOPLIST_FILE = DrawerPerf/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.qvacua.DrawerPerf;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SWIFT_VERSION = 5.0;
};
name = Release;
};
4BF1852B21313EE500954FE7 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_OBJC_WEAK = YES;
COMBINE_HIDPI_IMAGES = YES;
FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac";
INFOPLIST_FILE = DrawerDev/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.qvacua.DrawerDev;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
};
name = Debug;
};
4BF1852C21313EE500954FE7 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_OBJC_WEAK = YES;
COMBINE_HIDPI_IMAGES = YES;
FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac";
INFOPLIST_FILE = DrawerDev/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.qvacua.DrawerDev;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
4B022602224AAE270052362B /* Build configuration list for PBXNativeTarget "MinimalNvimViewDemo" */ = {
isa = XCConfigurationList;
buildConfigurations = (
4B022600224AAE270052362B /* Debug */,
4B022601224AAE270052362B /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
4B90EFFE1FD2AF59008A39E0 /* Build configuration list for PBXProject "NvimViewSupport" */ = {
isa = XCConfigurationList;
buildConfigurations = (
4B90F00A1FD2AF59008A39E0 /* Debug */,
4B90F00B1FD2AF59008A39E0 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
4BD67CAD24ED037100147C51 /* Build configuration list for PBXNativeTarget "DrawerPerf" */ = {
isa = XCConfigurationList;
buildConfigurations = (
4BD67CAE24ED037100147C51 /* Debug */,
4BD67CAF24ED037100147C51 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
4BF1852D21313EE500954FE7 /* Build configuration list for PBXNativeTarget "DrawerDev" */ = {
isa = XCConfigurationList;
buildConfigurations = (
4BF1852B21313EE500954FE7 /* Debug */,
4BF1852C21313EE500954FE7 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
/* Begin XCRemoteSwiftPackageReference section */
4BD67C9224ECF46900147C51 /* XCRemoteSwiftPackageReference "neovim" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/qvacua/neovim";
requirement = {
kind = exactVersion;
version = "0.1.0-types";
};
};
4BD67C9524ECF4AB00147C51 /* XCRemoteSwiftPackageReference "MessagePack" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/a2/MessagePack.swift";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 4.0.0;
};
};
4BD67CCF24ED08CB00147C51 /* XCRemoteSwiftPackageReference "PureLayout" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/PureLayout/PureLayout";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 3.1.6;
};
};
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
4BD67C7C24ECF35300147C51 /* Commons */ = {
isa = XCSwiftPackageProductDependency;
productName = Commons;
};
4BD67C9324ECF47000147C51 /* NvimServerTypes */ = {
isa = XCSwiftPackageProductDependency;
package = 4BD67C9224ECF46900147C51 /* XCRemoteSwiftPackageReference "neovim" */;
productName = NvimServerTypes;
};
4BD67C9624ECF4B300147C51 /* MessagePack */ = {
isa = XCSwiftPackageProductDependency;
package = 4BD67C9524ECF4AB00147C51 /* XCRemoteSwiftPackageReference "MessagePack" */;
productName = MessagePack;
};
4BD67CBA24ED03BF00147C51 /* Commons */ = {
isa = XCSwiftPackageProductDependency;
productName = Commons;
};
4BD67CC224ED040700147C51 /* NvimServerTypes */ = {
isa = XCSwiftPackageProductDependency;
package = 4BD67C9224ECF46900147C51 /* XCRemoteSwiftPackageReference "neovim" */;
productName = NvimServerTypes;
};
4BD67CC924ED042F00147C51 /* MessagePack */ = {
isa = XCSwiftPackageProductDependency;
package = 4BD67C9524ECF4AB00147C51 /* XCRemoteSwiftPackageReference "MessagePack" */;
productName = MessagePack;
};
4BD67CCB24ED089800147C51 /* Commons */ = {
isa = XCSwiftPackageProductDependency;
productName = Commons;
};
4BD67CCD24ED089A00147C51 /* NvimView */ = {
isa = XCSwiftPackageProductDependency;
productName = NvimView;
};
4BD67CD024ED08D400147C51 /* PureLayout */ = {
isa = XCSwiftPackageProductDependency;
package = 4BD67CCF24ED08CB00147C51 /* XCRemoteSwiftPackageReference "PureLayout" */;
productName = PureLayout;
};
/* End XCSwiftPackageProductDependency section */
};
rootObject = 4B90EFFB1FD2AF59008A39E0 /* Project object */;
}

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "self:">
</FileRef>
</Workspace>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDEDidComputeMac32BitWarning</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,16 @@
{
"object": {
"pins": [
{
"package": "Socket",
"repositoryURL": "https://github.com/IBM-Swift/BlueSocket",
"state": {
"branch": null,
"revision": "c46a3d41f5b2401d18bcb46d0101cdc5cd13e307",
"version": "1.0.52"
}
}
]
},
"version": 1
}

View File

@ -1,67 +0,0 @@
/**
* Tae Won Ha - http://taewon.de - @hataewon
* See LICENSE
*/
import Cocoa
import XCTest
import Nimble
@testable import NvimView
class CellAttributesCollectionTest: XCTestCase {
func testSetDefaultAttributes() {
let attrs = CellAttributes(
fontTrait: [], foreground: 1, background: 2, special: 3, reverse: true
)
self.cellAttributesCollection.set(attributes: attrs, for: 0)
expect(self.cellAttributesCollection.defaultAttributes)
.to(equal(attrs))
}
func testSetAndGetAttributes() {
let attrs = CellAttributes(
fontTrait: [], foreground: 1, background: 2, special: 3, reverse: true
)
self.cellAttributesCollection.set(attributes: attrs, for: 1)
expect(self.cellAttributesCollection.attributes(of: 1))
.to(equal(attrs))
}
func testSetAndGetAttributesWithDefaults() {
let defaultAttrs = CellAttributes(
fontTrait: [], foreground: 10, background: 20, special: 30, reverse: true
)
self.cellAttributesCollection.set(attributes: defaultAttrs, for: 0)
var attrs = CellAttributes(
fontTrait: [], foreground: -1, background: 2, special: 3, reverse: true
)
self.cellAttributesCollection.set(attributes: attrs, for: 1)
expect(self.cellAttributesCollection.attributes(of: 1))
.to(equal(CellAttributes(
fontTrait: [], foreground: 10, background: 2, special: 3, reverse: true
)))
attrs = CellAttributes(
fontTrait: [], foreground: 1, background: -1, special: 3, reverse: true
)
self.cellAttributesCollection.set(attributes: attrs, for: 1)
expect(self.cellAttributesCollection.attributes(of: 1))
.to(equal(CellAttributes(
fontTrait: [], foreground: 1, background: 20, special: 3, reverse: true
)))
attrs = CellAttributes(
fontTrait: [], foreground: 1, background: -1, special: -1, reverse: true
)
self.cellAttributesCollection.set(attributes: attrs, for: 1)
expect(self.cellAttributesCollection.attributes(of: 1))
.to(equal(CellAttributes(
fontTrait: [], foreground: 1, background: 20, special: 30, reverse: true
)))
}
private let cellAttributesCollection = CellAttributesCollection()
}

View File

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>SNAPSHOT-357</string>
<key>CFBundleVersion</key>
<string>357</string>
</dict>
</plist>

View File

@ -1,29 +0,0 @@
/**
* Tae Won Ha - http://taewon.de - @hataewon
* See LICENSE
*/
import Cocoa
import Nimble
// I don't know why the font returned by Typesetter is not equal to the font
// it should be equal to. This is a workaround.
func equalFont(_ expectedValue: NSFont?) -> Predicate<NSFont> {
return Predicate { actualExpression in
let msg = ExpectationMessage.expectedActualValueTo(
"equal <\(String(describing: expectedValue))>"
)
if let actualValue = try actualExpression.evaluate() {
return PredicateResult(
bool: NSFont(name: actualValue.fontName,
size: actualValue.pointSize) == expectedValue!,
message: msg
)
} else {
return PredicateResult(
status: .fail,
message: msg.appendedBeNilHint()
)
}
}
}

View File

@ -1,678 +0,0 @@
/**
* Tae Won Ha - http://taewon.de - @hataewon
* See LICENSE
*/
import Cocoa
import XCTest
import Nimble
@testable import NvimView
class TypesetterWithoutLigaturesTest: XCTestCase {
// GH-709
func testHindi() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: emojiMarked(["", "", "", "", "", "-", ">", ""]),
startColumn: 10,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(4))
var run = runs[0]
expect(run.font).to(equalFont(kohinoorDevanagari))
expect(run.glyphs).to(equal([51, 52, 53, 54, 99]))
expect(run.positions).to(equal(
(10..<15).map {
CGPoint(x: offset.x + CGFloat($0) * defaultWidth, y: offset.y)
}
))
run = runs[1]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(equal([16, 33]))
expect(run.positions).to(equal(
(15..<17).map {
CGPoint(x: offset.x + CGFloat($0) * defaultWidth, y: offset.y)
}
))
run = runs[2]
expect(run.font).to(equalFont(kohinoorDevanagari))
expect(run.glyphs).to(equal([99]))
expect(run.positions).to(equal(
(17..<18).map {
CGPoint(x: offset.x + CGFloat($0) * defaultWidth, y: offset.y)
}
))
self.assertEmojiMarker(run: runs[3],
xPosition: offset.x + 18 * defaultWidth)
}
func testSimpleAsciiChars() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: emojiMarked(["a", "b", "c"]),
startColumn: 10,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(3))
expect(run.positions).to(equal(
(10..<13).map {
CGPoint(x: offset.x + CGFloat($0) * defaultWidth, y: offset.y)
}
))
self.assertEmojiMarker(run: runs[1],
xPosition: offset.x + 13 * defaultWidth)
}
func testAccentedChars() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: emojiMarked(["ü", "î", "ñ"]),
startColumn: 20,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(3))
expect(run.positions).to(equal(
(20..<23).map {
CGPoint(x: offset.x + CGFloat($0) * defaultWidth, y: offset.y)
}
))
self.assertEmojiMarker(run: runs[1],
xPosition: offset.x + 23 * defaultWidth)
}
func testCombiningChars() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: emojiMarked(
["a", "a\u{1DC1}", "a\u{032A}", "a\u{034B}", "b", "c"]
),
startColumn: 10,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(6))
var run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(1))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 10 * defaultWidth, y: offset.y)
]
))
run = runs[1]
expect(run.font).to(equalFont(courierNew))
expect(run.glyphs).to(haveCount(2))
expect(run.positions[0])
.to(equal(CGPoint(x: offset.x + 11 * defaultWidth, y: offset.y)))
expect(run.positions[1].x)
.to(beCloseTo(offset.x + 11 * defaultWidth + 0.003, within: 0.001))
expect(run.positions[1].y).to(beCloseTo(offset.y + 0.305, within: 0.001))
run = runs[2]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(2))
expect(run.positions[0])
.to(equal(CGPoint(x: offset.x + 12 * defaultWidth, y: offset.y)))
expect(run.positions[1].x)
.to(beCloseTo(offset.x + 12 * defaultWidth, within: 0.001))
expect(run.positions[1].y).to(beCloseTo(offset.y - 0.279, within: 0.001))
run = runs[3]
expect(run.font).to(equalFont(monaco))
expect(run.glyphs).to(haveCount(2))
expect(run.positions[0])
.to(equal(CGPoint(x: offset.x + 13 * defaultWidth, y: offset.y)))
expect(run.positions[1].x)
.to(beCloseTo(offset.x + 13 * defaultWidth + 7.804, within: 0.001))
expect(run.positions[1].y).to(beCloseTo(offset.y + 2.446, within: 0.001))
run = runs[4]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(2))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 14 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 15 * defaultWidth, y: offset.y),
]
))
self.assertEmojiMarker(run: runs[5],
xPosition: offset.x + 16 * defaultWidth)
}
func testSimpleEmojis() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: asciiMarked(["a", "b", "\u{1F600}", "", "\u{1F377}", ""]),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(3))
var run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(2))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 2 * defaultWidth, y: offset.y),
]
))
run = runs[1]
expect(run.font).to(equalFont(emoji))
expect(run.glyphs).to(haveCount(2))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 3 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 5 * defaultWidth, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[2], xPosition: offset.x + 7 * defaultWidth)
}
func testEmojisWithFitzpatrickModifier() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: asciiMarked(["a", "\u{1F476}", "", "\u{1F3FD}", ""]),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(3))
var run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(1))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y),
]
))
run = runs[1]
expect(run.font).to(equalFont(emoji))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 2 * defaultWidth, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[2], xPosition: offset.x + 6 * defaultWidth)
}
func testHangul() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: asciiMarked(["a", "b", "", "", "", "", "", ""]),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(3))
var run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(2))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 2 * defaultWidth, y: offset.y),
]
))
run = runs[1]
expect(run.font).to(equalFont(gothic))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 3 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 5 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 7 * defaultWidth, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[2], xPosition: offset.x + 9 * defaultWidth)
}
func testHanja() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: asciiMarked(["a", "b", "", "", "", "", "", ""]),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(3))
var run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(2))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 2 * defaultWidth, y: offset.y),
]
))
run = runs[1]
expect(run.font).to(equalFont(gothic))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 3 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 5 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 7 * defaultWidth, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[2], xPosition: offset.x + 9 * defaultWidth)
}
func testOthers() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: emojiMarked(["a", "\u{10437}", "\u{1F14}"]),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(4))
var run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(1))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y)
]
))
run = runs[1]
expect(run.font).to(equalFont(baskerville))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 2 * defaultWidth, y: offset.y),
]
))
run = runs[2]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(1))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 3 * defaultWidth, y: offset.y),
]
))
self.assertEmojiMarker(run: runs[3], xPosition: offset.x + 4 * defaultWidth)
}
func testSimpleLigatureChars() {
let runs = typesetter.fontGlyphRunsWithoutLigatures(
nvimUtf16Cells: emojiMarked(["a", "-", "-", ">", "a"]),
startColumn: 1,
offset: offset,
font: fira,
cellWidth: firaWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(fira))
expect(run.glyphs).to(equal([134, 1021, 1021, 1171, 134]))
expect(run.positions).to(equal(
(1..<6).map {
CGPoint(x: offset.x + CGFloat($0) * firaWidth, y: offset.y)
}
))
self.assertEmojiMarker(run: runs[1], xPosition: offset.x + 6 * firaWidth)
}
private func assertAsciiMarker(run: FontGlyphRun, xPosition: CGFloat) {
expect(run.font).to(equalFont(defaultFont))
expect(run.positions).to(equal([CGPoint(x: xPosition, y: offset.y)]))
}
private func assertEmojiMarker(run: FontGlyphRun, xPosition: CGFloat) {
expect(run.font).to(equalFont(emoji))
expect(run.positions).to(equal([CGPoint(x: xPosition, y: offset.y)]))
}
}
class TypesetterWithLigaturesTest: XCTestCase {
func testSimpleAsciiChars() {
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: emojiMarked(Array(repeating: "a", count: 20)),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(20))
expect(run.positions).to(equal(
(1..<21).map {
CGPoint(x: offset.x + CGFloat($0) * defaultWidth, y: offset.y)
}
))
self.assertEmojiMarker(run: runs[1],
xPosition: offset.x + 21 * defaultWidth)
}
func testAccentedChars() {
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: emojiMarked(["ü", "î", "ñ"]),
startColumn: 10,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(3))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 10 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 11 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 12 * defaultWidth, y: offset.y),
]
))
self.assertEmojiMarker(run: runs[1], xPosition: offset.x + 13 * defaultWidth)
}
func testCombiningChars() {
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: emojiMarked(["a\u{1DC1}", "a\u{032A}", "a\u{034B}"]),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(4))
// The positions of the combining characters are copied from print outputs
// and they are visually checked by drawing them and inspecting them...
var run = runs[0]
expect(run.font).to(equalFont(courierNew))
expect(run.glyphs).to(haveCount(2))
expect(run.positions[0])
.to(equal(CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y)))
expect(run.positions[1].x)
.to(beCloseTo(offset.x + 1 * defaultWidth + 0.003, within: 0.001))
expect(run.positions[1].y).to(beCloseTo(offset.y + 0.305, within: 0.001))
run = runs[1]
expect(run.font).to(equalFont(defaultFont))
expect(run.glyphs).to(haveCount(2))
expect(run.positions[0])
.to(equal(CGPoint(x: offset.x + 2 * defaultWidth, y: offset.y)))
expect(run.positions[1].x)
.to(beCloseTo(offset.x + 2 * defaultWidth, within: 0.001))
expect(run.positions[1].y).to(beCloseTo(offset.y - 0.279, within: 0.001))
run = runs[2]
expect(run.font).to(equalFont(monaco))
expect(run.glyphs).to(haveCount(2))
expect(run.positions[0])
.to(equal(CGPoint(x: offset.x + 3 * defaultWidth, y: offset.y)))
expect(run.positions[1].x)
.to(beCloseTo(offset.x + 3 * defaultWidth + 7.804, within: 0.001))
expect(run.positions[1].y).to(beCloseTo(offset.y + 2.446, within: 0.001))
self.assertEmojiMarker(run: runs[3], xPosition: offset.x + 4 * defaultWidth)
}
func testSimpleEmojis() {
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: asciiMarked(["\u{1F600}", "", "\u{1F377}", ""]),
startColumn: 0,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(emoji))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 0, y: offset.y),
CGPoint(x: offset.x + 2 * defaultWidth, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[1], xPosition: offset.x + 4 * defaultWidth)
}
func testEmojisWithFitzpatrickModifier() {
let runs = typesetter.fontGlyphRunsWithLigatures(
// Neovim does not yet seem to support the Fitzpatrick modifiers:
// It sends the following instead of ["\u{1F476}\u{1F3FD}", ""].
// We render it together anyway and treat it as a 4-cell character.
nvimUtf16Cells: asciiMarked(["\u{1F476}", "", "\u{1F3FD}", ""]),
startColumn: 0,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(emoji))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 0, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[1], xPosition: offset.x + 4 * defaultWidth)
}
func testEmojisWithZeroWidthJoiner() {
// Neovim does not yet seem to support Emojis composed by zero-width-joiner:
// If it did, we'd render it correctly.
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: asciiMarked(
[
"\u{1F468}\u{200D}\u{1F468}\u{200D}\u{1F467}\u{200D}\u{1F467}", "",
]
),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(emoji))
expect(run.glyphs).to(haveCount(1))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[1], xPosition: offset.x + 3 * defaultWidth)
}
func testHangul() {
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: asciiMarked(["", "", "", "", "", ""]),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(gothic))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 3 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 5 * defaultWidth, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[1], xPosition: offset.x + 7 * defaultWidth)
}
func testHanja() {
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: asciiMarked(["", "", "", "", "", ""]),
startColumn: 1,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(gothic))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 3 * defaultWidth, y: offset.y),
CGPoint(x: offset.x + 5 * defaultWidth, y: offset.y),
]
))
self.assertAsciiMarker(run: runs[1], xPosition: offset.x + 7 * defaultWidth)
}
func testOthers() {
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: emojiMarked(["\u{10437}", "\u{1F14}"]),
startColumn: 0,
offset: offset,
font: defaultFont,
cellWidth: defaultWidth
)
expect(runs).to(haveCount(3))
var run = runs[0]
expect(run.font).to(equalFont(baskerville))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 0, y: offset.y),
]
))
run = runs[1]
expect(run.font).to(equalFont(defaultFont))
expect(run.positions).to(equal(
[
CGPoint(x: offset.x + 1 * defaultWidth, y: offset.y),
]
))
self.assertEmojiMarker(run: runs[2], xPosition: offset.x + 2 * defaultWidth)
}
func testSimpleLigatureChars() {
let runs = typesetter.fontGlyphRunsWithLigatures(
nvimUtf16Cells: emojiMarked(["-", "-", ">", "a"]),
startColumn: 0,
offset: offset,
font: fira,
cellWidth: firaWidth
)
expect(runs).to(haveCount(2))
let run = runs[0]
expect(run.font).to(equalFont(fira))
// Ligatures of popular monospace fonts like Fira Code seem to be composed
// of multiple characters with the same advance as other normal characters.
expect(run.glyphs).to(equal([1742, 1742, 1054, 134]))
expect(run.positions).to(equal(
(0..<4).map {
CGPoint(x: offset.x + CGFloat($0) * firaWidth, y: offset.y)
}
))
self.assertEmojiMarker(run: runs[1], xPosition: offset.x + 4 * firaWidth)
}
private func assertAsciiMarker(run: FontGlyphRun, xPosition: CGFloat) {
expect(run.font).to(equalFont(defaultFont))
expect(run.positions).to(equal(
[
CGPoint(x: xPosition, y: offset.y),
]
))
}
private func assertEmojiMarker(run: FontGlyphRun, xPosition: CGFloat) {
expect(run.font).to(equalFont(emoji))
expect(run.positions).to(equal(
[
CGPoint(x: xPosition, y: offset.y),
]
))
}
}
private let defaultFont = NSFont(name: "Menlo", size: 13)!
private let fira = NSFont(name: "FiraCode-Regular", size: 13)!
private let courierNew = NSFont(name: "Courier New", size: 13)!
private let monaco = NSFont(name: "Monaco", size: 13)!
private let emoji = NSFont(name: "AppleColorEmoji", size: 13)!
private let gothic = NSFont(name: "Apple SD Gothic Neo", size: 13)!
private let baskerville = NSFont(name: "Baskerville", size: 13)!
private let kohinoorDevanagari = NSFont(name: "Kohinoor Devanagari", size: 13)!
private let defaultWidth = FontUtils
.cellSize(of: defaultFont, linespacing: 1, characterspacing: 1).width
private let firaWidth = FontUtils.cellSize(of: fira, linespacing: 1, characterspacing: 1).width
private let offset = CGPoint(x: 7, y: 8)
private let typesetter = Typesetter()
private func asciiMarked(_ strings: [String]) -> [[Unicode.UTF16.CodeUnit]] {
return utf16Chars(strings + ["a"])
}
private func emojiMarked(_ strings: [String]) -> [[Unicode.UTF16.CodeUnit]] {
return utf16Chars(strings + ["\u{1F600}"])
}
private func utf16Chars(_ array: [String]) -> [[Unicode.UTF16.CodeUnit]] {
return array.map { Array($0.utf16) }
}

View File

@ -1,271 +0,0 @@
/**
* Tae Won Ha - http://taewon.de - @hataewon
* See LICENSE
*/
import Cocoa
import XCTest
import Nimble
@testable import NvimView
class UGridTest: XCTestCase {
private let ugrid = UGrid()
func testFlatCharIndex() {
self.ugrid.resize(Size(width: 10, height: 3))
self.ugrid.update(
row: 0,
startCol: 0, endCol: 10,
clearCol: 0, clearAttr: 0,
chunk: ["0", "", "", "3", "4", "", "", "7", "8", "9"],
attrIds: Array(repeating: 0, count: 10)
)
self.ugrid.recomputeFlatIndices(rowStart: 0, rowEndInclusive: 2)
expect(self.ugrid.cells.reduce(into: []) { result, row in
return result.append(contentsOf: row.reduce(into: []) { rowResult, cell in
rowResult.append(cell.flatCharIndex)
})
}).to(equal(
[
0, 1, 1, 2, 3, 4, 4, 5, 6, 7,
8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27
]
))
self.ugrid.update(
row: 1,
startCol: 5, endCol: 7,
clearCol: 0, clearAttr: 0,
chunk: ["", ""],
attrIds: Array(repeating: 0, count: 2)
)
self.ugrid.recomputeFlatIndices(rowStart: 0, rowEndInclusive: 2)
expect(self.ugrid.cells.reduce(into: []) { result, row in
return result.append(contentsOf: row.reduce(into: []) { rowResult, cell in
rowResult.append(cell.flatCharIndex)
})
}).to(equal(
[
0, 1, 1, 2, 3, 4, 4, 5, 6, 7,
8, 9, 10, 11, 12, 13, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26
]
))
self.ugrid.update(
row: 2,
startCol: 8, endCol: 10,
clearCol: 0, clearAttr: 0,
chunk: ["", ""],
attrIds: Array(repeating: 0, count: 2)
)
self.ugrid.recomputeFlatIndices(rowStart: 0, rowEndInclusive: 2)
expect(self.ugrid.cells.reduce(into: []) { result, row in
return result.append(contentsOf: row.reduce(into: []) { rowResult, cell in
rowResult.append(cell.flatCharIndex)
})
}).to(equal(
[
0, 1, 1, 2, 3, 4, 4, 5, 6, 7,
8, 9, 10, 11, 12, 13, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 25
]
))
}
func testUnmarkPosition() {
self.ugrid.resize(Size(width: 20, height: 10))
self.ugrid.update(
row: 9,
startCol: 0,
endCol: 9,
clearCol: 0,
clearAttr: 0,
chunk: Array("0123456789".compactMap { String($0) }),
attrIds: [
0, -1, 2, 3, 4, 5, 6, 7, 8,
CellAttributesCollection.reversedDefaultAttributesId
]
)
self.ugrid.unmarkCell(at: Position(row: 9, column: 0))
expect(self.ugrid.cells[9][0].attrId).to(equal(0))
self.ugrid.unmarkCell(at: Position(row: 9, column: 1))
expect(self.ugrid.cells[9][1].attrId).to(equal(1))
self.ugrid.unmarkCell(at: Position(row: 9, column: 2))
expect(self.ugrid.cells[9][2].attrId).to(equal(2))
self.ugrid.unmarkCell(at: Position(row: 9, column: 9))
expect(self.ugrid.cells[9][9].attrId)
.to(equal(CellAttributesCollection.defaultAttributesId))
}
func testMarkPosition() {
self.ugrid.resize(Size(width: 20, height: 10))
self.ugrid.update(
row: 9,
startCol: 0,
endCol: 9,
clearCol: 0,
clearAttr: 0,
chunk: Array("0123456789".compactMap { String($0) }),
attrIds: [
0, -1, 2, 3, 4, 5, 6, 7, 8,
CellAttributesCollection.reversedDefaultAttributesId
]
)
self.ugrid.recomputeFlatIndices(rowStart: 9, rowEndInclusive: 9)
self.ugrid.markCell(at: Position(row: 9, column: 4))
expect(self.ugrid.cells[9][4].attrId).to(equal(-4))
self.ugrid.markCell(at: Position(row: 9, column: 1))
expect(self.ugrid.cells[9][1].attrId).to(equal(-1))
self.ugrid.markCell(at: Position(row: 9, column: 9))
expect(self.ugrid.cells[9][9].attrId)
.to(equal(CellAttributesCollection.reversedDefaultAttributesId))
self.ugrid.update(
row: 7,
startCol: 0,
endCol: 10,
clearCol: 0,
clearAttr: 0,
chunk: Array("01234567".compactMap { String($0) }) + ["", ""],
attrIds: [0, 1, 2, 3, 4, 5, 6, 7, 8, 8]
)
self.ugrid.recomputeFlatIndices(rowStart: 7, rowEndInclusive: 9)
self.ugrid.markCell(at: Position(row: 7, column: 8))
expect(self.ugrid.cells[7][8].attrId)
.to(equal(-8))
expect(self.ugrid.cells[7][9].attrId)
.to(equal(-8))
self.ugrid.update(
row: 8,
startCol: 0,
endCol: 9,
clearCol: 0,
clearAttr: 0,
chunk: ["", ""] + Array("23456789".compactMap { String($0) }),
attrIds: [0, 0, 2, 3, 4, 5, 6, 7, 8, 9]
)
self.ugrid.markCell(at: Position(row: 8, column: 0))
expect(self.ugrid.cells[8][0].attrId)
.to(equal(CellAttributesCollection.reversedDefaultAttributesId))
expect(self.ugrid.cells[8][1].attrId)
.to(equal(CellAttributesCollection.reversedDefaultAttributesId))
}
func testFlattenedIndex() {
self.ugrid.resize(Size(width: 20, height: 10))
expect(
self.ugrid.oneDimCellIndex(forPosition: Position(row: 0, column: 0))
).to(equal(0))
expect(
self.ugrid.oneDimCellIndex(forPosition: Position(row: 0, column: 5))
).to(equal(5))
expect(
self.ugrid.oneDimCellIndex(forPosition: Position(row: 1, column: 0))
).to(equal(20))
expect(
self.ugrid.oneDimCellIndex(forPosition: Position(row: 1, column: 5))
).to(equal(25))
expect(
self.ugrid.oneDimCellIndex(forPosition: Position(row: 9, column: 0))
).to(equal(180))
expect(
self.ugrid.oneDimCellIndex(forPosition: Position(row: 9, column: 19))
).to(equal(199))
}
func testPositionFromFlattenedIndex() {
self.ugrid.resize(Size(width: 20, height: 10))
expect(self.ugrid.position(fromOneDimCellIndex: 0))
.to(equal(Position(row: 0, column: 0)))
expect(self.ugrid.position(fromOneDimCellIndex: 5))
.to(equal(Position(row: 0, column: 5)))
expect(self.ugrid.position(fromOneDimCellIndex: 20))
.to(equal(Position(row: 1, column: 0)))
expect(self.ugrid.position(fromOneDimCellIndex: 25))
.to(equal(Position(row: 1, column: 5)))
expect(self.ugrid.position(fromOneDimCellIndex: 180))
.to(equal(Position(row: 9, column: 0)))
expect(self.ugrid.position(fromOneDimCellIndex: 199))
.to(equal(Position(row: 9, column: 19)))
expect(self.ugrid.position(fromOneDimCellIndex: 418))
.to(equal(Position(row: 9, column: 18)))
expect(self.ugrid.position(fromOneDimCellIndex: 419))
.to(equal(Position(row: 9, column: 19)))
}
func testLeftBoundaryOfWord() {
self.ugrid.resize(Size(width: 10, height: 2))
self.ugrid.update(row: 0,
startCol: 0,
endCol: 10,
clearCol: 10,
clearAttr: 0,
chunk: " 12 45678 ".compactMap { String($0) },
attrIds: Array<Int>(repeating: 0, count: 10))
expect(self.ugrid.leftBoundaryOfWord(at: Position(row: 0, column: 9)))
.to(equal(9))
expect(self.ugrid.leftBoundaryOfWord(at: Position(row: 0, column: 8)))
.to(equal(4))
expect(self.ugrid.leftBoundaryOfWord(at: Position(row: 0, column: 4)))
.to(equal(4))
expect(self.ugrid.leftBoundaryOfWord(at: Position(row: 0, column: 3)))
.to(equal(3))
expect(self.ugrid.leftBoundaryOfWord(at: Position(row: 0, column: 0)))
.to(equal(0))
self.ugrid.update(row: 1,
startCol: 0,
endCol: 10,
clearCol: 10,
clearAttr: 0,
chunk: "0123456789".compactMap { String($0) },
attrIds: Array<Int>(repeating: 0, count: 10))
expect(self.ugrid.leftBoundaryOfWord(at: Position(row: 1, column: 0)))
.to(equal(0))
}
func testRightBoundaryOfWord() {
self.ugrid.resize(Size(width: 10, height: 2))
self.ugrid.update(row: 0,
startCol: 0,
endCol: 10,
clearCol: 10,
clearAttr: 0,
chunk: " 12345 78 ".compactMap { String($0) },
attrIds: Array<Int>(repeating: 0, count: 10))
expect(self.ugrid.rightBoundaryOfWord(at: Position(row: 0, column: 9)))
.to(equal(9))
expect(self.ugrid.rightBoundaryOfWord(at: Position(row: 0, column: 8)))
.to(equal(8))
expect(self.ugrid.rightBoundaryOfWord(at: Position(row: 0, column: 7)))
.to(equal(8))
expect(self.ugrid.rightBoundaryOfWord(at: Position(row: 0, column: 1)))
.to(equal(5))
expect(self.ugrid.rightBoundaryOfWord(at: Position(row: 0, column: 0)))
.to(equal(0))
self.ugrid.update(row: 1,
startCol: 0,
endCol: 10,
clearCol: 10,
clearAttr: 0,
chunk: "0123456789".compactMap { String($0) },
attrIds: Array<Int>(repeating: 0, count: 10))
expect(self.ugrid.rightBoundaryOfWord(at: Position(row: 1, column: 9)))
.to(equal(9))
}
}

View File

@ -1,25 +0,0 @@
DISABLE_TUI := DISABLE
ENABLE_CUSTOM_UI := ENABLE
# Sets the build type; defaults to Debug. Valid values:
#
# - Debug: Disables optimizations (-O0), enables debug information and logging.
#
# - Dev: Enables all optimizations that do not interfere with
# debugging (-Og if available, -O2 and -g if not).
# Enables debug information and logging.
#
# - RelWithDebInfo: Enables optimizations (-O2) and debug information.
# Disables logging.
#
# - MinSizeRel: Enables all -O2 optimization that do not typically
# increase code size, and performs further optimizations
# designed to reduce code size (-Os).
# Disables debug information and logging.
#
# - Release: Same as RelWithDebInfo, but disables debug information.
#CMAKE_BUILD_TYPE := Dev
CMAKE_BUILD_TYPE := Release
# The log level must be a number DEBUG (0), INFO (1), WARNING (2) or ERROR (3).
#CMAKE_EXTRA_FLAGS += -DMIN_LOG_LEVEL=0

View File

@ -1,4 +0,0 @@
DISABLE_TUI := DISABLE
ENABLE_CUSTOM_UI := ENABLE
CMAKE_BUILD_TYPE := Release

View File

@ -1,502 +0,0 @@
/* Message catalogs for internationalization.
Copyright (C) 1995-1997, 2000-2016, 2018-2019 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>. */
#ifndef _LIBINTL_H
#define _LIBINTL_H 1
#include <locale.h>
#if (defined __APPLE__ && defined __MACH__) && 1
# include <xlocale.h>
#endif
/* The LC_MESSAGES locale category is the category used by the functions
gettext() and dgettext(). It is specified in POSIX, but not in ANSI C.
On systems that don't define it, use an arbitrary value instead.
On Solaris, <locale.h> defines __LOCALE_H (or _LOCALE_H in Solaris 2.5)
then includes <libintl.h> (i.e. this file!) and then only defines
LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES
in this case. */
#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun))
# define LC_MESSAGES 1729
#endif
/* We define an additional symbol to signal that we use the GNU
implementation of gettext. */
#define __USE_GNU_GETTEXT 1
/* Provide information about the supported file formats. Returns the
maximum minor revision number supported for a given major revision. */
#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \
((major) == 0 || (major) == 1 ? 1 : -1)
/* Resolve a platform specific conflict on DJGPP. GNU gettext takes
precedence over _conio_gettext. */
#ifdef __DJGPP__
# undef gettext
#endif
#ifdef __cplusplus
extern "C" {
#endif
/* Version number: (major<<16) + (minor<<8) + subminor */
#define LIBINTL_VERSION 0x001400
extern int libintl_version;
/* We redirect the functions to those prefixed with "libintl_". This is
necessary, because some systems define gettext/textdomain/... in the C
library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer).
If we used the unprefixed names, there would be cases where the
definition in the C library would override the one in the libintl.so
shared library. Recall that on ELF systems, the symbols are looked
up in the following order:
1. in the executable,
2. in the shared libraries specified on the link command line, in order,
3. in the dependencies of the shared libraries specified on the link
command line,
4. in the dlopen()ed shared libraries, in the order in which they were
dlopen()ed.
The definition in the C library would override the one in libintl.so if
either
* -lc is given on the link command line and -lintl isn't, or
* -lc is given on the link command line before -lintl, or
* libintl.so is a dependency of a dlopen()ed shared library but not
linked to the executable at link time.
Since Solaris gettext() behaves differently than GNU gettext(), this
would be unacceptable.
The redirection happens by default through macros in C, so that &gettext
is independent of the compilation unit, but through inline functions in
C++, in order not to interfere with the name mangling of class fields or
class methods called 'gettext'. */
/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS.
If he doesn't, we choose the method. A third possible method is
_INTL_REDIRECT_ASM, supported only by GCC. */
#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS)
# if defined __GNUC__ && __GNUC__ >= 2 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1) && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus)
# define _INTL_REDIRECT_ASM
# else
# ifdef __cplusplus
# define _INTL_REDIRECT_INLINE
# else
# define _INTL_REDIRECT_MACROS
# endif
# endif
#endif
/* Auxiliary macros. */
#ifdef _INTL_REDIRECT_ASM
# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname))
# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring
# define _INTL_STRINGIFY(prefix) #prefix
#else
# define _INTL_ASM(cname)
#endif
/* _INTL_MAY_RETURN_STRING_ARG(n) declares that the given function may return
its n-th argument literally. This enables GCC to warn for example about
printf (gettext ("foo %y")). */
#if defined __GNUC__ && __GNUC__ >= 3 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1 && !(defined __clang__ && __clang__ && __clang_major__ >= 3) && defined __cplusplus)
# define _INTL_MAY_RETURN_STRING_ARG(n) __attribute__ ((__format_arg__ (n)))
#else
# define _INTL_MAY_RETURN_STRING_ARG(n)
#endif
/* Look up MSGID in the current default message catalog for the current
LC_MESSAGES locale. If not found, returns MSGID itself (the default
text). */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_gettext (const char *__msgid)
_INTL_MAY_RETURN_STRING_ARG (1);
static inline
_INTL_MAY_RETURN_STRING_ARG (1)
char *gettext (const char *__msgid)
{
return libintl_gettext (__msgid);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define gettext libintl_gettext
#endif
extern char *gettext (const char *__msgid)
_INTL_ASM (libintl_gettext)
_INTL_MAY_RETURN_STRING_ARG (1);
#endif
/* Look up MSGID in the DOMAINNAME message catalog for the current
LC_MESSAGES locale. */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_dgettext (const char *__domainname, const char *__msgid)
_INTL_MAY_RETURN_STRING_ARG (2);
static inline
_INTL_MAY_RETURN_STRING_ARG (2)
char *dgettext (const char *__domainname, const char *__msgid)
{
return libintl_dgettext (__domainname, __msgid);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define dgettext libintl_dgettext
#endif
extern char *dgettext (const char *__domainname, const char *__msgid)
_INTL_ASM (libintl_dgettext)
_INTL_MAY_RETURN_STRING_ARG (2);
#endif
/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
locale. */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_dcgettext (const char *__domainname, const char *__msgid,
int __category)
_INTL_MAY_RETURN_STRING_ARG (2);
static inline
_INTL_MAY_RETURN_STRING_ARG (2)
char *dcgettext (const char *__domainname, const char *__msgid, int __category)
{
return libintl_dcgettext (__domainname, __msgid, __category);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define dcgettext libintl_dcgettext
#endif
extern char *dcgettext (const char *__domainname, const char *__msgid,
int __category)
_INTL_ASM (libintl_dcgettext)
_INTL_MAY_RETURN_STRING_ARG (2);
#endif
/* Similar to 'gettext' but select the plural form corresponding to the
number N. */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_ngettext (const char *__msgid1, const char *__msgid2,
unsigned long int __n)
_INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
static inline
_INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2)
char *ngettext (const char *__msgid1, const char *__msgid2,
unsigned long int __n)
{
return libintl_ngettext (__msgid1, __msgid2, __n);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define ngettext libintl_ngettext
#endif
extern char *ngettext (const char *__msgid1, const char *__msgid2,
unsigned long int __n)
_INTL_ASM (libintl_ngettext)
_INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
#endif
/* Similar to 'dgettext' but select the plural form corresponding to the
number N. */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_dngettext (const char *__domainname, const char *__msgid1,
const char *__msgid2, unsigned long int __n)
_INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
static inline
_INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3)
char *dngettext (const char *__domainname, const char *__msgid1,
const char *__msgid2, unsigned long int __n)
{
return libintl_dngettext (__domainname, __msgid1, __msgid2, __n);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define dngettext libintl_dngettext
#endif
extern char *dngettext (const char *__domainname,
const char *__msgid1, const char *__msgid2,
unsigned long int __n)
_INTL_ASM (libintl_dngettext)
_INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
#endif
/* Similar to 'dcgettext' but select the plural form corresponding to the
number N. */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_dcngettext (const char *__domainname,
const char *__msgid1, const char *__msgid2,
unsigned long int __n, int __category)
_INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
static inline
_INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3)
char *dcngettext (const char *__domainname,
const char *__msgid1, const char *__msgid2,
unsigned long int __n, int __category)
{
return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define dcngettext libintl_dcngettext
#endif
extern char *dcngettext (const char *__domainname,
const char *__msgid1, const char *__msgid2,
unsigned long int __n, int __category)
_INTL_ASM (libintl_dcngettext)
_INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
#endif
/* Set the current default message catalog to DOMAINNAME.
If DOMAINNAME is null, return the current default.
If DOMAINNAME is "", reset to the default of "messages". */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_textdomain (const char *__domainname);
static inline char *textdomain (const char *__domainname)
{
return libintl_textdomain (__domainname);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define textdomain libintl_textdomain
#endif
extern char *textdomain (const char *__domainname)
_INTL_ASM (libintl_textdomain);
#endif
/* Specify that the DOMAINNAME message catalog will be found
in DIRNAME rather than in the system locale data base. */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_bindtextdomain (const char *__domainname,
const char *__dirname);
static inline char *bindtextdomain (const char *__domainname,
const char *__dirname)
{
return libintl_bindtextdomain (__domainname, __dirname);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define bindtextdomain libintl_bindtextdomain
#endif
extern char *bindtextdomain (const char *__domainname, const char *__dirname)
_INTL_ASM (libintl_bindtextdomain);
#endif
/* Specify the character encoding in which the messages from the
DOMAINNAME message catalog will be returned. */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_bind_textdomain_codeset (const char *__domainname,
const char *__codeset);
static inline char *bind_textdomain_codeset (const char *__domainname,
const char *__codeset)
{
return libintl_bind_textdomain_codeset (__domainname, __codeset);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define bind_textdomain_codeset libintl_bind_textdomain_codeset
#endif
extern char *bind_textdomain_codeset (const char *__domainname,
const char *__codeset)
_INTL_ASM (libintl_bind_textdomain_codeset);
#endif
/* Support for format strings with positions in *printf(), following the
POSIX/XSI specification.
Note: These replacements for the *printf() functions are visible only
in source files that #include <libintl.h> or #include "gettext.h".
Packages that use *printf() in source files that don't refer to _()
or gettext() but for which the format string could be the return value
of _() or gettext() need to add this #include. Oh well. */
#if !1
#include <stdio.h>
#include <stddef.h>
/* Get va_list. */
#if (defined __STDC__ && __STDC__) || defined __cplusplus || defined _MSC_VER
# include <stdarg.h>
#else
# include <varargs.h>
#endif
#if !(defined fprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef fprintf
#define fprintf libintl_fprintf
extern int fprintf (FILE *, const char *, ...);
#endif
#if !(defined vfprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef vfprintf
#define vfprintf libintl_vfprintf
extern int vfprintf (FILE *, const char *, va_list);
#endif
#if !(defined printf && defined _GL_STDIO_H) /* don't override gnulib */
#undef printf
#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__
/* Don't break __attribute__((format(printf,M,N))).
This redefinition is only possible because the libc in NetBSD, Cygwin,
mingw does not have a function __printf__.
Alternatively, we could have done this redirection only when compiling with
__GNUC__, together with a symbol redirection:
extern int printf (const char *, ...)
__asm__ (#__USER_LABEL_PREFIX__ "libintl_printf");
But doing it now would introduce a binary incompatibility with already
distributed versions of libintl on these systems. */
# define libintl_printf __printf__
#endif
#define printf libintl_printf
extern int printf (const char *, ...);
#endif
#if !(defined vprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef vprintf
#define vprintf libintl_vprintf
extern int vprintf (const char *, va_list);
#endif
#if !(defined sprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef sprintf
#define sprintf libintl_sprintf
extern int sprintf (char *, const char *, ...);
#endif
#if !(defined vsprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef vsprintf
#define vsprintf libintl_vsprintf
extern int vsprintf (char *, const char *, va_list);
#endif
#if 1
#if !(defined snprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef snprintf
#define snprintf libintl_snprintf
extern int snprintf (char *, size_t, const char *, ...);
#endif
#if !(defined vsnprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef vsnprintf
#define vsnprintf libintl_vsnprintf
extern int vsnprintf (char *, size_t, const char *, va_list);
#endif
#endif
#if 1
#if !(defined asprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef asprintf
#define asprintf libintl_asprintf
extern int asprintf (char **, const char *, ...);
#endif
#if !(defined vasprintf && defined _GL_STDIO_H) /* don't override gnulib */
#undef vasprintf
#define vasprintf libintl_vasprintf
extern int vasprintf (char **, const char *, va_list);
#endif
#endif
#if 1
#undef fwprintf
#define fwprintf libintl_fwprintf
extern int fwprintf (FILE *, const wchar_t *, ...);
#undef vfwprintf
#define vfwprintf libintl_vfwprintf
extern int vfwprintf (FILE *, const wchar_t *, va_list);
#undef wprintf
#define wprintf libintl_wprintf
extern int wprintf (const wchar_t *, ...);
#undef vwprintf
#define vwprintf libintl_vwprintf
extern int vwprintf (const wchar_t *, va_list);
#undef swprintf
#define swprintf libintl_swprintf
extern int swprintf (wchar_t *, size_t, const wchar_t *, ...);
#undef vswprintf
#define vswprintf libintl_vswprintf
extern int vswprintf (wchar_t *, size_t, const wchar_t *, va_list);
#endif
#endif
/* Support for retrieving the name of a locale_t object. */
#if 0
#ifndef GNULIB_defined_newlocale /* don't override gnulib */
#undef newlocale
#define newlocale libintl_newlocale
extern locale_t newlocale (int, const char *, locale_t);
#endif
#ifndef GNULIB_defined_duplocale /* don't override gnulib */
#undef duplocale
#define duplocale libintl_duplocale
extern locale_t duplocale (locale_t);
#endif
#ifndef GNULIB_defined_freelocale /* don't override gnulib */
#undef freelocale
#define freelocale libintl_freelocale
extern void freelocale (locale_t);
#endif
#endif
/* Support for the locale chosen by the user. */
#if (defined __APPLE__ && defined __MACH__) || defined _WIN32 || defined __CYGWIN__
#ifndef GNULIB_defined_setlocale /* don't override gnulib */
#undef setlocale
#define setlocale libintl_setlocale
extern char *setlocale (int, const char *);
#endif
#if 1
#undef newlocale
#define newlocale libintl_newlocale
/* Declare newlocale() only if the system headers define the 'locale_t' type. */
#if !(defined __CYGWIN__ && !defined LC_ALL_MASK)
extern locale_t newlocale (int, const char *, locale_t);
#endif
#endif
#endif
/* Support for relocatable packages. */
/* Sets the original and the current installation prefix of the package.
Relocation simply replaces a pathname starting with the original prefix
by the corresponding pathname with the current prefix instead. Both
prefixes should be directory names without trailing slash (i.e. use ""
instead of "/"). */
#define libintl_set_relocation_prefix libintl_set_relocation_prefix
extern void
libintl_set_relocation_prefix (const char *orig_prefix,
const char *curr_prefix);
#ifdef __cplusplus
}
#endif
#endif /* libintl.h */

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d26911f127c071ad3614ffe5506cb48eb018ebf4f203e528e5ca3be5648eebad
size 71680

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:da69917872f71d621ac0083cb03b7bd585ef7d8c7ac8e8c709569e3eaa049aae
size 100824

View File

@ -1 +0,0 @@
libintl.8.dylib

View File

@ -16,6 +16,9 @@
<FileRef
location = "group:RxPack/Support/RxPackSupport.xcodeproj">
</FileRef>
<FileRef
location = "group:NvimView/Support/NvimViewSupport.xcodeproj">
</FileRef>
<FileRef
location = "group:VimR/VimR.xcodeproj">
</FileRef>

View File

@ -73,7 +73,6 @@
1929BEDE1BE950EDA9497363 /* GeneralPref.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BB55946DAEBF55D24048 /* GeneralPref.swift */; };
1929BF03FD6465F289AA80B2 /* ToolsPref.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929BB2AD21A10A0ECA66A5E /* ToolsPref.swift */; };
1929BF3253594E5B1908C6CE /* RpcAppearanceEpic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B230EE8F1428980988F0 /* RpcAppearanceEpic.swift */; };
1929BF4FF30D9A9DE82C3052 /* FileUtilsTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B8042AC566CDF6C998A3 /* FileUtilsTest.swift */; };
1929BF5D0EFCC56A733BB4B7 /* FuzzySearch.xcdatamodel in Sources */ = {isa = PBXBuildFile; fileRef = 1929B656C04BA6F950BFA2F5 /* FuzzySearch.xcdatamodel */; };
1929BFDE22D155F7C4B19E96 /* HtmlPreviewTool.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1929B85023B042C485409CE1 /* HtmlPreviewTool.swift */; };
4B029F1A1D45E349004EE0D3 /* PrefWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4B029F1C1D45E349004EE0D3 /* PrefWindow.xib */; };
@ -84,7 +83,6 @@
4B3965361DEB21300082D3C1 /* InnterToolBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B3965351DEB21300082D3C1 /* InnterToolBar.swift */; };
4B3AC8941DB031C600AC5823 /* sparkle_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 4B3AC8931DB031C600AC5823 /* sparkle_pub.pem */; };
4B4147A31D97361400DD4A2C /* WorkspaceToolButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BB489411D952CF6005BB0E8 /* WorkspaceToolButton.swift */; };
4B5011FB1EBA6FD700F76C46 /* UrlCommonsTest in Resources */ = {isa = PBXBuildFile; fileRef = 4B5011FA1EBA6FD700F76C46 /* UrlCommonsTest */; };
4B6423961D8EFD7100FC78C8 /* Workspace.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B6423951D8EFD7100FC78C8 /* Workspace.swift */; };
4B6423981D8EFDE000FC78C8 /* WorkspaceBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B6423971D8EFDE000FC78C8 /* WorkspaceBar.swift */; };
4B64239A1D8EFE3000FC78C8 /* WorkspaceTool.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B6423991D8EFE3000FC78C8 /* WorkspaceTool.swift */; };
@ -168,7 +166,6 @@
4BD5657B24E8448300D52809 /* EonilFSEvents in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD5657A24E8448300D52809 /* EonilFSEvents */; };
4BD67C7824EC488200147C51 /* RxPack in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67C7724EC488200147C51 /* RxPack */; };
4BD67C7B24EC765900147C51 /* Commons in Frameworks */ = {isa = PBXBuildFile; productRef = 4BD67C7A24EC765900147C51 /* Commons */; };
4BDF500C1D760A3500D8FBC3 /* FileUtilsTest in Resources */ = {isa = PBXBuildFile; fileRef = 4BDF500B1D760A3500D8FBC3 /* FileUtilsTest */; };
4BDF50171D77540900D8FBC3 /* OpenQuicklyWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4BDF50191D77540900D8FBC3 /* OpenQuicklyWindow.xib */; };
4BEBA5091CFF374B00673FDF /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BEBA5081CFF374B00673FDF /* AppDelegate.swift */; };
4BEBA50B1CFF374B00673FDF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4BEBA50A1CFF374B00673FDF /* Assets.xcassets */; };
@ -269,7 +266,6 @@
1929B7A68B7109CEFAF105E8 /* AppDelegateReducer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegateReducer.swift; sourceTree = "<group>"; };
1929B7BB3E4B3DC96284B686 /* PrefUtilsTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PrefUtilsTest.swift; sourceTree = "<group>"; };
1929B7F7A4B3FD52263D211D /* Defs.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Defs.swift; sourceTree = "<group>"; };
1929B8042AC566CDF6C998A3 /* FileUtilsTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FileUtilsTest.swift; sourceTree = "<group>"; };
1929B8241CDE58F7AAF89AE4 /* PrefUtils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PrefUtils.swift; sourceTree = "<group>"; };
1929B84E4B53B05F5434E464 /* lang.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lang.h; path = "../../third-party/libag/include/lang.h"; sourceTree = "<group>"; };
1929B85023B042C485409CE1 /* HtmlPreviewTool.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HtmlPreviewTool.swift; sourceTree = "<group>"; };
@ -314,7 +310,6 @@
4B37ADB81D6E471B00970D55 /* vimr */ = {isa = PBXFileReference; fileEncoding = 1; lastKnownFileType = text.script.python; path = vimr; sourceTree = "<group>"; };
4B3965351DEB21300082D3C1 /* InnterToolBar.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = InnterToolBar.swift; path = Workspace/InnterToolBar.swift; sourceTree = "<group>"; };
4B3AC8931DB031C600AC5823 /* sparkle_pub.pem */ = {isa = PBXFileReference; fileEncoding = 1; lastKnownFileType = text; path = sparkle_pub.pem; sourceTree = "<group>"; };
4B5011FA1EBA6FD700F76C46 /* UrlCommonsTest */ = {isa = PBXFileReference; lastKnownFileType = folder; path = UrlCommonsTest; sourceTree = "<group>"; };
4B6423951D8EFD7100FC78C8 /* Workspace.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Workspace.swift; path = Workspace/Workspace.swift; sourceTree = "<group>"; };
4B6423971D8EFDE000FC78C8 /* WorkspaceBar.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = WorkspaceBar.swift; path = Workspace/WorkspaceBar.swift; sourceTree = "<group>"; };
4B6423991D8EFE3000FC78C8 /* WorkspaceTool.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = WorkspaceTool.swift; path = Workspace/WorkspaceTool.swift; sourceTree = "<group>"; };
@ -384,7 +379,6 @@
4BB409E61DD68CCC005F39A2 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/FileBrowserMenu.xib; sourceTree = "<group>"; };
4BB409ED1DDA77E9005F39A2 /* ProxyWorkspaceBar.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ProxyWorkspaceBar.swift; path = Workspace/ProxyWorkspaceBar.swift; sourceTree = "<group>"; };
4BB489411D952CF6005BB0E8 /* WorkspaceToolButton.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = WorkspaceToolButton.swift; path = Workspace/WorkspaceToolButton.swift; sourceTree = "<group>"; };
4BDF500B1D760A3500D8FBC3 /* FileUtilsTest */ = {isa = PBXFileReference; lastKnownFileType = folder; path = FileUtilsTest; sourceTree = "<group>"; };
4BDF50181D77540900D8FBC3 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/OpenQuicklyWindow.xib; sourceTree = "<group>"; };
4BEBA5051CFF374B00673FDF /* VimR.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = VimR.app; sourceTree = BUILT_PRODUCTS_DIR; };
4BEBA5081CFF374B00673FDF /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
@ -475,7 +469,6 @@
1929B275B9921DA7503A1932 /* Utils */ = {
isa = PBXGroup;
children = (
1929B8042AC566CDF6C998A3 /* FileUtilsTest.swift */,
1929B7BB3E4B3DC96284B686 /* PrefUtilsTest.swift */,
);
name = Utils;
@ -508,15 +501,6 @@
name = Components;
sourceTree = "<group>";
};
1929B41F745CDCDFE09ACDCF /* resources */ = {
isa = PBXGroup;
children = (
4B5011FA1EBA6FD700F76C46 /* UrlCommonsTest */,
4BDF500B1D760A3500D8FBC3 /* FileUtilsTest */,
);
path = resources;
sourceTree = "<group>";
};
1929B5E773BDB3B4EE9D00C1 /* Reducers */ = {
isa = PBXGroup;
children = (
@ -821,7 +805,6 @@
isa = PBXGroup;
children = (
4BEBA51A1CFF374B00673FDF /* Info.plist */,
1929B41F745CDCDFE09ACDCF /* resources */,
1929B79B3F03D2E050438074 /* Commons */,
1929B275B9921DA7503A1932 /* Utils */,
);
@ -1051,8 +1034,6 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
4BDF500C1D760A3500D8FBC3 /* FileUtilsTest in Resources */,
4B5011FB1EBA6FD700F76C46 /* UrlCommonsTest in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -1167,7 +1148,6 @@
4B96FB3F1EBBC56F00E4E164 /* PrefUtils.swift in Sources */,
4B96FB401EBBC56F00E4E164 /* FoundationCommons.swift in Sources */,
1929BDFDBDA7180D02ACB37E /* RxSwiftCommonsTest.swift in Sources */,
1929BF4FF30D9A9DE82C3052 /* FileUtilsTest.swift in Sources */,
1929B8E90A1378E494D481E7 /* PrefUtilsTest.swift in Sources */,
1929B20CE35B43BB1CE023BA /* Theme.swift in Sources */,
1929B9318D32146D58BB38EC /* AppKitCommons.swift in Sources */,