VI/VIM and Other Console Based Editors

Table of Contents:

    1. What is A Text Editor?
    2. Purpose Of Text Editors
    3. Console Based Editors

What is A Text Editor?

With the advancement of technology in the current era, developers and programmers have a vast range of programming language options they can choose from to build their programs or systems. Similarly, various editors support writing code in these languages, considering their form of syntax. Programming is itself a text-based interface that helps form an interaction with computers. Steve Jobs also played an enormous role in developing a graphic-based interface to interact and manipulate computer functionalities. On the other hand, developers have to utilize text-based interfaces to build their websites and perform tasks on computers.

Purpose Of Text Editors

Since code is text, the users use the text editors for developing significant code in the appropriate environment to utilize their features. These editors provide more straightforward ways to manipulate the functionalities to ensure efficient results. Command-line text editors provide the users with various functionalities. For example, navigating through the computer directories, creating, removing, updating specified files, and running applications.

Console Based Editors

There are numerous console-based editors with user-friendly environments to provide an excellent programming experience for developers and other users. Some standard functionalities of console-based editors are following:

  • Syntax highlighting
  • Auto indentation
  • Spaces and Tabs replacement
  • Shortcuts for Keyboard
  • Availability of Debugging
  • Auto compilation

Following are some of the most commonly used console-based editors by programmers.

  • Vi/Vim Editor
  • Gedit
  • Nano Editor
  • Visual Studio Code
  • Sublime Text Editor
  • Atom
  • Notepad++
  • Android Studio
  • PyCharm
  • Eclipse
  • IntelliJ
  • Micro
  • Spacemacs
  • Slap
  • GNU Emacs
  • Geany Editor
  • Leaf Pad
  • Bluefish
  • Light Table
  • Suplemon

Along with these editors, as mentioned earlier, there are countless more for the developers to explore. Below is the explanation of some editors.

Vi/Vim Editor

Vi is one of the most powerful command-line-based text editors. Since its development in 1976, Vi has empowered its users by providing editors’ standard features, including effective editing techniques and terminal control. Although being a famously useful editor, Vi lacked some advanced features. Some of those feature were following:

• Syntax highlighting
• Multiple screens
• Multiple undo functionality

The developers developed the Vim editor with the advanced and fully featured editor to accommodate developers with these features and provide ease of use to Unix/Linus users. Vim is now one of the most popular, configurable, and cross-platform editors. This editor works with supporting platforms such as Linux, OS X, Solaris, *BSD, and MS-Windows.

Features of Vim Editor

Vim possesses the following remarkable features:
• Multi-level Undo
• Multiple Screens
• Enables Syntax highlighting
• Multiple Community developed plugins
• Powerful search tool
• Supports various programming languages
• Numerous tool integration
• Extensible features
• Asynchronous I/O support
• Supports partials and lambdas
• Supports GTK + 3

Vim Installation

Modern Linux distributions provide easy installation of Vim through default repositories via using the package manager. However, the availability of Vim 8.2 is not official. So, the developers can utilize the older version of Vim for their coding experience. Following is the code to install Vim on computer systems:

$ sudo apt install vim                                [ For Debian, Ubuntu, and Mint ]
$ sudo dnf install Vim [ For RHEL, CentOS, and Fedora ]
$ sudo pacman -S vim                               [ For Arch Linux and Manjaro ]
$ sudo zipper install vim                           [ For OpenSuse ]

After installation, the users should write the following command on the command line interface for further information about the editor:

$ Vim

Atom

Atom is a famous text editor developed by GitHub. The significant features of Atom include it being an open-source and cross-platform code editor. Although the Atom editor’s idea was started in 2008 by the founder of GitHub, Chris Wanstrath, its stable release was made official for the users in June 2015. Since then, Atom has gained much popularity due to its various functionalities. The editor supports working with Operating Systems, Windows, Linux, and Mac OS. It has MIT License, and the developers customized it by using various technologies like HTML, JavaScript, CSS, C++, Node.js, and Coffee Script. Atom is based on Chromium and supports Node.js plugins and Git control.

Features of Atom

Atom has the following outstanding features for developers:

  • Customized themes and layouts
  • Built-in Git support
  • Open-source platform
  • Autocomplete and IntelliSense
  • Built-in and customizable package manager
  • Real-time Telesync collaboration
  • The embedded file system browser
  • Finding and replacing ability throughout a project
  • Enables IDE features

Atom Installation

The installation process of Atom is straightforward. The users can install DEB or RPM binary packages for Debian and RedHat based systems by using the following commands:

$ wget https://atom.io/download/deb
$ wget https://atom.io/download/rpm
$ sudo dpkg -I deb                                            [ For Debian ]
# rpm -ivh rpm                                                  [ For RedHat ]

For installing the editor from the source and building all necessary packages, the users can use the following command in Ubuntu systems:

$ sudo apt-get install build-essential git libgnome-keyring-dev fakeroot
$ curl –silent –location https://deb.nodesource.com/setup_0.12 | sudo bash -
$ sudo apt-get install –yes nodejs
$ sudo apt-get install npm
$ sudo npm config set python /user/bin/python2 -g

After installation, for cloning the relevant repository from GitHub, the following commands can be used:

$ git clone https://github.com/atom/atom
$ cd atom

Finally, for running the application, the following command can be used on the terminal:

$ atom

Visual Studio Code

Visual Studio Code, usually known as VSCode, is a powerful open-source text editor. VSCode is a unique code editor supporting operations like code development, efficient debugging, running tasks, and version control. This editor is famous for providing the most relevant tools for the code-build-debug cycle. Moreover, it provides fully featured Integrated Development Environments IDEs to provide an efficient approach towards code development. The users can utilize the Visual studio code to work with different frameworks such as HTML, Python, Java, Objective-C, JSON, Perl, Swift, Coffee Script, C++, Ruby, Go, TypeScript, XML. SQL and many more. This modern text editor is Microsoft’s production and is compatible with Linux, Mac, and Windows.

Features of VSCode

Along with supporting numerous languages and platforms, Visual Studio Code also possesses some inevitable features. Some of those important features are following:

  • Smart autocomplete based on variable types, function definition, and imported modules
  • Effective debugging with breakpoints, call stacks, and interactive console
  • Built-in Git Support with reviewing files and supporting push and pull from any hosted SCM service
  • Syntax highlighting autocompletion with IntelliSense
  • Flexible Customization by addition of new languages, debuggers, themes, and additional services
  • Built-in Terminal support
  • Easy deployment of React, Angular, Vue, Node, Python, and various other sites

VSCode Installation

Like Atom installation, the users can also install DEB and RPM packages of VSCode for Linux distribution. The .deb and .rpm packages are available on the official site for Visual Studio Code. For Debian and Ubuntu, the following command installs the .deb package on the system:

$ sudo install ./<file>.deb            [For new Linux distribution]
$ sudo install dpkg -i <file>.deb
$ sudo apt-get install -f                [For old Linux distribution]

Moreover, for the most appropriate installation, using the apt package manager is recommended to enable the VSCode repository and install the VSCode package. Following Command is used to initiate the process:

$ sudo apt update

Following is the command to install the required dependencies:

$ sudo apt install software-properties-common apt-transport-https

After that, the following commands can download the repository and import Microsoft’s GPG key:

$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
$ sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
$ sudo sh -c ‘echo “deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main” > /etc/apt/sources.list.d/vscode.list’

After downloading the repository, the users can use the following commands to install the editor:

$ sudo apt update
$ sudo apt install code