Skip to content

Instantly share code, notes, and snippets.

@mherodev mherodev/init.coffee
Last active Feb 2, 2017

Embed
What would you like to do?
# 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.onDidActivateInitialPackages (p) ->
if gitPlus = atom.packages.getActivePackage('git-plus')?.mainModule.provideService()
# Undo Last Commit
# This reset targets the previous line in the git reflog, so it can be called again to undo itself.
gitPlus.registerCommand 'atom-text-editor', 'akonwi:undo-last-commit', ->
gitPlus.getRepo() # If there are multiple repos in the project, you will be prompted to select which to use
.then (repo) -> gitPlus.run repo, 'reset HEAD@{1}'
# 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
#
# If you're having trouble with your keybindings not working, try the
# Keybinding Resolver: `Cmd+.` on OS X and `Ctrl+.` on other platforms. See the
# Debugging Guide for more information:
# * https://atom.io/docs/latest/hacking-atom-debugging#check-the-keybindings
#
# 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
'atom-workspace':
'ctrl-tab': 'pane:show-next-item'
'ctrl-tab ^ctrl': 'unset!'
'ctrl-shift-tab': 'pane:show-previous-item'
'ctrl-shift-tab ^ctrl': 'unset!'
'alt-{': 'tabs:close-tabs-to-left',
'alt-}': 'tabs:close-tabs-to-right',
'alt-|': 'tabs:close-other-tabs',
'alt-R': 'tree-view:reveal-active-file',
'.tree-view':
'r': 'tree-view:rename',
'.platform-darwin atom-workspace':
'shift-cmd-T': 'unset!'
[
{
"name": "Handlebars",
"version": "1.7.0"
},
{
"name": "about",
"version": "1.7.2"
},
{
"name": "archive-view",
"version": "0.62.0"
},
{
"name": "atom-beautify",
"version": "0.29.17"
},
{
"name": "atom-dark-syntax",
"version": "0.28.0",
"theme": "syntax"
},
{
"name": "atom-dark-ui",
"version": "0.53.0",
"theme": "ui"
},
{
"name": "atom-easy-jsdoc",
"version": "4.9.0"
},
{
"name": "atom-light-syntax",
"version": "0.29.0",
"theme": "syntax"
},
{
"name": "atom-light-ui",
"version": "0.46.0",
"theme": "ui"
},
{
"name": "atom-prettify",
"version": "0.1.3"
},
{
"name": "atom-ternjs",
"version": "0.17.0"
},
{
"name": "autocomplete-atom-api",
"version": "0.10.0"
},
{
"name": "autocomplete-css",
"version": "0.14.1"
},
{
"name": "autocomplete-emojis",
"version": "2.5.0"
},
{
"name": "autocomplete-html",
"version": "0.7.2"
},
{
"name": "autocomplete-plus",
"version": "2.33.1"
},
{
"name": "autocomplete-snippets",
"version": "1.11.0"
},
{
"name": "autoflow",
"version": "0.29.0"
},
{
"name": "autosave",
"version": "0.23.2"
},
{
"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.2"
},
{
"name": "bracket-matcher",
"version": "0.85.1"
},
{
"name": "command-palette",
"version": "0.39.1"
},
{
"name": "deprecation-cop",
"version": "0.55.1"
},
{
"name": "dev-live-reload",
"version": "0.47.0"
},
{
"name": "editorconfig",
"version": "2.2.0"
},
{
"name": "encoding-selector",
"version": "0.22.0"
},
{
"name": "exception-reporting",
"version": "0.40.0"
},
{
"name": "file-icons",
"version": "2.0.13"
},
{
"name": "find-and-replace",
"version": "0.204.5"
},
{
"name": "fold-comments",
"version": "0.6.0"
},
{
"name": "fold-functions",
"version": "0.5.0"
},
{
"name": "fold-search-results",
"version": "1.0.5"
},
{
"name": "fuzzy-finder",
"version": "1.4.0"
},
{
"name": "git-clone",
"version": "0.2.0"
},
{
"name": "git-diff",
"version": "1.2.0"
},
{
"name": "git-plus",
"version": "7.2.0"
},
{
"name": "git-status",
"version": "0.3.4"
},
{
"name": "git-time-machine",
"version": "1.5.4"
},
{
"name": "go-to-line",
"version": "0.31.2"
},
{
"name": "grammar-selector",
"version": "0.48.2"
},
{
"name": "hyperclick",
"version": "0.0.40"
},
{
"name": "image-view",
"version": "0.60.0"
},
{
"name": "incompatible-packages",
"version": "0.26.1"
},
{
"name": "js-hyperclick",
"version": "1.10.1"
},
{
"name": "keybinding-resolver",
"version": "0.35.0"
},
{
"name": "language-babel"
},
{
"name": "language-c",
"version": "0.54.0"
},
{
"name": "language-clojure",
"version": "0.22.1"
},
{
"name": "language-coffee-script",
"version": "0.48.1"
},
{
"name": "language-csharp",
"version": "0.13.0"
},
{
"name": "language-css",
"version": "0.40.1"
},
{
"name": "language-gfm",
"version": "0.88.0"
},
{
"name": "language-git",
"version": "0.15.0"
},
{
"name": "language-go",
"version": "0.43.0"
},
{
"name": "language-html",
"version": "0.47.1"
},
{
"name": "language-hyperlink",
"version": "0.16.1"
},
{
"name": "language-java",
"version": "0.24.0"
},
{
"name": "language-javascript",
"version": "0.122.0"
},
{
"name": "language-json",
"version": "0.18.3"
},
{
"name": "language-less",
"version": "0.29.6"
},
{
"name": "language-make",
"version": "0.22.2"
},
{
"name": "language-mustache",
"version": "0.13.0"
},
{
"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.8.0"
},
{
"name": "language-python",
"version": "0.45.1"
},
{
"name": "language-ruby",
"version": "0.70.2"
},
{
"name": "language-ruby-on-rails",
"version": "0.25.1"
},
{
"name": "language-sass",
"version": "0.57.0"
},
{
"name": "language-shellscript",
"version": "0.23.0"
},
{
"name": "language-source",
"version": "0.9.0"
},
{
"name": "language-sql",
"version": "0.25.0"
},
{
"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.12"
},
{
"name": "language-yaml",
"version": "0.27.1"
},
{
"name": "last-cursor-position",
"version": "0.9.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": "linter-scss-lint",
"version": "3.0.4"
},
{
"name": "linter-stylelint",
"version": "3.7.0"
},
{
"name": "markdown-preview",
"version": "0.159.3"
},
{
"name": "merge-conflicts",
"version": "1.4.4"
},
{
"name": "metrics",
"version": "1.1.3"
},
{
"name": "minimap",
"version": "4.26.8"
},
{
"name": "minimap-cursorline",
"version": "0.2.0"
},
{
"name": "minimap-find-and-replace",
"version": "4.5.1"
},
{
"name": "minimap-git-diff",
"version": "4.3.1"
},
{
"name": "minimap-linter",
"version": "1.6.0"
},
{
"name": "minimap-split-diff",
"version": "0.3.2"
},
{
"name": "notifications",
"version": "0.65.1"
},
{
"name": "one-dark-syntax",
"version": "1.6.0",
"theme": "syntax"
},
{
"name": "one-dark-ui",
"version": "1.8.2",
"theme": "ui"
},
{
"name": "one-light-syntax",
"version": "1.6.0",
"theme": "syntax"
},
{
"name": "one-light-ui",
"version": "1.8.2",
"theme": "ui"
},
{
"name": "open-in-browser",
"version": "0.4.7"
},
{
"name": "open-on-github",
"version": "1.2.1"
},
{
"name": "package-generator",
"version": "1.0.2"
},
{
"name": "pigments",
"version": "0.39.0"
},
{
"name": "platformio-ide-terminal",
"version": "2.2.2"
},
{
"name": "pretty-json",
"version": "1.6.1"
},
{
"name": "project-manager",
"version": "3.3.3"
},
{
"name": "react",
"version": "0.16.2"
},
{
"name": "script",
"version": "3.14.1"
},
{
"name": "settings-view",
"version": "0.244.0"
},
{
"name": "snippets",
"version": "1.0.4"
},
{
"name": "solarized-dark-syntax",
"version": "1.1.1",
"theme": "syntax"
},
{
"name": "solarized-light-syntax",
"version": "1.1.1",
"theme": "syntax"
},
{
"name": "sort-lines",
"version": "0.14.0"
},
{
"name": "spell-check",
"version": "0.68.5"
},
{
"name": "split-diff",
"version": "1.1.1"
},
{
"name": "status-bar",
"version": "1.6.0"
},
{
"name": "styleguide",
"version": "0.48.0"
},
{
"name": "symbols-view",
"version": "0.113.1"
},
{
"name": "sync-settings",
"version": "0.8.1"
},
{
"name": "tabs",
"version": "0.103.1"
},
{
"name": "timecop",
"version": "0.33.2"
},
{
"name": "toggle-quotes",
"version": "1.0.0"
},
{
"name": "tree-view",
"version": "0.211.1"
},
{
"name": "update-package-dependencies",
"version": "0.10.0"
},
{
"name": "welcome",
"version": "0.35.1"
},
{
"name": "whitespace",
"version": "0.35.0"
},
{
"name": "wrap-guide",
"version": "0.39.0"
}
]
{
"atom-beautify": {
"general": {
"_analyticsUserId": "8993f145-f50c-4ddd-9e21-f06a37c3cd0b"
}
},
"atom-clock": {
"dateFormat": " h:mm",
"showClockIcon": true
},
"atom-easy-jsdoc": {
"beta": true,
"useReturns": true
},
"bracket-matcher": {
"autocompleteBrackets": false,
"autocompleteSmartQuotes": false,
"wrapSelectionsInBrackets": false
},
"core": {
"audioBeep": false,
"disabledPackages": [
"wrap-guide",
"atom-handlebars",
"file-type-icons",
"smart-tab-name",
"linter-scss-lint",
"atom-easy-jsdoc",
"atom-ternjs"
],
"excludeVcsIgnoredPaths": false,
"ignoredNames": [
"*.css.map",
".git",
".hg",
".svn",
".DS_Store",
"._*",
"Thumbs.db",
"bower_components",
"node_modules",
"build",
"logs",
"vendor",
"dist",
"coverage"
],
"projectHome": "/Users/mherold/git",
"telemetryConsent": "limited"
},
"editor": {
"autoIndent": false,
"autoIndentOnPaste": false,
"fontSize": 12,
"showIndentGuide": true,
"showInvisibles": true,
"tabLength": 4
},
"exception-reporting": {
"userId": "aaf6db18-e358-fc16-93ff-96ec8a1ffcd7"
},
"git-clone": {
"open_in_current_window": false,
"target_directory": "/Users/mherold/git/temp"
},
"git-plus": {
"experimental": {
"customCommands": true
},
"general": {
"_analyticsUserId": "8db27194-fd97-467e-8ffb-f6873410f6b3"
}
},
"jsdoc-generator": {},
"linter": {
"errorPanelHeight": 24,
"showErrorInline": false
},
"linter-eslint": {},
"minimap": {
"plugins": {
"cursorline": true,
"cursorlineDecorationsZIndex": 0,
"find-and-replace": true,
"find-and-replaceDecorationsZIndex": 0,
"git-diff": true,
"git-diffDecorationsZIndex": 0,
"linter": true,
"linterDecorationsZIndex": 0,
"pigments": true,
"pigmentsDecorationsZIndex": 0,
"split-diff": true,
"split-diffDecorationsZIndex": 0
}
},
"react": {
"enabledForAllJavascriptFiles": true
},
"spell-check": {
"grammars": [
"source.asciidoc",
"source.gfm",
"text.git-commit",
"text.plain",
"text.plain.null-grammar",
"comment.block.js"
]
},
"split-diff": {
"diffWords": true,
"ignoreWhitespace": true,
"leftEditorColor": "red",
"rightEditorColor": "green",
"syncHorizontalScroll": true
},
"sync-settings": {
"quietUpdateCheck": true
},
"terminal-plus": {
"toggles": {
"autoClose": true
}
},
"tree-view": {},
"welcome": {
"showOnStartup": false
},
"whitespace": {}
}
# 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':
'console.log(JSON.stringify())':
'prefix': 'console.log'
'body': 'console.log(\'$1: \' + JSON.stringify($1, null, \'\\\\t\'));'
'import React':
'prefix': 'import React'
'body': 'import React, { PropTypes } from \'react\';'
/*
* 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: whitesmoke;
}
// style the background and foreground colors on the atom-text-editor-element itself
atom-text-editor {
// color: white;
// background-color: hsl(180, 24%, 12%);
}
// To style other content in the text editor's shadow DOM, use the ::shadow expression
atom-text-editor::shadow .cursor {
// border-color: red;
}
// hide terminal-plus status-bar
.terminal-plus.status-bar{
display: none;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.