Atom (text editor)

From ArchWiki

Atom is an open-source, cross-platform text editor developed by GitHub that is licensed under the MIT License. It is written predominantly in CoffeeScript and JavaScript and uses Node.js as its runtime environment. It is extensively extensible via use of over 5,000 available packages and 1,000 themes. It uses its own package manager for managing these packages and themes, apm.

Installation

The following packages provide Atom:

Packages

Its packages can be installed from within Atom itself or from the command-line using the apm command. The correct syntax of apm is:

$ apm install package_name1 package_name2 package_name3 ...

Several packages come preinstalled with Atom, notable packages that are not, include:

  • build which enables Atom to compile source code.
  • git-plus which allows one to manage git repositories from within Atom.
  • markdown-writer which turns Atom into an efficient Markdown writer.
  • script which enables Atom the ability to run scripts, based on file names.

Troubleshooting

Environment variables not sourced

You may experience some problems with packages using environments variables, like go-plus ($GOPATH not found). Moreover, it only appears when atom is opened by your file manager. (Because this one is DBUS-spawned, thus it does not inherit variables defined in .bashrc). A solution is to make available your variables to DBUS-spawned processes, by following Systemd/User#Environment variables.

More info on this issue in Environment variables#Per user.

Unable to delete files

By default, Electron apps use gvfs-trash to delete files. This command is deprecated and no longer exists, so the ELECTRON_TRASH environment variable must be used instead to specify which trash utility should be used.

For example, for deleting files under Plasma:

$ ELECTRON_TRASH=kioclient5 atom

At the time of writing, Electron supports kioclient5, kioclient, trash-cli, gio and gvfs-trash (default). More info is available at this GitHub pull request page.

Black window content on startup

With some video devices, such as the one for VirtualBox guests, Atom will not render the window content without GPU acceleration disabled by starting it with the --disable-gpu flag, or by editing ~/.atom/config.cson and adding/changing the configuration parameter useHardwareAcceleration: false under the editor section.

Spell Checker not working

Make sure you have hunspell installed with a suitable dictionary pack.

Package Manager not working

It has been reported by some users that having an LTS version of node.js can break the package manager, some packages request an LTS version of nodejs so it is possible for a user to inadvertently change versions. see [1].

This can be rectified by installing nodejs, which should detect the conflict between the stable and LTS versions and then remove the LTS version.

Closes immediately after opening

This is caused by an incompatibility between the version of Electron used by Atom and the newest version of glibc. The current workaround is to launch Atom with --in-process-gpu