8.2 C
Texas

6 code editors for programming or formatted writing

Code editors are one of the most popular tools in the programming industry. They greatly simplify the comparison with text editors and integrated development environments (IDE). They also stand out from the former because of syntax highlighting. Also for the autocompletion (although not always) and for allowing a simple management of the projects. On the other hand, what stands out against the latter is the lack to automate or perform many tasks and features. For example, automated refactoring, visual programming and integration with databases. Also for the debugging integrated in the application, although at the time of the truth each product supports the features that suit it.

Code and text editors VS IDE

The difference with FDIs is diluted in many cases. Especially if we take into account that code editors, in many cases, support add-ons that allow extending the possibilities offered. It is then possible to provide a code editor with features that are more typical of an IDE. Another aspect to take into account is that, in general, code editors consume fewer resources than IDEs. Although this depends on the focus of each tool.

We do not intend to create a debate about whether code editors are better than integrated development environments and vice versa. In fact, each tool has a different focus and purpose. Depending on the technology being worked with and the situation, one may find it more convenient to use one over the other. However, the expansion of frameworks over the course of recent times has meant that code editors have gained prominence over IDEs. Especially because these frameworks are capable of generating code that is then edited.

Code editors have become very popular. On the other hand, IDEs do not seem to be at their best. This does not detract from the fact that the Czech company JetBrains has emerged as the queen of IDEs with some very good products. In the mobile application development sector, the use of integrated development environments is still very common. Indeed, Android Studio, which is also based on JetBrains technology, is the tool that Google officially provides for this purpose.

Rise, fall and… comeback

- Advertisement -

Code editors had their heyday in the second decade of the 21st century. For the last few years, we have been experiencing a concentration in this segment. For example, there are interesting proposals such as Atom and Brackets that were abandoned by their original developers. The former is officially defunct. On the other hand, the latter continues its development as a community project.

Despite the concentration experienced in recent years, we will mention six well-known exponents. They are certainly not all strictly code editors. This is because, in some cases, the difference with text editors is narrow.

Visual Studio Code

Let’s start with the example best known to everyone today. Visual Studio Code is the code editor built by Microsoft and based on Electron. Note that it should not be confused with the Visual Studio IDE, which is a different product. Certainly, the latter has earned it many detractors because it is basically a webapp. However, its good design and the large number of add-ons available have made it the choice of many programmers.

Visual Studio Code, often shortened to VS Code, includes support for debugging, syntax highlighting and intelligent code completion. In addition to an integrated command line console, code snippets and includes support for Git.

It appeared in 2015 as a cross-platform application for Windows, Linux, and macOS. At that time it was proprietary and in terms of features it left much to be desired. However, Microsoft has invested heavily in its improvement and released it as open source under the MIT license. This is similar to the model Google used when creating Chrome from Chromium. Therefore, those responsible for Windows have kept a few cards up their sleeves. Despite this, the VS Code forks from the released source code offer high compatibility with the available extensions.

This code editor, despite its origin, supports numerous programming languages. Some of them are C, C#, C++, Fortran, Go, Java, JavaScript, Node.js, Python and Rust. It also incorporates IntelliSense for JavaScript, TypeScript, JSON, CSS, and HTML. It also has debugging support for Node.js. The official store offers many extensions that expand the software’s possibilities almost infinitely.

Sublime Text

Sublime Text is a veteran in the industry. At present, it can be considered as Visual Studio Code’s biggest rival, at least among the less geeky public. We will certainly see some very powerful options later on. However, they may require learning to master.

If you compare VS Code and Sublime Text at first glance, you might get the impression that they are similar. However, the latter has the advantage of being written primarily with C++. This on paper allows it to perform better in demanding contexts, on less resource-hungry computers, and to take up less computer resources. On the other hand, it is a proprietary and paid application. Although it offers support for Windows, Linux and macOS.

Among its features are Goto Anything. This provides fast navigation through the files, symbols, and lines of a project. It also includes a Python API. Additionally, project-specific preferences and extensive customization possibilities. For this purpose, it uses JSON. Finally, it is compatible with many programming languages.

Sublime Text supports:

  • Syntax highlighting
  • code snippets
  • auto-completion
  • macros
  • autosave
  • custom keystroke
  • mapping
  • macros
  • last action
  • replay.

Notepad++

Notepad++ takes its name from Notepad. This is how the well-known Windows Notepad is called in English. This already hints that it is a more basic application than the previous ones. But people should not be confused. In reality, this is not only a tool to write things down. We are talking about one that has enormous possibilities for programmers.

Regarding its distribution, the situation of Notepad++ is the reverse of that of Sublime Text. Indeed, it only officially supports Windows. However, it is free software as its source code is released under the GPLv3 license and is completely free of charge. During its trajectory, it has garnered quite a lot of praise. Therefore, depending on the user’s profile and needs, it may be the ideal code editor.

Notepad++ supports syntax highlighting, code folding, macros, autosave, simultaneous editing, screen splitting. It also has limited auto-completion for programming, markup, declarative and scripting languages. It also has an outstanding number of plug-ins available. Furthermore, it also supports several character encodings and dozens of languages, including the most popular ones. In fact, it arranges so many languages alphabetically.”1

GNU Emacs

It was Richard Stallman himself, the father of software, who wrote the first Emacs in 1976. Years later, in 1984, development of GNU Emacs began to provide an alternative to Gosling Emacs. This was a proprietary implementation of the same editor that is now discontinued. GNU Emacs was originally based on Gosling Emacs. However, the replacement of the Mocklips interpreter with a true Lips interpreter required rewriting almost all the code.

It goes without saying that, because it is part of the GNU project, GNU Emacs is free software under the GPLv3 license. Although it is focused on Linux and BSD, it is also possible to install it on Windows and macOS, so it offers multiplatform support.

GNU Emacs is more of a text editor than a code editor. However, it is so powerful that it is more than enough to perform programming tasks. In fact, it is not uncommon for programmers to use it. Its main features are that it can be modified deeply and extended almost without limits.

You also have at your disposal numerous extensions that allow you to add additional supports. We can also transform the text editor into a web browser, for example. Discovering the full power of GNU Emacs is something that can take time and requires a willingness to learn.

Vim

Vim, which is short for Vi Improved. As its name suggests, it is an improved version of the original Vi. This is a text editor mainly aimed at Unix and Unix-like systems. However, there is also a version for Windows. It is released under its own license with clauses related to charity and is compatible with the GPL.

Although it is mainly oriented to command line interfaces, Vim has at its disposal a graphical mode called gVim. However, the real cracks with this editor use it from the command line. After all, it is its natural environment.

Vim includes many improvements over the original Vi. Some of them are file compare and merge, a complete integrated help system. In addition to extended regular expressions, mouse interaction. Finally, also some limited functions reminiscent of a code editor, plus many other features.

One of its most outstanding features is that it supports extensions. The user can resort to NERDTree to obtain a file explorer. This way, you can manage a folder as if it were a project. NERDTree is just one of the extensions that Vim has at its disposal, and discovering everything there is for this editor is up to the user.

And as this free software opens the door to forks galore, there is one called Neovim. This one is released under the Apache 2 license. It also tries to improve on aspects such as extensibility and maintainability. It also includes Language Server Protocol (LSP) support, asynchronous I/O and Lua scripting via luaJIT.

Geany

We close the list with Geany, a simple code editor with graphical interface. It is free software under the GPLv2 license. It is built with C and C++ and with support for Windows, Linux, macOS, and BSD. The project defines itself as the lightweight IDE. In truth, despite its lightness and apparent simplicity, it is an application that treasures much more than it appears to have a handful of features, rather typical of an IDE.

Among its default features, the user will find auto-completion, bookmarks, multiple document interface. Also, simple project management, syntax highlighting and code folding. It is extensible through plug-ins and has an integrated terminal emulator. This can come in handy when working with frameworks such as Ruby on Rails.

The add-on manager provides many additional features. From this list we can highlight a debugger, a spell checker, a Git change bar. In addition to support for macros and a file explorer to make it easier to navigate through the project’s folders and files.

As languages, it supports many of the most popular languages. We are talking about C, C++, C#, Java, JavaScript, PHP, HTML, CSS, Python, Ruby, Vala and many others. Despite being somewhat rudimentary in some respects, it is an application that offers advanced capabilities and does not hog a large amount of resources.

- Advertisement -
Everything Linux, A.I, IT News, DataOps, Open Source and more delivered right to you.
Subscribe
"The best Linux newsletter on the web"

LEAVE A REPLY

Please enter your comment!
Please enter your name here



Latest article