Arun Dunna Computer Science PhD Student

Most Useful Atom Packages

I will update this list as I encounter more helpful packages.

Themes

First, let’s start out with my favorite themes.

Seti

By far, Seti is my favorite Atom theme for both UI and Syntax. I like a theme that maintains a dark, near (or equivalent to) black environment, but with distinguishable text colors that pop. Seti checks these boxes.

Other Notable Themes

  • Nord: Nord is supplied as both a UI and Syntax theme. It provides an “arctic” color scheme, which is a type of cool blue color. I recommend taking a look if you want something a bit lighter than Seti.
  • Styri: Styri is a Syntax theme with a bright, bold, and easily distinguishable color scheme. It allows for a bit more color than Seti, but for me it can be a bit distracting. That being said, if you’re looking for a more colorful environment (maybe to improve your quality of life), I’d suggest looking into it.

Packages

Here is a complete list of community packages that I use, with a brief explanation on why I use each one. Alphabetized and categorized!

Editor

  • atom-clock: I often lose track of time, but it’s important to make meetings and deadlines. I also don’t want to get lost in my IDE for hours. So, I use this clock (with seconds, as the ticking doesn’t bother me and I like the animation) to keep track of time while developing.
  • atom-updater-linux: For easy updating with Linux, I use this package. It bugs me to keep my installation updated for newer features and bug fixes.
  • file-icons: This gives better icons and colors based on file extension, which just makes it easier to keep track of files associated with projects.
  • highlight-line: This relatively simple package highlights the current line in the editor, which as one can imagine is very useful.
  • highlight-selected and minimap-highlight-selected: Similarly to the above package, this package highlights all occurrences of words you double-click. This allows for easy tracking of variables, and can help make code a bit more readable - especially when trying to parse someone else’s code. The minimap-highlight-selected works with the minimap package to show the highlighted line in the minimap.
  • hyperclick: Allows for opening hyperlinks in your web browser from Atom, which is useful if you have URLs in your code, or are reading someone else’s.
  • minimap: This package creates a minimap on the side of the editor, which allows you to see your place in the larger picture of the code. While not entirely necessary, I find it heavily useful in larger projects.
  • pigments and minimap-pigments: Pigments displays colors (such as color codes) in Atom, which is very useful for previewing colors without leaving Atom. Likewise, the minimap-pigments package displays the pigments in the minimap supplied by the minimap package.
  • sync-settings: I use Atom across more than one system, so this package keeps all of my settings and packages synchronized between systems.
  • todo-show: This highlights all occurrences of: TODO, FIXME, CHANGED, etc.

Development

  • atom-beautify: This allows for in-editor beautification of a variety of languages, which h elps to keep code organized. I recommend having some sort of beautifier in your process, not as a replacement for proper editing, but as an augmentation.
  • color-picker: Easy color picking when choosing color codes. This is incredibly helpful for me, as it allows me to visualize or pick colors without leaving Atom.
  • tabs-to-spaces: Don’t you hate when someone uses tabs in their code and you want to throttle them but also replace all the tabs with spaces? Then this package is for you!

Web Programming

  • autoclose-html: This automates HTML tag closing, which isn’t a huge deal but can save some time. Some people like automatic tag closing, and some people don’t - not a make or break packages but it is convenient.
  • pretty-json: JSON has a wide variety of use cases, but I primarily use it in web development, so I’ll categorize it here. This allows for easy JSON formatting, which can help make code more readable.

Markdown

  • markclip: With this package, you can paste images from your clipboard into markdown, which allows for speedier editing.
  • markdown-preview-plus and markdown-writer: These two packages add some extra support for markdown, such as allowing for markdown previewing. It makes my life easier for editing READMEs, blog posts, etc.

LaTeX

  • atom-latex: Not only does this add support for LaTeX, but it allows in-Atom compilation of LaTeX. This, combined with pdf-view, makes Atom my choice editor for LaTeX.
  • pdf-view: While this is a more general package, I primarily use it with LaTeX to preview the compiled document.

Other Programming

  • language-bro: This gives support for Bro (now Zeek) syntax.
  • language-p4: This gives support for P4 syntax.
  • language-haskell: This gives support for Haskell syntax.
  • linter-bro: A Bro linter.

There are many other popular packages, such as script (which allows for running code in Atom), but these are the ones I prefer to use.

Last updated: 11/29/2018