Skip to content

Instantly share code, notes, and snippets.

@mikemcbride
Last active August 4, 2020 13:55
Show Gist options
  • Save mikemcbride/b315844abbb39921191719a023792901 to your computer and use it in GitHub Desktop.
Save mikemcbride/b315844abbb39921191719a023792901 to your computer and use it in GitHub Desktop.
Atom Settings Backup by https://atom.io/packages/sync-settings
# Your init script
#
# Atom will evaluate this file each time a new window is opened. It is run
# after packages are loaded/activated and after the previous editor state
# has been restored.
#
# An example hack to log to the console when each text editor is saved.
#
# atom.workspace.observeTextEditors (editor) ->
# editor.onDidSave ->
# console.log "Saved! #{editor.getPath()}"
# Your keymap
#
# You can find more information about keymaps in these guides:
# * https://atom.io/docs/latest/customizing-atom#customizing-key-bindings
# * https://atom.io/docs/latest/advanced/keymaps
#
# This file uses CoffeeScript Object Notation (CSON).
# If you are unfamiliar with CSON, you can read more about it here:
# https://github.com/bevry/cson#what-is-cson
# Stop emmet from hijacking tab from autocomplete
'atom-text-editor.autocomplete-active:not([mini])':
'tab': 'autocomplete-plus:confirm'
# better pane splits/movement
'atom-text-editor':
'cmd-k up': 'pane:split-up-and-copy-active-item'
'cmd-k down': 'pane:split-down-and-copy-active-item'
'cmd-k left': 'pane:split-left-and-copy-active-item'
'cmd-k right': 'pane:split-right-and-copy-active-item'
'shift-cmd-k up': 'window:move-active-item-to-pane-above'
'shift-cmd-k down': 'window:move-active-item-to-pane-below'
'shift-cmd-k left': 'window:move-active-item-to-pane-on-left'
'shift-cmd-k right': 'window:move-active-item-to-pane-on-right'
'cmd-alt-ctrl-f': 'EditorConfig:fix-file'
'ctrl-alt-g': 'github:toggle-git-tab'
{
"about": {
"version": "1.9.1"
},
"archive-view": {
"version": "0.65.2"
},
"atom-dark-syntax": {
"version": "0.29.1",
"theme": "syntax"
},
"atom-dark-ui": {
"version": "0.53.3",
"theme": "ui"
},
"atom-light-syntax": {
"version": "0.29.1",
"theme": "syntax"
},
"atom-light-ui": {
"version": "0.46.3",
"theme": "ui"
},
"autocomplete-atom-api": {
"version": "0.10.7"
},
"autocomplete-css": {
"version": "0.17.5"
},
"autocomplete-html": {
"version": "0.8.8"
},
"autocomplete-modules": {
"version": "2.3.0"
},
"autocomplete-paths": {
"version": "2.12.2"
},
"autocomplete-plus": {
"version": "2.42.3"
},
"autocomplete-snippets": {
"version": "1.12.1"
},
"autoflow": {
"version": "0.29.4"
},
"autosave": {
"version": "0.24.6"
},
"background-tips": {
"version": "0.28.0"
},
"base16-tomorrow-dark-theme": {
"version": "1.6.0",
"theme": "syntax"
},
"base16-tomorrow-light-theme": {
"version": "1.6.0",
"theme": "syntax"
},
"bookmarks": {
"version": "0.46.0"
},
"bracket-matcher": {
"version": "0.91.2"
},
"busy-signal": {
"version": "2.0.1"
},
"command-palette": {
"version": "0.43.5"
},
"dalek": {
"version": "0.2.2"
},
"deprecation-cop": {
"version": "0.56.9"
},
"dev-live-reload": {
"version": "0.48.1"
},
"early-riser-syntax": {
"version": "1.1.0",
"theme": "syntax"
},
"editorconfig": {
"version": "2.6.1"
},
"electron-highlighter-syntax": {
"version": "2.2.2",
"theme": "syntax"
},
"encoding-selector": {
"version": "0.23.9"
},
"exception-reporting": {
"version": "0.43.1"
},
"file-icons": {
"version": "2.1.42"
},
"find-and-replace": {
"version": "0.219.3"
},
"fuzzy-finder": {
"version": "1.14.2"
},
"git-diff": {
"version": "1.3.9"
},
"github": {
"version": "0.34.2"
},
"go-to-line": {
"version": "0.33.0"
},
"grammar-selector": {
"version": "0.50.1"
},
"image-view": {
"version": "0.64.0"
},
"incompatible-packages": {
"version": "0.27.3"
},
"intentions": {
"version": "1.1.5"
},
"jekyll": {
"version": "2.1.0"
},
"keybinding-resolver": {
"version": "0.39.0"
},
"language-c": {
"version": "0.60.19"
},
"language-clojure": {
"version": "0.22.8"
},
"language-coffee-script": {
"version": "0.50.0"
},
"language-csharp": {
"version": "1.1.0"
},
"language-css": {
"version": "0.44.4"
},
"language-dotfiles": {
"version": "1.2.0"
},
"language-fish-shell": {
"version": "1.1.0"
},
"language-gfm": {
"version": "0.90.8"
},
"language-git": {
"version": "0.19.1"
},
"language-go": {
"version": "0.47.2"
},
"language-groovy": {
"version": "0.7.0"
},
"language-html": {
"version": "0.53.1"
},
"language-hyperlink": {
"version": "0.17.1"
},
"language-java": {
"version": "0.31.5"
},
"language-javascript": {
"version": "0.134.1"
},
"language-json": {
"version": "1.0.5"
},
"language-less": {
"version": "0.34.3"
},
"language-make": {
"version": "0.23.0"
},
"language-mustache": {
"version": "0.14.5"
},
"language-nunjucks": {
"version": "4.2.1"
},
"language-objective-c": {
"version": "0.16.0"
},
"language-perl": {
"version": "0.38.1"
},
"language-php": {
"version": "0.44.5"
},
"language-postcss": {
"version": "1.3.1"
},
"language-property-list": {
"version": "0.9.1"
},
"language-python": {
"version": "0.53.4"
},
"language-ruby": {
"version": "0.72.23"
},
"language-ruby-on-rails": {
"version": "0.25.3"
},
"language-rust-bundled": {
"version": "0.1.0"
},
"language-sass": {
"version": "0.62.1"
},
"language-shellscript": {
"version": "0.28.2"
},
"language-source": {
"version": "0.9.0"
},
"language-sql": {
"version": "0.25.10"
},
"language-text": {
"version": "0.7.4"
},
"language-todo": {
"version": "0.29.4"
},
"language-toml": {
"version": "0.20.0"
},
"language-typescript": {
"version": "0.6.3"
},
"language-vue": {
"version": "0.26.0"
},
"language-xml": {
"version": "0.35.3"
},
"language-yaml": {
"version": "0.32.0"
},
"less-than-slash": {
"version": "0.19.0"
},
"line-ending-selector": {
"version": "0.7.7"
},
"link": {
"version": "0.31.6"
},
"markdown-preview": {
"version": "0.160.2"
},
"metrics": {
"version": "1.8.1"
},
"notifications": {
"version": "0.71.0"
},
"one-dark-syntax": {
"version": "1.8.4",
"theme": "syntax"
},
"one-dark-ui": {
"version": "1.12.5",
"theme": "ui"
},
"one-light-syntax": {
"version": "1.8.4",
"theme": "syntax"
},
"one-light-ui": {
"version": "1.12.5",
"theme": "ui"
},
"open-on-github": {
"version": "1.3.2"
},
"package-generator": {
"version": "1.3.0"
},
"pretty-json": {
"version": "2.1.2"
},
"react": {
"version": "0.18.0"
},
"set-syntax": {
"version": "0.4.0"
},
"settings-view": {
"version": "0.261.4"
},
"snippets": {
"version": "1.5.1"
},
"solarized-dark-syntax": {
"version": "1.3.0",
"theme": "syntax"
},
"solarized-light-syntax": {
"version": "1.3.0",
"theme": "syntax"
},
"sort-lines": {
"version": "0.19.0"
},
"spell-check": {
"version": "0.76.1"
},
"status-bar": {
"version": "1.8.17"
},
"status-bar-blame": {
"version": "2.0.3"
},
"styleguide": {
"version": "0.49.12"
},
"symbols-view": {
"version": "0.118.4"
},
"sync-settings": {
"version": "4.3.8"
},
"tabs": {
"version": "0.110.0"
},
"timecop": {
"version": "0.36.2"
},
"tree-view": {
"version": "0.228.0"
},
"update-package-dependencies": {
"version": "0.13.1"
},
"vim-mode-plus": {
"version": "1.36.4"
},
"vuejs-atom-snippets": {
"version": "1.0.2"
},
"welcome": {
"version": "0.36.9"
},
"whitespace": {
"version": "0.37.7"
},
"wrap-guide": {
"version": "0.41.0"
}
}
{
"*": {
"atom-ide-ui": {
"atom-ide-diagnostics-ui": {
"showDiagnosticTraces": true,
"showDirectoryColumn": true
},
"atom-ide-terminal": {
"black": "#212836",
"blue": "#71b1fe",
"brightBlue": "#71b1fe",
"brightCyan": "#4ff2f8",
"brightGreen": "#6af669",
"brightMagenta": "#d59df6",
"brightRed": "#e76572",
"brightWhite": "#a8b5d1",
"brightYellow": "#fffa9e",
"cursorStyle": "underline",
"cyan": "#4ff2f8",
"fontFamily": "fira mono, operator mono, hack, monospace",
"green": "#6af669",
"magenta": "#d59df6",
"red": "#e76572",
"white": "#a8b5d1",
"yellow": "#fffa9e"
},
"use": {
"atom-ide-diagnostics-ui": "always"
}
},
"atom-material-ui": {
"colors": {
"abaseColor": "#34febb",
"accentColor": "#ff4d88",
"genAccent": true,
"paintCursor": true
},
"fonts": {},
"tabs": {
"compactTabs": true
},
"ui": {
"panelContrast": true,
"panelShadows": true,
"useAnimations": false
}
},
"autocomplete-paths": {
"enableHtmlSupport": true,
"scopes": [
{
"extensions": [
"js",
"jsx",
"ts",
"tsx",
"coffee",
"json"
],
"prefixes": [
"import\\s+.*?from\\s+['\"]",
"import\\s+['\"]",
"require\\(['\"]",
"define\\(\\[?['\"]"
],
"relative": true,
"replaceOnInsert": [
[
"([\\/]?index)?\\.jsx?$",
""
],
[
"([\\/]?index)?\\.ts$",
""
],
[
"([\\/]?index)?\\.coffee$",
""
]
],
"scopes": [
"javascript"
]
}
]
},
"autocomplete-plus": {
"fileBlacklist": [
"*.md",
"*.txt"
]
},
"bracket-matcher": {
"highlightMatchingLineNumber": true
},
"color-picker": {
"preferredFormat": "HEX"
},
"core": {
"audioBeep": false,
"closeDeletedFileTabs": true,
"colorProfile": "srgb",
"customFileTypes": {
"source.gfm": [
"mdx"
],
"source.sql": [
"plb",
"pls"
]
},
"disabledPackages": [
"welcome",
"autocomplete-atom-api",
"background-tips",
"language-toml",
"whitespace",
"wrap-guide"
],
"ignoredNames": [
".git",
".DS_Store",
"node_modules",
"._*",
"bower_components"
],
"projectHome": "/Users/mcbridem/src",
"telemetryConsent": "limited",
"themes": [
"one-dark-ui",
"electron-highlighter-syntax"
],
"titleBar": "custom-inset",
"uriHandlerRegistration": "always"
},
"editor": {
"fontFamily": "operator mono",
"fontSize": 16
},
"exception-reporting": {
"userId": "e1bb5ff6-bdce-fcea-dcc3-735e8320377d"
},
"file-icons": {
"forceShow": true
},
"filetype-color": {
"enabled": true
},
"find-and-replace": {
"useRipgrep": true
},
"firefox-syntax": {},
"fuzzy-finder": {
"scoringSystem": "fast",
"useRipGrep": true
},
"highlight-selected": {
"hideHighlightOnSelectedWord": true,
"highlightBackground": true
},
"ide-vue": {},
"linter": {
"lintOnChange": false
},
"linter-jshint": {
"disableWhenNoJshintrcFileInPath": true
},
"linter-ui-default": {
"panelHeight": 69,
"panelRepresents": "Entire Project",
"showPanel": true,
"statusBarPosition": "Right"
},
"node-debugger": {
"nodePath": "/usr/local/bin/node"
},
"nord-atom-ui": {
"darkerFormFocusEffect": true,
"tabSizing": false
},
"one-dark-ui": {
"hideDockButtons": true,
"stickyHeaders": true
},
"one-light-ui": {
"hideDockButtons": true,
"stickyHeaders": true
},
"pigments": {
"extendAutocompleteToVariables": true,
"markerType": "native-dot"
},
"platformio-ide-terminal": {
"ansiColors": {
"normal": {
"black": "#212836",
"blue": "#82aaff",
"cyan": "#4ff2f8",
"green": "#6af699",
"magenta": "#c792ea",
"red": "#ff5874",
"white": "#a8b5d1",
"yellow": "#fffa9e"
},
"zBright": {
"brightBlack": "#7992b4",
"brightBlue": "#82aaff",
"brightCyan": "#4ff2f8",
"brightGreen": "#6af699",
"brightMagenta": "#c792ea",
"brightRed": "#ff5874",
"brightWhite": "#a8b5d1",
"brightYellow": "#fffa9e"
}
},
"core": {
"shell": "/usr/local/bin/fish"
},
"iconColors": {
"blue": "#82aaff",
"cyan": "#4ff2f8",
"green": "#6af699",
"magenta": "#c792ea",
"orange": "#ff9569",
"pink": "#f99edf",
"purple": "#c792ea",
"red": "#ff5874",
"yellow": "#fffa9e"
},
"style": {},
"toggles": {
"cursorBlink": false
}
},
"prettier-atom": {
"formatOnSaveOptions": {
"isDisabledIfNoConfigFile": true,
"javascriptScopes": [
"javascript",
"source.js",
"source.jsx",
"source.js.jsx",
"source.babel",
"source.js-semantic",
"text.html.basic",
"text.html.vue"
],
"showInStatusBar": true
},
"prettierOptions": {
"trailingComma": "es5"
},
"useEslint": true,
"useStylelint": true
},
"pristine-ui": {
"hideDockButtons": true
},
"spell-check": {
"locales": [
"en-US"
]
},
"sync-settings": {
"quietUpdateCheck": true,
"hiddenSettings": {}
},
"tabs": {
"addNewTabsAtEnd": true,
"enableVcsColoring": true,
"usePreviewTabs": true
},
"tone-syntax": {
"color": {
"bg": "#212836",
"duo": "#82aaff",
"tri": "#34febb",
"uno": "#97a5c9"
}
},
"tree-view": {
"hideVcsIgnoredFiles": true
},
"welcome": {
"showOnStartup": false
}
}
}
'.source.js':
'log':
'prefix': 'log'
'body': 'console.log($1)'
'CommonJS Require':
'prefix': 'req'
'body': 'const ${1:module} = require(\'${1:module}\')'
'module.exports function':
'prefix': 'mef'
'body': """module.exports = function ($1) {
$2
}
"""
'Arrow Function':
'prefix': 'af'
'body': """(${1}) => {
$2
}
"""
'Arrow Function (one param)':
'prefix': 'afo'
'body': """${1:it} => {
$2
}
"""
'error':
'prefix': 'err'
'body': 'console.error(${1:err})'
'import':
'prefix': 'import'
'body': 'import $1 from \'$2\''
'.text.html.vue .source.js.embedded.html':
'log':
'prefix': 'log'
'body': 'console.log($1)'
'Arrow Function':
'prefix': 'af'
'body': """() => {
$1
}
"""
'Arrow Function (one param)':
'prefix': 'afo'
'body': """${1:it} => {
$2
}
"""
'import':
'prefix': 'import'
'body': 'import $1 from \'$2\''
'error':
'prefix': 'err'
'body': 'console.error(${1:err})'
'.source.gfm':
'post image':
'prefix': 'postimg'
'body': '''{%
include post_figure.html
name="$1"
alt="$2"
caption="$3"
%}'''
'newpost':
'prefix': 'newpost'
'body': '''---
layout: post
published: true
title: "$1"
date: $2-$3-$4
imgPath: "/assets/img/$2/$3/$4"
previewImage: "/assets/img/$2/$3/$4/preview-medium.jpg"
previewImageSet: "/assets/img/$2/$3/$4/preview-small.jpg 320w, /assets/img/$2/$3/$4/preview-medium.jpg 576w"
excerpt: "$5"
---'''
// variables
:root {
// defaults to colors from Electron Highlighter theme.
--cyan: #4ff2f8;
--blue: #82aaff;
--purple: #c792ea;
--green: #6af699;
--red: #ff5874;
--orange: #ffbf7a;
--yellow: #fffa9e;
--customCursorColor: #34febb;
--gitStatusModified: var(--orange);
--gitStatusAdded: var(--green);
}
// global styles
// atom-workspace is essentially the "body" tag.
atom-workspace {
// hide the Project tab in left dock
atom-dock.left .panes .pane .tab-bar {
display: none;
}
&.theme-early-riser-syntax {
// override color variables in early riser syntax theme.
--cyan: #36b9ac;
--blue: #0261dc;
--purple: #8626dc;
--green: #13b130;
--red: #e20a00;
--orange: #ec790e;
--yellow: #ffa90a;
--customCursorColor: #0261dc;
--gitStatusAdded: var(--green);
--gitStatusModified: var(--orange);
}
&.theme-one-dark-ui {
.tree-view {
// fix file above active file not being selectable
.list-item.file > .name {
width: 100%;
}
// don't color file icons on selected tree-view item
&:focus .selected > .icon::before {
color: #fff;
}
}
.settings-view .package-card .meta-controls .status-indicator {
background: var(--purple);
&.is-disabled {
background: var(--red);
}
}
}
// set the git status color on both active and inactive tabs.
// adjust the opacity set on inactive git status tabs.
.tab-bar .tab {
&, &:not(.active) {
.status-modified { color: var(--gitStatusModified) }
.status-added { color: var(--gitStatusAdded) }
opacity: 1;
}
}
// hide active tab indicator
atom-pane-axis > atom-pane.active,
atom-pane-container > atom-pane.pane {
.tab.active:before {
display: none;
}
}
// the default regex for matching a Spec file in file-icons expects all test files
// to be in a folder called "test(s)" or "spec(s)". Our APIs put them in the app next
// to the files they describe. This override makes all files with a JS icon class that has
// a file name ending in "Spec.js" get a "test-js" icon.
.icon.js-icon {
&[data-name$="Spec.js"]:before {
font-family: file-icons;
content: "\ea64";
}
}
// make the heart on the update packages alert pretty
.packages .updates-container .alert.icon-heart::before {
color: #ed2655; // pinkish red heart
}
&.theme-electron-highlighter-syntax,
&.theme-early-riser-syntax {
// Prettier `formatOnSave` indicator in status bar color should match syntax theme green.
div[data-prettier-format-on-save='enabled'] {
color: var(--green);
}
// same with the busy-signal
busy-signal.idle::before { background: var(--green); }
atom-text-editor {
// override cursor color. Customize the color in that mixin.
#useCustomCursorColor();
&[mini]::after {
background: var(--customCursorColor);
}
}
}
}
atom-panel.bottom {
border-right: 0;
}
// style the atom-text-editor element itself
atom-text-editor {
// allows fonts with ligatures to use the ligatures
text-rendering: optimizeLegibility;
// turn off ligatures in strings and regular expressions
&.editor .syntax--string.syntax--quoted,
&.editor .syntax--string.syntax--regexp {
-webkit-font-feature-settings: "liga" off, "calt" off;
}
// override styles for find-and-replace and similar inputs to give top/bottom padding
// default is line-height: 2em but that makes cursor fill full height
// this adds top/bottom padding and adjusts line-height so that full height still adds up to 2em
// but there is room around cursor.
&[mini] {
line-height: 1.5em;
padding-top: .25em;
padding-bottom: .25em;
}
#noCursorBlinking();
// give gutter a faux right border.
// we can use an actual border here, but that affects the gutter width.
// this approach keeps the gutter width in tact.
.gutter-container::after {
content: '';
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 1px;
background-color: rgba(0,0,0,0.1);
}
}
// ==================================================
// MIXINS
// ==================================================
// sets a custom cursor color.
// accepts a hex code as a param, but has a default.
#useCustomCursorColor() {
// apply color to the regular cursor
&.is-focused {
.cursor,
&[mini] .cursor {
border-color: var(--customCursorColor);
border-width: 2px; // some themes change the border width... make sure it's 2px.
}
}
// override cursor color in vim-mode-plus
&.vim-mode-plus.normal-mode,
&.vim-mode-plus.visual-mode,
&.vim-mode-plus.operator-pending-mode,
&.vim-mode-plus.insert-mode.replace {
&.is-focused,
&.vim-mode-plus-input-focused,
&.vim-mode-plus-search-input-focused {
.cursor {
opacity: 0.4;
background-color: var(--customCursorColor);
}
}
}
}
#noCursorBlinking() {
// no cursor blinking
&.is-focused .cursors.blink-off .cursor {
opacity: 1;
}
// but keep opacity in vim modes
&.vim-mode-plus.normal-mode,
&.vim-mode-plus.visual-mode,
&.vim-mode-plus.operator-pending-mode,
&.vim-mode-plus.insert-mode.replace {
&.is-focused,
&.vim-mode-plus-input-focused,
&.vim-mode-plus-search-input-focused {
.cursor {
opacity: 0.4;
}
}
}
}
@mikemcbride
Copy link
Author

This is where my Atom settings are synced.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment