Code editors

Choosing a code editor is a highly personal choice—choose the one that you like the most.

It’s usually a good idea to download your code editor and use it for a little while before making a decision.

What code editors do

It isn’t strictly necessary to use a code editor when writing your code. All you actually need is a plain-text editor: TextEdit on Mac or Notepad on Windows.

The problem with using a plain-text editor is that they aren’t optimized for writing code.

A proper code editor will provide a bunch of features to help you write and see code more efficiently.

  • Line numbers — automatic numbering for lines of code
  • Syntax highlighting — colouring of different keywords to help understanding
  • Indentation assistance — helping you indent and align the code for easier reading
  • Auto-completion — automatically add and complete code for you and show suggestions
  • Multiple file interface — having more than one file open at a time
  • Quick movement — moving within files quickly and opening/closing files quickly

Important settings to consider

  • Changing the theme and colour scheme
    Some people like dark interfaces, some like light

  • Turn on “Show invisible characters”
    Will show spaces, tabs, returns, etc. to help you understand your code

  • Turn on “Indent guides”
    Will draw vertical lines to help see the alignment of code

  • Turn on “Scroll past end”
    So your code isn’t mashed at the bottom of your screen

  • Turn on “Show line numbers”
    Make sure to turn those on!

  • Turn on “Soft tabs”
    This is really a personal preference: indent with space (soft) characters or tab characters (hard); whatever you choose, the tab key will always work

  • Tab length: “2”
    How many spaces to add when hitting the tab key, or how wide the tab characters look

  • Turn off “Soft wrap” or “Word wrap”
    Whether the lines are wrapped automatically or force you to scroll horizontally

  • File encoding “UTF-8”
    How the file is written on the computer, allows lots of different characters and languages; most likely the default)

Here’s the top 3 I would recommend for you:

Others you may like

  • BBEdit (paid)
    Been around for a very long time, has some amazing text processing capabilities, not as modern looking as others.

  • Textmate 2 (free, right now)
    Going through a revival, decent community, may have to eventually pay.

  • Coda (paid)
    Simple, made by a great company, specifically targeted at web development, some good designer focused tools.