read the Bible from your terminal
Find a file
2024-06-26 13:47:48 +12:00
import/dini Add source code 2023-03-23 15:59:09 +13:00
.editorconfig Add editorconfig 2024-06-26 13:47:48 +12:00
.gitignore Switch to configure and make based build 2024-06-26 13:47:48 +12:00
config.di Refactor most of the code 2024-06-26 13:47:48 +12:00
configure Improve configure script 2024-06-26 13:47:48 +12:00
COPYING License everything under the GPL version 2 2023-03-28 10:44:58 +13:00
esv.1 Add support for changing the MP3 audio player through the ESV_PLAYER environment variable 2023-03-27 13:32:18 +13:00
esv.conf.5 Add source code 2023-03-23 15:59:09 +13:00
esv.d Add search functionality and make other improvements 2024-06-26 13:47:48 +12:00
esvapi.d Add search functionality and make other improvements 2024-06-26 13:47:48 +12:00
README.md Switch to configure and make based build 2024-06-26 13:47:48 +12:00

esv

Read the Bible from your terminal

esv is a utility that displays passages of the English Standard Bible on your terminal. It connects to the ESV web API to retrieve the passages, and allows configuration through command-line options and the configuration file.

Example usage:

$ esv Psalm 23
Psalm 23

The LORD Is My Shepherd

A Psalm of David.

    The LORD is my shepherd; I shall not want.
        He makes me lie down in green pastures....

If the requested passage is over 32 lines long, esv will pipe it through a pager (default less). The pager being used can be changed through the ESV_PAGER environment variable or just disabled altogether by passing the -P option.

The names of Bible books are not case sensitive, so John, john, and JOHN are all accepted.

Audio

esv supports playing audio passages through the -a option. The mpg123 audio/video player is utilised here and so it required if you want to play audio passages. If you prefer, you can use a different player (such as mpv) by editing config.di.

Audio usage is the same as normal text usage. esv -a Matthew 5-7 will play an audio passage of Matthew 5-7.

Installation

To install esv, first make sure you have the LLVM D compiler (ldc) installed on your system.

Commands prefixed with a dollar sign ($) are intended to be run as a standard user, and commands prefixed with a hash sign (#) are intended to be run as the root user.

First, get the source code:

$ git clone https://codeberg.org/jtbx/esv
$ cd esv

Now, compile and install:

$ ./configure
$ make
# make install

Documentation

All documentation is contained in the manual pages. To access them, you can run man esv and man esv.conf for the esv utility and the configuration file respectively.

Copying

Copying, modifying and redistributing this software is permitted as long as your modified version conforms to the GNU General Public License version 2.

The file esvapi.d is a reusable library; all documentation is provided in the source file.

The license is contained in the file COPYING.

This software uses a modified version of a library named "dini". This is released under the Boost Software License version 1.0, which can be found in import/dini/LICENSE. dini can be found at https://github.com/robik/dini. My changes can be found at https://github.com/jtbx/dini.