A Community-led Hyper-Hackable Text Editor
Go to file
Antonio Scandurra b0d93accf7 🐛 Remove Gutter from ViewRegistry
Closes #7306

We started noticing that when a `TextEditor` pane got split, the same view for
`Gutter` was being shared amongst several models, thereby making the same DOM
element accessible simultaneously by more than one object. This made us
experience *orphaned line numbers*, caused by two instances of
`LineNumberGutterComponent` mutating `.line-numbers` at the same time.

This is a typical race condition which I would normally address by understanding
and possibly locking the correct order in which operations should happen.
However, I believe in this situation we shouldn’t actually care about ordering
at all, since I think views should be kept “local”, thus avoiding to expose them
to the world and/or reusing them across other views (either accidentally as in
this case or on purpose).
2015-06-17 12:28:10 +02:00
apm ⬆️ apm@0.171 2015-06-04 14:07:53 -07:00
benchmark Revert 👕 2015-04-08 14:36:00 -04:00
build Add stricter atom.png glob pattern 2015-06-08 15:32:33 -07:00
docs Update linux.md 2015-06-05 12:55:25 +00:00
dot-atom Remove template config.cson file 2015-04-07 11:47:36 -07:00
exports Merge pull request #6202 from FoldingText/expose-file-and-directory 2015-04-09 21:05:14 +02:00
keymaps Revert keymap change 2015-04-29 18:29:57 -07:00
menus Added menu items to Linux/Windows 2015-04-29 16:52:09 -07:00
resources Use dirname in win/apm.sh 2015-06-10 16:11:13 -07:00
script Merge pull request #6246 from jussi-kalliokoski/fix-test-script 2015-04-21 17:43:45 -07:00
spec 🐛 Remove Gutter from ViewRegistry 2015-06-17 12:28:10 +02:00
src 🐛 Remove Gutter from ViewRegistry 2015-06-17 12:28:10 +02:00
static Fix copypasta selector 2015-06-16 20:23:41 -04:00
vendor Don’t require a specific jQuery instance for jasmine jQuery matchers 2014-11-06 15:27:45 -07:00
.coffeelintignore Skip linting for benchmark fixtures 2015-05-28 15:26:54 -04:00
.gitattributes Add paths that work on Git 1.7 2014-06-11 13:24:54 -07:00
.gitignore Use temp directory for ATOM_HOME 2015-02-12 15:51:55 -08:00
.node-version Use node 0.12 in default nodenv config 2015-02-18 16:01:37 -08:00
.pairs Add Daniel to pairs file 2014-06-26 14:25:40 -07:00
.python-version use nodejs v0.10.33 and python 2.7.6 2014-12-08 21:40:31 +02:00
.travis.yml 🎨 2015-04-28 11:13:21 +02:00
atom.sh Remove atom.sh -1/--one checks 2015-06-03 11:47:49 -07:00
CHANGELOG.md 📝 Add CHANGELOG 2015-02-27 08:16:16 -08:00
coffeelint.json 🔥 Remove newlines_after_classes rule 2015-05-22 20:08:29 -04:00
CONTRIBUTING.md 📝 Update CONTRIBUTING with latest style guidelines 2015-05-22 20:20:35 -04:00
Dockerfile Only log install errors 2015-03-26 10:38:58 -07:00
LICENSE.md Update LICENSE.md 2015-03-26 10:52:57 -04:00
package.json ⬆️ snippets 2015-06-16 14:29:37 -07:00
README.md Add Slack readme badge 2015-06-11 15:40:24 -04:00

Atom

Build Status Dependency Status Join the Atom Community on Slack

Atom is a hackable text editor for the 21st century, built on Electron, and based on everything we love about our favorite editors. We designed it to be deeply customizable, but still approachable using the default configuration.

Visit atom.io to learn more or visit the Atom forum.

Follow @AtomEditor on Twitter for important announcements.

Visit issue #3684 to learn more about the Atom 1.0 roadmap.

Documentation

If you want to read about using Atom or developing packages in Atom, the Atom Flight Manual is free and available online, along with ePub, PDF and mobi versions. You can find the source to the manual in atom/docs.

The API reference for developing packages is also documented on Atom.io.

Installing

OS X

Download the latest Atom release.

Atom will automatically update when a new release is available.

Windows

Download the latest AtomSetup.exe installer.

Atom will automatically update when a new release is available.

You can also download an atom-windows.zip file from the releases page. The .zip version will not automatically update.

Using chocolatey? Run cinst Atom to install the latest version of Atom.

Debian Linux (Ubuntu)

Currently only a 64-bit version is available.

  1. Download atom-amd64.deb from the Atom releases page.
  2. Run sudo dpkg --install atom-amd64.deb on the downloaded package.
  3. Launch Atom using the installed atom command.

The Linux version does not currently automatically update so you will need to repeat these steps to upgrade to future releases.

Red Hat Linux (Fedora, CentOS, Red Hat)

Currently only a 64-bit version is available.

  1. Download atom.x86_64.rpm from the Atom releases page.
  2. Run sudo yum localinstall atom.x86_64.rpm on the downloaded package.
  3. Launch Atom using the installed atom command.

The Linux version does not currently automatically update so you will need to repeat these steps to upgrade to future releases.

Building