• Packages
  • Themes
  • Documentation
  • Blog
  • Discussions

Chapter 1: Getting Started

  • Why Atom?
  • Installing Atom
  • Atom Basics
  • Summary

Chapter 2: Using Atom

  • Atom Packages
  • Moving in Atom
  • Atom Selections
  • Editing and Deleting Text
  • Find and Replace
  • Snippets
  • Autocomplete
  • Folding
  • Panes
  • Pending Pane Items
  • Grammar
  • Version Control in Atom
  • GitHub package
  • Writing in Atom
  • Basic Customization
  • Summary

Chapter 3: Hacking Atom

  • Tools of the Trade
  • The Init File
  • Package: Word Count
  • Package: Modifying Text
  • Package: Active Editor Info
  • Creating a Theme
  • Creating a Grammar
  • Creating a Legacy TextMate Grammar
  • Publishing
  • Iconography
  • Debugging
  • Writing specs
  • Handling URIs
  • Cross-Platform Compatibility
  • Converting from TextMate
  • Hacking on Atom Core
  • Contributing to Official Atom Packages
  • Creating a Fork of a Core Package in atom/atom
  • Maintaining a Fork of a Core Package in atom/atom
  • Summary

Chapter 4: Behind Atom

  • Configuration API
  • Keymaps In-Depth
  • Scoped Settings, Scopes and Scope Descriptors
  • Serialization in Atom
  • Developing Node Modules
  • Interacting With Other Packages Via Services
  • Maintaining Your Packages
  • How Atom Uses Chromium Snapshots
  • Summary

Reference: API

  • AtomEnvironment
  • BufferedNodeProcess
  • BufferedProcess
  • Clipboard
  • Color
  • CommandRegistry
  • CompositeDisposable
  • Config
  • ContextMenuManager
  • Cursor
  • Decoration
  • DeserializerManager
  • Directory
  • DisplayMarker
  • DisplayMarkerLayer
  • Disposable
  • Dock
  • Emitter
  • File
  • GitRepository
  • Grammar
  • GrammarRegistry
  • Gutter
  • HistoryManager
  • KeymapManager
  • LayerDecoration
  • MarkerLayer
  • MenuManager
  • Notification
  • NotificationManager
  • Package
  • PackageManager
  • Pane
  • Panel
  • PathWatcher
  • Point
  • Project
  • Range
  • ScopeDescriptor
  • Selection
  • StyleManager
  • Task
  • TextBuffer
  • TextEditor
  • ThemeManager
  • TooltipManager
  • ViewRegistry
  • Workspace
  • WorkspaceCenter

Appendix A: Resources

  • Glossary

Appendix B: FAQ

  • Is Atom open source?
  • What does Atom cost?
  • What platforms does Atom run on?
  • How can I contribute to Atom?
  • Why does Atom collect usage data?
  • Atom in the cloud?
  • What's the difference between an IDE and an editor?
  • How can I tell if subpixel antialiasing is working?
  • Why is Atom deleting trailing whitespace? Why is there a newline at the end of the file?
  • What does Safe Mode do?
  • I have a question about a specific Atom community package. Where is the best place to ask it?
  • I’m using an international keyboard and keys that use AltGr or Ctrl+Alt aren’t working
  • I’m having a problem with Julia! What do I do?
  • I’m getting an error about a “self-signed certificate”. What do I do?
  • I’m having a problem with PlatformIO! What do I do?
  • How do I make Atom recognize a file with extension X as language Y?
  • How do I make the Welcome screen stop showing up?
  • How do I preview web page changes automatically?
  • How do I accept input from my program or script when using the script package?
  • I am unable to update to the latest version of Atom on macOS. How do I fix this?
  • I’m trying to change my syntax colors from styles.less, but it isn’t working!
  • How do I build or execute code I've written in Atom?
  • How do I uninstall Atom on macOS?
  • macOS Mojave font rendering change
  • Why does macOS say that Atom wants to access my calendar, contacts, photos, etc.?
  • How do I turn on line wrap?
  • The menu bar disappeared, how do I get it back?
  • How do I use a newline in the result of find and replace?
  • What is this line on the right in the editor view?

Appendix C: Shadow DOM

  • Removing Shadow DOM styles

Appendix D: Upgrading to 1.0 APIs

  • Upgrading Your Package
  • Upgrading Your UI Theme Or Package Selectors
  • Upgrading Your Syntax Theme

Appendix E: Atom server-side APIs

  • Atom package server API
  • Atom update server API

  • mac
  • windows
  • linux

NotificationManager Essential

A notification manager used to create Notifications to be shown to the user.

An instance of this class is always available as the atom.notifications global.

Events

::onDidAddNotification(callback)

Invoke the given callback after a notification has been added.

Argument Description

callback

Function to be called after the notification is added.

notification

The Notification that was added.

Return values

Returns a Disposable on which .dispose() can be called to unsubscribe.

::onDidClearNotifications(callback)

Invoke the given callback after the notifications have been cleared.

Argument Description

callback

Function to be called after the notifications are cleared.

Return values

Returns a Disposable on which .dispose() can be called to unsubscribe.

Adding Notifications

::addSuccess(message, options)

Add a success notification.

Argument Description

message

A String message

options

optional

An options Object with the following keys:

buttons

optional

An Array of Object where each Object has the following options:

className

optional

String a class name to add to the button’s default class name (btn btn-success).

onDidClick

optional

Function callback to call when the button has been clicked. The context will be set to the NotificationElement instance.

text

String inner text for the button

description

optional

A Markdown String containing a longer description about the notification. By default, this will not preserve newlines and whitespace when it is rendered.

detail

optional

A plain-text String containing additional details about the notification. By default, this will preserve newlines and whitespace when it is rendered.

dismissable

optional

A Boolean indicating whether this notification can be dismissed by the user. Defaults to false.

icon

optional

A String name of an icon from Octicons to display in the notification header. Defaults to 'check'.

Return values

Returns the Notification that was added.

::addInfo(message, options)

Add an informational notification.

Argument Description

message

A String message

options

optional

An options Object with the following keys:

buttons

optional

An Array of Object where each Object has the following options:

className

optional

String a class name to add to the button’s default class name (btn btn-info).

onDidClick

optional

Function callback to call when the button has been clicked. The context will be set to the NotificationElement instance.

text

String inner text for the button

description

optional

A Markdown String containing a longer description about the notification. By default, this will not preserve newlines and whitespace when it is rendered.

detail

optional

A plain-text String containing additional details about the notification. By default, this will preserve newlines and whitespace when it is rendered.

dismissable

optional

A Boolean indicating whether this notification can be dismissed by the user. Defaults to false.

icon

optional

A String name of an icon from Octicons to display in the notification header. Defaults to 'info'.

Return values

Returns the Notification that was added.

::addWarning(message, options)

Add a warning notification.

Argument Description

message

A String message

options

optional

An options Object with the following keys:

buttons

optional

An Array of Object where each Object has the following options:

className

optional

String a class name to add to the button’s default class name (btn btn-warning).

onDidClick

optional

Function callback to call when the button has been clicked. The context will be set to the NotificationElement instance.

text

String inner text for the button

description

optional

A Markdown String containing a longer description about the notification. By default, this will not preserve newlines and whitespace when it is rendered.

detail

optional

A plain-text String containing additional details about the notification. By default, this will preserve newlines and whitespace when it is rendered.

dismissable

optional

A Boolean indicating whether this notification can be dismissed by the user. Defaults to false.

icon

optional

A String name of an icon from Octicons to display in the notification header. Defaults to 'alert'.

Return values

Returns the Notification that was added.

::addError(message, options)

Add an error notification.

Argument Description

message

A String message

options

optional

An options Object with the following keys:

buttons

optional

An Array of Object where each Object has the following options:

className

optional

String a class name to add to the button’s default class name (btn btn-error).

onDidClick

optional

Function callback to call when the button has been clicked. The context will be set to the NotificationElement instance.

text

String inner text for the button

description

optional

A Markdown String containing a longer description about the notification. By default, this will not preserve newlines and whitespace when it is rendered.

detail

optional

A plain-text String containing additional details about the notification. By default, this will preserve newlines and whitespace when it is rendered.

dismissable

optional

A Boolean indicating whether this notification can be dismissed by the user. Defaults to false.

icon

optional

A String name of an icon from Octicons to display in the notification header. Defaults to 'flame'.

stack

optional

A preformatted String with stack trace information describing the location of the error. Requires detail to be set.

Return values

Returns the Notification that was added.

::addFatalError(message, options)

Add a fatal error notification.

Argument Description

message

A String message

options

optional

An options Object with the following keys:

buttons

optional

An Array of Object where each Object has the following options:

className

optional

String a class name to add to the button’s default class name (btn btn-error).

onDidClick

optional

Function callback to call when the button has been clicked. The context will be set to the NotificationElement instance.

text

String inner text for the button

description

optional

A Markdown String containing a longer description about the notification. By default, this will not preserve newlines and whitespace when it is rendered.

detail

optional

A plain-text String containing additional details about the notification. By default, this will preserve newlines and whitespace when it is rendered.

dismissable

optional

A Boolean indicating whether this notification can be dismissed by the user. Defaults to false.

icon

optional

A String name of an icon from Octicons to display in the notification header. Defaults to 'bug'.

stack

optional

A preformatted String with stack trace information describing the location of the error. Requires detail to be set.

Return values

Returns the Notification that was added.

Getting Notifications

::getNotifications()

Get all the notifications.

Return values

Returns an Array of Notifications.

Managing Notifications

::clear()

Clear all the notifications.

  • Terms of Use
  • Privacy
  • Code of Conduct
  • Releases
  • FAQ
  • Contact
  • Contribute!
with by