Edit text conveniently in a terminal window with Slap

Leaps and Bounds

Article from Issue 178/2015
Author(s):

The Slap editor supports easy navigation, even through large volumes of data, but the promising software has a couple of hiccups along the way.

The choice of text editors on Linux is seemingly infinite – whether for the terminal or with a sophisticated graphical user interface, you are likely to find the right tool for any application if you look hard enough. Although newcomers tend to choose intuitively usable programs like Nano [1] or Pico [2] if they need to edit text-based files at the command line, more experienced users may prefer versatile veterans like Vim or feature-rich classics like Emacs.

Migrating from one editor to another is not easy, mainly because the many keyboard shortcuts differ, stifling your ability to move between editors. The Slap [3] text editor is gathering a fan community rapidly by positioning itself precisely between the newcomer and professional editor camps. Instead of relying on many hotkeys, it uses mouse support and interacts with the Linux clipboard.

Young and Different

Slap is unusual in many respects. Whereas other programs in this field can look back on a long history and are typically the work of many individuals – or even whole communities – Slap is a one-man project by Dan Kaplun [4]. Unlike Nano, Vim, or Emacs, Slap is based on the JavaScript scripting language, which is more typically used for websites or web applications.

The first traces of Slap go back to April 2014, when Kaplun (a.k.a. beardtree) posted the first commit on GitHub [5]. Since then, the developer has added many features and shortcuts to the editor. Slap has thus become a lean alternative for editors like Vim or Emacs and has so far avoided the bloat associated with them.

Installation

Because of its fairly short development history – and probably also because of its JavaScript underpinnings – Slap lacks packages in the distribution repositories for now. Instead, you install the libraries required for the tool up front and then install the editor itself via the Node.js package management system (NPM).

Listing 1 shows the installation on Ubuntu 12.04 and 14.04. You need to be root to use all of these commands. During tests in our lab, I used the 64-bit variants of Ubuntu. Line 5 uses the less secure HTTP for the download instead of HTTPS, because Curl on Ubuntu fails to identify the SSL certificate correctly that is stored on NPMJS for Slap. The tool is also available for other distributions; you will find details of the installation procedures for these distributions online [6].

Listing 1

Installing Slap

$ apt-get update
$ apt-get install curl
$ curl -sL https://deb.nodesource.com/setup | sudo bash -
$ apt-get install nodejs xclip git
$ npm config set registry http://registry.npmjs.org/
$ npm install -g slap

After running the commands shown in Listing 1, you can launch the editor by typing the slap command in a terminal. Optionally, you can pass a file name into the command if you will be editing an existing text file.

Features

Although Slap runs in a console window, when launched, the program comes up with an interface split into two columns; if needed, you can even use the mouse to control it – this is a little unusual for experienced users, but a pointing device does remove the need to learn a number of new, complex hotkeys.

The left half of the window contains a folder and file tree, and the right side shows open files. As you can see in Figure 1, Slap also supports syntax highlighting for numerous scripting and programming languages.

Figure 1: The Slap editor uses a colorful layout with two panes.

Besides the ability to highlight code, you will find very few aids for developers – only parenthesis matching and automatic indenting help you when typing. You also will look in vain for features such as auto-completion of existing variables or class names.

You do, however, have the option of searching open files with the help of regular expressions or sharing content via the Linux clipboard. In tests, cutting and pasting with content from a website opened in Firefox worked pretty well. As you would expect of any good application, you can undo or redo the last action.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Master PDF Editor

    Master PDF Editor offers an easy option for correcting small typos and protecting documents against unauthorized access.

  • Perl: Spotty

    The Spotlight utility for the Macintosh has even the most hardened Apple fans scurrying back from the mouse to the keyboard. A short Perl script implements the utility for the Linux desktop.

  • Command Line: Text Editors

    More is not always better, especially at the command line. Lean text editors such as nano, JOE, and ee fit Linux novices and experts alike.

  • Sunflower File Manager

    Sunflower is a highly configurable graphical file manager with two windows that implement an unusual concept by trying to integrate the command line with the file manager.

  • Workspace: Chrome Apps

    Transform the Chrome and Chromium browsers into productivity powerhouses with open source apps and extensions.

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95

News

njobs Europe
What:
Where:
Country:
Njobs Netherlands Njobs Deutschland Njobs United Kingdom Njobs Italia Njobs France Njobs Espana Njobs Poland
Njobs Austria Njobs Denmark Njobs Belgium Njobs Czech Republic Njobs Mexico Njobs India Njobs Colombia