How to Add Words to E-Sword Dictionary

E-Sword is a popular Bible software offering a range of features such as dictionaries, commentaries, and other study aids. Adding new words to the dictionary can be a useful way to expand the tool’s capability to help in your Bible studies. This guide will walk you through the steps to achieve that.

Table of Contents

  1. Introduction
  2. Pre-requisites
  3. Understanding E-Sword’s File Format
  4. Methods to Add Words to E-Sword Dictionary
    • Manual Editing
    • Using SQLite
    • Using Custom Software
  5. Tips and Tricks
  6. Conclusion

Note: Before you start, make sure to backup all your E-Sword files. Any modification could lead to corruption if not done carefully.

Why Add Words to E-Sword Dictionary?

Customizing your E-Sword dictionary allows you to:

  • Expand the software’s existing vocabulary.
  • Include specific terminologies relevant to your study or religious focus.
  • Make the tool more efficient for your individual learning process.


Before diving into the process of adding new words to the E-Sword dictionary, ensure that you have the following:

Required Software and Tools

  • E-Sword: Make sure you have the latest version installed.
  • SQLite Browser: For editing SQLite databases.
  • Text Editor: Any text editor will do, but it’s recommended to use one with JSON/XML syntax highlighting.
  • Backup Software: For creating backup copies of your existing E-Sword dictionaries.

Backup Your Existing Data

  1. Locate E-Sword Dictionary Files: They are generally found in the installation directory of the E-Sword software.
  2. Copy Dictionary Files: Make copies of these files and store them in a safe location.

Caution: Always backup your data before attempting any changes to avoid accidental loss of information.

Understanding E-Sword’s File Format

The SQLite Database

E-Sword dictionaries are usually SQLite databases with a specific schema. SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine.

Understanding the Schema

  1. Word Table: This table generally contains the word definitions.
    • ID: Unique identifier for each word.
    • Word: The word itself.
    • Definition: The definition in HTML or plain text.

For example:

SELECT * FROM Word WHERE Word='Faith';

This SQL query fetches the word “Faith” and its definition from the Word table.

Methods to Add Words to E-Sword Dictionary

There are multiple ways to add words to the E-Sword dictionary. Here are the three most common methods:

  1. Manual Editing
  2. Using SQLite
  3. Using Custom Software

Let’s delve into each of these methods for a better understanding of how they work.

1. Manual Editing

Steps to Edit Dictionary Manually

  1. Open the Dictionary File: Locate the dictionary file (usually with a .db extension) and open it using a SQLite browser.
  2. Navigate to the Word Table: Look for the table that contains word definitions.
  3. Add a New Record: Manually insert a new record into the table with the word and its definition.

Code Example:

INSERT INTO Word (ID, Word, Definition) VALUES (1001, 'MyWord', 'This is my custom definition.');

Note: Make sure the ID is unique and doesn’t conflict with existing records.

Pros and Cons

  • Pros: Simple and quick for adding a few words.
  • Cons: Risky, as you could corrupt the database if you’re not careful.

2. Using SQLite

Steps to Edit Dictionary via SQLite

  1. Download SQLite Browser: Make sure you have a SQLite Browser installed on your system.
  2. Open the Database: Load the dictionary database into SQLite Browser.
  3. Execute SQL Queries: Use SQL commands to add new records or update existing ones.

Code Example:

-- Adding a new word
INSERT INTO Word (ID, Word, Definition) VALUES (1002, 'NewWord', 'This is another custom definition.');

Note: Always make sure to commit your changes and backup the database before closing SQLite Browser.

Pros and Cons

  • Pros: More powerful than manual editing, especially for batch updates.
  • Cons: Requires some knowledge of SQL.

3. Using Custom Software

Why Use Custom Software?

While manual editing and SQLite methods are effective, they require manual intervention and SQL knowledge. Custom software can automate the process, validate inputs, and ensure that the database remains uncorrupted.

Steps to Create Custom Software

  1. Choose a Programming Language: Popular choices include Python, Java, and C#.
  2. Use SQLite Libraries: Most languages offer libraries or modules to interact with SQLite databases.
  3. Design User Interface: Create a simple interface for inputting words and definitions.
  4. Implement Database Operations: Write functions to insert, update, or delete records in the database.

Code Example: Python with sqlite3

Here’s a simple Python script to add a word to the E-Sword dictionary using the sqlite3 library:

import sqlite3

def add_word_to_dictionary(db_path, word, definition):
        # Connect to the SQLite database
        conn = sqlite3.connect(db_path)
        cursor = conn.cursor()

        # Create a unique ID (you may want to create a more advanced ID generation method)
        new_id = 1003

        # Insert the new word
        cursor.execute("INSERT INTO Word (ID, Word, Definition) VALUES (?, ?, ?)", (new_id, word, definition))
        print("Word added successfully.")
    except sqlite3.Error as e:
        print(f"SQLite error: {e}")
        if conn:

# Example usage
add_word_to_dictionary("path/to/your/dictionary.db", "NewWord", "This is a custom definition.")

Note: Replace "path/to/your/dictionary.db" with the actual path to your E-Sword dictionary file.

Pros and Cons

  • Pros: Automated, can validate data, less risk of corruption, can add batch updates.
  • Cons: Requires time to develop and test the software.

Tips and Tricks

While adding words to your E-Sword dictionary can be straightforward once you know how, there are some best practices and tips to make the process even smoother.

Data Validation

  • Unique IDs: Ensure that each word has a unique ID to prevent conflicts.
  • Avoid Special Characters: Some characters may not be supported and could corrupt the database.


  • Regular Backups: Always keep backup copies of your dictionary files.
  • Use Version Control: Use Git or another version control system to track changes.


  • Test in a Sandbox: Before making changes to your main dictionary, test the process on a duplicate database.
  • Check for Errors: After editing, make sure to check if E-Sword can successfully read the new entries.

Automate When Necessary

If you find yourself adding words regularly, consider automating the process using custom software, as detailed in the previous section.

Community Resources

Forums and Groups: E-Sword has a strong user community where you can share custom dictionaries or find ones that others have made.


Adding custom words to your E-Sword dictionary can enhance your Bible study experience, making it more personalized and thorough. Whether you choose manual editing, SQLite manipulation, or creating custom software, each method has its own set of advantages and drawbacks.

By following best practices, such as validating data and maintaining backups, you can minimize risks while enjoying a more tailored E-Sword experience.

Related Posts: