diff --git a/Config/Settings/vscode-settings.json b/Common/Config/vscode-settings.json
similarity index 98%
rename from Config/Settings/vscode-settings.json
rename to Common/Config/vscode-settings.json
index 44b9ce0..e6ea048 100644
--- a/Config/Settings/vscode-settings.json
+++ b/Common/Config/vscode-settings.json
@@ -1854,7 +1854,7 @@
"activityBar.inactiveForeground": "#ffffff66",
"activityBarBadge.foreground": "#ffffff",
"activityBarBadge.background": "#0046cc",
- "sideBar.background": "#1d2125",
+ "sideBar.background": "#000000",
"sideBar.foreground": "#f5f5f5",
"sideBarSectionHeader.background": "#00000000",
"sideBarSectionHeader.foreground": "#cccccc",
@@ -1879,11 +1879,11 @@
"statusBarItem.hoverBackground": "#ffffff1f",
"statusBar.debuggingBackground": "#cc6633",
"statusBar.debuggingForeground": "#ffffff",
- "statusBar.noFolderBackground": "#68217a",
+ "statusBar.noFolderBackground": "#0d0d0c",
"statusBar.noFolderForeground": "#ffffff",
"statusBarItem.remoteBackground": "#172458",
"statusBarItem.remoteForeground": "#ffffff",
- "titleBar.activeBackground": "#1d2125",
+ "titleBar.activeBackground": "#000000",
"titleBar.activeForeground": "#cccccc",
"titleBar.inactiveBackground": "#3c3c3c99",
"titleBar.inactiveForeground": "#cccccc99",
@@ -1994,7 +1994,7 @@
"breadcrumb.background": "#171c21",
"breadcrumb.foreground": "#cccccccc",
"breadcrumb.focusForeground": "#e0e0e0",
- "editorGroupHeader.tabsBackground": "#1d2125",
+ "editorGroupHeader.tabsBackground": "#000000",
"tab.activeForeground": "#ffffff",
"tab.border": "#252526",
"tab.activeBackground": "#2b3845",
@@ -2087,7 +2087,7 @@
"settings.headerForeground": "#bbc9d5",
"settings.focusedRowBackground": "#ffffff07",
"walkThrough.embeddedEditorBackground": "#00000050",
- "breadcrumb.activeSelectionForeground": "#e0e0e0",
+ "breadcrumb.activeSelectionForeground": "#",
"editorGutter.commentRangeForeground": "#c5c5c5",
"debugExceptionWidget.background": "#333333",
"debugExceptionWidget.border": "#474747"
@@ -2099,26 +2099,26 @@
"foreground": "#bbc9d5",
"focusBorder": "#32373b",
- "sideBar.background": "#1d2125",
+ "sideBar.background": "#000000",
"sideBar.foreground": "#f5f5f5",
"sideBarSectionHeader.background": "#00000000",
"sideBarSectionHeader.foreground": "#cccccc",
"sideBarSectionHeader.border": "#cccccc33",
"sideBarTitle.foreground": "#bbbbbb",
"statusBar.foreground": "#ffffff",
- "statusBar.background": "#141d24",
+ "statusBar.background": "#111111",
"statusBarItem.hoverBackground": "#ffffff1f",
"statusBar.debuggingBackground": "#cc6633",
"statusBar.debuggingForeground": "#ffffff",
- "statusBar.noFolderBackground": "#68217a",
+ "statusBar.noFolderBackground": "#0d0d0c",
"statusBar.noFolderForeground": "#ffffff",
"statusBarItem.remoteBackground": "#172458",
"statusBarItem.remoteForeground": "#ffffff",
- "titleBar.activeBackground": "#1d2125",
+ "titleBar.activeBackground": "#000000",
"titleBar.activeForeground": "#cccccc",
- "titleBar.inactiveBackground": "#3c3c3c99",
+ "titleBar.inactiveBackground": "#111111",
"titleBar.inactiveForeground": "#cccccc99",
- "titleBar.border": "#00000000",
+ "titleBar.border": "#000000",
"menubar.selectionForeground": "#cccccc",
"menubar.selectionBackground": "#ffffff1a",
"menu.foreground": "#cccccc",
@@ -2142,7 +2142,7 @@
"inputOption.activeForeground": "#ffffff",
"input.placeholderForeground": "#a6a6a6",
"textLink.foreground": "#3794ff",
- "editor.background": "#0d1116",
+ "editor.background": "#101519",
"editor.foreground": "#d4d4d4",
"editorLineNumber.foreground": "#858585",
"editorCursor.foreground": "#aeafad",
@@ -2184,7 +2184,7 @@
"editorInfo.foreground": "#75beff",
"editorInfo.background": "#4490BF00",
"editorInfo.border": "#4490BF00",
- "editorGutter.background": "#191d21",
+ "editorGutter.background": "#121619",
"editorGutter.modifiedBackground": "#0c7d9d",
"editorGutter.addedBackground": "#587c0c",
"editorGutter.deletedBackground": "#94151b",
@@ -2223,16 +2223,16 @@
"terminal.ansiRed": "#cd3131",
"terminal.ansiWhite": "#e5e5e5",
"terminal.ansiYellow": "#e5e510",
- "breadcrumb.background": "#171c21",
+ "breadcrumb.background": "#111111",
"breadcrumb.foreground": "#cccccccc",
"breadcrumb.focusForeground": "#e0e0e0",
- "editorGroupHeader.tabsBackground": "#1d2125",
+ "editorGroupHeader.tabsBackground": "#000000",
"tab.activeForeground": "#ffffff",
"tab.border": "#252526",
- "tab.activeBackground": "#2b3845",
+ "tab.activeBackground": "#555555",
"tab.activeBorder": "#00000000",
"tab.activeBorderTop": "#00000000",
- "tab.inactiveBackground": "#19212a",
+ "tab.inactiveBackground": "#111111",
"tab.inactiveForeground": "#ffffff80",
"scrollbarSlider.background": "#79797966",
"scrollbarSlider.hoverBackground": "#646464b3",
@@ -2380,7 +2380,7 @@
"scope": "heading.2.markdown entity.name.section.markdown, heading.2.markdown punctuation.definition.heading.markdown",
"settings": {
"foreground": "#ff6a00",
- "fontStyle": "italic",
+ "fontStyle": "bold",
}
},
{
@@ -2444,7 +2444,6 @@
"editor.wordWrap": "on",
"editor.wrappingIndent": "none",
"git.openRepositoryInParentFolders": "always",
- "editor.lineNumbers": "off",
"editor.guides.indentation": false,
"editor.guides.highlightActiveIndentation": false,
"editor.occurrencesHighlight": "off",
@@ -2460,7 +2459,8 @@
"files.exclude": {
"**/.build": true,
"**/.swiftpm": true,
- "**/.vscode": true
+ "**/.vscode": true,
+ "**/.*": true
},
"terminal.integrated.defaultProfile.osx": "zsh",
"terminal.integrated.enableFileLinks": "notRemote",
@@ -2472,5 +2472,8 @@
"terminal.integrated.lineHeight": 1.1,
"terminal.integrated.smoothScrolling": true,
"editor.fontWeight": "normal",
- "workbench.iconTheme": "dobri-theme-icons"
+ "workbench.iconTheme": "dobri-theme-icons",
+ "github.copilot.nextEditSuggestions.enabled": true,
+ "editor.lineNumbers": "off",
+ "security.workspace.trust.untrustedFiles": "open"
}
\ No newline at end of file
diff --git a/Mac/help.sh b/Common/Path/help.sh
similarity index 97%
rename from Mac/help.sh
rename to Common/Path/help.sh
index 78b0329..e727375 100755
--- a/Mac/help.sh
+++ b/Common/Path/help.sh
@@ -1,4 +1,4 @@
-#!/bin/zsh
+#!/bin/bash
#
# help.sh -- simple instructions on how to use these dotfiles
#
diff --git a/Common/Path/setup-container.sh b/Common/Path/setup-container.sh
new file mode 100755
index 0000000..7af42d5
--- /dev/null
+++ b/Common/Path/setup-container.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+#
+# setup-container.sh -- use Swift's Containerization / Container package
+#
+# ==============================================================================
+
+source ~/.functions
+message "setup-container.sh" "Setting up the Swift Containerization environemtn"
+
+which -s brew &> /dev/null
+if [[ $? != 0 ]] ; then
+
+ error "Missing Containerization" "Installing for the first time..."
+ ## Do stuff to do a fresh install
+
+else
+
+ message "Found Containerization" "Updating, upgrading, installing Jekyll and others"
+ ## Do stuff to update
+
+fi
+
+
+# ==============================================================================
+exit 0
diff --git a/Common/Path/setup-ssh-keys.sh b/Common/Path/setup-ssh-keys.sh
new file mode 100755
index 0000000..206722a
--- /dev/null
+++ b/Common/Path/setup-ssh-keys.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+#
+# ssh-key-setup.sh -- how to setup the SSH key for a remote server
+#
+# Import the default functions used in these scripts
+source ${HOME}/.functions
+message "ssh-key-setup" "Instructions to setup remote password-less SSH login"
+# ==============================================================================
+
+
+
+
+
+
+
+
+
+
+# ==============================================================================
+message "All done now!
diff --git a/Config/dot-gitignore b/Common/dot-gitignore
similarity index 100%
rename from Config/dot-gitignore
rename to Common/dot-gitignore
diff --git a/Config/dot-vimrc b/Common/dot-vimrc
similarity index 100%
rename from Config/dot-vimrc
rename to Common/dot-vimrc
diff --git a/Config/Preferences/com.apple.Terminal.plist b/Config/Preferences/com.apple.Terminal.plist
deleted file mode 100644
index 5fd3b41..0000000
Binary files a/Config/Preferences/com.apple.Terminal.plist and /dev/null differ
diff --git a/Config/Preferences/com.googlecode.iterm2.plist b/Config/Preferences/com.googlecode.iterm2.plist
deleted file mode 100644
index 62dac0a..0000000
Binary files a/Config/Preferences/com.googlecode.iterm2.plist and /dev/null differ
diff --git a/Config/Settings/vscode-settings2.json b/Config/Settings/vscode-settings2.json
deleted file mode 100644
index 6f7fadb..0000000
--- a/Config/Settings/vscode-settings2.json
+++ /dev/null
@@ -1,2455 +0,0 @@
-{
- "name": "TimTr Default",
- "type": "dark",
- "semanticHighlighting": true,
- "semanticTokenColors": {
- "enumMember": {
- "foreground": "#aab2c2"
- },
- "variable.constant": {
- "foreground": "#e7f800"
- },
- "variable.defaultLibrary": {
- "foreground": "#7b7de5"
- }
- },
- "tokenColors": [
- {
- "name": "unison punctuation",
- "scope": "punctuation.definition.delayed.unison,punctuation.definition.list.begin.unison,punctuation.definition.list.end.unison,punctuation.definition.ability.begin.unison,punctuation.definition.ability.end.unison,punctuation.operator.assignment.as.unison,punctuation.separator.pipe.unison,punctuation.separator.delimiter.unison,punctuation.definition.hash.unison",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "haskell variable generic-type",
- "scope": "variable.other.generic-type.haskell",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "haskell storage type",
- "scope": "storage.type.haskell",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "support.variable.magic.python",
- "scope": "support.variable.magic.python",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "punctuation.separator.parameters.python",
- "scope": "punctuation.separator.period.python,punctuation.separator.element.python,punctuation.parenthesis.begin.python,punctuation.parenthesis.end.python",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "variable.parameter.function.language.special.self.python",
- "scope": "variable.parameter.function.language.special.self.python",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "storage.modifier.lifetime.rust",
- "scope": "storage.modifier.lifetime.rust",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "support.function.std.rust",
- "scope": "support.function.std.rust",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "entity.name.lifetime.rust",
- "scope": "entity.name.lifetime.rust",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "variable.language.rust",
- "scope": "variable.language.rust",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "support.constant.edge",
- "scope": "support.constant.edge",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "regexp constant character-class",
- "scope": "constant.other.character-class.regexp",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "regexp operator.quantifier",
- "scope": "keyword.operator.quantifier.regexp",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "punctuation.definition",
- "scope": "punctuation.definition.string.begin,punctuation.definition.string.end",
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "Text",
- "scope": "variable.parameter.function",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Comment Markup Link",
- "scope": "comment markup.link",
- "settings": {
- "foreground": "#76858d"
- }
- },
- {
- "name": "markup diff",
- "scope": "markup.changed.diff",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "diff",
- "scope": "meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "inserted.diff",
- "scope": "markup.inserted.diff",
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "deleted.diff",
- "scope": "markup.deleted.diff",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "c++ function",
- "scope": "meta.function.c,meta.function.cpp",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "c++ block",
- "scope": "punctuation.section.block.begin.bracket.curly.cpp,punctuation.section.block.end.bracket.curly.cpp,punctuation.terminator.statement.c,punctuation.section.block.begin.bracket.curly.c,punctuation.section.block.end.bracket.curly.c,punctuation.section.parens.begin.bracket.round.c,punctuation.section.parens.end.bracket.round.c,punctuation.section.parameters.begin.bracket.round.c,punctuation.section.parameters.end.bracket.round.c",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "js/ts punctuation separator key-value",
- "scope": "punctuation.separator.key-value",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "js/ts import keyword",
- "scope": "keyword.operator.expression.import",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "math js/ts",
- "scope": "support.constant.math",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "math property js/ts",
- "scope": "support.constant.property.math",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "js/ts variable.other.constant",
- "scope": "variable.other.constant",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "java type",
- "scope": [
- "storage.type.annotation.java",
- "storage.type.object.array.java"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "java source",
- "scope": "source.java",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "java modifier.import",
- "scope": "punctuation.section.block.begin.java,punctuation.section.block.end.java,punctuation.definition.method-parameters.begin.java,punctuation.definition.method-parameters.end.java,meta.method.identifier.java,punctuation.section.method.begin.java,punctuation.section.method.end.java,punctuation.terminator.java,punctuation.section.class.begin.java,punctuation.section.class.end.java,punctuation.section.inner-class.begin.java,punctuation.section.inner-class.end.java,meta.method-call.java,punctuation.section.class.begin.bracket.curly.java,punctuation.section.class.end.bracket.curly.java,punctuation.section.method.begin.bracket.curly.java,punctuation.section.method.end.bracket.curly.java,punctuation.separator.period.java,punctuation.bracket.angle.java,punctuation.definition.annotation.java,meta.method.body.java",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "java modifier.import",
- "scope": "meta.method.java",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "java modifier.import",
- "scope": "storage.modifier.import.java,storage.type.java,storage.type.generic.java",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "java instanceof",
- "scope": "keyword.operator.instanceof.java",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "java variable.name",
- "scope": "meta.definition.variable.name.java",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "operator logical",
- "scope": "keyword.operator.logical",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "operator bitwise",
- "scope": "keyword.operator.bitwise",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "operator channel",
- "scope": "keyword.operator.channel",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "support.constant.property-value.scss",
- "scope": "support.constant.property-value.scss,support.constant.property-value.css",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "CSS/SCSS/LESS Operators",
- "scope": "keyword.operator.css,keyword.operator.scss,keyword.operator.less",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "css color standard name",
- "scope": "support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "css comma",
- "scope": "punctuation.separator.list.comma.css",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "css attribute-name.id",
- "scope": "support.constant.color.w3c-standard-color-name.css",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "css property-name",
- "scope": "support.type.vendored.property-name.css",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "js/ts module",
- "scope": "support.module.node,support.type.object.module,support.module.node",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "entity.name.type.module",
- "scope": "entity.name.type.module",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "js variable readwrite",
- "scope": "variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "js/ts json",
- "scope": "support.constant.json",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "js/ts Keyword",
- "scope": [
- "keyword.operator.expression.instanceof",
- "keyword.operator.new",
- "keyword.operator.ternary",
- "keyword.operator.optional",
- "keyword.operator.expression.keyof"
- ],
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "js/ts console",
- "scope": "support.type.object.console",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "js/ts support.variable.property.process",
- "scope": "support.variable.property.process",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "js console function",
- "scope": "entity.name.function,support.function.console",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "keyword.operator.misc.rust",
- "scope": "keyword.operator.misc.rust",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "keyword.operator.sigil.rust",
- "scope": "keyword.operator.sigil.rust",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "operator",
- "scope": "keyword.operator.delete",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "js dom",
- "scope": "support.type.object.dom",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "js dom variable",
- "scope": "support.variable.dom,support.variable.property.dom",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "keyword.operator",
- "scope": "keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "C operator assignment",
- "scope": "keyword.operator.assignment.c,keyword.operator.comparison.c,keyword.operator.c,keyword.operator.increment.c,keyword.operator.decrement.c,keyword.operator.bitwise.shift.c,keyword.operator.assignment.cpp,keyword.operator.comparison.cpp,keyword.operator.cpp,keyword.operator.increment.cpp,keyword.operator.decrement.cpp,keyword.operator.bitwise.shift.cpp",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Punctuation",
- "scope": "punctuation.separator.delimiter",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Other punctuation .c",
- "scope": "punctuation.separator.c,punctuation.separator.cpp",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "C type posix-reserved",
- "scope": "support.type.posix-reserved.c,support.type.posix-reserved.cpp",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "keyword.operator.sizeof.c",
- "scope": "keyword.operator.sizeof.c,keyword.operator.sizeof.cpp",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "python parameter",
- "scope": "variable.parameter.function.language.python",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "python type",
- "scope": "support.type.python",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "python logical",
- "scope": "keyword.operator.logical.python",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "pyCs",
- "scope": "variable.parameter.function.python",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "python block",
- "scope": "punctuation.definition.arguments.begin.python,punctuation.definition.arguments.end.python,punctuation.separator.arguments.python,punctuation.definition.list.begin.python,punctuation.definition.list.end.python",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "python function-call.generic",
- "scope": "meta.function-call.generic.python",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "python placeholder reset to normal string",
- "scope": "constant.character.format.placeholder.other.python",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Operators",
- "scope": "keyword.operator",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Compound Assignment Operators",
- "scope": "keyword.operator.assignment.compound",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Compound Assignment Operators js/ts",
- "scope": "keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "Keywords",
- "scope": "keyword",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Namespaces",
- "scope": "entity.name.namespace",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Variables",
- "scope": "variable",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Variables",
- "scope": "variable.c",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Language variables",
- "scope": "variable.language",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Java Variables",
- "scope": "token.variable.parameter.java",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Java Imports",
- "scope": "import.storage.java",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Packages",
- "scope": "token.package.keyword",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Packages",
- "scope": "token.package",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Functions",
- "scope": [
- "entity.name.function",
- "meta.require",
- "support.function.any-method",
- "variable.function"
- ],
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "Classes",
- "scope": "entity.name.type.namespace",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Classes",
- "scope": "support.class, entity.name.type.class",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Class name",
- "scope": "entity.name.class.identifier.namespace.type",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Class name",
- "scope": [
- "entity.name.class",
- "variable.other.class.js",
- "variable.other.class.ts"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Class name php",
- "scope": "variable.other.class.php",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Type Name",
- "scope": "entity.name.type",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Keyword Control",
- "scope": "keyword.control",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Control Elements",
- "scope": "control.elements, keyword.operator.less",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Methods",
- "scope": "keyword.other.special-method",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "Storage",
- "scope": "storage",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Storage JS TS",
- "scope": "token.storage",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Source Js Keyword Operator Delete,source Js Keyword Operator In,source Js Keyword Operator Of,source Js Keyword Operator Instanceof,source Js Keyword Operator New,source Js Keyword Operator Typeof,source Js Keyword Operator Void",
- "scope": "keyword.operator.expression.delete,keyword.operator.expression.in,keyword.operator.expression.of,keyword.operator.expression.instanceof,keyword.operator.new,keyword.operator.expression.typeof,keyword.operator.expression.void",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Java Storage",
- "scope": "token.storage.type.java",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Support",
- "scope": "support.function",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "Support type",
- "scope": "support.type.property-name",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Support type",
- "scope": "support.constant.property-value",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Support type",
- "scope": "support.constant.font-name",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Meta tag",
- "scope": "meta.tag",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Strings",
- "scope": "string",
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "Inherited Class",
- "scope": "entity.other.inherited-class",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Constant other symbol",
- "scope": "constant.other.symbol",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "Integers",
- "scope": "constant.numeric",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Constants",
- "scope": "constant",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Constants",
- "scope": "punctuation.definition.constant",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Tags",
- "scope": "entity.name.tag",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Attributes",
- "scope": "entity.other.attribute-name",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Attribute IDs",
- "scope": "entity.other.attribute-name.id",
- "settings": {
- "fontStyle": "normal",
- "foreground": "#88f817"
- }
- },
- {
- "name": "Attribute class",
- "scope": "entity.other.attribute-name.class.css",
- "settings": {
- "fontStyle": "normal",
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Selector",
- "scope": "meta.selector",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Headings",
- "scope": "markup.heading",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Headings",
- "scope": "markup.heading punctuation.definition.heading, entity.name.section",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "Units",
- "scope": "keyword.other.unit",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Bold",
- "scope": "markup.bold,todo.bold",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "Bold",
- "scope": "punctuation.definition.bold",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "markup Italic",
- "scope": "markup.italic, punctuation.definition.italic,todo.emphasis",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "emphasis md",
- "scope": "emphasis md",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown headings",
- "scope": "entity.name.section.markdown",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown heading Punctuation Definition",
- "scope": "punctuation.definition.heading.markdown",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "punctuation.definition.list.begin.markdown",
- "scope": "punctuation.definition.list.begin.markdown",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown heading setext",
- "scope": "markup.heading.setext",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown Punctuation Definition Bold",
- "scope": "punctuation.definition.bold.markdown",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown Inline Raw",
- "scope": "markup.inline.raw.markdown",
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown Inline Raw",
- "scope": "markup.inline.raw.string.markdown",
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown List Punctuation Definition",
- "scope": "punctuation.definition.list.markdown",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown Punctuation Definition String",
- "scope": [
- "punctuation.definition.string.begin.markdown",
- "punctuation.definition.string.end.markdown",
- "punctuation.definition.metadata.markdown"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "beginning.punctuation.definition.list.markdown",
- "scope": [
- "beginning.punctuation.definition.list.markdown"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown Punctuation Definition Link",
- "scope": "punctuation.definition.metadata.markdown",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown Underline Link/Image",
- "scope": "markup.underline.link.markdown,markup.underline.link.image.markdown",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown Link Title/Description",
- "scope": "string.other.link.title.markdown,string.other.link.description.markdown",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "Regular Expressions",
- "scope": "string.regexp",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "Escape Characters",
- "scope": "constant.character.escape",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "Embedded",
- "scope": "punctuation.section.embedded, variable.interpolation",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Embedded",
- "scope": "punctuation.section.embedded.begin,punctuation.section.embedded.end",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "illegal",
- "scope": "invalid.illegal",
- "settings": {
- "foreground": "#ffffff"
- }
- },
- {
- "name": "illegal",
- "scope": "invalid.illegal.bad-ampersand.html",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Broken",
- "scope": "invalid.broken",
- "settings": {
- "foreground": "#ffffff"
- }
- },
- {
- "name": "Deprecated",
- "scope": "invalid.deprecated",
- "settings": {
- "foreground": "#ffffff"
- }
- },
- {
- "name": "Unimplemented",
- "scope": "invalid.unimplemented",
- "settings": {
- "foreground": "#ffffff"
- }
- },
- {
- "name": "Source Json Meta Structure Dictionary Json > String Quoted Json",
- "scope": "source.json meta.structure.dictionary.json > string.quoted.json",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Source Json Meta Structure Dictionary Json > String Quoted Json > Punctuation String",
- "scope": "source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Source Json Meta Structure Dictionary Json > Value Json > String Quoted Json,source Json Meta Structure Array Json > Value Json > String Quoted Json,source Json Meta Structure Dictionary Json > Value Json > String Quoted Json > Punctuation,source Json Meta Structure Array Json > Value Json > String Quoted Json > Punctuation",
- "scope": "source.json meta.structure.dictionary.json > value.json > string.quoted.json,source.json meta.structure.array.json > value.json > string.quoted.json,source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation,source.json meta.structure.array.json > value.json > string.quoted.json > punctuation",
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "Source Json Meta Structure Dictionary Json > Constant Language Json,source Json Meta Structure Array Json > Constant Language Json",
- "scope": "source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] JSON Property Name",
- "scope": "support.type.property-name.json",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] JSON Punctuation for Property Name",
- "scope": "support.type.property-name.json punctuation",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "laravel blade tag",
- "scope": "text.html.laravel-blade source.php.embedded.line.html entity.name.tag.laravel-blade",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "laravel blade @",
- "scope": "text.html.laravel-blade source.php.embedded.line.html support.constant.laravel-blade",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "use statement for other classes",
- "scope": "support.other.namespace.use.php,support.other.namespace.use-as.php,support.other.namespace.php,entity.other.alias.php,meta.interface.php",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "error suppression",
- "scope": "keyword.operator.error-control.php",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "php instanceof",
- "scope": "keyword.operator.type.php",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "style double quoted array index normal begin",
- "scope": "punctuation.section.array.begin.php",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "style double quoted array index normal end",
- "scope": "punctuation.section.array.end.php",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "php illegal.non-null-typehinted",
- "scope": "invalid.illegal.non-null-typehinted.php",
- "settings": {
- "foreground": "#f44747"
- }
- },
- {
- "name": "php types",
- "scope": "storage.type.php,meta.other.type.phpdoc.php,keyword.other.type.php,keyword.other.array.phpdoc.php",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "php call-function",
- "scope": "meta.function-call.php,meta.function-call.object.php,meta.function-call.static.php",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "php function-resets",
- "scope": "punctuation.definition.parameters.begin.bracket.round.php,punctuation.definition.parameters.end.bracket.round.php,punctuation.separator.delimiter.php,punctuation.section.scope.begin.php,punctuation.section.scope.end.php,punctuation.terminator.expression.php,punctuation.definition.arguments.begin.bracket.round.php,punctuation.definition.arguments.end.bracket.round.php,punctuation.definition.storage-type.begin.bracket.round.php,punctuation.definition.storage-type.end.bracket.round.php,punctuation.definition.array.begin.bracket.round.php,punctuation.definition.array.end.bracket.round.php,punctuation.definition.begin.bracket.round.php,punctuation.definition.end.bracket.round.php,punctuation.definition.begin.bracket.curly.php,punctuation.definition.end.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php,punctuation.definition.section.switch-block.start.bracket.curly.php,punctuation.definition.section.switch-block.begin.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "support php constants",
- "scope": "support.constant.core.rust",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "support php constants",
- "scope": "support.constant.ext.php,support.constant.std.php,support.constant.core.php,support.constant.parser-token.php",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "php goto",
- "scope": "entity.name.goto-label.php,support.other.php",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "php logical/bitwise operator",
- "scope": "keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "php regexp operator",
- "scope": "keyword.operator.regexp.php",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "php comparison",
- "scope": "keyword.operator.comparison.php",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "php heredoc/nowdoc",
- "scope": "keyword.operator.heredoc.php,keyword.operator.nowdoc.php",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "python function decorator @",
- "scope": "meta.function.decorator.python",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "python function support",
- "scope": "support.token.decorator.python,meta.function.decorator.identifier.python",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "parameter function js/ts",
- "scope": "function.parameter",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "brace function",
- "scope": "function.brace",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "parameter function ruby cs",
- "scope": "function.parameter.ruby, function.parameter.cs",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "constant.language.symbol.ruby",
- "scope": "constant.language.symbol.ruby",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "rgb-value",
- "scope": "rgb-value",
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "rgb value",
- "scope": "inline-color-decoration rgb-value",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "rgb value less",
- "scope": "less rgb-value",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "sass selector",
- "scope": "selector.sass",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "ts primitive/builtin types",
- "scope": "support.type.primitive.ts,support.type.builtin.ts,support.type.primitive.tsx,support.type.builtin.tsx",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "block scope",
- "scope": "block.scope.end,block.scope.begin",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "cs storage type",
- "scope": "storage.type.cs",
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "cs local variable",
- "scope": "entity.name.variable.local.cs",
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "scope": "token.info-token",
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "scope": "token.warn-token",
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "scope": "token.error-token",
- "settings": {
- "foreground": "#f44747"
- }
- },
- {
- "scope": "token.debug-token",
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "String interpolation",
- "scope": [
- "punctuation.definition.template-expression.begin",
- "punctuation.definition.template-expression.end",
- "punctuation.section.embedded"
- ],
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Reset JavaScript string interpolation expression",
- "scope": [
- "meta.template.expression"
- ],
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Import module JS",
- "scope": [
- "keyword.operator.module"
- ],
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "js Flowtype",
- "scope": [
- "support.type.type.flowtype"
- ],
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "js Flow",
- "scope": [
- "support.type.primitive"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "js class prop",
- "scope": [
- "meta.property.object"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "js func parameter",
- "scope": [
- "variable.parameter.function.js"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "js template literals begin",
- "scope": [
- "keyword.other.template.begin"
- ],
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "js template literals end",
- "scope": [
- "keyword.other.template.end"
- ],
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "js template literals variable braces begin",
- "scope": [
- "keyword.other.substitution.begin"
- ],
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "js template literals variable braces end",
- "scope": [
- "keyword.other.substitution.end"
- ],
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "js operator.assignment",
- "scope": [
- "keyword.operator.assignment"
- ],
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "go operator",
- "scope": [
- "keyword.operator.assignment.go"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "go operator",
- "scope": [
- "keyword.operator.arithmetic.go",
- "keyword.operator.address.go"
- ],
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "Go package name",
- "scope": [
- "entity.name.package.go"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "elm prelude",
- "scope": [
- "support.type.prelude.elm"
- ],
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "elm constant",
- "scope": [
- "support.constant.elm"
- ],
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "template literal",
- "scope": [
- "punctuation.quasi.element"
- ],
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "html/pug (jade) escaped characters and entities",
- "scope": [
- "constant.character.entity"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "styling css pseudo-elements/classes to be able to differentiate from classes which are the same colour",
- "scope": [
- "entity.other.attribute-name.pseudo-element",
- "entity.other.attribute-name.pseudo-class"
- ],
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "Clojure globals",
- "scope": [
- "entity.global.clojure"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Clojure symbols",
- "scope": [
- "meta.symbol.clojure"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Clojure constants",
- "scope": [
- "constant.keyword.clojure"
- ],
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "CoffeeScript Function Argument",
- "scope": [
- "meta.arguments.coffee",
- "variable.parameter.function.coffee"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Ini Default Text",
- "scope": [
- "source.ini"
- ],
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "Makefile prerequisities",
- "scope": [
- "meta.scope.prerequisites.makefile"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Makefile text colour",
- "scope": [
- "source.makefile"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Groovy import names",
- "scope": [
- "storage.modifier.import.groovy"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Groovy Methods",
- "scope": [
- "meta.method.groovy"
- ],
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "Groovy Variables",
- "scope": [
- "meta.definition.variable.name.groovy"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "Groovy Inheritance",
- "scope": [
- "meta.definition.class.inherited.classes.groovy"
- ],
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "HLSL Semantic",
- "scope": [
- "support.variable.semantic.hlsl"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "HLSL Types",
- "scope": [
- "support.type.texture.hlsl",
- "support.type.sampler.hlsl",
- "support.type.object.hlsl",
- "support.type.object.rw.hlsl",
- "support.type.fx.hlsl",
- "support.type.object.hlsl"
- ],
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "SQL Variables",
- "scope": [
- "text.variable",
- "text.bracketed"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "types",
- "scope": [
- "support.type.swift",
- "support.type.vb.asp"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "heading 1, keyword",
- "scope": [
- "entity.name.function.xi"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "heading 2, callable",
- "scope": [
- "entity.name.class.xi"
- ],
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "heading 3, property",
- "scope": [
- "constant.character.character-class.regexp.xi"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "heading 4, type, class, interface",
- "scope": [
- "constant.regexp.xi"
- ],
- "settings": {
- "foreground": "#17b3f8"
- }
- },
- {
- "name": "heading 5, enums, preprocessor, constant, decorator",
- "scope": [
- "keyword.control.xi"
- ],
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "heading 6, number",
- "scope": [
- "invalid.xi"
- ],
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "string",
- "scope": [
- "beginning.punctuation.definition.quote.markdown.xi"
- ],
- "settings": {
- "foreground": "#f70b0b"
- }
- },
- {
- "name": "comments",
- "scope": [
- "beginning.punctuation.definition.list.markdown.xi"
- ],
- "settings": {
- "foreground": "#76858d"
- }
- },
- {
- "name": "link",
- "scope": [
- "constant.character.xi"
- ],
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "accent",
- "scope": [
- "accent.xi"
- ],
- "settings": {
- "foreground": "#88f817"
- }
- },
- {
- "name": "wikiword",
- "scope": [
- "wikiword.xi"
- ],
- "settings": {
- "foreground": "#e7f800"
- }
- },
- {
- "name": "language operators like '+', '-' etc",
- "scope": [
- "constant.other.color.rgb-value.xi"
- ],
- "settings": {
- "foreground": "#ffffff"
- }
- },
- {
- "name": "elements to dim",
- "scope": [
- "punctuation.definition.tag.xi"
- ],
- "settings": {
- "foreground": "#76858d"
- }
- },
- {
- "name": "C++/C#",
- "scope": [
- "entity.name.label.cs",
- "entity.name.scope-resolution.function.call",
- "entity.name.scope-resolution.function.definition"
- ],
- "settings": {
- "foreground": "#7b7de5"
- }
- },
- {
- "name": "Markdown underscore-style headers",
- "scope": [
- "entity.name.label.cs",
- "markup.heading.setext.1.markdown",
- "markup.heading.setext.2.markdown"
- ],
- "settings": {
- "foreground": "#ff9300"
- }
- },
- {
- "name": "meta.brace.square",
- "scope": [
- " meta.brace.square"
- ],
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "name": "Comments",
- "scope": "comment, punctuation.definition.comment",
- "settings": {
- "fontStyle": "italic",
- "foreground": "#76858d"
- }
- },
- {
- "name": "[VSCODE-CUSTOM] Markdown Quote",
- "scope": "markup.quote.markdown",
- "settings": {
- "foreground": "#76858d"
- }
- },
- {
- "name": "punctuation.definition.block.sequence.item.yaml",
- "scope": "punctuation.definition.block.sequence.item.yaml",
- "settings": {
- "foreground": "#d4d4d4"
- }
- },
- {
- "scope": [
- "constant.language.symbol.elixir"
- ],
- "settings": {
- "foreground": "#aab2c2"
- }
- },
- {
- "name": "js/ts italic",
- "scope": "entity.other.attribute-name.js,entity.other.attribute-name.ts,entity.other.attribute-name.jsx,entity.other.attribute-name.tsx,variable.parameter,variable.language.super",
- "settings": {
- "fontStyle": "italic"
- }
- },
- {
- "name": "comment",
- "scope": "comment.line.double-slash,comment.block.documentation",
- "settings": {
- "fontStyle": "italic"
- }
- },
- {
- "name": "Python Keyword Control",
- "scope": "keyword.control.import.python,keyword.control.flow.python",
- "settings": {
- "fontStyle": "italic"
- }
- },
- {
- "name": "markup.italic.markdown",
- "scope": "markup.italic.markdown",
- "settings": {
- "fontStyle": "italic"
- }
- }
- ],
- "colors": {
- "foreground": "#bbc9d5",
- "focusBorder": "#32373b",
- "selection.background": "#db6015",
- "scrollbar.shadow": "#2e2a2a",
- "activityBar.foreground": "#ffffff",
- "activityBar.background": "#1d1b1b",
- "activityBar.inactiveForeground": "#ffffff66",
- "activityBarBadge.foreground": "#ffffff",
- "activityBarBadge.background": "#0046cc",
- "sideBar.background": "#1d2125",
- "sideBar.foreground": "#f5f5f5",
- "sideBarSectionHeader.background": "#00000000",
- "sideBarSectionHeader.foreground": "#cccccc",
- "sideBarSectionHeader.border": "#cccccc33",
- "sideBarTitle.foreground": "#bbbbbb",
- "list.inactiveSelectionBackground": "#37373d",
- "list.inactiveSelectionForeground": "#cccccc",
- "list.hoverBackground": "#2a2d2e",
- "list.hoverForeground": "#cccccc",
- "list.activeSelectionBackground": "#582b0c",
- "list.activeSelectionForeground": "#ffffff",
- "tree.indentGuidesStroke": "#585858",
- "list.dropBackground": "#383b3d",
- "list.highlightForeground": "#a2c6de",
- "list.focusBackground": "#292938",
- "list.focusForeground": "#cccccc",
- "listFilterWidget.background": "#582b0c",
- "listFilterWidget.outline": "#00000000",
- "listFilterWidget.noMatchesOutline": "#be1100",
- "statusBar.foreground": "#ffffff",
- "statusBar.background": "#141d24",
- "statusBarItem.hoverBackground": "#ffffff1f",
- "statusBar.debuggingBackground": "#cc6633",
- "statusBar.debuggingForeground": "#ffffff",
- "statusBar.noFolderBackground": "#68217a",
- "statusBar.noFolderForeground": "#ffffff",
- "statusBarItem.remoteBackground": "#172458",
- "statusBarItem.remoteForeground": "#ffffff",
- "titleBar.activeBackground": "#1d2125",
- "titleBar.activeForeground": "#cccccc",
- "titleBar.inactiveBackground": "#3c3c3c99",
- "titleBar.inactiveForeground": "#cccccc99",
- "titleBar.border": "#00000000",
- "menubar.selectionForeground": "#cccccc",
- "menubar.selectionBackground": "#ffffff1a",
- "menu.foreground": "#cccccc",
- "menu.background": "#252526",
- "menu.selectionForeground": "#ffffff",
- "menu.selectionBackground": "#094771",
- "menu.selectionBorder": "#00000000",
- "menu.separatorBackground": "#bbbbbb",
- "menu.border": "#00000085",
- "button.background": "#0e639c",
- "button.foreground": "#ffffff",
- "button.hoverBackground": "#1177bb",
- "button.secondaryForeground": "#ffffff",
- "button.secondaryBackground": "#3a3d41",
- "button.secondaryHoverBackground": "#45494e",
- "input.background": "#3c3c3c",
- "input.border": "#00000000",
- "input.foreground": "#cccccc",
- "inputOption.activeBackground": "#007fd466",
- "inputOption.activeBorder": "#007acc00",
- "inputOption.activeForeground": "#ffffff",
- "input.placeholderForeground": "#a6a6a6",
- "textLink.foreground": "#3794ff",
- "editor.background": "#121212",
- "editor.foreground": "#d4d4d4",
- "editorLineNumber.foreground": "#858585",
- "editorCursor.foreground": "#aeafad",
- "editorCursor.background": "#000000",
- "editor.selectionBackground": "#264f78",
- "editor.inactiveSelectionBackground": "#3a3d41",
- "editorWhitespace.foreground": "#e3e4e229",
- "editor.selectionHighlightBackground": "#add6ff26",
- "editor.selectionHighlightBorder": "#495F77",
- "editor.findMatchBackground": "#515c6a",
- "editor.findMatchBorder": "#74879f",
- "editor.findMatchHighlightBackground": "#ea5c0055",
- "editor.findMatchHighlightBorder": "#ffffff00",
- "editor.findRangeHighlightBackground": "#3a3d4166",
- "editor.findRangeHighlightBorder": "#ffffff00",
- "editor.rangeHighlightBackground": "#ffffff0b",
- "editor.rangeHighlightBorder": "#ffffff00",
- "editor.hoverHighlightBackground": "#264f7840",
- "editor.wordHighlightStrongBackground": "#004972b8",
- "editor.wordHighlightBackground": "#575757b8",
- "editor.lineHighlightBackground": "#ffffff0A",
- "editor.lineHighlightBorder": "#282828",
- "editorLineNumber.activeForeground": "#c6c6c6",
- "editorLink.activeForeground": "#4e94ce",
- "editorIndentGuide.background": "#404040",
- "editorIndentGuide.activeBackground": "#707070",
- "editorRuler.foreground": "#5a5a5a",
- "editorBracketMatch.background": "#0064001a",
- "editorBracketMatch.border": "#888888",
- "editor.foldBackground": "#264f784d",
- "editorOverviewRuler.background": "#25252500",
- "editorOverviewRuler.border": "#7f7f7f4d",
- "editorError.foreground": "#f48771",
- "editorError.background": "#B73A3400",
- "editorError.border": "#ffffff00",
- "editorWarning.foreground": "#cca700",
- "editorWarning.background": "#A9904000",
- "editorWarning.border": "#ffffff00",
- "editorInfo.foreground": "#75beff",
- "editorInfo.background": "#4490BF00",
- "editorInfo.border": "#4490BF00",
- "editorGutter.background": "#191d21",
- "editorGutter.modifiedBackground": "#0c7d9d",
- "editorGutter.addedBackground": "#587c0c",
- "editorGutter.deletedBackground": "#94151b",
- "editorGutter.foldingControlForeground": "#c5c5c5",
- "editorCodeLens.foreground": "#999999",
- "editorGroup.border": "#444444",
- "diffEditor.insertedTextBackground": "#9bb95533",
- "diffEditor.removedTextBackground": "#ff000033",
- "diffEditor.border": "#444444",
- "panel.background": "#1e1e1e",
- "panel.border": "#80808059",
- "panelTitle.activeBorder": "#e7e7e7",
- "panelTitle.activeForeground": "#e7e7e7",
- "panelTitle.inactiveForeground": "#e7e7e799",
- "badge.background": "#4d4d4d",
- "badge.foreground": "#ffffff",
- "terminal.foreground": "#cccccc",
- "terminal.selectionBackground": "#ffffff40",
- "terminalCursor.background": "#0087FF",
- "terminalCursor.foreground": "#ffffff",
- "terminal.border": "#80808059",
- "terminal.ansiBlack": "#000000",
- "terminal.ansiBlue": "#2472c8",
- "terminal.ansiBrightBlack": "#666666",
- "terminal.ansiBrightBlue": "#3b8eea",
- "terminal.ansiBrightCyan": "#29b8db",
- "terminal.ansiBrightGreen": "#23d18b",
- "terminal.ansiBrightMagenta": "#d670d6",
- "terminal.ansiBrightRed": "#f14c4c",
- "terminal.ansiBrightWhite": "#e5e5e5",
- "terminal.ansiBrightYellow": "#f5f543",
- "terminal.ansiCyan": "#11a8cd",
- "terminal.ansiGreen": "#0dbc79",
- "terminal.ansiMagenta": "#bc3fbc",
- "terminal.ansiRed": "#cd3131",
- "terminal.ansiWhite": "#e5e5e5",
- "terminal.ansiYellow": "#e5e510",
- "breadcrumb.background": "#171c21",
- "breadcrumb.foreground": "#cccccccc",
- "breadcrumb.focusForeground": "#e0e0e0",
- "editorGroupHeader.tabsBackground": "#1d2125",
- "tab.activeForeground": "#ffffff",
- "tab.border": "#252526",
- "tab.activeBackground": "#2b3845",
- "tab.activeBorder": "#00000000",
- "tab.activeBorderTop": "#00000000",
- "tab.inactiveBackground": "#19212a",
- "tab.inactiveForeground": "#ffffff80",
- "scrollbarSlider.background": "#79797966",
- "scrollbarSlider.hoverBackground": "#646464b3",
- "scrollbarSlider.activeBackground": "#bfbfbf66",
- "progressBar.background": "#0e70c0",
- "widget.shadow": "#0000005c",
- "editorWidget.foreground": "#cccccc",
- "editorWidget.background": "#252526",
- "editorWidget.resizeBorder": "#5F5F5F",
- "pickerGroup.border": "#3f3f46",
- "pickerGroup.foreground": "#3794ff",
- "debugToolBar.background": "#333333",
- "debugToolBar.border": "#474747",
- "notifications.foreground": "#cccccc",
- "notifications.background": "#252526",
- "notificationToast.border": "#474747",
- "notificationsErrorIcon.foreground": "#f48771",
- "notificationsWarningIcon.foreground": "#cca700",
- "notificationsInfoIcon.foreground": "#75beff",
- "notificationCenter.border": "#474747",
- "notificationCenterHeader.foreground": "#cccccc",
- "notificationCenterHeader.background": "#303031",
- "notifications.border": "#303031",
- "gitDecoration.addedResourceForeground": "#81b88b",
- "gitDecoration.conflictingResourceForeground": "#6c6cc4",
- "gitDecoration.deletedResourceForeground": "#c74e39",
- "gitDecoration.ignoredResourceForeground": "#8c8c8c",
- "gitDecoration.modifiedResourceForeground": "#e2c08d",
- "gitDecoration.stageDeletedResourceForeground": "#c74e39",
- "gitDecoration.stageModifiedResourceForeground": "#e2c08d",
- "gitDecoration.submoduleResourceForeground": "#8db9e2",
- "gitDecoration.untrackedResourceForeground": "#73c991",
- "editorMarkerNavigation.background": "#2d2d30",
- "editorMarkerNavigationError.background": "#f48771",
- "editorMarkerNavigationWarning.background": "#cca700",
- "editorMarkerNavigationInfo.background": "#75beff",
- "merge.currentHeaderBackground": "#367366",
- "merge.currentContentBackground": "#27403B",
- "merge.incomingHeaderBackground": "#395F8F",
- "merge.incomingContentBackground": "#28384B",
- "merge.commonHeaderBackground": "#383838",
- "merge.commonContentBackground": "#282828",
- "editorSuggestWidget.background": "#252526",
- "editorSuggestWidget.border": "#454545",
- "editorSuggestWidget.foreground": "#d4d4d4",
- "editorSuggestWidget.highlightForeground": "#0097fb",
- "editorSuggestWidget.selectedBackground": "#062f4a",
- "editorHoverWidget.foreground": "#cccccc",
- "editorHoverWidget.background": "#252526",
- "editorHoverWidget.border": "#454545",
- "peekView.border": "#007acc",
- "peekViewEditor.background": "#001f33",
- "peekViewEditorGutter.background": "#001f33",
- "peekViewEditor.matchHighlightBackground": "#ff8f0099",
- "peekViewEditor.matchHighlightBorder": "#ee931e",
- "peekViewResult.background": "#252526",
- "peekViewResult.fileForeground": "#ffffff",
- "peekViewResult.lineForeground": "#bbbbbb",
- "peekViewResult.matchHighlightBackground": "#ea5c004d",
- "peekViewResult.selectionBackground": "#3399ff33",
- "peekViewResult.selectionForeground": "#ffffff",
- "peekViewTitle.background": "#1e1e1e",
- "peekViewTitleDescription.foreground": "#ccccccb3",
- "peekViewTitleLabel.foreground": "#ffffff",
- "icon.foreground": "#bbc9d5",
- "checkbox.background": "#3c3c3c",
- "checkbox.foreground": "#cccccc",
- "checkbox.border": "#00000000",
- "dropdown.background": "#3c3c3c",
- "dropdown.foreground": "#cccccc",
- "dropdown.border": "#00000000",
- "minimapGutter.addedBackground": "#587c0c",
- "minimapGutter.modifiedBackground": "#0c7d9d",
- "minimapGutter.deletedBackground": "#94151b",
- "minimap.findMatchHighlight": "#515c6a",
- "minimap.selectionHighlight": "#264f78",
- "minimap.errorHighlight": "#f48771",
- "minimap.warningHighlight": "#cca700",
- "minimap.background": "#121212",
- "sideBar.dropBackground": "#383b3d",
- "editorGroup.emptyBackground": "#121212",
- "panelSection.border": "#80808059",
- "statusBarItem.activeBackground": "#FFFFFF25",
- "settings.headerForeground": "#bbc9d5",
- "settings.focusedRowBackground": "#ffffff07",
- "walkThrough.embeddedEditorBackground": "#00000050",
- "breadcrumb.activeSelectionForeground": "#e0e0e0",
- "editorGutter.commentRangeForeground": "#c5c5c5",
- "debugExceptionWidget.background": "#333333",
- "debugExceptionWidget.border": "#474747"
- },
- "editor.minimap.enabled": false,
- "__comment": "Below this line are manual customizations ***********",
- "workbench.colorCustomizations":
- {
-
- "foreground": "#bbc9d5",
- "focusBorder": "#32373b",
- "sideBar.background": "#1d2125",
- "sideBar.foreground": "#f5f5f5",
- "sideBarSectionHeader.background": "#00000000",
- "sideBarSectionHeader.foreground": "#cccccc",
- "sideBarSectionHeader.border": "#cccccc33",
- "sideBarTitle.foreground": "#bbbbbb",
- "statusBar.foreground": "#ffffff",
- "statusBar.background": "#141d24",
- "statusBarItem.hoverBackground": "#ffffff1f",
- "statusBar.debuggingBackground": "#cc6633",
- "statusBar.debuggingForeground": "#ffffff",
- "statusBar.noFolderBackground": "#68217a",
- "statusBar.noFolderForeground": "#ffffff",
- "statusBarItem.remoteBackground": "#172458",
- "statusBarItem.remoteForeground": "#ffffff",
- "titleBar.activeBackground": "#1d2125",
- "titleBar.activeForeground": "#cccccc",
- "titleBar.inactiveBackground": "#3c3c3c99",
- "titleBar.inactiveForeground": "#cccccc99",
- "titleBar.border": "#00000000",
- "menubar.selectionForeground": "#cccccc",
- "menubar.selectionBackground": "#ffffff1a",
- "menu.foreground": "#cccccc",
- "menu.background": "#252526",
- "menu.selectionForeground": "#ffffff",
- "menu.selectionBackground": "#094771",
- "menu.selectionBorder": "#00000000",
- "menu.separatorBackground": "#bbbbbb",
- "menu.border": "#00000085",
- "button.background": "#0e639c",
- "button.foreground": "#ffffff",
- "button.hoverBackground": "#1177bb",
- "button.secondaryForeground": "#ffffff",
- "button.secondaryBackground": "#3a3d41",
- "button.secondaryHoverBackground": "#45494e",
- "input.background": "#3c3c3c",
- "input.border": "#00000000",
- "input.foreground": "#cccccc",
- "inputOption.activeBackground": "#007fd466",
- "inputOption.activeBorder": "#007acc00",
- "inputOption.activeForeground": "#ffffff",
- "input.placeholderForeground": "#a6a6a6",
- "textLink.foreground": "#3794ff",
- "editor.background": "#0d1116",
- "editor.foreground": "#d4d4d4",
- "editorLineNumber.foreground": "#858585",
- "editorCursor.foreground": "#aeafad",
- "editorCursor.background": "#000000",
- "editor.selectionBackground": "#264f78",
- "editor.inactiveSelectionBackground": "#3a3d41",
- "editorWhitespace.foreground": "#e3e4e229",
- "editor.selectionHighlightBackground": "#add6ff26",
- "editor.selectionHighlightBorder": "#495F77",
- "editor.findMatchBackground": "#515c6a",
- "editor.findMatchBorder": "#74879f",
- "editor.findMatchHighlightBackground": "#ea5c0055",
- "editor.findMatchHighlightBorder": "#ffffff00",
- "editor.findRangeHighlightBackground": "#3a3d4166",
- "editor.findRangeHighlightBorder": "#ffffff00",
- "editor.rangeHighlightBackground": "#ffffff0b",
- "editor.rangeHighlightBorder": "#ffffff00",
- "editor.hoverHighlightBackground": "#264f7840",
- "editor.wordHighlightStrongBackground": "#004972b8",
- "editor.wordHighlightBackground": "#575757b8",
- "editor.lineHighlightBackground": "#ffffff0A",
- "editor.lineHighlightBorder": "#282828",
- "editorLineNumber.activeForeground": "#c6c6c6",
- "editorLink.activeForeground": "#4e94ce",
- "editorIndentGuide.background1": "#404040",
- "editorIndentGuide.activeBackground1": "#707070",
- "editorRuler.foreground": "#5a5a5a",
- "editorBracketMatch.background": "#0064001a",
- "editorBracketMatch.border": "#888888",
- "editor.foldBackground": "#264f784d",
- "editorOverviewRuler.background": "#25252500",
- "editorOverviewRuler.border": "#7f7f7f4d",
- "editorError.foreground": "#f48771",
- "editorError.background": "#B73A3400",
- "editorError.border": "#ffffff00",
- "editorWarning.foreground": "#cca700",
- "editorWarning.background": "#A9904000",
- "editorWarning.border": "#ffffff00",
- "editorInfo.foreground": "#75beff",
- "editorInfo.background": "#4490BF00",
- "editorInfo.border": "#4490BF00",
- "editorGutter.background": "#191d21",
- "editorGutter.modifiedBackground": "#0c7d9d",
- "editorGutter.addedBackground": "#587c0c",
- "editorGutter.deletedBackground": "#94151b",
- "editorGutter.foldingControlForeground": "#c5c5c5",
- "editorCodeLens.foreground": "#999999",
- "editorGroup.border": "#444444",
- "diffEditor.insertedTextBackground": "#9bb95533",
- "diffEditor.removedTextBackground": "#ff000033",
- "diffEditor.border": "#444444",
- "panel.background": "#1e1e1e",
- "panel.border": "#80808059",
- "panelTitle.activeBorder": "#e7e7e7",
- "panelTitle.activeForeground": "#e7e7e7",
- "panelTitle.inactiveForeground": "#e7e7e799",
- "badge.background": "#4d4d4d",
- "badge.foreground": "#ffffff",
- "terminal.foreground": "#7c8590",
- "terminal.background": "#020408",
- "terminal.selectionBackground": "#ffffff40",
- "terminalCursor.background": "#0087FF",
- "terminalCursor.foreground": "#ffffff",
- "terminal.border": "#1e1f1e59",
- "terminal.ansiBlack": "#000000",
- "terminal.ansiBlue": "#2472c8",
- "terminal.ansiBrightBlack": "#666666",
- "terminal.ansiBrightBlue": "#3b8eea",
- "terminal.ansiBrightCyan": "#29b8db",
- "terminal.ansiBrightGreen": "#23d18b",
- "terminal.ansiBrightMagenta": "#d670d6",
- "terminal.ansiBrightRed": "#f14c4c",
- "terminal.ansiBrightWhite": "#e5e5e5",
- "terminal.ansiBrightYellow": "#f5f543",
- "terminal.ansiCyan": "#11a8cd",
- "terminal.ansiGreen": "#0dbc79",
- "terminal.ansiMagenta": "#bc3fbc",
- "terminal.ansiRed": "#cd3131",
- "terminal.ansiWhite": "#e5e5e5",
- "terminal.ansiYellow": "#e5e510",
- "breadcrumb.background": "#171c21",
- "breadcrumb.foreground": "#cccccccc",
- "breadcrumb.focusForeground": "#e0e0e0",
- "editorGroupHeader.tabsBackground": "#1d2125",
- "tab.activeForeground": "#ffffff",
- "tab.border": "#252526",
- "tab.activeBackground": "#2b3845",
- "tab.activeBorder": "#00000000",
- "tab.activeBorderTop": "#00000000",
- "tab.inactiveBackground": "#19212a",
- "tab.inactiveForeground": "#ffffff80",
- "scrollbarSlider.background": "#79797966",
- "scrollbarSlider.hoverBackground": "#646464b3",
- "scrollbarSlider.activeBackground": "#bfbfbf66",
- "progressBar.background": "#0e70c0",
- "widget.shadow": "#0000005c",
- "editorWidget.foreground": "#cccccc",
- "editorWidget.background": "#252526",
- "editorWidget.resizeBorder": "#5F5F5F",
- "pickerGroup.border": "#3f3f46",
- "pickerGroup.foreground": "#3794ff",
- "debugToolBar.background": "#333333",
- "debugToolBar.border": "#474747",
- "notifications.foreground": "#cccccc",
- "notifications.background": "#252526",
- "notificationToast.border": "#474747",
- "notificationsErrorIcon.foreground": "#f48771",
- "notificationsWarningIcon.foreground": "#cca700",
- "notificationsInfoIcon.foreground": "#75beff",
- "notificationCenter.border": "#474747",
- "notificationCenterHeader.foreground": "#cccccc",
- "notificationCenterHeader.background": "#303031",
- "notifications.border": "#303031",
- "gitDecoration.addedResourceForeground": "#81b88b",
- "gitDecoration.conflictingResourceForeground": "#6c6cc4",
- "gitDecoration.deletedResourceForeground": "#c74e39",
- "gitDecoration.ignoredResourceForeground": "#8c8c8c",
- "gitDecoration.modifiedResourceForeground": "#e2c08d",
- "gitDecoration.stageDeletedResourceForeground": "#c74e39",
- "gitDecoration.stageModifiedResourceForeground": "#e2c08d",
- "gitDecoration.submoduleResourceForeground": "#8db9e2",
- "gitDecoration.untrackedResourceForeground": "#73c991",
- "editorMarkerNavigation.background": "#2d2d30",
- "editorMarkerNavigationError.background": "#f48771",
- "editorMarkerNavigationWarning.background": "#cca700",
- "editorMarkerNavigationInfo.background": "#75beff",
- "merge.currentHeaderBackground": "#367366",
- "merge.currentContentBackground": "#27403B",
- "merge.incomingHeaderBackground": "#395F8F",
- "merge.incomingContentBackground": "#28384B",
- "merge.commonHeaderBackground": "#383838",
- "merge.commonContentBackground": "#282828",
- "editorSuggestWidget.background": "#252526",
- "editorSuggestWidget.border": "#454545",
- "editorSuggestWidget.foreground": "#d4d4d4",
- "editorSuggestWidget.highlightForeground": "#0097fb",
- "editorSuggestWidget.selectedBackground": "#062f4a",
- "editorHoverWidget.foreground": "#cccccc",
- "editorHoverWidget.background": "#252526",
- "editorHoverWidget.border": "#454545",
- "peekView.border": "#007acc",
- "peekViewEditor.background": "#001f33",
- "peekViewEditorGutter.background": "#001f33",
- "peekViewEditor.matchHighlightBackground": "#ff8f0099",
- "peekViewEditor.matchHighlightBorder": "#ee931e",
- "peekViewResult.background": "#252526",
- "peekViewResult.fileForeground": "#ffffff",
- "peekViewResult.lineForeground": "#bbbbbb",
- "peekViewResult.matchHighlightBackground": "#ea5c004d",
- "peekViewResult.selectionBackground": "#3399ff33",
- "peekViewResult.selectionForeground": "#ffffff",
- "peekViewTitle.background": "#1e1e1e",
- "peekViewTitleDescription.foreground": "#ccccccb3",
- "peekViewTitleLabel.foreground": "#ffffff",
- "icon.foreground": "#bbc9d5",
- "checkbox.background": "#3c3c3c",
- "checkbox.foreground": "#cccccc",
- "checkbox.border": "#00000000",
- "dropdown.background": "#3c3c3c",
- "dropdown.foreground": "#cccccc",
- "dropdown.border": "#00000000",
- "minimapGutter.addedBackground": "#587c0c",
- "minimapGutter.modifiedBackground": "#0c7d9d",
- "minimapGutter.deletedBackground": "#94151b",
- "minimap.findMatchHighlight": "#515c6a",
- "minimap.selectionHighlight": "#264f78",
- "minimap.errorHighlight": "#f48771",
- "minimap.warningHighlight": "#cca700",
- "minimap.background": "#121212",
- "sideBar.dropBackground": "#383b3d",
- "editorGroup.emptyBackground": "#121212",
- "panelSection.border": "#80808059",
- "statusBarItem.activeBackground": "#FFFFFF25",
- "settings.headerForeground": "#bbc9d5",
- "settings.focusedRowBackground": "#ffffff07",
- "walkThrough.embeddedEditorBackground": "#00000050",
- "breadcrumb.activeSelectionForeground": "#e0e0e0",
- "editorGutter.commentRangeForeground": "#c5c5c5",
- "debugExceptionWidget.background": "#333333",
- "debugExceptionWidget.border": "#474747"
- },
- "editor.tokenColorCustomizations": {
- "comments": "#777575",
- "strings": "#ff791b",
- "keywords": "#17b3f8",
- "functions": "#93ec7f",
- "numbers": "#2f00ff",
- "types": "#e3d74b",
- "variables": "#00c3ff",
-
- "textMateRules": [
- {
- "scope": [
- "support.type.property-name.json",
- "entity.name.tag.html"
- ],
- "settings": {
- "foreground": "#92c061"
- }
- },
- {
- "scope": [
- "entity.name.command.shell",
- "support.function.any-method.swift",
- "keyword.control.public.swift"
- ],
- "settings": {
- "foreground": "#6686de"
- }
- },
- {
- "scope": [
- "meta.definition.type.body.swift"
- ],
- "settings": {
- "foreground": "#a0b3bb"
- }
- },
- {
- "scope": [
- "entity.name.type.struct.swift",
- ],
- "settings": {
- "foreground": "#e63ede"
- }
- },
- {
- "scope": "heading.1.markdown entity.name.section.markdown, heading.1.markdown punctuation.definition.heading.markdown",
- "settings": {
- "foreground": "#ff6a00",
- "fontStyle": "bold",
- }
- },
- {
- "scope": "heading.2.markdown entity.name.section.markdown, heading.2.markdown punctuation.definition.heading.markdown",
- "settings": {
- "foreground": "#ff6a00",
- "fontStyle": "italic",
- }
- },
- {
- "scope": "heading.3.markdown entity.name.section.markdown, heading.3.markdown punctuation.definition.heading.markdown",
- "settings": {
- "foreground": "#ff6a00",
- "fontStyle": "normal",
- }
- },
- {
- "scope": "heading.4.markdown entity.name.section.markdown, heading.4.markdown punctuation.definition.heading.markdown",
- "settings": {
- "foreground": "#ff6a00",
- "fontStyle": "normal",
- }
- },
- { "scope": "markup.underline.link.markdown", "settings": { "foreground": "#1bc4de", }
- },
- { "scope": "punctuation.definition.list.begin.markdown", "settings": { "foreground": "#FFED9D", }
- },
- { "scope": "entity.name.section.markdown", "settings": { "fontStyle": "bold underline", }
- },
- {
- "scope": "string.other.link.title.markdown",
- "settings": {
- "foreground": "#d1dc53",
- "fontStyle": "italic bold",
- }
- },
- {
- "scope": "punctuation.definition.metadata.markdown",
- "settings": {
- "foreground": "#e761dc",
- }
- },
- {
- "scope": [
- "entity.name.type.class.swift",
- ],
- "settings": {
- "foreground": "#b244d7"
- }
- }
-
- ]
- },
- "editor.semanticTokenColorCustomizations": {
- "rules": {
- "class": {
- "foreground": "#ff9999"
- }
- }
- },
- "window.zoomLevel": 1,
- "editor.showFoldingControls": "never",
- "editor.fontSize": 14,
- "workbench.fontAliasing": "antialiased",
- "editor.fontFamily": "SF Mono, Menlo, Monaco, 'Courier New', monospace",
- "git.autofetch": true,
- "githubPullRequests.fileListLayout": "tree",
- "githubPullRequests.useReviewMode": "auto",
- "editor.wordWrap": "on",
- "editor.wrappingIndent": "none",
- "git.openRepositoryInParentFolders": "always",
- "workbench.colorTheme": "GitHub Dark Default",
- "editor.lineNumbers": "on",
- "editor.guides.indentation": false,
- "editor.guides.highlightActiveIndentation": false,
- "editor.occurrencesHighlight": "off",
- "editor.renderLineHighlightOnlyWhenFocus": true,
- "editor.selectionHighlight": false
-}
\ No newline at end of file
diff --git a/Config/Xcode/TimTr Dark.xccolortheme b/Config/Xcode/TimTr Dark.xccolortheme
deleted file mode 100644
index 7cccb74..0000000
--- a/Config/Xcode/TimTr Dark.xccolortheme
+++ /dev/null
@@ -1,234 +0,0 @@
-
-
-
-
- DVTConsoleDebuggerInputTextColor
- 0.629499 0.595809 0.998957 1
- DVTConsoleDebuggerInputTextFont
- SFMono-RegularItalic - 15.0
- DVTConsoleDebuggerOutputTextColor
- 0.88176 0.87387 0.892097 1
- DVTConsoleDebuggerOutputTextFont
- SFMono-RegularItalic - 15.0
- DVTConsoleDebuggerPromptTextColor
- 0.776651 0.796145 0.778473 1
- DVTConsoleDebuggerPromptTextFont
- SFMono-RegularItalic - 15.0
- DVTConsoleExectuableInputTextColor
- 0.986042 0 0.0946885 1
- DVTConsoleExectuableInputTextFont
- SFMono-RegularItalic - 15.0
- DVTConsoleExectuableOutputTextColor
- 0.17236 0.910542 0.998932 1
- DVTConsoleExectuableOutputTextFont
- SFMono-RegularItalic - 15.0
- DVTConsoleTextBackgroundColor
- 0.064263 0.067871 0.0815955 1
- DVTConsoleTextInsertionPointColor
- 1 1 1 1
- DVTConsoleTextSelectionColor
- 0.397 0.397 0.302 1
- DVTFontAndColorVersion
- 1
- DVTFontSizeModifier
- 1
- DVTLineSpacing
- 1.1000000238418579
- DVTMarkupTextBackgroundColor
- 0.153318 0.157241 0.177321 1
- DVTMarkupTextBorderColor
- 0.221053 0.224662 0.243136 1
- DVTMarkupTextCodeFont
- SFMono-Regular - 12.0
- DVTMarkupTextEmphasisColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextEmphasisFont
- .SFNS-RegularItalic - 15.0
- DVTMarkupTextInlineCodeColor
- 0.42772 0.465692 0.465582 0.7
- DVTMarkupTextLinkColor
- 0.1 0.1 0.819 1
- DVTMarkupTextLinkFont
- .SFNS-Regular - 15.0
- DVTMarkupTextNormalColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextNormalFont
- .SFNS-Regular - 15.0
- DVTMarkupTextOtherHeadingColor
- 0.42772 0.465692 0.465582 0.5
- DVTMarkupTextOtherHeadingFont
- .SFNS-Regular - 20.2
- DVTMarkupTextPrimaryHeadingColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextPrimaryHeadingFont
- .SFNS-Regular - 33.2
- DVTMarkupTextSecondaryHeadingColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextSecondaryHeadingFont
- .SFNS-Regular - 25.4
- DVTMarkupTextStrongColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextStrongFont
- .SFNS-Bold - 15.0
- DVTScrollbarMarkerAnalyzerColor
- 0.403922 0.372549 1 1
- DVTScrollbarMarkerBreakpointColor
- 0.290196 0.290196 0.968627 1
- DVTScrollbarMarkerDiffColor
- 0.556863 0.556863 0.556863 1
- DVTScrollbarMarkerDiffConflictColor
- 0.968627 0.290196 0.290196 1
- DVTScrollbarMarkerErrorColor
- 0.968627 0.290196 0.290196 1
- DVTScrollbarMarkerRuntimeIssueColor
- 0.643137 0.509804 1 1
- DVTScrollbarMarkerWarningColor
- 0.937255 0.717647 0.34902 1
- DVTSourceTextBackground
- 0.0645066 0.0645066 0.0645066 1
- DVTSourceTextBlockDimBackgroundColor
- 0.5 0.5 0.5 1
- DVTSourceTextCurrentLineHighlightColor
- 0.106591 0.120683 0.136839 1
- DVTSourceTextInsertionPointColor
- 1 1 1 1
- DVTSourceTextInvisiblesColor
- 0.5 0.5 0.5 1
- DVTSourceTextSelectionColor
- 0.0382766 0.143328 0.350102 1
- DVTSourceTextSyntaxColors
-
- xcode.syntax.attribute
- 0.145098 0.568627 0.52549 1
- xcode.syntax.character
- 0.845619 0.845619 0.845619 1
- xcode.syntax.comment
- 0.27182 0.289624 0.39479 1
- xcode.syntax.comment.doc
- 0.262099 0.4621 0.495959 1
- xcode.syntax.comment.doc.keyword
- 0.424672 0.424672 0.424672 1
- xcode.syntax.declaration.other
- 0.963669 0.71655 0.466212 1
- xcode.syntax.declaration.type
- 0.963669 0.71655 0.466212 1
- xcode.syntax.identifier.class
- 0.713704 0.249773 0.707592 1
- xcode.syntax.identifier.class.system
- 0.886388 0.983859 0 1
- xcode.syntax.identifier.constant
- 0.875867 0.548301 0.784713 1
- xcode.syntax.identifier.constant.system
- 0.427451 0.67451 1 1
- xcode.syntax.identifier.function
- 0.915091 0.478554 0.845259 1
- xcode.syntax.identifier.function.system
- 0.886388 0.983859 0 1
- xcode.syntax.identifier.macro
- 0.92549 0.415686 0.384314 1
- xcode.syntax.identifier.macro.system
- 0.92549 0.415686 0.384314 1
- xcode.syntax.identifier.type
- 0.587517 0.206665 0.58352 1
- xcode.syntax.identifier.type.system
- 0.427451 0.67451 1 1
- xcode.syntax.identifier.variable
- 0.719135 0.4568 0.617874 1
- xcode.syntax.identifier.variable.system
- 0.427451 0.67451 1 1
- xcode.syntax.keyword
- 0.114574 0.633574 0.964563 1
- xcode.syntax.mark
- 0.323259 0.92111 0.232525 1
- xcode.syntax.markup.code
- 0.665 0.052 0.569 1
- xcode.syntax.number
- 0.191379 0.822222 0.361929 1
- xcode.syntax.plain
- 0.682131 0.74416 0.798634 1
- xcode.syntax.preprocessor
- 0.825736 0.675904 0.162883 1
- xcode.syntax.regex
- 0 0.976153 1 1
- xcode.syntax.regex.capturename
- 0.560922 0.340188 0.63728 1
- xcode.syntax.regex.charname
- 0.427451 0.67451 1 1
- xcode.syntax.regex.number
- 0.445898 0.967334 0.999197 1
- xcode.syntax.regex.other
- 0.731204 0.763292 0.842913 1
- xcode.syntax.string
- 0.987517 0.322992 0.0290003 1
- xcode.syntax.url
- 0.186306 0.478119 0.849336 1
-
- DVTSourceTextSyntaxFonts
-
- xcode.syntax.attribute
- SFMono-Regular - 16.0
- xcode.syntax.character
- SFMono-Light - 16.0
- xcode.syntax.comment
- SFMono-LightItalic - 16.0
- xcode.syntax.comment.doc
- SFMono-LightItalic - 16.0
- xcode.syntax.comment.doc.keyword
- SFMono-Semibold - 16.0
- xcode.syntax.declaration.other
- SFMono-MediumItalic - 16.0
- xcode.syntax.declaration.type
- SFMono-MediumItalic - 16.0
- xcode.syntax.identifier.class
- SFMono-Semibold - 16.0
- xcode.syntax.identifier.class.system
- SFMono-SemiboldItalic - 16.0
- xcode.syntax.identifier.constant
- SFMono-Light - 16.0
- xcode.syntax.identifier.constant.system
- SFMono-Medium - 16.0
- xcode.syntax.identifier.function
- SFMono-Medium - 16.0
- xcode.syntax.identifier.function.system
- SFMono-Medium - 16.0
- xcode.syntax.identifier.macro
- SFMono-Light - 16.0
- xcode.syntax.identifier.macro.system
- SFMono-Light - 16.0
- xcode.syntax.identifier.type
- SFMono-Semibold - 16.0
- xcode.syntax.identifier.type.system
- SFMono-Medium - 16.0
- xcode.syntax.identifier.variable
- SFMono-Medium - 16.0
- xcode.syntax.identifier.variable.system
- SFMono-Medium - 16.0
- xcode.syntax.keyword
- SFMono-Light - 16.0
- xcode.syntax.mark
- SFMono-Semibold - 16.0
- xcode.syntax.markup.code
- SFMono-Light - 16.0
- xcode.syntax.number
- SFMono-Medium - 16.0
- xcode.syntax.plain
- SFMono-Light - 16.0
- xcode.syntax.preprocessor
- SFMono-Light - 16.0
- xcode.syntax.regex
- SFMono-Light - 16.0
- xcode.syntax.regex.capturename
- SFMono-Light - 16.0
- xcode.syntax.regex.charname
- SFMono-Light - 16.0
- xcode.syntax.regex.number
- SFMono-Light - 16.0
- xcode.syntax.regex.other
- SFMono-Light - 16.0
- xcode.syntax.string
- SFMono-LightItalic - 16.0
- xcode.syntax.url
- SFMono-LightItalic - 16.0
-
-
-
diff --git a/Config/Xcode/TimTr Grey.xccolortheme b/Config/Xcode/TimTr Grey.xccolortheme
deleted file mode 100644
index 68c94ee..0000000
--- a/Config/Xcode/TimTr Grey.xccolortheme
+++ /dev/null
@@ -1,234 +0,0 @@
-
-
-
-
- DVTConsoleDebuggerInputTextColor
- 0.962371 0 0.202292 1
- DVTConsoleDebuggerInputTextFont
- SFMono-Regular - 16.0
- DVTConsoleDebuggerOutputTextColor
- 0.265953 0.766255 0.295905 1
- DVTConsoleDebuggerOutputTextFont
- SFMono-Regular - 16.0
- DVTConsoleDebuggerPromptTextColor
- 0 0 0 1
- DVTConsoleDebuggerPromptTextFont
- SFMono-Regular - 16.0
- DVTConsoleExectuableInputTextColor
- 0.121328 0.484181 0.744579 1
- DVTConsoleExectuableInputTextFont
- SFMono-RegularItalic - 16.0
- DVTConsoleExectuableOutputTextColor
- 0.239254 0.150996 0.696956 1
- DVTConsoleExectuableOutputTextFont
- SFMono-SemiboldItalic - 16.0
- DVTConsoleTextBackgroundColor
- 0.761289 0.771976 0.78238 1
- DVTConsoleTextInsertionPointColor
- 1 1 1 1
- DVTConsoleTextSelectionColor
- 0.397 0.397 0.302 1
- DVTFontAndColorVersion
- 1
- DVTFontSizeModifier
- 3
- DVTLineSpacing
- 1.1000000238418579
- DVTMarkupTextBackgroundColor
- 0.153318 0.157241 0.177321 1
- DVTMarkupTextBorderColor
- 0.221053 0.224662 0.243136 1
- DVTMarkupTextCodeFont
- SFMono-Regular - 14.0
- DVTMarkupTextEmphasisColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextEmphasisFont
- .SFNS-RegularItalic - 15.0
- DVTMarkupTextInlineCodeColor
- 0.42772 0.465692 0.465582 0.7
- DVTMarkupTextLinkColor
- 0.1 0.1 0.819 1
- DVTMarkupTextLinkFont
- .SFNS-Regular - 15.0
- DVTMarkupTextNormalColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextNormalFont
- .SFNS-Regular - 15.0
- DVTMarkupTextOtherHeadingColor
- 0.42772 0.465692 0.465582 0.5
- DVTMarkupTextOtherHeadingFont
- .SFNS-Regular - 20.2
- DVTMarkupTextPrimaryHeadingColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextPrimaryHeadingFont
- .SFNS-Regular - 33.2
- DVTMarkupTextSecondaryHeadingColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextSecondaryHeadingFont
- .SFNS-Regular - 25.4
- DVTMarkupTextStrongColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextStrongFont
- .SFNS-Bold - 15.0
- DVTScrollbarMarkerAnalyzerColor
- 0.403922 0.372549 1 1
- DVTScrollbarMarkerBreakpointColor
- 0.290196 0.290196 0.968627 1
- DVTScrollbarMarkerDiffColor
- 0.556863 0.556863 0.556863 1
- DVTScrollbarMarkerDiffConflictColor
- 0.968627 0.290196 0.290196 1
- DVTScrollbarMarkerErrorColor
- 0.968627 0.290196 0.290196 1
- DVTScrollbarMarkerRuntimeIssueColor
- 0.643137 0.509804 1 1
- DVTScrollbarMarkerWarningColor
- 0.937255 0.717647 0.34902 1
- DVTSourceTextBackground
- 0.888571 0.88112 0.894161 1
- DVTSourceTextBlockDimBackgroundColor
- 0.5 0.5 0.5 1
- DVTSourceTextCurrentLineHighlightColor
- 0.856627 0.859469 0.830862 1
- DVTSourceTextInsertionPointColor
- 0.347281 0.472149 1 1
- DVTSourceTextInvisiblesColor
- 0.5 0.5 0.5 1
- DVTSourceTextSelectionColor
- 0.544452 0.750691 0.863803 1
- DVTSourceTextSyntaxColors
-
- xcode.syntax.attribute
- 0.145098 0.568627 0.52549 1
- xcode.syntax.character
- 0.872111 0.0395974 0.0383149 1
- xcode.syntax.comment
- 0.471746 0.527245 0.527245 1
- xcode.syntax.comment.doc
- 0.433176 0.429703 0.435783 1
- xcode.syntax.comment.doc.keyword
- 0.224989 0.336844 0.480074 1
- xcode.syntax.declaration.other
- 0.0588235 0.407843 0.627451 1
- xcode.syntax.declaration.type
- 0.0431373 0.309804 0.47451 1
- xcode.syntax.identifier.class
- 0.0687206 0.366902 0.0816858 1
- xcode.syntax.identifier.class.system
- 0 0.36348 0.343376 1
- xcode.syntax.identifier.constant
- 0.0687206 0.366902 0.0816858 1
- xcode.syntax.identifier.constant.system
- 0 0.36348 0.343376 1
- xcode.syntax.identifier.function
- 0.0687206 0.366902 0.0816858 1
- xcode.syntax.identifier.function.system
- 0 0.36348 0.343376 1
- xcode.syntax.identifier.macro
- 0.658637 0.41042 0.239777 1
- xcode.syntax.identifier.macro.system
- 0.550008 0.344646 0.209343 1
- xcode.syntax.identifier.type
- 0.0687206 0.366902 0.0816858 1
- xcode.syntax.identifier.type.system
- 0 0.36348 0.343376 1
- xcode.syntax.identifier.variable
- 0.0687206 0.366902 0.0816858 1
- xcode.syntax.identifier.variable.system
- 0 0.36348 0.343376 1
- xcode.syntax.keyword
- 0.196328 0.318187 0.44559 1
- xcode.syntax.mark
- 0.290196 0.333333 0.376471 1
- xcode.syntax.markup.code
- 0.665 0.052 0.569 1
- xcode.syntax.number
- 0 0.650529 0.000448474 1
- xcode.syntax.plain
- 0.150211 0.164023 0.164023 1
- xcode.syntax.preprocessor
- 0.600971 0.0751941 0.0631112 1
- xcode.syntax.regex
- 0.77 0.102 0.086 1
- xcode.syntax.regex.capturename
- 0.194184 0.429349 0.454553 1
- xcode.syntax.regex.charname
- 0.421903 0.212783 0.663785 1
- xcode.syntax.regex.number
- 0.11 0 0.81 1
- xcode.syntax.regex.other
- 0 0 0 0.85
- xcode.syntax.string
- 0.872111 0.0395974 0.0383149 1
- xcode.syntax.url
- 0.273306 0.321671 0.77764 1
-
- DVTSourceTextSyntaxFonts
-
- xcode.syntax.attribute
- SFMono-Regular - 16.0
- xcode.syntax.character
- SFMono-Regular - 16.0
- xcode.syntax.comment
- SFMono-RegularItalic - 16.0
- xcode.syntax.comment.doc
- SFMono-RegularItalic - 16.0
- xcode.syntax.comment.doc.keyword
- SFMono-Semibold - 16.0
- xcode.syntax.declaration.other
- SFMono-Regular - 16.0
- xcode.syntax.declaration.type
- SFMono-Regular - 16.0
- xcode.syntax.identifier.class
- SFMono-Regular - 16.0
- xcode.syntax.identifier.class.system
- SFMono-Regular - 16.0
- xcode.syntax.identifier.constant
- SFMono-SemiboldItalic - 16.0
- xcode.syntax.identifier.constant.system
- SFMono-SemiboldItalic - 16.0
- xcode.syntax.identifier.function
- SFMono-Regular - 16.0
- xcode.syntax.identifier.function.system
- SFMono-Regular - 16.0
- xcode.syntax.identifier.macro
- SFMono-Regular - 16.0
- xcode.syntax.identifier.macro.system
- SFMono-Regular - 16.0
- xcode.syntax.identifier.type
- SFMono-Regular - 16.0
- xcode.syntax.identifier.type.system
- SFMono-Regular - 16.0
- xcode.syntax.identifier.variable
- SFMono-Regular - 16.0
- xcode.syntax.identifier.variable.system
- SFMono-Regular - 16.0
- xcode.syntax.keyword
- SFMono-Semibold - 16.0
- xcode.syntax.mark
- SFMono-Bold - 16.0
- xcode.syntax.markup.code
- SFMono-Regular - 16.0
- xcode.syntax.number
- SFMono-Regular - 16.0
- xcode.syntax.plain
- SFMono-Regular - 16.0
- xcode.syntax.preprocessor
- SFMono-Regular - 16.0
- xcode.syntax.regex
- SFMono-Regular - 16.0
- xcode.syntax.regex.capturename
- SFMono-Regular - 16.0
- xcode.syntax.regex.charname
- SFMono-Regular - 16.0
- xcode.syntax.regex.number
- SFMono-Regular - 16.0
- xcode.syntax.regex.other
- SFMono-Regular - 16.0
- xcode.syntax.string
- SFMono-Regular - 16.0
- xcode.syntax.url
- SFMono-Regular - 16.0
-
-
-
diff --git a/Config/Xcode/TimTr Lighthaus.xccolortheme b/Config/Xcode/TimTr Lighthaus.xccolortheme
deleted file mode 100644
index 3fe82e0..0000000
--- a/Config/Xcode/TimTr Lighthaus.xccolortheme
+++ /dev/null
@@ -1,232 +0,0 @@
-
-
-
-
- DVTConsoleDebuggerInputTextColor
- 0.629499 0.595809 0.998957 1
- DVTConsoleDebuggerInputTextFont
- SFMono-Bold - 15.0
- DVTConsoleDebuggerOutputTextColor
- 0.88176 0.87387 0.892097 1
- DVTConsoleDebuggerOutputTextFont
- SFMono-Regular - 15.0
- DVTConsoleDebuggerPromptTextColor
- 0.776651 0.796145 0.778473 1
- DVTConsoleDebuggerPromptTextFont
- SFMono-Bold - 15.0
- DVTConsoleExectuableInputTextColor
- 0.986042 0 0.0946885 1
- DVTConsoleExectuableInputTextFont
- SFMono-Regular - 15.0
- DVTConsoleExectuableOutputTextColor
- 0.17236 0.910542 0.998932 1
- DVTConsoleExectuableOutputTextFont
- SFMono-RegularItalic - 15.0
- DVTConsoleTextBackgroundColor
- 0.118 0.125 0.157 1
- DVTConsoleTextInsertionPointColor
- 1 1 1 1
- DVTConsoleTextSelectionColor
- 0.397 0.397 0.302 1
- DVTFontAndColorVersion
- 1
- DVTLineSpacing
- 1.1000000238418579
- DVTMarkupTextBackgroundColor
- 0.153318 0.157241 0.177321 1
- DVTMarkupTextBorderColor
- 0.221053 0.224662 0.243136 1
- DVTMarkupTextCodeFont
- SFMono-Regular - 15.0
- DVTMarkupTextEmphasisColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextEmphasisFont
- .SFNS-RegularItalic - 15.0
- DVTMarkupTextInlineCodeColor
- 0.42772 0.465692 0.465582 0.7
- DVTMarkupTextLinkColor
- 0.1 0.1 0.819 1
- DVTMarkupTextLinkFont
- .SFNS-Regular - 15.0
- DVTMarkupTextNormalColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextNormalFont
- .SFNS-Regular - 15.0
- DVTMarkupTextOtherHeadingColor
- 0.42772 0.465692 0.465582 0.5
- DVTMarkupTextOtherHeadingFont
- .SFNS-Regular - 20.2
- DVTMarkupTextPrimaryHeadingColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextPrimaryHeadingFont
- .SFNS-Regular - 33.2
- DVTMarkupTextSecondaryHeadingColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextSecondaryHeadingFont
- .SFNS-Regular - 25.4
- DVTMarkupTextStrongColor
- 0.42772 0.465692 0.465582 1
- DVTMarkupTextStrongFont
- .SFNS-Bold - 15.0
- DVTScrollbarMarkerAnalyzerColor
- 0.403922 0.372549 1 1
- DVTScrollbarMarkerBreakpointColor
- 0.290196 0.290196 0.968627 1
- DVTScrollbarMarkerDiffColor
- 0.556863 0.556863 0.556863 1
- DVTScrollbarMarkerDiffConflictColor
- 0.968627 0.290196 0.290196 1
- DVTScrollbarMarkerErrorColor
- 0.968627 0.290196 0.290196 1
- DVTScrollbarMarkerRuntimeIssueColor
- 0.643137 0.509804 1 1
- DVTScrollbarMarkerWarningColor
- 0.937255 0.717647 0.34902 1
- DVTSourceTextBackground
- 0.0736967 0.0726692 0.0908933 1
- DVTSourceTextBlockDimBackgroundColor
- 0.5 0.5 0.5 1
- DVTSourceTextCurrentLineHighlightColor
- 0.0981913 0.0971052 0.124926 1
- DVTSourceTextInsertionPointColor
- 1 1 1 1
- DVTSourceTextInvisiblesColor
- 0.5 0.5 0.5 1
- DVTSourceTextSelectionColor
- 0.197624 0.195012 0.260953 1
- DVTSourceTextSyntaxColors
-
- xcode.syntax.attribute
- 0.145098 0.568627 0.52549 1
- xcode.syntax.character
- 1 1 1 1
- xcode.syntax.comment
- 0.325604 0.376022 0.399204 1
- xcode.syntax.comment.doc
- 0.427072 0.4949 0.526111 1
- xcode.syntax.comment.doc.keyword
- 0.0449826 0.373004 0.838549 1
- xcode.syntax.declaration.other
- 0.254902 0.631373 0.752941 1
- xcode.syntax.declaration.type
- 0.362946 0.846428 0.998966 1
- xcode.syntax.identifier.class
- 0.870588 0.517647 0.984314 1
- xcode.syntax.identifier.class.system
- 0.427451 0.67451 1 1
- xcode.syntax.identifier.constant
- 0.870588 0.517647 0.984314 1
- xcode.syntax.identifier.constant.system
- 0.427451 0.67451 1 1
- xcode.syntax.identifier.function
- 0.870588 0.517647 0.984314 1
- xcode.syntax.identifier.function.system
- 0.427451 0.67451 1 1
- xcode.syntax.identifier.macro
- 0.92549 0.415686 0.384314 1
- xcode.syntax.identifier.macro.system
- 0.92549 0.415686 0.384314 1
- xcode.syntax.identifier.type
- 0.870588 0.517647 0.984314 1
- xcode.syntax.identifier.type.system
- 0.427451 0.67451 1 1
- xcode.syntax.identifier.variable
- 0.870588 0.517647 0.984314 1
- xcode.syntax.identifier.variable.system
- 0.427451 0.67451 1 1
- xcode.syntax.keyword
- 0.417513 0.774071 0.606108 1
- xcode.syntax.mark
- 0.572549 0.631373 0.694118 1
- xcode.syntax.markup.code
- 0.665 0.052 0.569 1
- xcode.syntax.number
- 0.445898 0.967334 0.999197 1
- xcode.syntax.plain
- 0.992471 0.980096 0.852306 1
- xcode.syntax.preprocessor
- 0.979069 0.930697 0.464634 1
- xcode.syntax.regex
- 0.769443 0.291108 0.113752 1
- xcode.syntax.regex.capturename
- 0.870588 0.517647 0.984314 1
- xcode.syntax.regex.charname
- 0.427451 0.67451 1 1
- xcode.syntax.regex.number
- 0.445898 0.967334 0.999197 1
- xcode.syntax.regex.other
- 0.992471 0.980096 0.852306 1
- xcode.syntax.string
- 0.769443 0.291108 0.113752 1
- xcode.syntax.url
- 0.335283 0.388522 0.941505 1
-
- DVTSourceTextSyntaxFonts
-
- xcode.syntax.attribute
- SFMono-Regular - 16.0
- xcode.syntax.character
- SFMono-Regular - 16.0
- xcode.syntax.comment
- SFMono-LightItalic - 16.0
- xcode.syntax.comment.doc
- SFMono-Semibold - 16.0
- xcode.syntax.comment.doc.keyword
- SFMono-Semibold - 16.0
- xcode.syntax.declaration.other
- SFMono-Medium - 16.0
- xcode.syntax.declaration.type
- SFMono-Medium - 16.0
- xcode.syntax.identifier.class
- SFMono-Regular - 16.0
- xcode.syntax.identifier.class.system
- SFMono-Regular - 16.0
- xcode.syntax.identifier.constant
- SFMono-Regular - 16.0
- xcode.syntax.identifier.constant.system
- SFMono-Regular - 16.0
- xcode.syntax.identifier.function
- SFMono-Regular - 16.0
- xcode.syntax.identifier.function.system
- SFMono-Regular - 16.0
- xcode.syntax.identifier.macro
- SFMono-SemiboldItalic - 16.0
- xcode.syntax.identifier.macro.system
- SFMono-Semibold - 16.0
- xcode.syntax.identifier.type
- SFMono-Regular - 16.0
- xcode.syntax.identifier.type.system
- SFMono-Regular - 16.0
- xcode.syntax.identifier.variable
- SFMono-Regular - 16.0
- xcode.syntax.identifier.variable.system
- SFMono-Regular - 16.0
- xcode.syntax.keyword
- SFMono-Regular - 16.0
- xcode.syntax.mark
- SFMono-Bold - 16.0
- xcode.syntax.markup.code
- SFMono-Medium - 16.0
- xcode.syntax.number
- SFMono-Semibold - 16.0
- xcode.syntax.plain
- SFMono-Regular - 16.0
- xcode.syntax.preprocessor
- SFMono-Regular - 16.0
- xcode.syntax.regex
- SFMono-Regular - 16.0
- xcode.syntax.regex.capturename
- SFMono-Regular - 16.0
- xcode.syntax.regex.charname
- SFMono-Regular - 16.0
- xcode.syntax.regex.number
- SFMono-Regular - 16.0
- xcode.syntax.regex.other
- SFMono-Regular - 16.0
- xcode.syntax.string
- SFMono-RegularItalic - 16.0
- xcode.syntax.url
- SFMono-RegularItalic - 16.0
-
-
-
diff --git a/Docs/todo.md b/Docs/changelog.md
similarity index 81%
rename from Docs/todo.md
rename to Docs/changelog.md
index 8e0661f..73f1bae 100644
--- a/Docs/todo.md
+++ b/Docs/changelog.md
@@ -1,13 +1,9 @@
# TODO items for dotfiles project
-- Add basic support for Linux
-- Git tool to use `~/Documents` instead of the `~/Work` for custom code signing
-- Report current ruby, swift, python, and Homebrew versions on setup
-- Function to delete `./DS_Store` files recursively down a folder structure
-
-## Done
+- [Almost done] Move PATH files to `/usr/local/bin/$USER` and don't put dotfiles themselves directly into the PATH anymore. This allows files to be created on-the-fly into the PATH, and not put into a folder that may be under source control.
+- Git tool to use `~/Documents` instead of the `~/Work` for custom code signing
- Verify that re-running `dotfiles.sh` from anywhere resets the setup
- Put Dotfiles as the source for PATH - no extra copy in `~/Developer`
- Move everything from the `./Mac/` subfolder to the root - Linux remains
diff --git a/Docs/container.md b/Docs/container.md
new file mode 100644
index 0000000..0e78e77
--- /dev/null
+++ b/Docs/container.md
@@ -0,0 +1,11 @@
+# Explain how to use containers
+
+Tool project: [https://github.com/apple/container](https://github.com/apple/container)
+Framework: [https://github.com/apple/containerization](https://github.com/apple/containerization)
+
+todo
+
+
+// end of file.
+
+
diff --git a/Docs/index.md b/Docs/index.md
index 9018362..0e85114 100644
--- a/Docs/index.md
+++ b/Docs/index.md
@@ -1,12 +1,24 @@
-# TimTr dotfiles documentation
+# TimTr Dotfiles documentation
+
+This is the `index.md` file in the `./dotfiles/Docs/` directory.
+**Updated November 1, 2025.**
+
+NOTE: This is presently for testing purposes as the GitHub Pages documentation is being produced with the `index.md` file rendered from the root. Working to adjust that.
-This is the `index.md` file within the docs
## Table of Contents
+- [Overview](./overview.html)
+- [Commands](./commands.html)
+- [Change Log](./changelog.html)
+- [Container](./container.html)
+- [Mac(./mac.html)
+- [Linux](./linux.html)
+
### Credits
+None yet.
// end of file.
diff --git a/Docs/linux.md b/Docs/linux.md
new file mode 100644
index 0000000..55a2380
--- /dev/null
+++ b/Docs/linux.md
@@ -0,0 +1,9 @@
+# Linux detailed instructions for dotfiles
+
+So far testing with Ubuntu 25 using [VirtualBuddy](https://github.com/insidegui/VirtualBuddy) on macOS.
+
+todo
+
+
+
+// end of file.
diff --git a/Docs/mac.md b/Docs/mac.md
new file mode 100644
index 0000000..004e9ef
--- /dev/null
+++ b/Docs/mac.md
@@ -0,0 +1,8 @@
+# Mac detailed instructions for dotfiles
+
+todo
+
+
+
+
+// end of file.
diff --git a/DotRunner/Source/DotRunner.swift b/DotRunner/Source/DotRunner.swift
index 78a0e84..5fafa90 100644
--- a/DotRunner/Source/DotRunner.swift
+++ b/DotRunner/Source/DotRunner.swift
@@ -1,16 +1,20 @@
// DotRunner.swift
-@main
-struct FizzBuzz {
+
+/** This is a header doc section of comments
+ this is a test
+ only a test
+ */
+@main struct FizzBuzz {
static func main() {
print("\n >>>> Calling fizzBuzzSimple: \n")
for count in 1...100 {
- print ("\(fizzBuzzSimple(count))")
+ print("\(fizzBuzzSimple(count))")
}
print( "\n\n >>>> Calling fizzBuzzSwitch: \n")
for count in 1...100 {
- print ("\(fizzBuzzSwitch(count))")
+ print("\(fizzBuzzSwitch(count))")
}
print("\n >>>> Finished FizzBuzz.swift via SwiftPM \n");
diff --git a/Mac/clean.sh b/Linux/Path/reset.sh
similarity index 95%
rename from Mac/clean.sh
rename to Linux/Path/reset.sh
index dc98e2d..865eef6 100755
--- a/Mac/clean.sh
+++ b/Linux/Path/reset.sh
@@ -6,7 +6,7 @@
# Import the default functions used in these scripts
source ${HOME}/.functions
-message "clean.sh" "Reset caches and preferences"
+message "reset.sh" "Reset caches and preferences"
# ==============================================================================
diff --git a/Linux/dot-aliases.sh b/Linux/dot-aliases.sh
index c27772c..976d0c6 100755
--- a/Linux/dot-aliases.sh
+++ b/Linux/dot-aliases.sh
@@ -1,4 +1,6 @@
-# source this file into .zshrc
+# source this file into .bashrc
+
+# Linux version
if [[ -v LOADED_ALIAS ]]; then return; fi
LOADED_ALIAS=true
@@ -7,22 +9,9 @@ LOADED_ALIAS=true
# ===========================================
# Aliases
-# ... Turn off the Quarantine Bit for all files in local folder
-alias qbit="xattr -d com.apple.quarantine ./*"
-
-# ... Eject a volume (type the volume name after)
-alias eject="hdiutil detach -verbose -force /Volumes/"
-
# ... Touch the time and date recursively for all files in current folder
alias touchall="find . -exec touch {} \;"
-# ... Tell Time Machine to use higher CPU priority until reboot
-alias time-machine-fast="sudo sysctl debug.lowpri_throttle_enabled=0"
-
-# launch the iOS Simulator app from the command line
-# you can then type "simulator help" or "simulator list" to see more info
-alias simulator="xcrun simctl"
-
# Recursively remove .DS_Store files
alias cleanupds="find . -type f -name '*.DS_Store' -ls -delete"
@@ -40,28 +29,17 @@ alias mv='mv -v'
alias rm='rm -i -v'
alias cp='cp -v'
-# Use the eza command by default, if installed (better ls)
-if ! command -v eza &> /dev/null
-then
- echo "Tool \`eza\` not found. For a better \`ls\` run: brew install eza"
- # Use 'll' to suppress the "show all" flag when listing files
- alias ll='ls -oFG --color'
- # Use `lls` to do the short form version of `ls1
- alias lls='ls -FG --color'
- # Use 'lla' to enable "show all" for hidden files beginning with a period
- alias lla='ls -oAFG --color'
- # Use 'llx' to see the most info, including extended attributes
- alias llx='ls -oAFG --color'
- # Use 'llt' to see the files sorted by modification time
- alias llt='ls -oAFG --color'
-
-else
- ## Aliasing 'ls' commands to use 'eza'
- alias ll='eza --long --sort=Name --git --git-repos -I "Icon?" --group-directories-first --no-quotes --no-permissions --no-user'
- alias lla='eza -a --long --sort=Name --git -I "Icon?" -I ".DS_Store" --group-directories-first'
- alias llx='eza -a --long --sort=Name --git -I "Icon?" -I ".DS_Store" --group-directories-first -@ -Z'
- alias llt='eza --tree'
-fi
+
+# Use 'll' to suppress the "show all" flag when listing files
+alias ll='ls -oFG --color'
+# Use `lls` to do the short form version of `ls1
+alias lls='ls -FG --color'
+# Use 'lla' to enable "show all" for hidden files beginning with a period
+alias lla='ls -oAFG --color'
+# Use 'llx' to see the most info, including extended attributes
+alias llx='ls -oAFG --color'
+# Use 'llt' to see the files sorted by modification time
+alias llt='ls -oAFG --color'
# Git can sometimes create locked files in the .git folder, which then
diff --git a/Linux/dot-bashrc.sh b/Linux/dot-bashrc.sh
new file mode 100755
index 0000000..4e6cc67
--- /dev/null
+++ b/Linux/dot-bashrc.sh
@@ -0,0 +1,43 @@
+# .bashrc - Linux - loaded first by bash
+#
+# Adding the $HOME/bin directory to the PATH
+export PATH="$HOME/bin"
+
+# Add default system PATHs at end of the chain
+export PATH="$PATH:/usr/bin:/usr/local/bin:/usr/local/sbin:/bin:/usr/sbin:/sbin:/snap/bin"
+
+source $HOME/.aliases
+source $HOME/.functions
+
+# Report tha .bashrc is loading and at what time
+TIMENOW=$(date +%d-%m-%Y" "%H:%M:%S)
+message "\n .bashrc (or .profile)" "Launched $SHELL' at ${TIMENOW}."
+
+# Fixes sort order with capital letters first in Linux
+export LC_COLLATE="C"
+
+# Handle some color rules (not sure this is tuned for Linux)
+export CLICOLOR=1
+export LSCOLORS=gxFxCxDxbxExBxAxaxaxex
+export LS_COLORS="di=34:ln=35:so=32:pi=33:ex=31:bd=37:cd=34:su=36:sg=36;40:tw=36:ow=36"
+
+## Parse git branch to put into the prompt
+parse_git_branch() {
+ git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
+}
+
+# Enable substitutions within the prompt
+# setopt PROMPT_SUBST
+
+# Set the actual prompt
+HOSTNAME=$(hostname -s)
+NEWLINE=$'\n'
+export PS1='${NEWLINE}[\[\e[90m\]${USER} | ${HOSTNAME} |\[\e[91m\] \w\[\e[0m\]\[\e[0m\]] \[\e[34m\]$(parse_git_branch) \[\e[0m ${NEWLINE}[\d \t] \[\e[91m\] ↪ \[\e[0m\] '
+
+# Previous (working) prompt
+# PS1="\n[\[\033[32m\]\w]\[\033[0m\] \[\033[1;36m\]\u\[\033[1;33m\] > \[\033[0m\]"
+
+
+# ==============================================================================
+## Below this line are dynamically added variables and commands
+# ==============================================================================
diff --git a/Linux/dot-functions.sh b/Linux/dot-functions.sh
index 3169d98..a27fe58 100755
--- a/Linux/dot-functions.sh
+++ b/Linux/dot-functions.sh
@@ -1,26 +1,27 @@
-#!/bin/zsh
+# source this file into .bashrc
+#
+# Linux version
-if [[ -v LOADED_FUNCTIONS ]]; then return; fi
+if [[ -v LOADED_FUNCTIONS ]]; then return; fi;
LOADED_FUNCTIONS=true
+# NOTE: some characters will not work within printf functions, e.g. "!"
+# error() should report major failures, often ejecting from the script
+function error() { printf "\r\033[01;31m [ERROR]\033[00;31m $1 \033[0m \n"; }
-# Functions to make output attractive when running the script
-# NOTE: some characters in parameters will not work, e.g. "!"
+# alert() is extra bright to get attention, but not an error (two parameters)
+function alert() { printf "\r\033[00;35m $1\033[0m $2\n"; }
-# `message` and `error` take two string parameters
-message () { printf "\r [\033[00;32m $1\033[0m ] $2\n" }
-error () { printf "\r\033[00;31m ** $1\033[0m - \033[00;31m$2 \033[0m \n" }
-alert () { printf "\r\033[00;35m >> $1\033[0m $2\n" }
-bullet () { printf "\r\033[00;36m ==\033[0m $1 $2\n" }
+# message() as a bright message, and less-bright detail message (two parameters)
+function message() { printf "\r\033[00;32m $1\033[0m $2\n"; }
+
+# bullet() is sub-items from messages, if warranting more lines of text
+function bullet() { printf "\r\033[00;36m ==\033[0m $1 \n"; }
# ... Find all files recursively under current folder
-findall () {
- find ./ -name $1 -print 2> /dev/null
-}
+function findall() { find . -name "$1" -print 2> /dev/null; }
# ... Create a new directory and enter it
-md() {
- mkdir -p "$@" && cd "$@"
-}
-
+function md() { mkdir -p "$@" && cd "$@"; }
+## end of file.
diff --git a/Linux/dot-gitconfig b/Linux/dot-gitconfig
new file mode 100644
index 0000000..15cead4
--- /dev/null
+++ b/Linux/dot-gitconfig
@@ -0,0 +1,16 @@
+# Global Git configuration
+
+[user]
+ name = Tim Triemstra
+ email = root@timtr.com
+[color]
+ diff = auto
+ status = auto
+ branch = auto
+ ui = true
+[core]
+ excludesfile = ~/.gitignore
+ editor = vim
+[push]
+ default = simple
+
diff --git a/Linux/dot-zshenv.sh b/Linux/dot-zshenv.sh
deleted file mode 100755
index c981967..0000000
--- a/Linux/dot-zshenv.sh
+++ /dev/null
@@ -1,27 +0,0 @@
-# .zshenv - Loaded in every session, even if not interactive
-#
-# No need to import command prompt, graphics, or other things
-# that only apply to interactive shells. Those won't have any
-# impact and can just slow down some tools that load this.
-# -------------------------------------------------------------
-
-## TODO: Not yet supporting Homebrew on Linux, commenting out
-
-# Adding the Dotfiles/Mac folder to PATH, as well as Homebrew
-# export PATH="$DOTFILES_ROOT/Linux:/opt/homebrew/bin"
-
-# This adds Swift and the Swiftly tool to the PATH in .local
-export PATH="$DOTFILES_ROOT/Linux:$HOME/.local/bin"
-
-# Setting for Apple silicon version of Ruby. Pre-pend it and Gems to the PATH
-# export PATH=$PATH:/opt/homebrew/opt/ruby/bin
-# export PATH=$PATH:`gem environment gemdir`/bin
-
-# Add default system PATHs at end of the chain
-export PATH="$PATH:/usr/bin:/usr/local/bin:/usr/local/sbin:/bin:/usr/sbin:/sbin"
-
-# Python3 - Augument the default PATH for Python3 use
-export PY_PYTHON=3
-
-
-# end of file
diff --git a/Linux/dot-zshrc.sh b/Linux/dot-zshrc.sh
deleted file mode 100755
index 2e0aefe..0000000
--- a/Linux/dot-zshrc.sh
+++ /dev/null
@@ -1,43 +0,0 @@
-# .zshrc - Loaded only in interactive shell sessions - Linux version
-#
-# Because this file is only loaded in interactive shell (Terminal) sessions,
-# It is perfect for setting up things like colors, etc. However, it isn't
-# the right place to setup PATH and other variables that tools may want.
-# For those global (no shell visible) cases, use the `.zshenv` file.
-# -------------------------------------------------------------
-
-source $HOME/.aliases
-source $HOME/.functions
-source $HOME/.zshenv
-
-# Report tha .zshrc is loading and at what time
-TIMENOW=$(date +%d-%m-%Y" "%H:%M:%S)
-message ".zshrc" "Launched $SHELL' at ${TIMENOW}."
-
-
-# ==============================================================================
-# Python3 - Augument the default PATH for Python3 use
-export PY_PYTHON=3
-
-# Colors -- usable everywhere now that they are in the .zshrc
-autoload colors; colors;
-
-# Syntax coloring for ZSH is a bit different than bash
-export CLICOLOR=1
-export LSCOLORS=gxFxCxDxbxExBxAxaxaxex
-export LS_COLORS="di=34:ln=35:so=32:pi=33:ex=31:bd=37:cd=34:su=36:sg=36;40:tw=36:ow=36"
-
-
-## Parse git branch to put into the prompt
-parse_git_branch() {
- git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
-}
-# Enable substitutions within the prompt
-setopt PROMPT_SUBST
-
-# Set the actual prompt
-NEWLINE=$'\n'
-PROMPT='${NEWLINE}%F{white}% → %F{red}% %9c% %F{grey}% $(parse_git_branch) %F{white}% ${NEWLINE}↪ %f'
-
-
-## end of file.
diff --git a/Linux/dotfiles.sh b/Linux/dotfiles.sh
deleted file mode 100755
index d412602..0000000
--- a/Linux/dotfiles.sh
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/zsh
-#
-# dotfiles.sh - the Linux version
-
-# TODO: abort if git, cc, or other needed tools are not available
-source "$DOTFILES_ROOT/Linux/dot-functions.sh"
-message "dotfiles.sh -- clean setup up for Linux via ${DOTFILES_ROOT}"
-
-chown -R $USER ${DOTFILES_ROOT}/* 2> /dev/null
-chmod -R 777 ${DOTFILES_ROOT}/* 2> /dev/null
-
-# ==============================================================================
-message "Installing root dotfiles" "Overwriting existing versions of these files"
-cp $DOTFILES_ROOT/Linux/dot-zshrc.sh $HOME/.zshrc
-cp $DOTFILES_ROOT/Linux/dot-zshenv.sh $HOME/.zshenv
-cp $DOTFILES_ROOT/Linux/dot-aliases.sh $HOME/.aliases
-cp $DOTFILES_ROOT/Linux/dot-functions.sh $HOME/.functions
-
-# Copy over tool and app settings
-cp $DOTFILES_ROOT/Config/dot-gitconfig $HOME/.gitconfig
-cp $DOTFILES_ROOT/Config/dot-gitignore $HOME/.gitignore
-cp $DOTFILES_ROOT/Config/dot-vimrc $HOME/.vimrc
-
-echo "Empty file to silence new shell messages" >> $HOME/.hushlogin
-
-# Register gitignore and other git stuff
-git config --global core.excludesfile ~/.gitignore
-
-
-# ==============================================================================
-# Check if the "~/local.sh" file exists, and if not, copy the stub version to user home
-if [[ -f "$HOME/local.sh" ]]; then
- message "~/local.sh exists" "Delete the file then re-run to install a template version"
-else
- message "Creating ~/local.sh" "Modify this file to add GitHub and SSH tokens"
- cp $DOTFILES_ROOT/Linux/local-template.sh $HOME/local.sh
-fi
-
-
-message "Restart the terminal" "After restart, you can run the following commands:"
-bullet "git config --global user.name \"Your Name\""
-bullet "git config --global user.email \"youremail@yourdomain.com\""
-bullet "setup-brew.sh <-- install or update Homebrew"
-bullet "setup-ruby.sh <-- setup a newer version (or update) of Ruby via Homebrew"
-echo
-
-exit 0
-
-## end of file.
diff --git a/Linux/local-template.sh b/Linux/local-template.sh
index e2c78f4..615d33c 100755
--- a/Linux/local-template.sh
+++ b/Linux/local-template.sh
@@ -1,6 +1,6 @@
-#!/usr/bin/env zsh
+#!/bin/bash
#
-# LINUX VERSION
+# Linux version
#
# Modify this file at your root folder to customize the local machine
#
diff --git a/Linux/setup-brew.sh b/Linux/setup-brew.sh
deleted file mode 100755
index 0acd38d..0000000
--- a/Linux/setup-brew.sh
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/zsh
-#
-# setup-brew.sh -- Linux version
-#
-# ==============================================================================
-
-source ~/.functions
-
-message "setup-brew.sh" "Installing Homebrew using default script"
-
-which -s brew &> /dev/null
-if [[ $? != 0 ]] ; then
- error "Missing Homebrew" "Installing for the first time..."
- /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-else
- message "Found Homebrew" "Updating, upgrading, installing Jekyll and others"
-
- brew update
- brew upgrade
- brew install automake bison openssl readline libyaml gdbm libffi wget
- brew install eza
-
- # Install ruby gems, specifically Jekyll for blogs
- gem update
- gem install jekyll
-
- message "Homebrew update complete" "Reporting current versions:"
- python3 --version
- ruby --version
- jekyll --version
-fi
-
-
-# ==============================================================================
-exit 0
diff --git a/Linux/setup-docker.sh b/Linux/setup-docker.sh
deleted file mode 100755
index aa3d37b..0000000
--- a/Linux/setup-docker.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/zsh
-#
-# setup-brew.sh -- macOS version
-#
-# ==============================================================================
-
-source ~/.functions
-
-message "setup-docker.sh" "Installing Docker daemon"
-
-which -s docker &> /dev/null
-if [[ $? != 0 ]] ; then
- error "Missing Docker" "Installing for the first time..."
-
- # INSTALL DOCKER - NOT YET IMPLEMENTED
-else
- message "Found Docker" "Starting the deamon..."
-
- ## Starts the Docker daemon on Ubuntu (should already be running)
- sudo systemctl start docker
-fi
-
-
-exit 0
diff --git a/Linux/setup-linux.sh b/Linux/setup-linux.sh
new file mode 100755
index 0000000..a545f77
--- /dev/null
+++ b/Linux/setup-linux.sh
@@ -0,0 +1,91 @@
+#!/bin/bash
+#
+# dotfiles.sh - the Linux version
+
+# TODO: abort if git, cc, or other needed tools are not available
+source "$DOTFILES_ROOT/Linux/dot-functions.sh"
+message "dotfiles.sh -- clean BASH setup for Linux via ${DOTFILES_ROOT}"
+bullet "Cannot use SUDO in the Linux version of this script"
+
+# ==============================================================================
+# Require `bash` as the default on Linux, and set the default shell if needed
+if [ $SHELL != "/bin/bash" ]; then
+ chsh -s /bin/bash
+ echo "❌ Script has set default shell to BASH, now re-run setup.sh"
+ exit 0
+fi
+
+# Claim ownership of all my dotfiles
+chown -R $USER $DOTFILES_ROOT 2> /dev/null
+
+## Make sure all the dotfiles have proper ownership before starting
+chown -R $USER ${DOTFILES_ROOT}/* 2> /dev/null
+chmod -R 777 ${DOTFILES_ROOT}/* 2> /dev/null
+
+# Make all .sh files (-type f) also executable
+find $DOTFILES_ROOT -name "*.sh" -type f -print0 | xargs -0 chmod 755
+
+
+# ==============================================================================
+# Create $HOME/Bin folder in which to put local code repositorities
+if [[ -d "$HOME/bin" ]]; then
+ bullet "$HOME/bin exists. Added to the PATH for user content"
+else
+ mkdir -p $HOME/bin
+ chown -R $USER $HOME/bin
+ chmod 744 $HOME/bin
+ message "✅ Created $HOME/bin and added it to PATH for your code"
+fi
+
+
+# ==============================================================================
+message "✅ Installing root dotfiles" "Overwriting existing versions of these files"
+cp $DOTFILES_ROOT/Linux/dot-bashrc.sh $HOME/.bashrc
+cp $DOTFILES_ROOT/Linux/dot-aliases.sh $HOME/.aliases
+cp $DOTFILES_ROOT/Linux/dot-functions.sh $HOME/.functions
+
+# Copy over tool and app settings
+cp $DOTFILES_ROOT/Linux/dot-gitconfig $HOME/.gitconfig
+
+# Copy common files used across platforms (keeps them in sync)
+cp $DOTFILES_ROOT/Common/dot-vimrc $HOME/.vimrc
+cp $DOTFILES_ROOT/Common/dot-gitignore $HOME/.gitignore
+
+# Register gitignore and other git stuff
+git config --global core.excludesfile ~/.gitignore
+
+# ==============================================================================
+message "✅ Copy scripts to PATH" "Using $HOME/bin for user scripts"
+cp $DOTFILES_ROOT/Linux/Path/* $HOME/bin
+
+
+# ==============================================================================
+message "✅ Setup defaults" "Adding paths and variables to .bashrc for bash"
+echo " " >> ~/.bashrc
+echo "# Add global DOTFILES_ROOT pointing Dotfiles install folder" >> ~/.bashrc
+echo "export DOTFILES_ROOT=$DOTFILES_ROOT" >> ~/.bashrc
+
+# copy .bashrc to .profile to support some different SSH sessions
+rm $HOME/.bash_profile 2> /dev/null
+cp $HOME/.bashrc $HOME/.bash_profile
+cp $HOME/.bashrc $HOME/.profile
+
+# ==============================================================================
+# Check if the "~/local.sh" file exists, and if not, copy the stub version to user home
+if [[ -f "$HOME/local.sh" ]]; then
+ bullet "~/local.sh exists - delete then re-run to reset from the template"
+else
+ message "✅ Creating ~/local.sh" "Modify this file to add GitHub and SSH tokens"
+ cp $DOTFILES_ROOT/Linux/local-template.sh $HOME/local.sh
+fi
+
+message "✅ git config --global user.name" "= $(git config --get user.name)"
+message "✅ git config --global user.email" "= $(git config --get user.email)"
+echo
+message "🎉 Success!" "Restart Terminal and run setup-brew.sh and setup-ruby.sh"
+
+echo
+
+exit 0
+
+## end of file.
diff --git a/Linux/setup-ruby.sh b/Linux/setup-ruby.sh
deleted file mode 100755
index a97cc05..0000000
--- a/Linux/setup-ruby.sh
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/zsh
-#
-# setup-ruby.sh -- Linux version (simple version, installs latest)
-
-source ${HOME}/.functions
-message "setup-ruby.sh" "Running [brew install ruby] instead of [rbenv]"
-bullet "The latest Ruby is installed via this script and put first in PATH"
-
-which -s brew
-if [[ $? != 0 ]] ; then
- error "Missing Homebrew" "Must first install Homebrew before installing Ruby"
- exit 0
-fi
-
-brew install ruby
-
-# Update to the latest version of Ruby Gems installers
-sudo gem update
-
-
-
-# TODO: the below may require Terminal is restarted one before it succeeds?
-
-# ==============================================================================
-# Install some gems (Jekyll and Bundler to start)
-which -s bundler &> /dev/null
-if [[ $? != 0 ]] ; then
- bullet "Installing Bundler" "Installing the Bundler gem for the first time"
- sudo gem install bundler
-else
- message "Updating Bundler" "Updating the Bundler gem to latest version"
- sudo gem update bundler
-fi
-
-which -s jekyll &> /dev/null
-if [[ $? != 0 ]] ; then
- bullet "Installing Jekyll" "Installing the Jekyll gem for the first time"
- sudo gem install jekyll
-else
- bullet "Updating Jekyll" "Updating the Jekyll gem to latest version"
- sudo gem update jekyll
-fi
-
-
-
-# ==============================================================================
-exit 0
diff --git a/Config/Settings/TimTr.prompttheme b/Mac/Config/Apps/TimTr.prompttheme
similarity index 58%
rename from Config/Settings/TimTr.prompttheme
rename to Mac/Config/Apps/TimTr.prompttheme
index 32228cc..dce67e1 100644
--- a/Config/Settings/TimTr.prompttheme
+++ b/Mac/Config/Apps/TimTr.prompttheme
@@ -11,107 +11,202 @@
$class
CF$UID
- 32
+ 30
ANSIBlackColor
CF$UID
- 14
+ 12
+
+ ANSIBlackColorDark
+
+ CF$UID
+ 0
ANSIBlueColor
CF$UID
- 20
+ 17
+
+ ANSIBlueColorDark
+
+ CF$UID
+ 0
ANSIBrightBlackColor
CF$UID
- 24
+ 21
+
+ ANSIBrightBlackColorDark
+
+ CF$UID
+ 0
ANSIBrightBlueColor
CF$UID
- 27
+ 25
+
+ ANSIBrightBlueColorDark
+
+ CF$UID
+ 0
ANSIBrightCyanColor
CF$UID
- 28
+ 26
+
+ ANSIBrightCyanColorDark
+
+ CF$UID
+ 0
ANSIBrightGreenColor
CF$UID
- 26
+ 24
+
+ ANSIBrightGreenColorDark
+
+ CF$UID
+ 0
ANSIBrightMagentaColor
CF$UID
- 29
+ 27
+
+ ANSIBrightMagentaColorDark
+
+ CF$UID
+ 0
ANSIBrightRedColor
CF$UID
- 25
+ 23
+
+ ANSIBrightRedColorDark
+
+ CF$UID
+ 0
ANSIBrightWhiteColor
CF$UID
- 9
+ 22
+
+ ANSIBrightWhiteColorDark
+
+ CF$UID
+ 0
ANSIBrightYellowColor
CF$UID
- 30
+ 28
+
+ ANSIBrightYellowColorDark
+
+ CF$UID
+ 0
ANSICyanColor
CF$UID
- 21
+ 18
+
+ ANSICyanColorDark
+
+ CF$UID
+ 0
ANSIGreenColor
CF$UID
- 19
+ 16
+
+ ANSIGreenColorDark
+
+ CF$UID
+ 0
ANSIMagentaColor
CF$UID
- 22
+ 19
+
+ ANSIMagentaColorDark
+
+ CF$UID
+ 0
ANSIRedColor
CF$UID
- 18
+ 15
+
+ ANSIRedColorDark
+
+ CF$UID
+ 0
ANSIWhiteColor
CF$UID
- 15
+ 14
+
+ ANSIWhiteColorDark
+
+ CF$UID
+ 0
ANSIYellowColor
CF$UID
- 23
+ 20
+
+ ANSIYellowColorDark
+
+ CF$UID
+ 0
backgroundColor
CF$UID
3
+ backgroundColorDark
+
+ CF$UID
+ 0
+
boldTextColor
CF$UID
9
+ boldTextColorDark
+
+ CF$UID
+ 0
+
cursorColor
CF$UID
- 13
+ 11
+
+ cursorColorDark
+
+ CF$UID
+ 0
identifier
CF$UID
- 31
+ 29
locked
@@ -121,11 +216,18 @@
2
opacity
- 0.93591517857142847
+ 0.80108154296875
+ opacityDark
+ 1
selectionColor
CF$UID
- 12
+ 10
+
+ selectionColorDark
+
+ CF$UID
+ 0
showTextGlow
@@ -134,8 +236,17 @@
CF$UID
8
+ textColorDark
+
+ CF$UID
+ 0
+
useBoldFonts
+ useBoldFontsDark
+
+ usesSeparateDarkTheme
+
TimTr
@@ -155,6 +266,10 @@
CF$UID
4
+ NSLinearExposure
+
+ MQ==
+
NSRGB
MCAwIDAA
@@ -171,22 +286,80 @@
CF$UID
5
- NSSpaceID
- 12
+ NSID
+ 7
- AAACGGFwcGwEAAAAbW50clJHQiBYWVogB+YAAQABAAAAAAAAYWNzcEFQUEwA
- AAAAQVBQTAAAAAAAAAAAAAAAAAAAAAAAAPbWAAEAAAAA0y1hcHBs7P2jjjiF
- R8NttL1PetoYLwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKZGVz
- YwAAAPwAAAAwY3BydAAAASwAAABQd3RwdAAAAXwAAAAUclhZWgAAAZAAAAAU
- Z1hZWgAAAaQAAAAUYlhZWgAAAbgAAAAUclRSQwAAAcwAAAAgY2hhZAAAAewA
- AAAsYlRSQwAAAcwAAAAgZ1RSQwAAAcwAAAAgbWx1YwAAAAAAAAABAAAADGVu
- VVMAAAAUAAAAHABEAGkAcwBwAGwAYQB5ACAAUAAzbWx1YwAAAAAAAAABAAAA
- DGVuVVMAAAA0AAAAHABDAG8AcAB5AHIAaQBnAGgAdAAgAEEAcABwAGwAZQAg
- AEkAbgBjAC4ALAAgADIAMAAyADJYWVogAAAAAAAA9tUAAQAAAADTLFhZWiAA
- AAAAAACD3wAAPb////+7WFlaIAAAAAAAAEq/AACxNwAACrlYWVogAAAAAAAA
- KDgAABELAADIuXBhcmEAAAAAAAMAAAACZmYAAPKnAAANWQAAE9AAAApbc2Yz
- MgAAAAAAAQxCAAAF3v//8yYAAAeTAAD9kP//+6L///2jAAAD3AAAwG4=
+ AAAMSExpbm8CEAAAbW50clJHQiBYWVogB84AAgAJAAYAMQAAYWNzcE1TRlQA
+ AAAASUVDIHNSR0IAAAAAAAAAAAAAAAAAAPbWAAEAAAAA0y1IUCAgAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARY3By
+ dAAAAVAAAAAzZGVzYwAAAYQAAABsd3RwdAAAAfAAAAAUYmtwdAAAAgQAAAAU
+ clhZWgAAAhgAAAAUZ1hZWgAAAiwAAAAUYlhZWgAAAkAAAAAUZG1uZAAAAlQA
+ AABwZG1kZAAAAsQAAACIdnVlZAAAA0wAAACGdmlldwAAA9QAAAAkbHVtaQAA
+ A/gAAAAUbWVhcwAABAwAAAAkdGVjaAAABDAAAAAMclRSQwAABDwAAAgMZ1RS
+ QwAABDwAAAgMYlRSQwAABDwAAAgMdGV4dAAAAABDb3B5cmlnaHQgKGMpIDE5
+ OTggSGV3bGV0dC1QYWNrYXJkIENvbXBhbnkAAGRlc2MAAAAAAAAAEnNSR0Ig
+ SUVDNjE5NjYtMi4xAAAAAAAAAAAAAAASc1JHQiBJRUM2MTk2Ni0yLjEAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AFhZWiAAAAAAAADzUQABAAAAARbMWFlaIAAAAAAAAAAAAAAAAAAAAABYWVog
+ AAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAA
+ ACSgAAAPhAAAts9kZXNjAAAAAAAAABZJRUMgaHR0cDovL3d3dy5pZWMuY2gA
+ AAAAAAAAAAAAABZJRUMgaHR0cDovL3d3dy5pZWMuY2gAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZGVzYwAAAAAAAAAu
+ SUVDIDYxOTY2LTIuMSBEZWZhdWx0IFJHQiBjb2xvdXIgc3BhY2UgLSBzUkdC
+ AAAAAAAAAAAAAAAuSUVDIDYxOTY2LTIuMSBEZWZhdWx0IFJHQiBjb2xvdXIg
+ c3BhY2UgLSBzUkdCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAA
+ LFJlZmVyZW5jZSBWaWV3aW5nIENvbmRpdGlvbiBpbiBJRUM2MTk2Ni0yLjEA
+ AAAAAAAAAAAAACxSZWZlcmVuY2UgVmlld2luZyBDb25kaXRpb24gaW4gSUVD
+ NjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB2aWV3AAAAAAAT
+ pP4AFF8uABDPFAAD7cwABBMLAANcngAAAAFYWVogAAAAAABMCVYAUAAAAFcf
+ 521lYXMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAKPAAAAAnNpZyAAAAAA
+ Q1JUIGN1cnYAAAAAAAAEAAAAAAUACgAPABQAGQAeACMAKAAtADIANwA7AEAA
+ RQBKAE8AVABZAF4AYwBoAG0AcgB3AHwAgQCGAIsAkACVAJoAnwCkAKkArgCy
+ ALcAvADBAMYAywDQANUA2wDgAOUA6wDwAPYA+wEBAQcBDQETARkBHwElASsB
+ MgE4AT4BRQFMAVIBWQFgAWcBbgF1AXwBgwGLAZIBmgGhAakBsQG5AcEByQHR
+ AdkB4QHpAfIB+gIDAgwCFAIdAiYCLwI4AkECSwJUAl0CZwJxAnoChAKOApgC
+ ogKsArYCwQLLAtUC4ALrAvUDAAMLAxYDIQMtAzgDQwNPA1oDZgNyA34DigOW
+ A6IDrgO6A8cD0wPgA+wD+QQGBBMEIAQtBDsESARVBGMEcQR+BIwEmgSoBLYE
+ xATTBOEE8AT+BQ0FHAUrBToFSQVYBWcFdwWGBZYFpgW1BcUF1QXlBfYGBgYW
+ BicGNwZIBlkGagZ7BowGnQavBsAG0QbjBvUHBwcZBysHPQdPB2EHdAeGB5kH
+ rAe/B9IH5Qf4CAsIHwgyCEYIWghuCIIIlgiqCL4I0gjnCPsJEAklCToJTwlk
+ CXkJjwmkCboJzwnlCfsKEQonCj0KVApqCoEKmAquCsUK3ArzCwsLIgs5C1EL
+ aQuAC5gLsAvIC+EL+QwSDCoMQwxcDHUMjgynDMAM2QzzDQ0NJg1ADVoNdA2O
+ DakNww3eDfgOEw4uDkkOZA5/DpsOtg7SDu4PCQ8lD0EPXg96D5YPsw/PD+wQ
+ CRAmEEMQYRB+EJsQuRDXEPURExExEU8RbRGMEaoRyRHoEgcSJhJFEmQShBKj
+ EsMS4xMDEyMTQxNjE4MTpBPFE+UUBhQnFEkUahSLFK0UzhTwFRIVNBVWFXgV
+ mxW9FeAWAxYmFkkWbBaPFrIW1hb6Fx0XQRdlF4kXrhfSF/cYGxhAGGUYihiv
+ GNUY+hkgGUUZaxmRGbcZ3RoEGioaURp3Gp4axRrsGxQbOxtjG4obshvaHAIc
+ KhxSHHscoxzMHPUdHh1HHXAdmR3DHeweFh5AHmoelB6+HukfEx8+H2kflB+/
+ H+ogFSBBIGwgmCDEIPAhHCFIIXUhoSHOIfsiJyJVIoIiryLdIwojOCNmI5Qj
+ wiPwJB8kTSR8JKsk2iUJJTglaCWXJccl9yYnJlcmhya3JugnGCdJJ3onqyfc
+ KA0oPyhxKKIo1CkGKTgpaymdKdAqAio1KmgqmyrPKwIrNitpK50r0SwFLDks
+ biyiLNctDC1BLXYtqy3hLhYuTC6CLrcu7i8kL1ovkS/HL/4wNTBsMKQw2zES
+ MUoxgjG6MfIyKjJjMpsy1DMNM0YzfzO4M/E0KzRlNJ402DUTNU01hzXCNf02
+ NzZyNq426TckN2A3nDfXOBQ4UDiMOMg5BTlCOX85vDn5OjY6dDqyOu87LTtr
+ O6o76DwnPGU8pDzjPSI9YT2hPeA+ID5gPqA+4D8hP2E/oj/iQCNAZECmQOdB
+ KUFqQaxB7kIwQnJCtUL3QzpDfUPARANER0SKRM5FEkVVRZpF3kYiRmdGq0bw
+ RzVHe0fASAVIS0iRSNdJHUljSalJ8Eo3Sn1KxEsMS1NLmkviTCpMcky6TQJN
+ Sk2TTdxOJU5uTrdPAE9JT5NP3VAnUHFQu1EGUVBRm1HmUjFSfFLHUxNTX1Oq
+ U/ZUQlSPVNtVKFV1VcJWD1ZcVqlW91dEV5JX4FgvWH1Yy1kaWWlZuFoHWlZa
+ plr1W0VblVvlXDVchlzWXSddeF3JXhpebF69Xw9fYV+zYAVgV2CqYPxhT2Gi
+ YfViSWKcYvBjQ2OXY+tkQGSUZOllPWWSZedmPWaSZuhnPWeTZ+loP2iWaOxp
+ Q2maafFqSGqfavdrT2una/9sV2yvbQhtYG25bhJua27Ebx5veG/RcCtwhnDg
+ cTpxlXHwcktypnMBc11zuHQUdHB0zHUodYV14XY+dpt2+HdWd7N4EXhueMx5
+ KnmJeed6RnqlewR7Y3vCfCF8gXzhfUF9oX4BfmJ+wn8jf4R/5YBHgKiBCoFr
+ gc2CMIKSgvSDV4O6hB2EgITjhUeFq4YOhnKG14c7h5+IBIhpiM6JM4mZif6K
+ ZIrKizCLlov8jGOMyo0xjZiN/45mjs6PNo+ekAaQbpDWkT+RqJIRknqS45NN
+ k7aUIJSKlPSVX5XJljSWn5cKl3WX4JhMmLiZJJmQmfyaaJrVm0Kbr5wcnImc
+ 951kndKeQJ6unx2fi5/6oGmg2KFHobaiJqKWowajdqPmpFakx6U4pammGqaL
+ pv2nbqfgqFKoxKk3qamqHKqPqwKrdavprFys0K1ErbiuLa6hrxavi7AAsHWw
+ 6rFgsdayS7LCszizrrQltJy1E7WKtgG2ebbwt2i34LhZuNG5SrnCuju6tbsu
+ u6e8IbybvRW9j74KvoS+/796v/XAcMDswWfB48JfwtvDWMPUxFHEzsVLxcjG
+ RsbDx0HHv8g9yLzJOsm5yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE8
+ 0b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp22vvbgNwF3Ird
+ EN2W3hzeot8p36/gNuC94UThzOJT4tvjY+Pr5HPk/OWE5g3mlucf56noMui8
+ 6Ubp0Opb6uXrcOv77IbtEe2c7ijutO9A78zwWPDl8XLx//KM8xnzp/Q09ML1
+ UPXe9m32+/eK+Bn4qPk4+cf6V/rn+3f8B/yY/Sn9uv5L/tz/bf//
$classes
@@ -223,6 +396,10 @@
CF$UID
4
+ NSLinearExposure
+
+ MQ==
+
NSRGB
MC4zOTE0NjE3MyAwLjM5MTQ2MTczIDAuMzkxNDYxNzMA
@@ -235,140 +412,25 @@
7
NSColorSpace
- 3
+ 1
NSComponents
- MSAx
+ MSAxIDEgMQ==
NSCustomColorSpace
CF$UID
- 10
+ 4
- NSWhite
+ NSLinearExposure
- MQA=
+ MQ==
+
+ NSRGB
+
+ MSAxIDEA
-
- $class
-
- CF$UID
- 6
-
- NSICC
-
- CF$UID
- 11
-
- NSID
- 9
- NSModel
- 0
-
-
- AAARnGFwcGwCAAAAbW50ckdSQVlYWVogB9wACAAXAA8ALgAPYWNzcEFQUEwA
- AAAAbm9uZQAAAAAAAAAAAAAAAAAAAAAAAPbWAAEAAAAA0y1hcHBsAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFZGVz
- YwAAAMAAAAB5ZHNjbQAAATwAAAgaY3BydAAACVgAAAAjd3RwdAAACXwAAAAU
- a1RSQwAACZAAAAgMZGVzYwAAAAAAAAAfR2VuZXJpYyBHcmF5IEdhbW1hIDIu
- MiBQcm9maWxlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AG1sdWMAAAAAAAAAHwAAAAxza1NLAAAALgAAAYRkYURLAAAAOgAAAbJjYUVT
- AAAAOAAAAex2aVZOAAAAQAAAAiRwdEJSAAAASgAAAmR1a1VBAAAALAAAAq5m
- ckZVAAAAPgAAAtpodUhVAAAANAAAAxh6aFRXAAAAGgAAA0xrb0tSAAAAIgAA
- A2ZuYk5PAAAAOgAAA4hjc0NaAAAAKAAAA8JoZUlMAAAAJAAAA+pyb1JPAAAA
- KgAABA5kZURFAAAATgAABDhpdElUAAAATgAABIZzdlNFAAAAOAAABNR6aENO
- AAAAGgAABQxqYUpQAAAAJgAABSZlbEdSAAAAKgAABUxwdFBPAAAAUgAABXZu
- bE5MAAAAQAAABchlc0VTAAAATAAABgh0aFRIAAAAMgAABlR0clRSAAAAJAAA
- BoZmaUZJAAAARgAABqpockhSAAAAPgAABvBwbFBMAAAASgAABy5hckVHAAAA
- LAAAB3hydVJVAAAAOgAAB6RlblVTAAAAPAAAB94AVgFhAGUAbwBiAGUAYwBu
- AOEAIABzAGkAdgDhACAAZwBhAG0AYQAgADIALAAyAEcAZQBuAGUAcgBpAHMA
- awAgAGcAcgDlACAAMgAsADIAIABnAGEAbQBtAGEALQBwAHIAbwBmAGkAbABH
- AGEAbQBtAGEAIABkAGUAIABnAHIAaQBzAG8AcwAgAGcAZQBuAOgAcgBpAGMA
- YQAgADIALgAyAEMepQB1ACAAaADsAG4AaAAgAE0A4AB1ACAAeADhAG0AIABD
- AGgAdQBuAGcAIABHAGEAbQBtAGEAIAAyAC4AMgBQAGUAcgBmAGkAbAAgAEcA
- ZQBuAOkAcgBpAGMAbwAgAGQAYQAgAEcAYQBtAGEAIABkAGUAIABDAGkAbgB6
- AGEAcwAgADIALAAyBBcEMAQzBDAEOwRMBD0EMAAgAEcAcgBhAHkALQQzBDAE
- PAQwACAAMgAuADIAUAByAG8AZgBpAGwAIABnAOkAbgDpAHIAaQBxAHUAZQAg
- AGcAcgBpAHMAIABnAGEAbQBtAGEAIAAyACwAMgDBAGwAdABhAGwA4QBuAG8A
- cwAgAHMAegD8AHIAawBlACAAZwBhAG0AbQBhACAAMgAuADKQGnUocHCWjlFJ
- XqYAMgAuADKCcl9pY8+P8Md8vBgAINaMwMkAIKwQucgAIAAyAC4AMgAg1QS4
- XNMMx3wARwBlAG4AZQByAGkAcwBrACAAZwByAOUAIABnAGEAbQBtAGEAIAAy
- ACwAMgAtAHAAcgBvAGYAaQBsAE8AYgBlAGMAbgDhACABYQBlAGQA4QAgAGcA
- YQBtAGEAIAAyAC4AMgXSBdAF3gXUACAF0AXkBdUF6AAgBdsF3AXcBdkAIAAy
- AC4AMgBHAGEAbQBhACAAZwByAGkAIABnAGUAbgBlAHIAaQBjAQMAIAAyACwA
- MgBBAGwAbABnAGUAbQBlAGkAbgBlAHMAIABHAHIAYQB1AHMAdAB1AGYAZQBu
- AC0AUAByAG8AZgBpAGwAIABHAGEAbQBtAGEAIAAyACwAMgBQAHIAbwBmAGkA
- bABvACAAZwByAGkAZwBpAG8AIABnAGUAbgBlAHIAaQBjAG8AIABkAGUAbABs
- AGEAIABnAGEAbQBtAGEAIAAyACwAMgBHAGUAbgBlAHIAaQBzAGsAIABnAHIA
- 5QAgADIALAAyACAAZwBhAG0AbQBhAHAAcgBvAGYAaQBsZm6QGnBwXqZ8+2Vw
- ADIALgAyY8+P8GWHTvZOAIIsMLAw7DCkMKww8zDeACAAMgAuADIAIDDXMO0w
- 1TChMKQw6wOTA7UDvQO5A7oDzAAgA5MDugPBA7kAIAOTA6wDvAO8A7EAIAAy
- AC4AMgBQAGUAcgBmAGkAbAAgAGcAZQBuAOkAcgBpAGMAbwAgAGQAZQAgAGMA
- aQBuAHoAZQBuAHQAbwBzACAAZABhACAARwBhAG0AbQBhACAAMgAsADIAQQBs
- AGcAZQBtAGUAZQBuACAAZwByAGkAagBzACAAZwBhAG0AbQBhACAAMgAsADIA
- LQBwAHIAbwBmAGkAZQBsAFAAZQByAGYAaQBsACAAZwBlAG4A6QByAGkAYwBv
- ACAAZABlACAAZwBhAG0AbQBhACAAZABlACAAZwByAGkAcwBlAHMAIAAyACwA
- Mg4jDjEOBw4qDjUOQQ4BDiEOIQ4yDkAOAQ4jDiIOTA4XDjEOSA4nDkQOGwAg
- ADIALgAyAEcAZQBuAGUAbAAgAEcAcgBpACAARwBhAG0AYQAgADIALAAyAFkA
- bABlAGkAbgBlAG4AIABoAGEAcgBtAGEAYQBuACAAZwBhAG0AbQBhACAAMgAs
- ADIAIAAtAHAAcgBvAGYAaQBpAGwAaQBHAGUAbgBlAHIAaQENAGsAaQAgAEcA
- cgBhAHkAIABHAGEAbQBtAGEAIAAyAC4AMgAgAHAAcgBvAGYAaQBsAFUAbgBp
- AHcAZQByAHMAYQBsAG4AeQAgAHAAcgBvAGYAaQBsACAAcwB6AGEAcgBvAVsA
- YwBpACAAZwBhAG0AbQBhACAAMgAsADIGOgYnBkUGJwAgADIALgAyACAGRAZI
- BkYAIAYxBkUGJwYvBkoAIAY5BicGRQQeBDEESQQwBE8AIARBBDUEQAQwBE8A
- IAQzBDAEPAQ8BDAAIAAyACwAMgAtBD8EQAQ+BEQEOAQ7BEwARwBlAG4AZQBy
- AGkAYwAgAEcAcgBhAHkAIABHAGEAbQBtAGEAIAAyAC4AMgAgAFAAcgBvAGYA
- aQBsAGUAAHRleHQAAAAAQ29weXJpZ2h0IEFwcGxlIEluYy4sIDIwMTIAAFhZ
- WiAAAAAAAADzUQABAAAAARbMY3VydgAAAAAAAAQAAAAABQAKAA8AFAAZAB4A
- IwAoAC0AMgA3ADsAQABFAEoATwBUAFkAXgBjAGgAbQByAHcAfACBAIYAiwCQ
- AJUAmgCfAKQAqQCuALIAtwC8AMEAxgDLANAA1QDbAOAA5QDrAPAA9gD7AQEB
- BwENARMBGQEfASUBKwEyATgBPgFFAUwBUgFZAWABZwFuAXUBfAGDAYsBkgGa
- AaEBqQGxAbkBwQHJAdEB2QHhAekB8gH6AgMCDAIUAh0CJgIvAjgCQQJLAlQC
- XQJnAnECegKEAo4CmAKiAqwCtgLBAssC1QLgAusC9QMAAwsDFgMhAy0DOAND
- A08DWgNmA3IDfgOKA5YDogOuA7oDxwPTA+AD7AP5BAYEEwQgBC0EOwRIBFUE
- YwRxBH4EjASaBKgEtgTEBNME4QTwBP4FDQUcBSsFOgVJBVgFZwV3BYYFlgWm
- BbUFxQXVBeUF9gYGBhYGJwY3BkgGWQZqBnsGjAadBq8GwAbRBuMG9QcHBxkH
- Kwc9B08HYQd0B4YHmQesB78H0gflB/gICwgfCDIIRghaCG4IggiWCKoIvgjS
- COcI+wkQCSUJOglPCWQJeQmPCaQJugnPCeUJ+woRCicKPQpUCmoKgQqYCq4K
- xQrcCvMLCwsiCzkLUQtpC4ALmAuwC8gL4Qv5DBIMKgxDDFwMdQyODKcMwAzZ
- DPMNDQ0mDUANWg10DY4NqQ3DDd4N+A4TDi4OSQ5kDn8Omw62DtIO7g8JDyUP
- QQ9eD3oPlg+zD88P7BAJECYQQxBhEH4QmxC5ENcQ9RETETERTxFtEYwRqhHJ
- EegSBxImEkUSZBKEEqMSwxLjEwMTIxNDE2MTgxOkE8UT5RQGFCcUSRRqFIsU
- rRTOFPAVEhU0FVYVeBWbFb0V4BYDFiYWSRZsFo8WshbWFvoXHRdBF2UXiReu
- F9IX9xgbGEAYZRiKGK8Y1Rj6GSAZRRlrGZEZtxndGgQaKhpRGncanhrFGuwb
- FBs7G2MbihuyG9ocAhwqHFIcexyjHMwc9R0eHUcdcB2ZHcMd7B4WHkAeah6U
- Hr4e6R8THz4faR+UH78f6iAVIEEgbCCYIMQg8CEcIUghdSGhIc4h+yInIlUi
- giKvIt0jCiM4I2YjlCPCI/AkHyRNJHwkqyTaJQklOCVoJZclxyX3JicmVyaH
- Jrcm6CcYJ0kneierJ9woDSg/KHEooijUKQYpOClrKZ0p0CoCKjUqaCqbKs8r
- Ais2K2krnSvRLAUsOSxuLKIs1y0MLUEtdi2rLeEuFi5MLoIuty7uLyQvWi+R
- L8cv/jA1MGwwpDDbMRIxSjGCMbox8jIqMmMymzLUMw0zRjN/M7gz8TQrNGU0
- njTYNRM1TTWHNcI1/TY3NnI2rjbpNyQ3YDecN9c4FDhQOIw4yDkFOUI5fzm8
- Ofk6Njp0OrI67zstO2s7qjvoPCc8ZTykPOM9Ij1hPaE94D4gPmA+oD7gPyE/
- YT+iP+JAI0BkQKZA50EpQWpBrEHuQjBCckK1QvdDOkN9Q8BEA0RHRIpEzkUS
- RVVFmkXeRiJGZ0arRvBHNUd7R8BIBUhLSJFI10kdSWNJqUnwSjdKfUrESwxL
- U0uaS+JMKkxyTLpNAk1KTZNN3E4lTm5Ot08AT0lPk0/dUCdQcVC7UQZRUFGb
- UeZSMVJ8UsdTE1NfU6pT9lRCVI9U21UoVXVVwlYPVlxWqVb3V0RXklfgWC9Y
- fVjLWRpZaVm4WgdaVlqmWvVbRVuVW+VcNVyGXNZdJ114XcleGl5sXr1fD19h
- X7NgBWBXYKpg/GFPYaJh9WJJYpxi8GNDY5dj62RAZJRk6WU9ZZJl52Y9ZpJm
- 6Gc9Z5Nn6Wg/aJZo7GlDaZpp8WpIap9q92tPa6dr/2xXbK9tCG1gbbluEm5r
- bsRvHm94b9FwK3CGcOBxOnGVcfByS3KmcwFzXXO4dBR0cHTMdSh1hXXhdj52
- m3b4d1Z3s3gReG54zHkqeYl553pGeqV7BHtje8J8IXyBfOF9QX2hfgF+Yn7C
- fyN/hH/lgEeAqIEKgWuBzYIwgpKC9INXg7qEHYSAhOOFR4Wrhg6GcobXhzuH
- n4gEiGmIzokziZmJ/opkisqLMIuWi/yMY4zKjTGNmI3/jmaOzo82j56QBpBu
- kNaRP5GokhGSepLjk02TtpQglIqU9JVflcmWNJaflwqXdZfgmEyYuJkkmZCZ
- /JpomtWbQpuvnByciZz3nWSd0p5Anq6fHZ+Ln/qgaaDYoUehtqImopajBqN2
- o+akVqTHpTilqaYapoum/adup+CoUqjEqTepqaocqo+rAqt1q+msXKzQrUSt
- uK4trqGvFq+LsACwdbDqsWCx1rJLssKzOLOutCW0nLUTtYq2AbZ5tvC3aLfg
- uFm40blKucK6O7q1uy67p7whvJu9Fb2Pvgq+hL7/v3q/9cBwwOzBZ8Hjwl/C
- 28NYw9TEUcTOxUvFyMZGxsPHQce/yD3IvMk6ybnKOMq3yzbLtsw1zLXNNc21
- zjbOts83z7jQOdC60TzRvtI/0sHTRNPG1EnUy9VO1dHWVdbY11zX4Nhk2OjZ
- bNnx2nba+9uA3AXcit0Q3ZbeHN6i3ynfr+A24L3hROHM4lPi2+Nj4+vkc+T8
- 5YTmDeaW5x/nqegy6LzpRunQ6lvq5etw6/vshu0R7ZzuKO6070DvzPBY8OXx
- cvH/8ozzGfOn9DT0wvVQ9d72bfb794r4Gfio+Tj5x/pX+uf7d/wH/Jj9Kf26
- /kv+3P9t//8=
-
$class
@@ -386,9 +448,13 @@
CF$UID
4
+ NSLinearExposure
+
+ MQ==
+
NSRGB
- MCAwLjQ0MzIzMjI2ODEgMC40NjQ1MDE1MDAxAA==
+ MC4xMjYwMTc5NDMgMC40MzI5ODkyMzk3IDAuNDU3ODIxMTYwNgA=
@@ -408,9 +474,13 @@
CF$UID
4
+ NSLinearExposure
+
+ MQ==
+
NSRGB
- MC45MDI0NTkxNDQ2IDAuMzc2MzA0MjA5MiAwLjEwMTc1NjI4OTYA
+ MC44MzA3NzE1NjU0IDAuNDA1NTk0NDM4MyAwLjE3MjQ4ODAzMzgA
@@ -420,22 +490,26 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC4yMzE0OTU2NTA4IDAuMjMxNDk1NjUwOCAwLjIzMTQ5NTY1MDgg
- MQ==
-
+ 2
NSCustomColorSpace
CF$UID
- 4
+ 13
NSRGB
- MC4xNzU4NTQ2OTc4IDAuMTc1ODU0Njk3OCAwLjE3NTg1NDY5NzgA
+ MC4yMzE0OTU2NTA4IDAuMjMxNDk1NjUwOCAwLjIzMTQ5NTY1MDgA
+
+ $class
+
+ CF$UID
+ 6
+
+ NSID
+ 4
+
$class
@@ -443,107 +517,35 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC43NDEgMC43NjQ0IDAuNzggMQ==
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC42ODc1Mjk2MjM1IDAuNzEzODM4NDU4MSAwLjczMjAxMTY3NTgA
+ MC43NDEgMC43NjQ0IDAuNzgA
$class
CF$UID
- 6
+ 7
- NSICC
+ NSColorSpace
+ 2
+ NSCustomColorSpace
CF$UID
- 17
+ 13
- NSID
- 7
+ NSRGB
+
+ MC44NzA1ODgxODM0IDAuNDg2Mjc0NTQwNCAwLjIyMzUyOTM5ODQA
+
-
- AAAMSExpbm8CEAAAbW50clJHQiBYWVogB84AAgAJAAYAMQAAYWNzcE1TRlQA
- AAAASUVDIHNSR0IAAAAAAAAAAAAAAAAAAPbWAAEAAAAA0y1IUCAgAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARY3By
- dAAAAVAAAAAzZGVzYwAAAYQAAABsd3RwdAAAAfAAAAAUYmtwdAAAAgQAAAAU
- clhZWgAAAhgAAAAUZ1hZWgAAAiwAAAAUYlhZWgAAAkAAAAAUZG1uZAAAAlQA
- AABwZG1kZAAAAsQAAACIdnVlZAAAA0wAAACGdmlldwAAA9QAAAAkbHVtaQAA
- A/gAAAAUbWVhcwAABAwAAAAkdGVjaAAABDAAAAAMclRSQwAABDwAAAgMZ1RS
- QwAABDwAAAgMYlRSQwAABDwAAAgMdGV4dAAAAABDb3B5cmlnaHQgKGMpIDE5
- OTggSGV3bGV0dC1QYWNrYXJkIENvbXBhbnkAAGRlc2MAAAAAAAAAEnNSR0Ig
- SUVDNjE5NjYtMi4xAAAAAAAAAAAAAAASc1JHQiBJRUM2MTk2Ni0yLjEAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AFhZWiAAAAAAAADzUQABAAAAARbMWFlaIAAAAAAAAAAAAAAAAAAAAABYWVog
- AAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAA
- ACSgAAAPhAAAts9kZXNjAAAAAAAAABZJRUMgaHR0cDovL3d3dy5pZWMuY2gA
- AAAAAAAAAAAAABZJRUMgaHR0cDovL3d3dy5pZWMuY2gAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZGVzYwAAAAAAAAAu
- SUVDIDYxOTY2LTIuMSBEZWZhdWx0IFJHQiBjb2xvdXIgc3BhY2UgLSBzUkdC
- AAAAAAAAAAAAAAAuSUVDIDYxOTY2LTIuMSBEZWZhdWx0IFJHQiBjb2xvdXIg
- c3BhY2UgLSBzUkdCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAA
- LFJlZmVyZW5jZSBWaWV3aW5nIENvbmRpdGlvbiBpbiBJRUM2MTk2Ni0yLjEA
- AAAAAAAAAAAAACxSZWZlcmVuY2UgVmlld2luZyBDb25kaXRpb24gaW4gSUVD
- NjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB2aWV3AAAAAAAT
- pP4AFF8uABDPFAAD7cwABBMLAANcngAAAAFYWVogAAAAAABMCVYAUAAAAFcf
- 521lYXMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAKPAAAAAnNpZyAAAAAA
- Q1JUIGN1cnYAAAAAAAAEAAAAAAUACgAPABQAGQAeACMAKAAtADIANwA7AEAA
- RQBKAE8AVABZAF4AYwBoAG0AcgB3AHwAgQCGAIsAkACVAJoAnwCkAKkArgCy
- ALcAvADBAMYAywDQANUA2wDgAOUA6wDwAPYA+wEBAQcBDQETARkBHwElASsB
- MgE4AT4BRQFMAVIBWQFgAWcBbgF1AXwBgwGLAZIBmgGhAakBsQG5AcEByQHR
- AdkB4QHpAfIB+gIDAgwCFAIdAiYCLwI4AkECSwJUAl0CZwJxAnoChAKOApgC
- ogKsArYCwQLLAtUC4ALrAvUDAAMLAxYDIQMtAzgDQwNPA1oDZgNyA34DigOW
- A6IDrgO6A8cD0wPgA+wD+QQGBBMEIAQtBDsESARVBGMEcQR+BIwEmgSoBLYE
- xATTBOEE8AT+BQ0FHAUrBToFSQVYBWcFdwWGBZYFpgW1BcUF1QXlBfYGBgYW
- BicGNwZIBlkGagZ7BowGnQavBsAG0QbjBvUHBwcZBysHPQdPB2EHdAeGB5kH
- rAe/B9IH5Qf4CAsIHwgyCEYIWghuCIIIlgiqCL4I0gjnCPsJEAklCToJTwlk
- CXkJjwmkCboJzwnlCfsKEQonCj0KVApqCoEKmAquCsUK3ArzCwsLIgs5C1EL
- aQuAC5gLsAvIC+EL+QwSDCoMQwxcDHUMjgynDMAM2QzzDQ0NJg1ADVoNdA2O
- DakNww3eDfgOEw4uDkkOZA5/DpsOtg7SDu4PCQ8lD0EPXg96D5YPsw/PD+wQ
- CRAmEEMQYRB+EJsQuRDXEPURExExEU8RbRGMEaoRyRHoEgcSJhJFEmQShBKj
- EsMS4xMDEyMTQxNjE4MTpBPFE+UUBhQnFEkUahSLFK0UzhTwFRIVNBVWFXgV
- mxW9FeAWAxYmFkkWbBaPFrIW1hb6Fx0XQRdlF4kXrhfSF/cYGxhAGGUYihiv
- GNUY+hkgGUUZaxmRGbcZ3RoEGioaURp3Gp4axRrsGxQbOxtjG4obshvaHAIc
- KhxSHHscoxzMHPUdHh1HHXAdmR3DHeweFh5AHmoelB6+HukfEx8+H2kflB+/
- H+ogFSBBIGwgmCDEIPAhHCFIIXUhoSHOIfsiJyJVIoIiryLdIwojOCNmI5Qj
- wiPwJB8kTSR8JKsk2iUJJTglaCWXJccl9yYnJlcmhya3JugnGCdJJ3onqyfc
- KA0oPyhxKKIo1CkGKTgpaymdKdAqAio1KmgqmyrPKwIrNitpK50r0SwFLDks
- biyiLNctDC1BLXYtqy3hLhYuTC6CLrcu7i8kL1ovkS/HL/4wNTBsMKQw2zES
- MUoxgjG6MfIyKjJjMpsy1DMNM0YzfzO4M/E0KzRlNJ402DUTNU01hzXCNf02
- NzZyNq426TckN2A3nDfXOBQ4UDiMOMg5BTlCOX85vDn5OjY6dDqyOu87LTtr
- O6o76DwnPGU8pDzjPSI9YT2hPeA+ID5gPqA+4D8hP2E/oj/iQCNAZECmQOdB
- KUFqQaxB7kIwQnJCtUL3QzpDfUPARANER0SKRM5FEkVVRZpF3kYiRmdGq0bw
- RzVHe0fASAVIS0iRSNdJHUljSalJ8Eo3Sn1KxEsMS1NLmkviTCpMcky6TQJN
- Sk2TTdxOJU5uTrdPAE9JT5NP3VAnUHFQu1EGUVBRm1HmUjFSfFLHUxNTX1Oq
- U/ZUQlSPVNtVKFV1VcJWD1ZcVqlW91dEV5JX4FgvWH1Yy1kaWWlZuFoHWlZa
- plr1W0VblVvlXDVchlzWXSddeF3JXhpebF69Xw9fYV+zYAVgV2CqYPxhT2Gi
- YfViSWKcYvBjQ2OXY+tkQGSUZOllPWWSZedmPWaSZuhnPWeTZ+loP2iWaOxp
- Q2maafFqSGqfavdrT2una/9sV2yvbQhtYG25bhJua27Ebx5veG/RcCtwhnDg
- cTpxlXHwcktypnMBc11zuHQUdHB0zHUodYV14XY+dpt2+HdWd7N4EXhueMx5
- KnmJeed6RnqlewR7Y3vCfCF8gXzhfUF9oX4BfmJ+wn8jf4R/5YBHgKiBCoFr
- gc2CMIKSgvSDV4O6hB2EgITjhUeFq4YOhnKG14c7h5+IBIhpiM6JM4mZif6K
- ZIrKizCLlov8jGOMyo0xjZiN/45mjs6PNo+ekAaQbpDWkT+RqJIRknqS45NN
- k7aUIJSKlPSVX5XJljSWn5cKl3WX4JhMmLiZJJmQmfyaaJrVm0Kbr5wcnImc
- 951kndKeQJ6unx2fi5/6oGmg2KFHobaiJqKWowajdqPmpFakx6U4pammGqaL
- pv2nbqfgqFKoxKk3qamqHKqPqwKrdavprFys0K1ErbiuLa6hrxavi7AAsHWw
- 6rFgsdayS7LCszizrrQltJy1E7WKtgG2ebbwt2i34LhZuNG5SrnCuju6tbsu
- u6e8IbybvRW9j74KvoS+/796v/XAcMDswWfB48JfwtvDWMPUxFHEzsVLxcjG
- RsbDx0HHv8g9yLzJOsm5yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE8
- 0b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp22vvbgNwF3Ird
- EN2W3hzeot8p36/gNuC94UThzOJT4tvjY+Pr5HPk/OWE5g3mlucf56noMui8
- 6Ubp0Opb6uXrcOv77IbtEe2c7ijutO9A78zwWPDl8XLx//KM8xnzp/Q09ML1
- UPXe9m32+/eK+Bn4qPk4+cf6V/rn+3f8B/yY/Sn9uv5L/tz/bf//
-
$class
@@ -551,20 +553,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC44NzA1ODgxODM0IDAuNDg2Mjc0NTQwNCAwLjIyMzUyOTM5ODQg
- MQ==
-
+ 2
NSCustomColorSpace
CF$UID
- 4
+ 13
NSRGB
- MC45MDM0NTU3MzQzIDAuMzc1NDk3OTk2OCAwLjEwMTk3MzI4MDMA
+ MC4xNTM1MiAwLjc2IDAuMTIxNgA=
@@ -574,20 +571,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC4xNTM1MiAwLjc2IDAuMTIxNiAx
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC4xNTQyMzM2MzQ1IDAuNzI5MzA0MDE1NiAwLjA5NTMwNjE4Nzg3
- AA==
+ MC4xNjE1IDAuNTYzMTI1IDAuODUA
@@ -597,19 +589,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC4xNjE1IDAuNTYzMTI1IDAuODUgMQ==
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC4xMzY4MTU4MDEzIDAuNDgxMjU4NjMwOCAwLjgxMzkwOTE3MwA=
+ MC40NDU5IDAuODMyNjUgMC45MQA=
@@ -619,19 +607,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC40NDU5IDAuODMyNjUgMC45MSAx
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC4zODUwMjYzNjU1IDAuNzk3NTM2NDkyMyAwLjg4NzEwNjgzNTgA
+ MC44OCAwLjQ2NjQgMC44NDU1MzMzMzMzAA==
@@ -641,19 +625,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC44OCAwLjQ2NjQgMC44NDU1MzMzMzMzIDE=
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC44NDE2MDU3ODI1IDAuMzU2MDU4Nzc2NCAwLjgwOTI3MDYyMDMA
+ MSAwLjc4NjY2NjY2NjcgMC4yAA==
@@ -663,19 +643,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MSAwLjc4NjY2NjY2NjcgMC4yIDE=
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC45OTQ3OTk2NzM2IDAuNzQ3MjM1ODk0MiAwLjE1NjczMDM2ODcA
+ MC4zMTUgMC4zMzQyNSAwLjM1AA==
@@ -685,19 +661,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC4zMTUgMC4zMzQyNSAwLjM1IDE=
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC4yNDc3MzcxMjQ2IDAuMjY0NDYxOTY0NCAwLjI3ODkyNjY3MDYA
+ MSAxIDEA
@@ -707,19 +679,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC45ODc0MzU1NjcgMC41NDYwMjI0NTI3IDAuMjM0MTE5Njc5MyAx
-
+ 2
NSCustomColorSpace
CF$UID
- 4
+ 13
NSRGB
- MSAwLjQyOTY2MDY0ODEgMC4wODU0MjU2MzAyMQA=
+ MC45ODc0MzU1NjcgMC41NDYwMjI0NTI3IDAuMjM0MTE5Njc5MwA=
@@ -729,19 +697,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC40NDI4IDAuOCAwLjM0NCAx
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC4zODIxMTYxMDkxIDAuNzczNTgxMjY2NCAwLjI3NDkxNDAyNjMA
+ MC40NDI4IDAuOCAwLjM0NAA=
@@ -751,19 +715,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC4zMzg0IDAuNjg5MzMzMzMzMyAwLjk0IDE=
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC4yODAyNjI4Mjc5IDAuNjIxNTA1ODU2NSAwLjkyMzcyNTE4NzgA
+ MC4zMzg0IDAuNjg5MzMzMzMzMyAwLjk0AA==
@@ -773,19 +733,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC42NiAwLjk2NiAxIDE=
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC42MDYzMjA4NTggMC45NjE4ODAzMjYzIDAuOTk5MzY2ODc5NQA=
+ MC42NiAwLjk2NiAxAA==
@@ -795,19 +751,15 @@
7
NSColorSpace
- 1
- NSComponents
-
- MC45MyAwLjY2OTYgMC45MDgzIDE=
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC45MDUzNDU0Mzk5IDAuNTg3MTEzMjYxMiAwLjg4NTQ4NjQyNAA=
+ MC45MyAwLjY2OTYgMC45MDgzAA==
@@ -817,22 +769,18 @@
7
NSColorSpace
- 1
- NSComponents
-
- MSAwLjg5IDAuNDUgMQ==
-
+ 2
NSCustomColorSpace
CF$UID
- 16
+ 13
NSRGB
- MC45OTc0NjgyMzMxIDAuODczMjczNzMwMyAwLjM3NzI2ODU1MjgA
+ MSAwLjg5IDAuNDUA
- 600653C6-C971-4C30-8EEB-312C033B641D
+ 2E952EFE-A71D-48CB-A06D-95A91BA30186
$classes
diff --git a/Mac/Config/Preferences/com.apple.Terminal.plist b/Mac/Config/Preferences/com.apple.Terminal.plist
new file mode 100644
index 0000000..9327f25
Binary files /dev/null and b/Mac/Config/Preferences/com.apple.Terminal.plist differ
diff --git a/Mac/Config/Preferences/com.googlecode.iterm2.plist b/Mac/Config/Preferences/com.googlecode.iterm2.plist
new file mode 100644
index 0000000..2e1a589
Binary files /dev/null and b/Mac/Config/Preferences/com.googlecode.iterm2.plist differ
diff --git a/Config/Xcode/TimTr.xccolortheme b/Mac/Config/Xcode/TimTr.xccolortheme
similarity index 81%
rename from Config/Xcode/TimTr.xccolortheme
rename to Mac/Config/Xcode/TimTr.xccolortheme
index 24c06da..065cbcf 100644
--- a/Config/Xcode/TimTr.xccolortheme
+++ b/Mac/Config/Xcode/TimTr.xccolortheme
@@ -23,7 +23,7 @@
DVTConsoleExectuableOutputTextFont
SFMono-RegularItalic - 16.0
DVTConsoleTextBackgroundColor
- 0.064263 0.067871 0.0815955 1
+ 0.0467027 0.0467746 0.0444158 1
DVTConsoleTextInsertionPointColor
1 1 1 1
DVTConsoleTextSelectionColor
@@ -57,15 +57,15 @@
DVTMarkupTextOtherHeadingColor
0.42772 0.465692 0.465582 0.5
DVTMarkupTextOtherHeadingFont
- .SFNS-Regular - 20.2
+ .SFNS-Regular - 21.0
DVTMarkupTextPrimaryHeadingColor
0.42772 0.465692 0.465582 1
DVTMarkupTextPrimaryHeadingFont
- .SFNS-Regular - 33.2
+ .SFNS-Regular - 36.0
DVTMarkupTextSecondaryHeadingColor
0.42772 0.465692 0.465582 1
DVTMarkupTextSecondaryHeadingFont
- .SFNS-Regular - 25.4
+ .SFNS-Regular - 27.0
DVTMarkupTextStrongColor
0.42772 0.465692 0.465582 1
DVTMarkupTextStrongFont
@@ -85,11 +85,11 @@
DVTScrollbarMarkerWarningColor
0.937255 0.717647 0.34902 1
DVTSourceTextBackground
- 0.0475648 0.0560609 0.0696912 1
+ 0.0540316 0.0662176 0.0772645 1
DVTSourceTextBlockDimBackgroundColor
0.5 0.5 0.5 1
DVTSourceTextCurrentLineHighlightColor
- 0.106591 0.120683 0.136839 1
+ 0.0467118 0.046791 0.0441853 1
DVTSourceTextInsertionPointColor
1 1 1 1
DVTSourceTextInvisiblesColor
@@ -101,94 +101,94 @@
xcode.syntax.attribute
0.145098 0.568627 0.52549 1
xcode.syntax.character
- 0.845619 0.845619 0.845619 1
+ 0 0.892636 0 1
xcode.syntax.comment
- 0.27182 0.289624 0.39479 1
+ 0.193315 0.496568 0.650872 1
xcode.syntax.comment.doc
- 0.262099 0.4621 0.495959 1
+ 0.211507 0.279567 0.393124 1
xcode.syntax.comment.doc.keyword
- 0.424672 0.424672 0.424672 1
+ 0.277458 0.277458 0.277458 1
xcode.syntax.declaration.other
- 0.670008 0.739169 0.030366 1
+ 0.987517 0.322992 0.0290003 1
xcode.syntax.declaration.type
- 0.886388 0.983859 0 1
+ 0.987517 0.322992 0.0290003 1
xcode.syntax.identifier.class
0.713704 0.249773 0.707592 1
xcode.syntax.identifier.class.system
- 0.904986 0 0.436726 1
+ 0.894411 0.266279 0.609741 1
xcode.syntax.identifier.constant
- 0.875867 0.548301 0.784713 1
+ 0.714947 0.200942 0.600032 1
xcode.syntax.identifier.constant.system
- 0.427451 0.67451 1 1
+ 0.714947 0.200942 0.600032 1
xcode.syntax.identifier.function
- 0.915091 0.478554 0.845259 1
+ 0.492982 0.191502 0.375354 1
xcode.syntax.identifier.function.system
- 0.904986 0 0.436726 1
+ 0.710353 0.725575 0.736085 1
xcode.syntax.identifier.macro
0.92549 0.415686 0.384314 1
xcode.syntax.identifier.macro.system
0.92549 0.415686 0.384314 1
xcode.syntax.identifier.type
- 0.587517 0.206665 0.58352 1
+ 0.712252 0.677153 0.759108 1
xcode.syntax.identifier.type.system
- 0.427451 0.67451 1 1
+ 0.983621 1 1 1
xcode.syntax.identifier.variable
- 0.719135 0.4568 0.617874 1
+ 0.35643 0.463551 0.516356 1
xcode.syntax.identifier.variable.system
- 0.427451 0.67451 1 1
+ 0.983621 1 1 1
xcode.syntax.keyword
- 0.424672 0.424672 0.424672 1
+ 0.983621 1 1 1
xcode.syntax.mark
- 0.323259 0.92111 0.232525 1
+ 0.886388 0.983859 0 1
xcode.syntax.markup.code
0.987517 0.322992 0.0290003 1
xcode.syntax.number
0.191379 0.822222 0.361929 1
xcode.syntax.plain
- 0.999995 1 1 1
+ 0.691651 0.70645 0.716668 1
xcode.syntax.preprocessor
- 0.886388 0.983859 0 1
+ 1 0.35217 0.989654 1
xcode.syntax.regex
- 0 0.976153 1 1
+ 0.174161 0.385937 0.430921 1
xcode.syntax.regex.capturename
- 0.560922 0.340188 0.63728 1
+ 0.174161 0.385937 0.430921 1
xcode.syntax.regex.charname
- 0.427451 0.67451 1 1
+ 0.174161 0.385937 0.430921 1
xcode.syntax.regex.number
- 0.445898 0.967334 0.999197 1
+ 0.174161 0.385937 0.430921 1
xcode.syntax.regex.other
- 0.731204 0.763292 0.842913 1
+ 0.174161 0.385937 0.430921 1
xcode.syntax.string
- 0.987517 0.322992 0.0290003 1
+ 0.984288 0.111031 0.152288 1
xcode.syntax.url
- 0.186306 0.478119 0.849336 1
+ 0.419458 0.565601 0.990365 1
DVTSourceTextSyntaxFonts
xcode.syntax.attribute
SFMono-Light - 16.0
xcode.syntax.character
- SFMono-Light - 16.0
+ SFMono-SemiboldItalic - 16.0
xcode.syntax.comment
- SFMono-Light - 16.0
+ SFMono-LightItalic - 16.0
xcode.syntax.comment.doc
SFMono-LightItalic - 16.0
xcode.syntax.comment.doc.keyword
SFMono-Semibold - 16.0
xcode.syntax.declaration.other
- SFMono-Light - 16.0
+ SFMono-LightItalic - 16.0
xcode.syntax.declaration.type
- SFMono-Light - 16.0
+ SFMono-Semibold - 16.0
xcode.syntax.identifier.class
- SFMono-Light - 16.0
+ SFMono-Semibold - 16.0
xcode.syntax.identifier.class.system
SFMono-Light - 16.0
xcode.syntax.identifier.constant
- SFMono-Light - 16.0
+ SFMono-SemiboldItalic - 16.0
xcode.syntax.identifier.constant.system
- SFMono-Light - 16.0
+ SFMono-SemiboldItalic - 16.0
xcode.syntax.identifier.function
- SFMono-Light - 16.0
+ SFMono-Semibold - 16.0
xcode.syntax.identifier.function.system
SFMono-Light - 16.0
xcode.syntax.identifier.macro
@@ -204,13 +204,13 @@
xcode.syntax.identifier.variable.system
SFMono-Light - 16.0
xcode.syntax.keyword
- SFMono-Semibold - 16.0
- xcode.syntax.mark
SFMono-Light - 16.0
+ xcode.syntax.mark
+ SFMono-Semibold - 16.0
xcode.syntax.markup.code
SFMono-Bold - 24.0
xcode.syntax.number
- SFMono-Light - 16.0
+ SFMono-SemiboldItalic - 16.0
xcode.syntax.plain
SFMono-Light - 16.0
xcode.syntax.preprocessor
@@ -226,7 +226,7 @@
xcode.syntax.regex.other
SFMono-Light - 16.0
xcode.syntax.string
- SFMono-SemiboldItalic - 16.0
+ SFMono-LightItalic - 16.0
xcode.syntax.url
SFMono-MediumItalic - 16.0
diff --git a/Mac/Path/backup.sh b/Mac/Path/backup.sh
new file mode 100755
index 0000000..a5fd1a8
--- /dev/null
+++ b/Mac/Path/backup.sh
@@ -0,0 +1,64 @@
+#!/bin/zsh
+#
+# backup.sh -- macOS version: backs up critical files locally
+# ==============================================================================
+
+
+# Check if both parameters are provided
+if [ $# -ne 2 ]; then
+ echo "Usage: $0 "
+ exit 1
+fi
+
+SOURCE="$1"
+DEST="$2"
+BACKUP_DIR="$DEST/past-backups"
+
+# Validate source directory exists
+if [ ! -d "$SOURCE" ]; then
+ echo "Error: Source directory '$SOURCE' does not exist"
+ exit 1
+fi
+
+# Create destination and backup directories if they don't exist
+mkdir -p "$DEST"
+mkdir -p "$BACKUP_DIR"
+
+# Function to move file to backup with date if needed
+backup_file() {
+ local file="$1"
+ local basename=$(basename "$file")
+ local backup_path="$BACKUP_DIR/$basename"
+
+ if [ -f "$backup_path" ]; then
+ # Get file modification date
+ local file_date=$(date -r "$file" "+%Y%m%d-%H%M%S")
+ local filename="${basename%.*}"
+ local extension="${basename##*.}"
+
+ # Handle files without extension
+ if [ "$filename" = "$extension" ]; then
+ backup_path="$BACKUP_DIR/${basename}_${file_date}"
+ else
+ backup_path="$BACKUP_DIR/${filename}_${file_date}.${extension}"
+ fi
+ fi
+
+ mv "$file" "$backup_path"
+}
+
+# Find files in destination that will be overwritten or don't exist in source
+find "$DEST" -type f -not -path "$BACKUP_DIR/*" | while read -r dest_file; do
+ relative_path="${dest_file#$DEST/}"
+ source_file="$SOURCE/$relative_path"
+
+ # If source file doesn't exist or is different, backup the destination file
+ if [ ! -f "$source_file" ] || ! cmp -s "$source_file" "$dest_file"; then
+ backup_file "$dest_file"
+ fi
+done
+
+# Sync files from source to destination
+rsync -av --exclude='past-backups' "$SOURCE/" "$DEST/"
+
+echo "Sync complete. Backups stored in $BACKUP_DIR"
diff --git a/Mac/Path/reset.sh b/Mac/Path/reset.sh
new file mode 100755
index 0000000..f52247a
--- /dev/null
+++ b/Mac/Path/reset.sh
@@ -0,0 +1,35 @@
+#!/bin/zsh
+#
+# reset.sh -- cleans caches and re-hides folders, making things pretty
+# ==============================================================================
+
+
+# Import the default functions used in these scripts
+source ${HOME}/.functions
+message "reset.sh" "Reset caches and preferences"
+# ==============================================================================
+
+
+# Hide tfolders from being visible in Finder (they still show in Terminal)
+chflags hidden ${HOME}/Documents/Insta360/ &> /dev/null
+chflags hidden ${HOME}/Documents/Larian\ Studios
+
+# Remove a bunch of common defaults -- re-run setup to add them back
+# Cleaning them exists to get back into a good state, just in case
+# a default option is causing some sort of problem
+
+# All Xcode settings
+defaults delete com.apple.dt.Xcode
+
+# Set macOS to not write .DS_Store files on network drives
+defaults delete com.apple.desktopservices
+
+# Set macOS to not write .DS_Store files on USB drives
+defaults delete com.apple.desktopservices
+
+# Save screenshots (location, file type, etc.)
+defaults delete com.apple.screencapture
+
+# Stops Xcode IDE from saving the workspace layout (window size, etc)
+defaults delete com.apple.dt.Xcode IDEDisableStateRestoration
+
diff --git a/Mac/setup-brew.sh b/Mac/Path/setup-brew.sh
similarity index 99%
rename from Mac/setup-brew.sh
rename to Mac/Path/setup-brew.sh
index 78d57be..042f48e 100755
--- a/Mac/setup-brew.sh
+++ b/Mac/Path/setup-brew.sh
@@ -1,9 +1,9 @@
#!/bin/zsh
#
# setup-brew.sh -- macOS version
-#
# ==============================================================================
+
source ~/.functions
message "setup-brew.sh" "Installing Homebrew using default script"
diff --git a/Mac/setup-ruby.sh b/Mac/Path/setup-ruby.sh
similarity index 88%
rename from Mac/setup-ruby.sh
rename to Mac/Path/setup-ruby.sh
index 9062d45..531f3ad 100755
--- a/Mac/setup-ruby.sh
+++ b/Mac/Path/setup-ruby.sh
@@ -1,6 +1,8 @@
#!/bin/zsh
#
# setup-ruby.sh -- macOS version (simple version, installs latest)
+# ==============================================================================
+
source ${HOME}/.functions
message "setup-ruby.sh" "Running [brew install ruby] instead of [rbenv]"
@@ -19,7 +21,7 @@ sudo gem update
-# TODO: the below may require Terminal is restarted one before it succeeds?
+# TODO: below may require Terminal is restarted once before it succeeds?
# ==============================================================================
# Install some gems (Jekyll and Bundler to start)
diff --git a/Mac/dot-functions.sh b/Mac/dot-functions.sh
index 532ed38..f306a4b 100755
--- a/Mac/dot-functions.sh
+++ b/Mac/dot-functions.sh
@@ -1,47 +1,38 @@
-#!/bin/zsh
+# source this file into .zshrc
-if [[ -v LOADED_FUNCTIONS ]]; then return; fi
+if [[ -v LOADED_FUNCTIONS ]];
+ then return;
+fi;
LOADED_FUNCTIONS=true
# NOTE: some characters will not work within printf functions, e.g. "!"
# error() should report major failures, often ejecting from the script
-error () { printf "\r\033[01;31m [ERROR]\033[00;31m $1 \033[0m \n"}
+function error() { printf "\r\033[01;31m [ERROR]\033[00;31m $1 \033[0m \n"}
# alert() is extra bright to get attention, but not an error (two parameters)
-alert () { printf "\r\033[00;35m $1\033[0m $2\n" }
+function alert() { printf "\r\033[00;35m $1\033[0m $2\n" }
# message() as a bright message, and less-bright detail message (two parameters)
-message () { printf "\r\033[00;32m $1\033[0m $2\n" }
+function message() { printf "\r\033[00;32m $1\033[0m $2\n" }
# bullet() is sub-items from messages, if warranting more lines of text
-bullet () { printf "\r\033[00;36m ==\033[0m $1 \n" }
-
-
-# Past versions of these functions
-# message () { printf "\r [\033[00;32m $1\033[0m ] $2\n" }
-# error () { printf "\r\033[00;31m ** $1\033[0m - \033[00;31m$2 \033[0m \n" }
-# alert () { printf "\r\033[00;35m >> $1\033[0m $2\n" }
-# bullet () { printf "\r\033[00;36m ==\033[0m $1 $2\n" }
-
-# echo "this is ${txtbold}bold${txtnormal} but this isn't"
-txtbold=$(tput bold)
-txtnormal=$(tput sgr0)
-
+function bullet() { printf "\r\033[00;36m ==\033[0m $1 \n" }
# ... Find all files recursively under current folder
-findall () {
- find . -name "$1" -print 2> /dev/null
-}
+function findall() { find . -name "$1" -print 2> /dev/null; }
# ... Create a new directory and enter it
-md() {
- mkdir -p "$@" && cd "$@"
-}
+function md() { mkdir -p "$@" && cd "$@"; }
# Delete Xcode derived data
-xcode-clean() {
- echo "Deleting all Xcode derived data..."
- rm -rdf ~/Library/Developer/Xcode/DerivedData/*
+function xcode-clean() {
+ echo "Deleting all Xcode derived data...";
+ rm -rdf ~/Library/Developer/Xcode/DerivedData/*;
}
+# echo "this is ${txtbold}bold${txtnormal} but this isn't"
+txtbold=$(tput bold)
+txtnormal=$(tput sgr0)
+
+# end of file.
diff --git a/Config/dot-gitconfig b/Mac/dot-gitconfig
similarity index 81%
rename from Config/dot-gitconfig
rename to Mac/dot-gitconfig
index 79c6bcd..4c3cb98 100644
--- a/Config/dot-gitconfig
+++ b/Mac/dot-gitconfig
@@ -15,6 +15,6 @@
default = simple
[credential]
helper = osxkeychain
-[includeIf "gitdir:~/Work/"]
- path = ~/Work/.gitconfig-work
+[includeIf "gitdir:~/Documents/"]
+ path = ~/Documents/.gitconfig-work
diff --git a/Config/dot-gitconfig-work b/Mac/dot-gitconfig-work
similarity index 100%
rename from Config/dot-gitconfig-work
rename to Mac/dot-gitconfig-work
diff --git a/Mac/dot-zshenv.sh b/Mac/dot-zshenv.sh
index f99f253..ef4c191 100755
--- a/Mac/dot-zshenv.sh
+++ b/Mac/dot-zshenv.sh
@@ -1,21 +1,21 @@
-# .zshenv - Loaded in every session, even if not interactive. Great for PATH.
+# .zshenv - Mac version - Loaded in every session, great for PATH.
-# Adding the $HOME/bin and dotfiles/Mac folders to PATH, as well as Homebrew
-export PATH="$HOME/Bin:$DOTFILES_ROOT/Mac:/opt/homebrew/bin"
+# Clean new path with starting with: $HOME/Bin
+export PATH="$HOME/Bin"
# Setting for Apple silicon version of Ruby. Pre-pend it and Gems to the PATH
-export PATH=$PATH:/opt/homebrew/opt/ruby/bin
+export PATH=$PATH:/opt/homebrew/bin:/opt/homebrew/opt/ruby/bin
export PATH=$PATH:`gem environment gemdir`/bin
-# Add default system PATHs at end of the chain
+# Add default system PATHs at end of the chain (my custom stuff comes first)
export PATH="$PATH:/usr/bin:/usr/local/bin:/usr/local/sbin:/bin:/usr/sbin:/sbin"
# Python3 - Augument the default PATH for Python3 use
export PY_PYTHON=3
# Node.js and npm setup (this first part loads NVM)
-export NVM_DIR="$HOME/.nvm"
-[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
+# export NVM_DIR="$HOME/.nvm"
+# [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
# This loads nvm bash_completion
# [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
diff --git a/Mac/dot-zshrc.sh b/Mac/dot-zshrc.sh
index eb7e989..b5bf31b 100755
--- a/Mac/dot-zshrc.sh
+++ b/Mac/dot-zshrc.sh
@@ -1,4 +1,4 @@
-# .zshrc - Loaded only in interactive shell sessions - macOS version
+# .zshrc - Mac version - Loaded only in interactive shell sessions
#
# Because this file is only loaded in interactive shell (Terminal) sessions,
# It is perfect for setting up things like colors, etc. However, it isn't
@@ -48,8 +48,15 @@ parse_git_branch() {
setopt PROMPT_SUBST
# Set the actual prompt
+HOSTNAME=$(hostname -s)
NEWLINE=$'\n'
-PROMPT='${NEWLINE}%F{white}% → %F{red}% %9c% %F{grey}% $(parse_git_branch) %F{white}% ${NEWLINE}↪ %f'
+PROMPT='${NEWLINE}%F{white}% [%F{red}% $USER %F{grey}% ${HOSTNAME}%F{white}% %F{red}% %9c% %F{white}% ] %F{blue}% $(parse_git_branch) %F{white}% ${NEWLINE}[%F{238} %D %T%F{white}% ] ↪ %f'
+
+
+# Previous version of the prompt (worked)
+# NEWLINE=$'\n'
+# PROMPT='${NEWLINE}%F{white}% → %F{red}% %9c% %F{grey}% $(parse_git_branch) %F{white}% ${NEWLINE}↪ %f'
+
# Load local custom settings (e.g. security keys that don't belong in Git)
diff --git a/Mac/local-template.sh b/Mac/local-template.sh
index 933b86f..6687ba2 100755
--- a/Mac/local-template.sh
+++ b/Mac/local-template.sh
@@ -15,6 +15,13 @@ if [[ -v LOADED_LOCAL ]]; then return; fi
export LOADED_LOCAL=true
message "Loading ~/local.sh" "Sets local Swift toolchain, tokens, keys, and passwords"
+# Alias commands to login to servers
+# ALERT: Edit these locally and do not commit these to GitHub!
+alias ssh-example="ssh example@example -p password"
+
+
+
+
# To enable latest Swift.org toolchain in /Library/Developer/Toolchains/"
# export TOOLCHAINS=swift ("swift" = use Swift.org tools, empty = use Xcode)
export TOOLCHAINS=
diff --git a/Mac/setup-docker.sh b/Mac/setup-docker.sh
deleted file mode 100755
index bdb742b..0000000
--- a/Mac/setup-docker.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/zsh
-#
-# setup-brew.sh -- macOS version
-#
-# ==============================================================================
-
-source ~/.functions
-
-message "setup-docker.sh" "Installing Docker using Homebrew"
-
-which -s brew &> /dev/null
-if [[ $? != 0 ]] ; then
- error "Missing Homebrew" "Installing for the first time..."
- /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-else
- message "Found Homebrew" "Updating and upgrading first..."
-
- brew update
- brew upgrade
-fi
-
-brew install --cask docker
-sudo open /Applications/Docker.app
-
-# ==============================================================================
-exit 0
diff --git a/Mac/dotfiles.sh b/Mac/setup-mac.sh
similarity index 67%
rename from Mac/dotfiles.sh
rename to Mac/setup-mac.sh
index 6aa2a6b..e0100ec 100755
--- a/Mac/dotfiles.sh
+++ b/Mac/setup-mac.sh
@@ -8,27 +8,32 @@ message "🔔 Environment:" "Locations being used for this install of Dotfiles"
bullet "DOTFILES_ROOT = $DOTFILES_ROOT"
bullet "Run location = ${0:a:h}"
+
+# ==============================================================================
+# Require that Xcode is installed and selected before proceeding
if xcode-select -p &> /dev/null
then
bullet "xcode-select -p = $(xcode-select -p)"
else
- error "❌ Install Xcode, then re-run setup.sh"
+ error "❌ Install Xcode, run xcode-select -p, and then re-run setup.sh"
exit 0
fi
+
# ==============================================================================
-# Require `zsh` as the default, and set the default shell if needed
+# Require `zsh` as the default on macOS, and set the default shell if needed
if [ $SHELL != "/bin/zsh" ]; then
chsh -s /bin/zsh
- echo "❌ Set default shell to /bin/zsh and re-run setup.sh"
+ echo "❌ Script has set default shell to ZSH, now re-run setup.sh"
exit 0
fi
+
# ==============================================================================
-message "🔐 SUDO required" "Creating folders, aliases, and setting file permissions"
+message "📂 Creating directories" "Creating and/or setting file permissions"
# Claim ownership of all my dotfiles
-sudo chown -R $USER $DOTFILES_ROOT 2> /dev/null
+chown -R $USER $DOTFILES_ROOT 2> /dev/null
# Make all directories (-type d) 755 executable, files (-type f) as 644
find $DOTFILES_ROOT -type d -print0 | xargs -0 chmod 755
@@ -37,102 +42,83 @@ find $DOTFILES_ROOT -type f -print0 | xargs -0 chmod 644
# Make all .sh files (-type f) also executable
find $DOTFILES_ROOT -name "*.sh" -type f -print0 | xargs -0 chmod 755
-# Get rid of teh quarantine bit (which occasionally gets set for some reason)
+# Get rid of the quarantine bit (which occasionally gets set via downloads)
xattr -d com.apple.quarantine $DOTFILES_ROOT/* 2> /dev/null
-# /opt/homebrew on M1+ CPUs, /usr/local is Mac Intel, and /opt/bin on Linux
-# Create these directories "just in case"
-sudo mkdir -p /opt/homebrew/bin
-sudo mkdir -p /usr/local/bin
-
-# Reset ownership, note the directory name does not end in / or /*
-sudo chown -R "$USER":admin /opt/homebrew
-sudo chown -R "$USER":admin /usr/local/bin
-
-# Set the permissions for the folders (read for all, write for just me)
-sudo chmod 744 /opt/homebrew/bin
-sudo chmod 744 /usr/local/bin
-
# ==============================================================================
-# Create ~/Bin folder in which to put local code repositorities
-if [[ -d "$HOME/Bin/" ]]; then
- bullet "~/Bin exists. Put user scripts and code you want in the PATH here"
+# Create $HOME/Bin folder in which to put local code repositorities
+if [[ -d "$HOME/Bin" ]]; then
+ bullet "$HOME/Bin exists. Added to the PATH for user content"
else
- mkdir ~/Bin
- sudo chown -R "$USER":admin $HOME/Bin
- sudo chmod 744 $HOME/Bin
- bullet "✅ Created ~/Bin - New folder for user code and scripts in the PATH"
+ mkdir -p $HOME/Bin
+ chown -R "$USER":admin $HOME/Bin
+ chmod 744 $HOME/Bin
+ message "✅ Created $HOME/Bin and added it to PATH for your code"
fi
-
-# ==============================================================================
# Create ~/Developer folder in which to put local code repositorities
if [[ -d "$HOME/Developer/" ]]; then
- bullet "~/Developer exists. Use this folder for personal repositories"
+ bullet "$HOME/Developer exists. Use this folder for personal repositories"
else
mkdir ~/Developer
- bullet "✅ Created ~/Developer - New folder for local developer work"
+ message "✅ Created $HOME/Developer - use this folder for personal developer work"
fi
-# ==============================================================================
-# Create a ~/Work folder if it doesn't exist already
-#
-if [[ -d "$HOME/Work/" ]]; then
- bullet "~/Work exists. Use this folder for work repositories"
+# Create a ~/Documents folder if it doesn't exist already
+if [[ -d "$HOME/Documents/" ]]; then
+ bullet "$HOME/Documents exists. Use this folder for work repositories"
else
- mkdir ~/Work
- bullet "✅ Created ~/Work - New folder for work repositories"
+ mkdir ~/Documents
+ message "✅ Created $HOME/Documents - use this folder for work repositories"
fi
-# ==============================================================================
-# Create a symlink to Dropbox's location in CloudStore if valid
-#
-#if [[ -d "$HOME/Dropbox/" ]]; then
-# bullet "~/Dropbox alias exists. Delete symlink if broken, then re-run"
-#else
-# if [[ -d "$HOME/Library/CloudStorage/Dropbox/" ]]; then
-# bullet "✅ Setup ~/Dropbox - Symlink to ~/Library/CloudStorage/Dropbox/"
-# ln -s $HOME/Library/CloudStorage/Dropbox $HOME/Dropbox
-# else
-# alert "Dropbox not installed" "Missing folder: ~/Library/CloudStorage/Dropbox/"
-# fi
-#sfi
# ==============================================================================
# Check if the ~/local.sh file exists, if not then copy the template to $HOME
if [[ -f "$HOME/local.sh" ]]; then
- bullet "~/local.sh file exists. Delete the file and re-run to install from template"
+ bullet "$HOME/local.sh file exists. Delete the file and re-run to install from template"
else
- bullet "✅ Installing ~/local.sh - Creating new from ./Dotfiles/Mac/local-template.sh"
+ message "✅ Installing $HOME/local.sh - Creating new from ./Dotfiles/Mac/local-template.sh"
cp $DOTFILES_ROOT/Mac/local-template.sh $HOME/local.sh
fi
# ==============================================================================
-message "✅ Setup root dotfiles" "Overwriting existing files at $HOME"
+message "✅ Setup root dot-files" "Overwriting existing files at $HOME"
cp $DOTFILES_ROOT/Mac/dot-zshrc.sh $HOME/.zshrc
cp $DOTFILES_ROOT/Mac/dot-zshenv.sh $HOME/.zshenv
cp $DOTFILES_ROOT/Mac/dot-aliases.sh $HOME/.aliases
cp $DOTFILES_ROOT/Mac/dot-functions.sh $HOME/.functions
-echo "Empty file to silence new shell messages" >> $HOME/.hushlogin
-# Copy Git and other config files
-cp $DOTFILES_ROOT/Config/dot-gitconfig $HOME/.gitconfig
-cp $DOTFILES_ROOT/Config/dot-gitconfig-work $HOME/Work/.gitconfig-work
-cp $DOTFILES_ROOT/Config/dot-gitignore $HOME/.gitignore
-cp $DOTFILES_ROOT/Config/dot-vimrc $HOME/.vimrc
+# Mac-specific Git configuration dot-files (using ./Documents for work repos)
+cp $DOTFILES_ROOT/Mac/dot-gitconfig $HOME/.gitconfig
+cp $DOTFILES_ROOT/Mac/dot-gitconfig-work $HOME/Documents/.gitconfig-work
+
+# Common settings across platforms
+cp $DOTFILES_ROOT/Common/dot-gitignore $HOME/.gitignore
+cp $DOTFILES_ROOT/Common/dot-vimrc $HOME/.vimrc
+
+echo "This dummy file silences the [new shell] messages" >> $HOME/.hushlogin
# Register gitignore and other git stuff
git config --global core.excludesfile ~/.gitignore
+
+# ==============================================================================
+message "✅ Copy scripts to PATH" "Using $HOME/Bin for user scripts"
+cp $DOTFILES_ROOT/Mac/Path/* $HOME/Bin
+
+
+# ==============================================================================
message "✅ Setup app preferences" "Overwriting Terminal, Xcode, and other settings"
+
# Copy app settings
-cp $DOTFILES_ROOT/Config/Preferences/* $HOME/Library/Preferences/
+cp $DOTFILES_ROOT/Mac/Config/Preferences/* $HOME/Library/Preferences/
# Copy Xcode preferences
mkdir -p $HOME/Library/Developer/Xcode/UserData/FontAndColorThemes
-cp -R $DOTFILES_ROOT/Config/Xcode/* $HOME/Library/Developer/Xcode/UserData/FontAndColorThemes/
+cp -R $DOTFILES_ROOT/Mac/Config/Xcode/* $HOME/Library/Developer/Xcode/UserData/FontAndColorThemes/
# ==============================================================================
@@ -160,9 +146,10 @@ defaults write com.apple.desktopservices DSDontWriteUSBStores -bool TRUE
message "✅ git config --global user.name" "= $(git config --get user.name)"
message "✅ git config --global user.email" "= $(git config --get user.email)"
echo
-message "🎉 Success!" "Restart Terminal and run ${txtbold}setup-brew.sh${txtnormal} and ${txtbold}setup-ruby.sh${txtnormal}"
-
+message "🎉 Success!" "Restart Terminal and run setup-brew.sh and setup-ruby.sh"
echo
+
+## End of file.
exit 0
@@ -170,6 +157,35 @@ exit 0
+# ==============================================================================
+# TODO: removing the creation of Homebrew folders - let Homebrew install do that
+# Homebrew uses /opt/homebrew on ARM and /usr/local on Intel, and /opt/bin on Linux
+# Create these directories "just in case" on macOS
+# sudo mkdir -p /opt/homebrew/bin
+# sudo mkdir -p /usr/local/bin
+
+# Reset ownership, note the directory name does not end in / or /*
+# sudo chown -R "$USER":admin /opt/homebrew
+# sudo chown -R "$USER":admin /usr/local/bin
+
+# Set the permissions for the folders (read for all, write for just me)
+# sudo chmod 744 /opt/homebrew/bin
+# sudo chmod 744 /usr/local/bin
+
+
+# ==============================================================================
+# Create a symlink to Dropbox's location in CloudStore if valid
+#
+#if [[ -d "$HOME/Dropbox/" ]]; then
+# bullet "~/Dropbox alias exists. Delete symlink if broken, then re-run"
+#else
+# if [[ -d "$HOME/Library/CloudStorage/Dropbox/" ]]; then
+# bullet "✅ Setup ~/Dropbox - Symlink to ~/Library/CloudStorage/Dropbox/"
+# ln -s $HOME/Library/CloudStorage/Dropbox $HOME/Dropbox
+# else
+# alert "Dropbox not installed" "Missing folder: ~/Library/CloudStorage/Dropbox/"
+# fi
+#sfi
# ==============================================================================
diff --git a/README.md b/README.md
deleted file mode 100644
index 58f66db..0000000
--- a/README.md
+++ /dev/null
@@ -1,73 +0,0 @@
-# Dotfiles for Tim Triemstra
-
-To setup on Mac or Linux:
-
-```shell
- git clone https://github.com/timtr/dotfiles.git
- cd dotfiles
- ./setup.sh
-```
-
-On Mac, first install Xcode or the command line tools. Then run `./setup.sh` from within the local `dotfiles` folder to install. Quit and re-launch the terminal.
-
-Once installed, run `dotfiles.sh` from the PATH to reset your config. For instance, if you want to reset the `~/local.sh` file to default config, simply delete it, then run `dotfiles.sh`. You can also run `help.sh` for additional help.
-
-Documentation is a [work in progress.](https://timtr.github.io/dotfiles/)
-
-
-## Overview
-
-This is my personal collection of setup scripts for macOS and Linux (WIP). It includes settings for `zsh`, macOS Terminal, Xcode, Swift, and other tools and apps. This set will also install Homebrew and a recent version of Ruby.
-
-The setup will assume your settings are configured directly within the `dotfiles` folder where you cloned this repo. It will also add `~/Bin` and `/opt/homebrew/bin` to the PATH for local scripts and Homebrew support.
-
-Amost the most important pieces is the `dotfiles/Config/dot-gitignore` file that installs into `~/.gitignore` since that filters out build and other temporary files.
-
-
-## Work-specific Git configuration
-
-The `Config` folder includes a `dot-gitconfig-work` file that is installed to control the Git behavior for respositories in the `~/Work` folder. In this case, it is setting up to do code signing at commit time, and changing the username and email for those commits. This general approach can work for any sub-folder custom configuration, especially for custom email addresses depending on the folder they are stored in on disk. Feel free to edit to match your workflow and configuration.
-
-
-## Features
-
-**local.sh** - A file called `~/local.sh` is installed (if doesn't exist) that you can customize with settings that do not belong checked into GitHub, for instance set certain keys, or environment variables. This is also the file to add things like feature flags during development, define a Swift toolchain, or to enable secret build settings. Re-running `dotfiles.sh` will never override this file, so if you want to restart from scratch, just delete the file and the re-install dotfiles to get a fresh setup.
-
-**dotfiles.sh** - run this at any time (it is in $PATH) to reset all settings.
-
-**ZSH settings** - sets up the prompt, `$PATH`, and other basic settings. Note that `.zshenv` sets up `$PATH` so it works even when there is no interactive terminal session, and `.zshrc` will source this file as well.
-
-**Dropbox** - Optionally symlink in `$HOME` points to `~/Library/CloudStorage/Dropbox` if Dropbox is installed on the computer. I often have this commented out.
-
-
-## Using a custom Swift toolchain
-
-You can download new Swift toolchains from [Swift.org](https://swift.org/download/#snapshots) and set them to be used by default. The `~/local.sh` file is perfect to place to configure these settings per-machine, rather than configure in the main Dotfiles repo.
-
-## Demos
-
-Once installed, you can install Homebrew and run demos. For example, run `demo-homebrew.sh` from the `Dotfiles/Demos` to show a Terminal screen of software being downloaded, built, installed, and erased (in a repeating loop). Hit `CONTROL-Z` to quit that demo.
-
-You can also open the `Dotfiles/Demos/demo-safari-cycle.html` file to launch Safari and begin cycling through many web pages, simulating an automated web test harness.
-
-
-## Useful reference links
-
-Documentation (or the start of docs) can be [found here](https://timtr.github.io/Dotfiles/docs/). Note that the `docs` folder must be in lower-case for GitHub Pages support. Capital `Docs` will fail.
-
-Which `zsh` files contain which settings: [CodeSpaces and Dotfiles](https://unix.stackexchange.com/questions/71253/what-should-shouldnt-go-in-zshenv-zshrc-zlogin-zprofile-zlogout)
-
-Docs on using `setup.sh` with [GitHub CodeSpaces and Dotfiles](https://docs.github.com/en/codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account)
-
-
-### ZSH order of loading
-
-For reference, `zsh` config files are loaded in the following order:
-
-``` shell
- .zshenv -- global (even non-interactive), useful for PATH and tooling variables
- .zshrc -- loaded from the interactive shell (e.g. a Terminal window)
- .zprofile -- if login (not using this file in current setup)
-```
-
-`// end of file.`
diff --git a/dotfiles.xcodeproj/project.pbxproj b/dotfiles.xcodeproj/project.pbxproj
index 6c14410..449c26f 100644
--- a/dotfiles.xcodeproj/project.pbxproj
+++ b/dotfiles.xcodeproj/project.pbxproj
@@ -7,16 +7,15 @@
objects = {
/* Begin PBXFileReference section */
- BAD0E0152E5395CD00274CAF /* index.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = index.md; sourceTree = ""; };
BAD0E0162E5395CD00274CAF /* license.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = license.txt; sourceTree = ""; };
- BAD0E0172E5395CD00274CAF /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; };
+ BAD0E0172E5395CD00274CAF /* readme.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = readme.md; sourceTree = ""; };
BAD0E0182E5395CD00274CAF /* setup.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = setup.sh; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFileSystemSynchronizedRootGroup section */
- BAD0DFF42E5395B200274CAF /* Config */ = {
+ BA1096052EF509B400392276 /* Common */ = {
isa = PBXFileSystemSynchronizedRootGroup;
- path = Config;
+ path = Common;
sourceTree = "";
};
BAD0DFF92E5395B200274CAF /* Docs */ = {
@@ -45,13 +44,12 @@
BAD0DFDD2E53946700274CAF = {
isa = PBXGroup;
children = (
- BAD0E0172E5395CD00274CAF /* README.md */,
- BAD0DFF42E5395B200274CAF /* Config */,
+ BAD0E0172E5395CD00274CAF /* readme.md */,
BAD0DFF92E5395B200274CAF /* Docs */,
BAD0DFFE2E5395B200274CAF /* DotRunner */,
+ BA1096052EF509B400392276 /* Common */,
BAD0E0082E5395B200274CAF /* Linux */,
BAD0E0142E5395B200274CAF /* Mac */,
- BAD0E0152E5395CD00274CAF /* index.md */,
BAD0E0162E5395CD00274CAF /* license.txt */,
BAD0E0182E5395CD00274CAF /* setup.sh */,
);
@@ -64,7 +62,7 @@
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = 1;
- LastUpgradeCheck = 2600;
+ LastUpgradeCheck = 2620;
};
buildConfigurationList = BAD0DFE12E53946700274CAF /* Build configuration list for PBXProject "dotfiles" */;
developmentRegion = en;
@@ -87,12 +85,74 @@
BAD0DFE22E53946700274CAF /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = 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_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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ DEAD_CODE_STRIPPING = YES;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ ENABLE_USER_SCRIPT_SANDBOXING = YES;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ STRING_CATALOG_GENERATE_SYMBOLS = YES;
};
name = Debug;
};
BAD0DFE32E53946700274CAF /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = 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_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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ DEAD_CODE_STRIPPING = YES;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_USER_SCRIPT_SANDBOXING = YES;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ STRING_CATALOG_GENERATE_SYMBOLS = YES;
};
name = Release;
};
diff --git a/index.md b/index.md
deleted file mode 100644
index 2d09c5c..0000000
--- a/index.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# TimTr Dotfiles Documentation
-
-This is the `index.md` file at root. **Updated April 22, 2025.**
-
-This forms the root of the GitHub Pages documentation generated for this repository. It will link over to files within the `./Docs` folder of this repo for the actual documentation.
-
-* Documentation (work in progress) [table of contents](Docs/index.html).
-* Tasks and accomplishments in the [TODO.md file](Docs/todo.html) via relative path.
-* Link the [commands file](Docs/commands.html) via relative path.
-* Full link to the [overview file](Docs/overview.html).
-* The [README](readme.md) file for these `Dotfiles`.
-
-**Note:** the `docs` folder must be in lower-case for GitHub Pages support, if you want to use it as the basis of docs. Capital `Docs` will fail. At present, this repository is setup to use the root of the repo for Pages docs generation, so this `index.md` file manually links to other documentation files. At this time the docs support is mostly place holder to ensure the Pages support works.
-
-## Table of Contents
-
-This 'dotfiles` project is covered by the [MIT license](license.md).
-
-## Credits
-
-This `Dotfiles` setup is maintained by Tim Triemstra - [github.com/timtr](https://github.com/timtr)
-
-// end of file
diff --git a/license.txt b/license.txt
index 62cd0d2..af3b5e3 100644
--- a/license.txt
+++ b/license.txt
@@ -1,6 +1,6 @@
The MIT License
-Copyright (c) Tim Triemstra, https://timtr.com/
+Copyright (c) 2024-2025 Tim Triemstra, https://timtr.com/
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/readme.md b/readme.md
new file mode 100644
index 0000000..a2fb1d7
--- /dev/null
+++ b/readme.md
@@ -0,0 +1,85 @@
+# Dotfiles README.md
+
+To install, run `./setup.sh` from within the local `dotfiles` directory. Quit and re-launch the terminal. Re-run to reset at any time.
+
+```shell
+ git clone https://github.com/timtr/dotfiles.git
+ cd dotfiles
+ ./setup.sh
+```
+
+This will install files into `~/Bin` (or `~/bin` on Linux) and add that directory to your PATH. Run `help.sh` to see additional functionality. On macOS, Xcode must first be installed. Linux is tested on recent Ubuntu releases. Re-run `./setup.sh` from the `dotfiles` folder to reset to original files.
+
+More [documentation is available](https://timtr.github.io/dotfiles/Docs/), but is a work in progress.
+
+
+# TODO
+
+- Run `setup.sh` from `dotfiles` directory, and copy files to `/usr/local/bin/$USER` in the PATH
+- Move common settings and scripts to the `docfiles/Common` folder to ease maintenance
+- Add basic support for Linux
+
+
+## Overview
+
+This is the personal collection of setup scripts for macOS and Linux (WIP). It includes settings for macOS including `zsh` shell, `eza` for `ls` replacement, Terminal, Xcode, Swift, Homebrew, and Ruby. The Linux install is based on `bash` and still uses mostly default tools.
+
+The setup adds `$HOME/Bin` (or `~/bin` on Linux) and `/opt/homebrew/bin` to the PATH for local scripts and Homebrew support.
+
+
+## Work-specific Git configuration
+
+The macOS install includes a `dot-gitconfig-work` file that is installed to control the Git behavior for respositories stored in the `~/Documents` directory. It sets up code signing at commit time, and changes the username and email for those commits to work accounts. This general approach can work for any sub-directory custom configuration.
+
+
+## Setup SSH keys to easily login to remote servers
+
+TODO:
+
+
+## Features
+
+**local.sh** - A file called `~/local.sh` is installed (if doesn't exist) that you can customize with settings that do not belong checked into GitHub, for instance set certain keys, or environment variables. This is also the file to add things like feature flags during development, define a Swift toolchain, or to enable secret build settings. Re-running `dotfiles.sh` will never override this file, so if you want to restart from scratch, just delete the file and the re-install dotfiles to get a fresh setup.
+
+**dotfiles.sh** - run this at any time to reset all settings (it is in $PATH).
+
+**ZSH dotfiles** - set up the prompt, `$PATH`, and other basic settings. The `.zshenv` file sets up `$PATH` so it works even when there is no interactive terminal session, and `.zshrc` will source this file as well.
+
+**Dropbox** - Optional symlink in `$HOME` points to `~/Library/CloudStorage/Dropbox` if Dropbox is installed on the computer. This is often commented out.
+
+
+# Reference
+
+## Using a custom Swift toolchain
+
+You can download new Swift toolchains from [Swift.org](https://swift.org/download/#snapshots) and set them to be used by default. The `~/local.sh` file is perfect to place to configure these settings per-machine, rather than configure in the main Dotfiles repo.
+
+
+## Demos
+
+Once installed, you can install Homebrew and run demos. For example, run `demo-homebrew.sh` from the `Dotfiles/Demos` to show a Terminal screen of software being downloaded, built, installed, and erased (in a repeating loop). Hit `CONTROL-Z` to quit that demo.
+
+You can also open the `Dotfiles/Demos/demo-safari-cycle.html` file to launch Safari and begin cycling through many web pages, simulating an automated web test harness.
+
+
+## Useful links
+
+Documentation (or the start of docs) can be [found here](https://timtr.github.io/Dotfiles/docs/). Note that the `docs` directory must be in lower-case for GitHub Pages support. Capital `Docs` will fail.
+
+Which `zsh` files contain which settings: [CodeSpaces and Dotfiles](https://unix.stackexchange.com/questions/71253/what-should-shouldnt-go-in-zshenv-zshrc-zlogin-zprofile-zlogout)
+
+Docs on using `setup.sh` with [GitHub CodeSpaces and Dotfiles](https://docs.github.com/en/codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account)
+
+### ZSH order of loading
+
+For reference, `zsh` config files are loaded in the following order:
+
+``` shell
+ .zshenv -- global (even non-interactive), useful for PATH and tooling variables
+ .zshrc -- loaded from the interactive shell (e.g. a Terminal window)
+ .zprofile -- if login (not using this file in current setup)
+```
+
+
+
+`// end of file.`
diff --git a/setup.sh b/setup.sh
index 52965b1..d12f1ba 100755
--- a/setup.sh
+++ b/setup.sh
@@ -1,16 +1,24 @@
-#!/usr/bin/env zsh
+#!/bin/bash
#
-# 'setup.sh' is understood as a startup by GitHub Codespaces and other VMs
+# 'setup.sh' is used by GitHub and other VMs at startup
+#
+# This script is setup to launch using the bash shell since it is
+# common across supported platforms. It doesn't do anything very complex
+# so the code should work even on very old versions of bash.
+#
+# The subsequent scripts in this repo may use more advanced features
+# so they may specify zsh or bash as needed, with Linux using primarily
+# bash. On macOS zsh is now the default shell and bash is quite old.
# Set Dotfiles home to be the folder in which `setup.sh` was run (requires ZSH)
-export DOTFILES_ROOT=${0:a:h}
+export DOTFILES_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-# This script will run either the Linux or macOS installer
+# This script launches either Linux or macOS installer (do not "source" the scripts)
if [[ $OSTYPE == darwin* ]]; then
- source $DOTFILES_ROOT/Mac/dotfiles.sh
+ $DOTFILES_ROOT/Mac/setup-mac.sh
else
- source $DOTFILES_ROOT/Linux/dotfiles.sh
+ $DOTFILES_ROOT/Linux/setup-linux.sh
fi
exit 0
@@ -24,9 +32,13 @@ exit 0
#### Saved script tidbits may want later
-# This is the name of the actual file that was run (don't need it)
+# -- This is the name of the actual file that was run (don't need it)
# DOTFILES_SETUP_FILE=${0:a}
+# -- This was how to get the containing folder via zsh
+# export DOTFILES_ROOT=${0:a:h}
+
+
# This piece of script would require that you launch the setup while