Além dos pontos das respostas anteriores, vale esclarecer as diferenças entre esses dois produtos na perspectiva das escolhas feitas em seu desenvolvimento.
Sublime é binário compilado para a plataforma. Seu núcleo é escrito em C / C ++ e vários de seus recursos são implementados em Python, que também é a linguagem usada para estendê-lo. O Atom é escrito em Node.js / Coffeescript e é executado no webkit, sendo Coffeescript a linguagem de extensão. Embora seja semelhante na interface do usuário e no UX, o Sublime tem um desempenho significativamente melhor que o Atom, especialmente em "trabalho pesado", como trabalhar com arquivos grandes, SnR complexos ou plug-ins que fazem processamento pesado em arquivos / buffers. Embora eu espere melhorias no Atom à medida que amadurece, as escolhas de design e plataforma limitam o desempenho.
A parte "fechada" do Sublime inclui a API e a interface do usuário. Além de skins / temas e cores, a API atualmente dificulta a modificação de outros aspectos da interface do usuário. Por exemplo, os plug-ins sublimes não podem interagir com a barra lateral, controlar ou desenhar na área de edição (exceto de algumas maneiras limitadas, por exemplo, na sarjeta) ou manipular a barra de status além do texto básico. A parte "fechada" do Atom é desconhecida no momento, mas sinto que é menor.O Atom possui uma API mais rica (embora pouco documentada no momento) com o objetivo de design de permitir maior controle de sua interface do usuário. Estar intimamente associado ao webkit oferece vários recursos para aprimoramentos de recursos da interface do usuário que atualmente não são possíveis com o Sublime. No entanto, as extensões do Sublime têm um desempenho mais próximo do nativo, portanto, as que executam manipulações de texto intensivas em computação, altamente repetitivas ou complexas em buffers grandes são possíveis no Sublime.
Como mais do Atom será aberto, o Atom, de código aberto do Github , será no dia 6 de maio. Como resultado, é provável que o suporte e o ritmo do desenvolvimento sejam rápidos. Por outro lado, o desenvolvimento do Sublime diminuiu significativamente ultimamente - mas não está morto . Em particular, existem vários bugs, muitos triviais, que não foram corrigidos pelo desenvolvedor. Nenhuma é imitação espetacular, mas se você quiser algo em rápido desenvolvimento com correções e aprimoramentos regulares, o Sublime ficará frustrado. Dito isso, os pacotes instaláveis do Atom para Windows e Linux ainda não foram lançados e a atividade na base de código parece ter esfriado nas semanas anteriores e desde o anúncio, de acordo com as estatísticas do Github.
Em termos de funções do IDE, da perspectiva do webdev, o Atom permitirá extensões ao ponto de abordar produtos como o Webstorm, embora nenhum tenha aparecido ainda. Resta ver como o Atom se comportará com extensões "pesadas", já que o editor sente-se lento. Devido a restrições na API e falta de webkit subjacente, o Sublime não permitirá esse nível de personalização da interface do usuário, embora o desenvolvedor possa estender a API para oferecer suporte a esses recursos no futuro. Novamente, o desempenho subjacente do Sublime permite coisas que envolvem um grunhido computacional; A indexação de símbolos do ST3 é um exemplo de bom desempenho, mesmo em grandes projetos. E, embora a interface do usuário do Atom certamente seja modelada no Sublime, alguns refinamentos estão visivelmente ausentes, como o Sublime '
Eu vejo esses produtos como complementares. O fato de compartilharem visuais e pressionamentos de tecla semelhantes apenas aumenta o fato. Haverá situações em que o uso de qualquer um tem vantagens. Atualmente, o Sublime é um produto maduro, com paridade de recursos nas três plataformas e um rico conjunto de plugins. Atom é o novo garoto cujos recursos crescerão rapidamente; ainda não parece estar pronto para a produção e há preocupações na área de desempenho.
[Atualização / edição: 18 de maio de 2015]
Uma observação sobre as melhorias nesses dois editores desde o momento em que escrevemos o texto acima.
Além de correções de bugs e melhorias em seu núcleo, o Atom experimentou um rápido crescimento em extensões de terceiros, com o preenchimento automático mais se tornando parte da distribuição padrão do Atom. A qualidade da extensão varia amplamente e uma irritação específica é a frequência com que pacotes instáveis de terceiros podem travar o editor. No último ano, o Atom passou a usar o React por meio da mudança da atividade de refluxo / repintura para a GPU por motivos de desempenho, melhorando significativamente a capacidade de resposta da interface do usuário para ações de edição típicas (rolagem, movimento do cursor etc.). Embora isso tenha melhorado significativamente a aparência do editor, ele ainda parece complicado para tarefas intensivas de CPU, conforme descrito acima, e ainda é lento na inicialização. Além das melhorias de desempenho, o Atom se sente significativamente mais estável em todos os aspectos.
O desenvolvimento do Sublime voltou a crescer desde janeiro de 2015, com correções de bugs, alguns novos recursos menores (API de dica de ferramenta, melhorias no sistema de compilação) e um grande desenvolvimento na forma de uma nova definição de sintaxe .sublime baseada em yaml (para substituir a antiga xml .tmLanguage). Juntamente com um mecanismo de regex personalizado que substitui o Onigurama, o novo sistema oferece mais potencial para correspondência precisa de regex, é significativamente mais rápido (até 4x) e pode executar várias correspondências em paralelo. Além da sintaxe da coloração, o Sublime usa esses componentes para indexação de símbolos (definição de goto etc.) e outros recursos com reconhecimento de idioma. Além de acelerar ainda mais o Sublime, principalmente para arquivos grandes, esse recurso deve abrir o potencial de recursos específicos de idiomas com desempenho, como refatoração de código etc.