Skip to content

Instantly share code, notes, and snippets.

@bernikr
Last active March 20, 2018 16:57
Show Gist options
  • Save bernikr/2ed5af012d8078bd1b35 to your computer and use it in GitHub Desktop.
Save bernikr/2ed5af012d8078bd1b35 to your computer and use it in GitHub Desktop.
# 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()}"
exec = require('child_process').exec
path = require('path')
# Compile a markdown file to a latex PDF with Pandoc
atom.commands.add 'atom-text-editor', 'Pandoc:Convert-to-PDF', ->
filePath = atom.workspace.getActivePaneItem().buffer.file.path
workingDir = path.dirname(filePath)
inputFileName = path.basename(filePath)
outputFileName = path.basename(filePath, path.extname(filePath)) + ".pdf"
cmd = "pandoc #{inputFileName} -o #{outputFileName}"
exec cmd, {cwd: workingDir}, (error, stdout, stderr) ->
if error
console.log('pandoc exec error: ' + error)
else
atom.workspace.open(path.join(path.dirname(filePath), outputFileName), {split: "right"})
# 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.
#
# 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 here:
# https://github.com/bevry/cson#what-is-cson
'atom-text-editor:not(.mini)':
'ctrl-shift->': 'linter:next-error'
'.platform-win32 atom-text-editor':
'ctrl-alt-.': 'spell-check:correct-misspelling'
[
{
"name": "Zen",
"version": "0.18.0"
},
{
"name": "about",
"version": "1.8.0"
},
{
"name": "archive-view",
"version": "0.64.2"
},
{
"name": "atom-dark-syntax",
"version": "0.29.0",
"theme": "syntax"
},
{
"name": "atom-dark-ui",
"version": "0.53.1",
"theme": "ui"
},
{
"name": "atom-light-syntax",
"version": "0.29.0",
"theme": "syntax"
},
{
"name": "atom-light-ui",
"version": "0.46.1",
"theme": "ui"
},
{
"name": "atom-material-syntax",
"version": "1.0.8",
"theme": "syntax"
},
{
"name": "atom-material-ui",
"version": "2.1.3",
"theme": "ui"
},
{
"name": "autocomplete-atom-api",
"version": "0.10.7"
},
{
"name": "autocomplete-css",
"version": "0.17.5"
},
{
"name": "autocomplete-html",
"version": "0.8.4"
},
{
"name": "autocomplete-plus",
"version": "2.40.2"
},
{
"name": "autocomplete-snippets",
"version": "1.12.0"
},
{
"name": "autoflow",
"version": "0.29.3"
},
{
"name": "autosave",
"version": "0.24.6"
},
{
"name": "background-tips",
"version": "0.27.1"
},
{
"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.45.1"
},
{
"name": "bottom-dock",
"version": "0.4.4"
},
{
"name": "bracket-matcher",
"version": "0.89.1"
},
{
"name": "busy-signal",
"version": "1.4.3"
},
{
"name": "color-picker",
"version": "2.2.5"
},
{
"name": "command-palette",
"version": "0.43.5"
},
{
"name": "dalek",
"version": "0.2.1"
},
{
"name": "deprecation-cop",
"version": "0.56.9"
},
{
"name": "dev-live-reload",
"version": "0.48.1"
},
{
"name": "editor-stats",
"version": "0.17.0"
},
{
"name": "editorconfig",
"version": "2.2.2"
},
{
"name": "encoding-selector",
"version": "0.23.8"
},
{
"name": "exception-reporting",
"version": "0.43.1"
},
{
"name": "file-icons",
"version": "2.1.17"
},
{
"name": "find-and-replace",
"version": "0.215.5"
},
{
"name": "fuzzy-finder",
"version": "1.7.5"
},
{
"name": "git-diff",
"version": "1.3.9"
},
{
"name": "github",
"version": "0.10.3"
},
{
"name": "go-to-line",
"version": "0.33.0"
},
{
"name": "grammar-selector",
"version": "0.49.9"
},
{
"name": "image-view",
"version": "0.62.4"
},
{
"name": "incompatible-packages",
"version": "0.27.3"
},
{
"name": "intentions",
"version": "1.1.5"
},
{
"name": "keybinding-resolver",
"version": "0.38.1"
},
{
"name": "language-c",
"version": "0.59.2"
},
{
"name": "language-clojure",
"version": "0.22.7"
},
{
"name": "language-coffee-script",
"version": "0.49.3"
},
{
"name": "language-csharp",
"version": "1.0.1"
},
{
"name": "language-css",
"version": "0.42.10"
},
{
"name": "language-gfm",
"version": "0.90.3"
},
{
"name": "language-git",
"version": "0.19.1"
},
{
"name": "language-go",
"version": "0.45.2"
},
{
"name": "language-html",
"version": "0.49.0"
},
{
"name": "language-hyperlink",
"version": "0.16.3"
},
{
"name": "language-java",
"version": "0.28.0"
},
{
"name": "language-javascript",
"version": "0.128.3"
},
{
"name": "language-json",
"version": "0.19.1"
},
{
"name": "language-latex",
"version": "1.1.1"
},
{
"name": "language-less",
"version": "0.34.2"
},
{
"name": "language-make",
"version": "0.22.3"
},
{
"name": "language-mustache",
"version": "0.14.5"
},
{
"name": "language-objective-c",
"version": "0.15.1"
},
{
"name": "language-perl",
"version": "0.38.1"
},
{
"name": "language-pfm",
"version": "0.82.0"
},
{
"name": "language-php",
"version": "0.43.1"
},
{
"name": "language-property-list",
"version": "0.9.1"
},
{
"name": "language-python",
"version": "0.49.2"
},
{
"name": "language-ruby",
"version": "0.71.4"
},
{
"name": "language-ruby-on-rails",
"version": "0.25.3"
},
{
"name": "language-sass",
"version": "0.61.4"
},
{
"name": "language-shellscript",
"version": "0.26.1"
},
{
"name": "language-source",
"version": "0.9.0"
},
{
"name": "language-sql",
"version": "0.25.10"
},
{
"name": "language-text",
"version": "0.7.3"
},
{
"name": "language-todo",
"version": "0.29.4"
},
{
"name": "language-toml",
"version": "0.18.2"
},
{
"name": "language-typescript",
"version": "0.3.2"
},
{
"name": "language-xml",
"version": "0.35.2"
},
{
"name": "language-yaml",
"version": "0.31.2"
},
{
"name": "latex",
"version": "0.49.0"
},
{
"name": "latexer",
"version": "0.3.0"
},
{
"name": "line-ending-selector",
"version": "0.7.5"
},
{
"name": "link",
"version": "0.31.4"
},
{
"name": "linter",
"version": "2.2.0"
},
{
"name": "linter-coffeelint",
"version": "1.3.1"
},
{
"name": "linter-csslint",
"version": "2.0.0"
},
{
"name": "linter-htmlhint",
"version": "1.4.0"
},
{
"name": "linter-jshint",
"version": "3.1.6"
},
{
"name": "linter-jsonlint",
"version": "1.3.0"
},
{
"name": "linter-less",
"version": "2.6.0"
},
{
"name": "linter-manager",
"version": "0.2.12"
},
{
"name": "linter-markdown",
"version": "5.2.0"
},
{
"name": "linter-ui-default",
"version": "1.7.1"
},
{
"name": "markdown-preview",
"version": "0.159.20"
},
{
"name": "metrics",
"version": "1.2.6"
},
{
"name": "minimap",
"version": "4.29.8"
},
{
"name": "minimap-linter",
"version": "2.1.3"
},
{
"name": "notifications",
"version": "0.70.2"
},
{
"name": "one-dark-syntax",
"version": "1.8.2",
"theme": "syntax"
},
{
"name": "one-dark-ui",
"version": "1.10.10",
"theme": "ui"
},
{
"name": "one-light-syntax",
"version": "1.8.2",
"theme": "syntax"
},
{
"name": "one-light-ui",
"version": "1.10.10",
"theme": "ui"
},
{
"name": "open-on-github",
"version": "1.3.1"
},
{
"name": "package-generator",
"version": "1.3.0"
},
{
"name": "pandoc",
"version": "0.2.2"
},
{
"name": "pdf-view",
"version": "0.66.0"
},
{
"name": "pigments",
"version": "0.40.2"
},
{
"name": "processing-language",
"version": "0.2.0"
},
{
"name": "release-notes",
"version": "0.53.0"
},
{
"name": "settings-view",
"version": "0.254.1"
},
{
"name": "snippets",
"version": "1.3.1"
},
{
"name": "solarized-dark-syntax",
"version": "1.1.4",
"theme": "syntax"
},
{
"name": "solarized-light-syntax",
"version": "1.1.4",
"theme": "syntax"
},
{
"name": "spell-check",
"version": "0.72.7"
},
{
"name": "status-bar",
"version": "1.8.15"
},
{
"name": "styleguide",
"version": "0.49.10"
},
{
"name": "symbols-view",
"version": "0.118.2"
},
{
"name": "sync-settings",
"version": "0.8.5"
},
{
"name": "tabs",
"version": "0.109.1"
},
{
"name": "terminal-status",
"version": "1.6.8"
},
{
"name": "timecop",
"version": "0.36.2"
},
{
"name": "tool-bar",
"version": "1.1.7"
},
{
"name": "tool-bar-main",
"version": "0.0.11"
},
{
"name": "tree-view",
"version": "0.221.3"
},
{
"name": "update-package-dependencies",
"version": "0.13.1"
},
{
"name": "welcome",
"version": "0.36.6"
},
{
"name": "whitespace",
"version": "0.37.5"
},
{
"name": "wordcount",
"version": "2.10.4"
},
{
"name": "wrap-guide",
"version": "0.40.3"
}
]
{
"Zen": {
"showWordCount": "Right",
"typewriter": true
},
"atom-beautify": {
"_analyticsUserId": "16dab4c7-435f-473b-813d-53b7a6ff2088",
"css_align_assignments": true,
"css_convert_quotes": "single",
"css_preserve_newlines": true,
"html_end_with_newline": true,
"js_end_with_comma": true,
"js_end_with_newline": true,
"js_eval_code": true,
"js_indent_with_tabs": true,
"js_jslint_happy": true,
"js_space_after_anon_function": true,
"js_space_before_conditional": false
},
"atom-material-ui": {
"colors": {},
"panelContrast": true,
"tabs": {
"compactTabs": true,
"tintedTabBar": true
},
"treeView": {
"blendTabs": true
},
"ui": {
"panelContrast": true,
"panelShadows": true
}
},
"busy-signal": {},
"core": {
"autoHideMenuBar": true,
"disabledPackages": [
"welcome",
"linter-scss-lint",
"whitespace"
],
"packagesWithKeymapsDisabled": [
"change-case",
"atom-beautify",
"color-picker",
"git-control",
"latexer",
"tool-bar"
],
"restorePreviousWindowsOnStart": "no",
"telemetryConsent": "no",
"themes": [
"atom-material-ui",
"atom-material-syntax"
],
"uriHandlerRegistration": "always"
},
"editor": {
"backUpBeforeSaving": true,
"fontSize": 15,
"showIndentGuide": true,
"showInvisibles": true,
"softTabs": false,
"softWrap": true,
"softWrapAtPreferredLineLength": true,
"tabLength": 4,
"useShadowDOM": false,
"zoomFontWhenCtrlScrolling": false
},
"exception-reporting": {
"userId": "5cc09261-8532-0fc1-af93-a77fe2dfa3e6"
},
"file-icons": {
"coloured": false
},
"latex": {
"enableShellEscape": true,
"moveResultToSourceDirectory": false,
"texPath": "C:\\Program Files (x86)\\MiKTeX 2.9\\miktex\\bin"
},
"linter": {},
"linter-htmlhint": {},
"linter-markdown": {},
"linter-ui-default": {
"panelHeight": 259,
"showPanel": true
},
"minimap": {
"absoluteMode": true,
"adjustAbsoluteModeHeight": true,
"plugins": {
"linter": true,
"linterDecorationsZIndex": 0,
"minimap-autohide": true,
"minimap-autohideDecorationsZIndex": 0
},
"scrollAnimation": true
},
"pigments": {
"supportedFiletypes": [
"css",
"html",
"less",
"scss",
"php"
]
},
"spell-check": {
"grammars": [
"source.asciidoc",
"source.gfm",
"text.git-commit",
"text.plain",
"text.plain.null-grammar",
"text.tex.latex"
]
},
"sync-settings": {},
"tool-bar": {
"position": "Left"
},
"welcome": {
"showOnStartup": false
},
"wordcount": {
"extensions": [
"md",
"tex"
],
"goal": 500,
"noextension": true
},
"wrap-guide": {
"enabled": 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'
#
# 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
/*
* Your Stylesheet
*
* This stylesheet is loaded when Atom starts up and is reloaded automatically
* when it is changed.
*
* If you are unfamiliar with LESS, you can read more about it here:
* http://www.lesscss.org
*/
.tree-view {
}
// style the background and foreground colors on the atom-text-editor-element
// itself
atom-text-editor {
}
// To style other content in the text editor's shadow DOM, use the ::shadow
// expression
atom-text-editor::shadow .cursor {
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment