Skip to content

Instantly share code, notes, and snippets.

@GertjanReynaert
Last active May 23, 2017 07:48
Show Gist options
  • Save GertjanReynaert/9df53ad7bd8653ef31fc to your computer and use it in GitHub Desktop.
Save GertjanReynaert/9df53ad7bd8653ef31fc to your computer and use it in GitHub Desktop.
Atom 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()}"
atom.packages.onDidActivatePackage (pack) ->
if pack.name == 'ex-mode'
Ex = pack.mainModule.provideEx()
Ex.registerAlias 'W', 'w'
Ex.registerAlias 'Wq', 'wq'
Ex.registerAlias 'wQ', 'wq'
Ex.registerAlias 'Q', 'q'
# Your keymap
#
# Atom keymaps work similarly to style sheets. Just as style sheets use
# selectors to apply styles to elements, Atom keymaps use selectors to associate
# keystrokes with events in specific contexts. Unlike style sheets however,
# each selector can only be declared once.
#
# You can create a new keybinding in this file by typing "key" and then hitting
# tab.
#
# Here's an example taken from Atom's built-in keymap:
#
# 'atom-text-editor':
# 'enter': 'editor:newline'
#
# 'atom-workspace':
# 'ctrl-shift-p': 'core:move-up'
# 'ctrl-p': 'core:move-down'
#
# You can find more information about keymaps in these guides:
# * https://atom.io/docs/latest/using-atom-basic-customization#customizing-key-bindings
# * https://atom.io/docs/latest/behind-atom-keymaps-in-depth
#
# This file uses CoffeeScript Object Notation (CSON).
# If you are unfamiliar with CSON, you can read more about it in the
# Atom Flight Manual:
# https://atom.io/docs/latest/using-atom-basic-customization#cson
'.platform-darwin':
'ctrl-p': 'fuzzy-finder:toggle-file-finder'
'ctrl-a h': 'window:focus-pane-on-left'
'ctrl-a j': 'window:focus-pane-below'
'ctrl-a k': 'window:focus-pane-above'
'ctrl-a l': 'window:focus-pane-on-right'
'ctrl-n': 'nuclide-file-tree:toggle'
'body':
'ctrl-a s': 'pane:split-right'
'ctrl-a x': 'pane:split-down'
'.platform-darwin .tree-view':
's': 'tree-view:open-selected-entry-right'
'x': 'tree-view:open-selected-entry-down'
'atom-text-editor.vim-mode-plus:not(.insert-mode)':
':': 'ex-mode:open'
'atom-text-editor.vim-mode-plus.normal-mode':
's': 'vim-mode-plus:surround-word'
'c s': 'vim-mode-plus:change-surround'
'd s': 'vim-mode-plus:delete-surround'
[
{
"name": "about",
"version": "1.7.6"
},
{
"name": "archive-view",
"version": "0.63.2"
},
{
"name": "atom-dark-syntax",
"version": "0.28.0",
"theme": "syntax"
},
{
"name": "atom-dark-ui",
"version": "0.53.0",
"theme": "ui"
},
{
"name": "atom-light-syntax",
"version": "0.29.0",
"theme": "syntax"
},
{
"name": "atom-light-ui",
"version": "0.46.0",
"theme": "ui"
},
{
"name": "atom-panda-syntax",
"version": "0.18.0",
"theme": "syntax"
},
{
"name": "autocomplete-atom-api",
"version": "0.10.1"
},
{
"name": "autocomplete-css",
"version": "0.16.2"
},
{
"name": "autocomplete-html",
"version": "0.8.0"
},
{
"name": "autocomplete-plus",
"version": "2.35.4"
},
{
"name": "autocomplete-snippets",
"version": "1.11.0"
},
{
"name": "autoflow",
"version": "0.29.0"
},
{
"name": "autosave",
"version": "0.24.3"
},
{
"name": "background-tips",
"version": "0.27.0"
},
{
"name": "base16-tomorrow-dark-theme",
"version": "1.5.0",
"theme": "syntax"
},
{
"name": "base16-tomorrow-light-theme",
"version": "1.5.0",
"theme": "syntax"
},
{
"name": "bookmarks",
"version": "0.44.4"
},
{
"name": "bracket-matcher",
"version": "0.85.5"
},
{
"name": "cobalt2-syntax",
"version": "0.5.1",
"theme": "syntax"
},
{
"name": "command-palette",
"version": "0.40.4"
},
{
"name": "dalek",
"version": "0.2.1"
},
{
"name": "deprecation-cop",
"version": "0.56.7"
},
{
"name": "dev-live-reload",
"version": "0.47.1"
},
{
"name": "duotone-dark-syntax",
"version": "2.1.0",
"theme": "syntax"
},
{
"name": "duotone-snow",
"version": "2.2.0",
"theme": "syntax"
},
{
"name": "encoding-selector",
"version": "0.23.3"
},
{
"name": "ex-mode",
"version": "0.14.0"
},
{
"name": "exception-reporting",
"version": "0.41.4"
},
{
"name": "file-icons",
"version": "2.1.6"
},
{
"name": "find-and-replace",
"version": "0.208.1"
},
{
"name": "fuzzy-finder",
"version": "1.5.6"
},
{
"name": "git-diff",
"version": "1.3.6"
},
{
"name": "github",
"version": "0.0.9"
},
{
"name": "go-to-line",
"version": "0.32.1"
},
{
"name": "grammar-selector",
"version": "0.49.4"
},
{
"name": "image-view",
"version": "0.61.2"
},
{
"name": "incompatible-packages",
"version": "0.27.3"
},
{
"name": "keybinding-resolver",
"version": "0.38.0"
},
{
"name": "language-babel",
"version": "2.62.0"
},
{
"name": "language-c",
"version": "0.58.0"
},
{
"name": "language-clojure",
"version": "0.22.2"
},
{
"name": "language-coffee-script",
"version": "0.48.7"
},
{
"name": "language-csharp",
"version": "0.14.2"
},
{
"name": "language-css",
"version": "0.42.2"
},
{
"name": "language-elm",
"version": "1.5.0"
},
{
"name": "language-gfm",
"version": "0.89.0"
},
{
"name": "language-git",
"version": "0.19.1"
},
{
"name": "language-go",
"version": "0.44.0"
},
{
"name": "language-html",
"version": "0.47.2"
},
{
"name": "language-hyperlink",
"version": "0.16.1"
},
{
"name": "language-java",
"version": "0.27.1"
},
{
"name": "language-javascript",
"version": "0.126.1"
},
{
"name": "language-json",
"version": "0.19.1"
},
{
"name": "language-less",
"version": "0.32.0"
},
{
"name": "language-liquid",
"version": "0.5.1"
},
{
"name": "language-make",
"version": "0.22.3"
},
{
"name": "language-mustache",
"version": "0.14.1"
},
{
"name": "language-objective-c",
"version": "0.15.1"
},
{
"name": "language-perl",
"version": "0.37.0"
},
{
"name": "language-php",
"version": "0.38.0"
},
{
"name": "language-property-list",
"version": "0.9.1"
},
{
"name": "language-python",
"version": "0.45.2"
},
{
"name": "language-ruby",
"version": "0.71.0"
},
{
"name": "language-ruby-on-rails",
"version": "0.25.2"
},
{
"name": "language-sass",
"version": "0.59.0"
},
{
"name": "language-shellscript",
"version": "0.25.0"
},
{
"name": "language-source",
"version": "0.9.0"
},
{
"name": "language-sql",
"version": "0.25.5"
},
{
"name": "language-text",
"version": "0.7.2"
},
{
"name": "language-todo",
"version": "0.29.1"
},
{
"name": "language-toml",
"version": "0.18.1"
},
{
"name": "language-xml",
"version": "0.35.0"
},
{
"name": "language-yaml",
"version": "0.29.0"
},
{
"name": "line-ending-selector",
"version": "0.6.3"
},
{
"name": "link",
"version": "0.31.3"
},
{
"name": "linter",
"version": "2.1.4"
},
{
"name": "linter-eslint",
"version": "8.2.0"
},
{
"name": "linter-flow",
"version": "5.6.0"
},
{
"name": "linter-rubocop",
"version": "2.1.1"
},
{
"name": "markdown-preview",
"version": "0.159.12"
},
{
"name": "metrics",
"version": "1.2.3"
},
{
"name": "notifications",
"version": "0.67.1"
},
{
"name": "nuclide",
"version": "0.228.0"
},
{
"name": "one-dark-syntax",
"version": "1.7.1",
"theme": "syntax"
},
{
"name": "one-dark-ui",
"version": "1.10.4",
"theme": "ui"
},
{
"name": "one-light-syntax",
"version": "1.7.1",
"theme": "syntax"
},
{
"name": "one-light-ui",
"version": "1.10.4",
"theme": "ui"
},
{
"name": "open-on-github",
"version": "1.2.1"
},
{
"name": "package-generator",
"version": "1.1.1"
},
{
"name": "pigments",
"version": "0.39.1"
},
{
"name": "prettier-atom",
"version": "0.31.1"
},
{
"name": "ruby-block",
"version": "0.3.6"
},
{
"name": "set-syntax",
"version": "0.3.2"
},
{
"name": "settings-view",
"version": "0.249.4"
},
{
"name": "snippets",
"version": "1.1.4"
},
{
"name": "solarized-dark-syntax",
"version": "1.1.2",
"theme": "syntax"
},
{
"name": "solarized-light-syntax",
"version": "1.1.2",
"theme": "syntax"
},
{
"name": "sort-lines",
"version": "0.14.0"
},
{
"name": "spell-check",
"version": "0.71.4"
},
{
"name": "status-bar",
"version": "1.8.8"
},
{
"name": "styleguide",
"version": "0.49.6"
},
{
"name": "symbols-view",
"version": "0.116.0"
},
{
"name": "sync-settings",
"version": "0.8.1"
},
{
"name": "tabs",
"version": "0.106.0"
},
{
"name": "timecop",
"version": "0.36.0"
},
{
"name": "todo-show",
"version": "1.11.0"
},
{
"name": "tool-bar",
"version": "1.1.0"
},
{
"name": "tree-view",
"version": "0.217.0-7"
},
{
"name": "update-package-dependencies",
"version": "0.11.0"
},
{
"name": "vim-mode-plus",
"version": "0.92.1"
},
{
"name": "welcome",
"version": "0.36.3"
},
{
"name": "whitespace",
"version": "0.36.2"
},
{
"name": "wrap-guide",
"version": "0.40.2"
}
]
{
"atom-material-ui": {
"colors": {
"abaseColor": "#e4d000"
}
},
"core": {
"customFileTypes": {
"source.ini": [
".buckconfig",
".hgrc",
".flowconfig"
],
"source.json": [
".arcconfig",
"BUCK.autodeps"
],
"source.python": [
"BUCK"
]
},
"disabledPackages": [
"tree-view",
"linter"
],
"telemetryConsent": "limited",
"themes": [
"one-dark-ui",
"cobalt2-syntax"
]
},
"duotone-dark-syntax": {
"color": {
"uno": "#be71e3"
}
},
"editor": {
"fontFamily": "Operator Mono, Fira Code, Menlo",
"fontSize": 15,
"showIndentGuide": true,
"tabType": "soft"
},
"exception-reporting": {
"userId": "20c37c2e-f8c7-71ab-ddeb-bc3f5a1f671c"
},
"file-icons": {},
"language-elm": {
"elmOraclePath": "/usr/local/bin/elm-oracle"
},
"linter": {
"errorPanelHeight": 73
},
"linter-elm-make": {
"elmMakeExecutablePath": "/usr/local/bin/elm-make"
},
"linter-eslint": {
"disableWhenNoEslintrcFileInPath": true,
"fixOnSave": true
},
"linter-rubocop": {
"command": "/Users/gertjanreynaert/.rbenv/shims/rubocop"
},
"linter-scss-lint": {
"disableWhenNoConfigFileInPath": true,
"executablePath": "/Users/gertjanreynaert/.rbenv/shims/scss-lint"
},
"nuclide": {
"nuclide-code-format": {
"formatOnSave": true
},
"nuclide-diagnostics-ui": {},
"nuclide-distraction-free-mode": {
"hideToolBar": true
},
"nuclide-file-tree": {
"showOpenFiles": false
},
"nuclide-flow": {
"canUseFlowBin": true
},
"nuclide-health": {
"toolbarJewel": "None"
},
"nuclide-home": {
"showHome": false
},
"nuclide-working-sets": {
"workingSets": [
{
"name": "store",
"active": false,
"uris": [
"/Users/gertjanreynaert/Code/GertjanReynaert/store",
"/Users/gertjanreynaert/Code/NephroFlow/nephroflow-manager"
]
},
{
"name": "nephroflow",
"active": true,
"uris": [
"/Users/gertjanreynaert/Code/NephroFlow/nephroflow-api",
"/Users/gertjanreynaert/Code/NephroFlow/nephroflow-docker",
"/Users/gertjanreynaert/Code/NephroFlow/nephroflow-manager",
"/Users/gertjanreynaert/Downloads/ORM_ORU_GLIMS"
]
}
]
}
},
"pigments": {
"extendAutocompleteToVariables": true
},
"prettier-atom": {
"formatOnSaveOptions": {
"enabled": true
},
"prettierOptions": {
"bracketSpacing": false,
"parser": "flow",
"singleQuote": true
}
},
"sync-settings": {
"analytics": false,
"gistDescription": "Atom sync settings"
},
"terminal-plus": {
"style": {
"defaultPanelHeight": "250px"
}
},
"todo-show": {
"showInTable": [
"Type",
"Text",
"File"
]
},
"tool-bar": {
"fullWidth": false,
"iconSize": "16px",
"position": "Right"
},
"vim-mode-plus": {},
"welcome": {
"showOnStartup": false
}
}
# Your snippets
#
# Atom snippets allow you to enter a simple prefix in the editor and hit tab to
# expand the prefix into a larger code block with templated values.
#
# You can create a new snippet in this file by typing "snip" and then hitting
# tab.
#
# An example CoffeeScript snippet to expand log to console.log:
#
# '.source.coffee':
# 'Console log':
# 'prefix': 'log'
# 'body': 'console.log $1'
#
# Each scope (e.g. '.source.coffee' above) can only be declared once.
#
# This file uses CoffeeScript Object Notation (CSON).
# If you are unfamiliar with CSON, you can read more about it in the
# Atom Flight Manual:
# https://atom.io/docs/latest/using-atom-basic-customization#cson
'.source.js.jsx':
'console.log':
'prefix': 'console'
'body': 'console.log($1);'
'debugger':
'prefix': 'deb'
'body': 'debugger;'
'describe':
'prefix': 'describe'
'body': """
describe('$1', () => {
$2
});
"""
'it':
'prefix': 'it'
'body': """
it('$1', () => {
$2
});
"""
'shrug':
'prefix': 'shrug'
'body': 'console.log(\'¯\\\\\\\\_(ツ)_/¯\');'
'intl context':
'prefix': 'intl_context'
'body': 'static contextTypes = { intl: intlShape }'
'import':
'prefix': 'import'
'body': 'import $1 from \'~/src/$2\';'
'constructor':
'prefix': 'constructor'
'body': """
constructor(props) {
super(props);
$1
}
"""
'componentWillMount':
'prefix': 'componentWillMount'
'body': """
componentWillMount() {
$1
}
"""
'componentDidMount':
'prefix': 'componentDidMount'
'body': """
componentDidMount() {
$1
}
"""
'componentWillReceiveProps':
'prefix': 'componentWillReceiveProps'
'body': """
componentWillReceiveProps(newProps) {
$1
}
"""
'shouldComponentUpdate':
'prefix': 'shouldComponentUpdate'
'body': """
shouldComponentUpdate(newProps) {
$1
}
"""
'componentWillUpdate':
'prefix': 'componentWillUpdate'
'body': """
componentWillUpdate(nextProps) {
$1
}
"""
'componentDidUpdate':
'prefix': 'componentDidUpdate'
'body': """
componentDidUpdate(prevProps) {
$1
}
"""
'componentWillUnmount':
'prefix': 'componentWillUnmount'
'body': """
componentWillUnmount() {
$1
}
"""
'render':
'prefix': 'render'
'body': """
render() {
return (
$1
);
}
"""
'functional component':
'prefix': 'reactfunc'
'body': """
// @flow
import React from 'react';
type Props = {
$3
};
const $1 = ({ $2 }: Props) => {
return (
$4
);
};
$1.displayName = '$1';
export default $1;
"""
'statefull component':
'prefix': 'reactstate'
'body': """
// @flow
import React, { Component } from 'react';
type Props = {
$3
};
class $1 extends Component {
props: Props
render() {
return (
$2
);
}
}
export default $1;
"""
'connect':
'prefix': 'connectredux'
'body': """
// @flow
import { connect } from 'react-redux';
const mapStateToProps = state => {
return {
$1
success: state.success.toJS(),
errors: state.errors.toJS(),
activity: state.activity.toJS(),
};
};
const mapDispatchToProps = {
$2
};
export default connect(
mapStateToProps,
mapDispatchToProps
)($3);
"""
// show character matches in search in #ffc600
.character-match, .quick-open-file-search-match {
color: #ffc600 !important;
}
// Disable useless file tree / source control switcher
// Disable anoying right toolbar
.tool-bar.tool-bar-right.tool-bar-vertical.tool-bar-16px
{
display: none !important;
}
atom-text-editor {
text-rendering: optimizeLegibility;
// line-height: 1.7;
}
atom-text-editor::shadow {
// Keep ligatures when not using ligature font
// js
.keyword.operator.comparison.js,
.storage.type.arrow.js,
.keyword.operator.spread.js,
.keyword.operator.spread.jsx,
.keyword.operator.increment.js,
.keyword.operator.decrement.js,
.keyword.operator.logical.js,
.keyword.operator.relational.js,
// ruby
.keyword.operator.comparison.ruby,
.punctuation.separator.namespace.ruby,
.keyword.operator.assignment.augmented.ruby,
.support.function.kernel.ruby,
.punctuation.separator.key-value,
.keyword.operator.logical.ruby,
.punctuation.definition.variable.ruby,
// elm
.keyword.operator.elm
{
font-family: 'Fira Code' !important;
}
// Put jsx attributes and `this` keyword in italic
.entity.other.attribute-name.js,
.variable.language {
font-style: italic;
}
// Remove slightly wrong bg color from cobalt2
.storage.type.function,
.variable,
{
background-color: transparent;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment