Skip to content

Instantly share code, notes, and snippets.

@tedjames
Last active February 9, 2017 06:41
Show Gist options
  • Save tedjames/9feec9007320b032113857f01e916250 to your computer and use it in GitHub Desktop.
Save tedjames/9feec9007320b032113857f01e916250 to your computer and use it in GitHub Desktop.

Ted's most excellent atom 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
#
# 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
'.editor:not(.mini)':
'ctrl-z' : 'emmet:expand-abbreviation'
[
{
"name": "about",
"version": "1.7.2"
},
{
"name": "archive-view",
"version": "0.62.2"
},
{
"name": "ariake-dark-syntax",
"version": "0.1.3",
"theme": "syntax"
},
{
"name": "atom-clock",
"version": "0.1.3"
},
{
"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": "autocomplete-atom-api",
"version": "0.10.0"
},
{
"name": "autocomplete-css",
"version": "0.14.1"
},
{
"name": "autocomplete-html",
"version": "0.7.2"
},
{
"name": "autocomplete-modules",
"version": "1.6.7"
},
{
"name": "autocomplete-plus",
"version": "2.34.2"
},
{
"name": "autocomplete-snippets",
"version": "1.11.0"
},
{
"name": "autoflow",
"version": "0.29.0"
},
{
"name": "autosave",
"version": "0.24.0"
},
{
"name": "background-tips",
"version": "0.26.1"
},
{
"name": "base16-tomorrow-dark-theme",
"version": "1.4.0",
"theme": "syntax"
},
{
"name": "base16-tomorrow-light-theme",
"version": "1.4.0",
"theme": "syntax"
},
{
"name": "bookmarks",
"version": "0.43.4"
},
{
"name": "bracket-matcher",
"version": "0.85.2"
},
{
"name": "color-picker",
"version": "2.2.5"
},
{
"name": "command-palette",
"version": "0.39.2"
},
{
"name": "deprecation-cop",
"version": "0.56.2"
},
{
"name": "dev-live-reload",
"version": "0.47.0"
},
{
"name": "electron-highlighter-syntax",
"version": "1.7.0",
"theme": "syntax"
},
{
"name": "emmet",
"version": "2.4.3"
},
{
"name": "encoding-selector",
"version": "0.22.0"
},
{
"name": "exception-reporting",
"version": "0.40.2"
},
{
"name": "expose",
"version": "0.13.0"
},
{
"name": "file-icons",
"version": "2.0.15"
},
{
"name": "find-and-replace",
"version": "0.206.1"
},
{
"name": "fuzzy-finder",
"version": "1.4.1"
},
{
"name": "git-diff",
"version": "1.2.0"
},
{
"name": "go-to-line",
"version": "0.31.2"
},
{
"name": "grammar-selector",
"version": "0.48.2"
},
{
"name": "highlight-selected",
"version": "0.12.0"
},
{
"name": "image-view",
"version": "0.60.0"
},
{
"name": "incompatible-packages",
"version": "0.26.1"
},
{
"name": "keybinding-resolver",
"version": "0.35.0"
},
{
"name": "language-c",
"version": "0.54.1"
},
{
"name": "language-clojure",
"version": "0.22.1"
},
{
"name": "language-coffee-script",
"version": "0.48.2"
},
{
"name": "language-csharp",
"version": "0.14.0"
},
{
"name": "language-css",
"version": "0.41.0"
},
{
"name": "language-gfm",
"version": "0.88.0"
},
{
"name": "language-git",
"version": "0.19.0"
},
{
"name": "language-go",
"version": "0.43.1"
},
{
"name": "language-html",
"version": "0.47.1"
},
{
"name": "language-hyperlink",
"version": "0.16.1"
},
{
"name": "language-java",
"version": "0.25.0"
},
{
"name": "language-javascript",
"version": "0.125.1"
},
{
"name": "language-json",
"version": "0.18.3"
},
{
"name": "language-less",
"version": "0.30.0"
},
{
"name": "language-make",
"version": "0.22.3"
},
{
"name": "language-mustache",
"version": "0.13.1"
},
{
"name": "language-objective-c",
"version": "0.15.1"
},
{
"name": "language-perl",
"version": "0.37.0"
},
{
"name": "language-php",
"version": "0.37.3"
},
{
"name": "language-property-list",
"version": "0.9.0"
},
{
"name": "language-python",
"version": "0.45.1"
},
{
"name": "language-ruby",
"version": "0.70.4"
},
{
"name": "language-ruby-on-rails",
"version": "0.25.1"
},
{
"name": "language-sass",
"version": "0.57.1"
},
{
"name": "language-shellscript",
"version": "0.25.0"
},
{
"name": "language-source",
"version": "0.9.0"
},
{
"name": "language-sql",
"version": "0.25.2"
},
{
"name": "language-text",
"version": "0.7.1"
},
{
"name": "language-todo",
"version": "0.29.1"
},
{
"name": "language-toml",
"version": "0.18.1"
},
{
"name": "language-xml",
"version": "0.34.15"
},
{
"name": "language-yaml",
"version": "0.27.2"
},
{
"name": "less-than-slash",
"version": "0.16.0"
},
{
"name": "line-ending-selector",
"version": "0.5.1"
},
{
"name": "link",
"version": "0.31.2"
},
{
"name": "linter",
"version": "1.11.21"
},
{
"name": "linter-eslint",
"version": "8.1.0"
},
{
"name": "markdown-preview",
"version": "0.159.6"
},
{
"name": "metrics",
"version": "1.1.3"
},
{
"name": "notifications",
"version": "0.66.1"
},
{
"name": "one-dark-syntax",
"version": "1.6.0",
"theme": "syntax"
},
{
"name": "one-dark-ui",
"version": "1.9.1",
"theme": "ui"
},
{
"name": "one-light-syntax",
"version": "1.6.0",
"theme": "syntax"
},
{
"name": "one-light-ui",
"version": "1.9.1",
"theme": "ui"
},
{
"name": "open-on-github",
"version": "1.2.1"
},
{
"name": "package-generator",
"version": "1.0.2"
},
{
"name": "pigments",
"version": "0.39.0"
},
{
"name": "react",
"version": "0.16.2"
},
{
"name": "settings-view",
"version": "0.246.0"
},
{
"name": "snippets",
"version": "1.0.5"
},
{
"name": "solarized-dark-syntax",
"version": "1.1.1",
"theme": "syntax"
},
{
"name": "solarized-light-syntax",
"version": "1.1.1",
"theme": "syntax"
},
{
"name": "spell-check",
"version": "0.70.2"
},
{
"name": "status-bar",
"version": "1.7.0"
},
{
"name": "styleguide",
"version": "0.48.0"
},
{
"name": "symbols-view",
"version": "0.114.0"
},
{
"name": "sync-settings",
"version": "0.8.1"
},
{
"name": "tabs",
"version": "0.104.1"
},
{
"name": "timecop",
"version": "0.33.2"
},
{
"name": "todo-show",
"version": "1.9.0"
},
{
"name": "tree-view",
"version": "0.213.1"
},
{
"name": "update-package-dependencies",
"version": "0.10.0"
},
{
"name": "welcome",
"version": "0.36.0"
},
{
"name": "whitespace",
"version": "0.36.1"
},
{
"name": "wordcount",
"version": "2.10.4"
},
{
"name": "wrap-guide",
"version": "0.39.0"
},
{
"name": "zentabs",
"version": "0.8.8"
}
]
{
"atom-clock": {
"dateFormat": "hh:mma :: dddd, M.D.YYYY"
},
"core": {
"telemetryConsent": "no",
"themes": [
"one-light-ui",
"ariake-dark-syntax"
]
},
"editor": {
"fontSize": 12
},
"exception-reporting": {
"userId": "14ede29b-c65b-5b71-6720-28e8200febb3"
},
"linter": {
"errorPanelHeight": 147
},
"linter-eslint": {
"useGlobalEslint": true
},
"minimap": {
"plugins": {
"highlight-selected": true,
"highlight-selectedDecorationsZIndex": 0,
"pigments": true,
"pigmentsDecorationsZIndex": 0
}
},
"sync-settings": {},
"terminal-plus": {
"style": {
"theme": "homebrew"
},
"toggles": {
"autoClose": true
}
},
"todo-show": {
"ignoreThesePaths": [
"**/node_modules/",
"**/vendor/",
"**/bower_components/",
"**/ios",
"**/android"
]
},
"welcome": {
"showOnStartup": false
},
"zentabs": {
"neverCloseUnsaved": true
}
}
# 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':
'Class Component':
'prefix': 'cc'
'body': """
import React, { Component } from 'react';
export default class $1 extends Component {
render() {
return (
$2
);
}
}
"""
'Functional Component':
'prefix': 'fc'
'body': """
import React from 'react'
const $1 = (props) => {
return (
$2
);
};
export default $1;
"""
'State Constructor':
'prefix': 'con'
'body': """
constructor(props) {
super(props);
this.state = ({
$1: $2,
});
}
"""
'this.state':
'prefix': 'ts'
'body': """
this.state.$1
"""
'this.props':
'prefix': 'tp'
'body': """
this.props.$1
"""
'Defined Styles':
'prefix': 'std'
'body': """
style={styles.$1}
"""
'Inline Styles':
'prefix': 'sti'
'body': """
style={{ $1: $2 }}
"""
'Create Style Sheet':
'prefix': 'css'
'body': """
const styles = {
$1: {
$2: $3,
}
};
"""
'Set State':
'prefix': 'ss'
'body': """
this.setState({ $1: $2 })
"""
'Import Statement':
'prefix': 'import'
'body': """
import $1 from '$2'
"""
'Self-Enclosing Component':
'prefix': 'c'
'body': """
<$1 />
"""
'mapStateToProps':
'prefix': 'maps'
'body': """
const mapStateToProps = state => {
return {
$1: state.$2
};
};
"""
'Reducer':
'prefix': 'reducer'
'body': """
import { $1 } from '$2'
const INITIAL_STATE = {};
export default (state = INITIAL_STATE, action) => {
switch (action.type) {
case $1:
$3
default:
return state;
}
};
"""
'Action Creator':
'prefix': 'action'
'body': """
export const $1 = $2 => {
return {
$3
};
};
"""
'Action Type':
'prefix': 'type'
'body': """
export const $1 = '$2';
"""
'Style Object':
'prefix': 'so'
'body': """
$1: {
$2: $3,
},
"""
'Import: React-Redux Connect':
'prefix': 'connect'
'body': """
import { connect } from 'react-redux'
"""
'Import: Shoutem UI Import':
'prefix': 'shout'
'body': """
import { $1 } from '@shoutem/ui'
"""
'Export and Connect to Redux':
'prefix': 'exportConnect'
'body': """
export default connect($2, $3)($1);
"""
'Import: Shoutem UI Import':
'prefix': 'fontawesome'
'body': """
import Icon from 'react-native-vector-icons/FontAwesome'
"""
/*
* Your Stylesheet
*
* This stylesheet is loaded when Atom starts up and is reloaded automatically
* when it is changed and saved.
*
* Add your own CSS or Less to fully customize Atom.
* If you are unfamiliar with Less, you can read more about it here:
* http://lesscss.org
*/
/*
* Examples
* (To see them, uncomment and save)
*/
// style the background color of the tree view
.tree-view {
//background-color: rgb(22, 22, 32);
box-shadow: inset -5px 0px 5px rgba(0, 0, 0, 0.075);
}
// style the background and foreground colors on the atom-text-editor-element itself
atom-text-editor {
// color: white;
// background-color: rgba(36, 39, 46, 0.05);
}
// To style other content in the text editor's shadow DOM, use the ::shadow expression
atom-text-editor::shadow .cursor {
// border-color: red;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment