Awesome
BibleGateway-to-Obsidian
⚠️ Disclaimers
By default, the version is set to the WEB Bible. You can change the version but must honour the copyright standards of different translations of the Bible (See for example BibleGateway's overview).
Using the script with some versions is clearly breaking copyright. The script is not intended for such usage.
For example, for the ESV from https://www.esv.org/resources/esv-global-study-bible/copyright-page/:
"The ESV text may be quoted (in written, visual, or electronic form) up to and inclusive of five hundred (500) consecutive verses without express written permission of the publisher, provided that the verses quoted do not amount to more than one-half of any one book of the Bible or its equivalent measured in bytes and provided that the verses quoted do not account for twenty-five percent (25%) or more of the total text of the work in which they are quoted."
The NET translation, however has very generous copyright rules: https://netbible.com/copyright/. It appears to be permissible to use for personal study.
This is not affiliated to, or approved by, BibleGateway.com. In my understanding it fits into the conditions of usage, but I make no guarantee regarding the usage of the script, it is at your own discretion.
About
This script adapts jgclark's BibleGateway-to-Markdown script to export for use in Obsidian. It accompanies a Bible Study in Obsidian Kit that gets you hands-on with using Scripture in your personal notes.
What the script does is fetch the text from Bible Gateway and save it as a formatted markdown file. Each chapter is saved as one file and navigation between files as well as a book-file is automatically created. All the chapter files of a book are saved in its numbered folder.
This script is intended to be as simple as possible to use, even if you have no idea about scripting. If you have any questions, please reach out to me either on GitHub or Discord (selfire#3095
).
Languages
You can find supported languages in the locales folder.
Installation
Here are the tools we are going to use:
- Our command line (Terminal)
- On Windows you might need to install perl.
Setting ruby up
Updating
In order to run the scripts, we will need to install ruby. Ruby comes pre-installed on macOS, but if you run into issues update to the latest version.
Downloading BibleGateway-to-Markdown.rb
Follow the instructions to download and set up jgclark's BibleGateway-to-Markdown.
Usage
1. Install scripts
Place both scripts (bg2md.rb
and bg2obs.sh
) in the same directory, open your terminal application, and navigate to that directory with commands like the following:
pwd
Show your current directoryls
List all contents in the current directorycd
Enter a subdirectory (e.g.,cd Desktop
)cd ..
Brings you 'up' one directory
2. Run the script
Once you have navigated to the directory containing both scripts, run bash bg2obs.sh
. This will run the bash script. A folder called Scripture
with subfolders like Genesis
, Exodus
and so on will be created in the current folder.
Note: This script uses the clipboard to manipulate the text. You might find that copying and pasting while running the script does not work as expected.
Several options are available via command-line switches. Type bash bg2obs.sh -h
at any time to display them.
Script option summary
Option | Description |
---|---|
-v [VERSION] | Specify the version of the Bible to download (default is WEB) |
-b | Set words of Jesus in bold (default is Off) |
-e | Include editorial headers (default is Off) |
-a | Create an alias in the YAML front matter with a more user-friendly chapter title (e.g., "Genesis 1") (default is Off) |
-i | Show progress information while the script is running (i.e. "verbose" mode) (default is Off) |
-c | Include inline navigation for the breadcrumbs plugin (e.g. 'up', 'next','previous') (default is Off) |
-y | Include navigation for the breadcrumbs plugin in the frontmatter (YAML) (default is Off) |
-l | Specify the locale that should be used to name the books of the Bible (default is English). See supported locales. |
-h | Display help |
Example usage
Command | Description |
---|---|
bash bg2obs.sh -i -v NET | Download a copy of the NET Bible with no other options. |
bash bg2obs.sh -b | Download a copy of the WEB Bible (default) with Jesus' words in bold. |
bash bg2obs.sh -y | Download a copy of the WEB Bible (default) with breadcrumbs navigation in the frontmatter. |
bash bg2obs.sh -v NET -beacyi | Download a copy of the NET Bible with all options enabled. |
3. Format the text in a text editor
Some cross references are sometimes still included, run \<crossref intro.*crossref\>
to delete.
There you go! Now, just move the "Scripture" folder into your Obsidian vault. You can use the provided The Bible.md
file as an overview file.
Translations
This script downloads the World English Bible by default. If you want to download a different translation, specify the version using the -v
command-line switch as documented above. The list of abbreviations is available on the Bible Gateway site under the version drop-down menu in the search bar. Make sure to honour copyright guidelines. The script has not been tested with all versions of the Bible available at Bible Gateway, though most of the more commonly-used ones should work.
A fork of this repo supports Catholic translations: mkudija/BibleGateway-to-Obsidian-Catholic.
Troubleshooting 🐛
Below are common issues when using the script. If this still doesn't solve your issue, there are some place to get help:
- The Help and Support thread for this script in the Obsidian Forums. (I am somewhat less active there, but plenty of folks are happy to help out!)
- Create an issue on GitHub. This is my preferred way to keep track of what needs fixing.
- Also, feel free to get in touch and I will attempt to fix it!
Problems loading ruby/gems
An error like this indicates ruby or the gems aren't installed properly: in require: cannot load such file -- colorize (LoadError)
Solutions
- Have a look at the bg2md installation guide to make sure you installed ruby and gems properly.
- Run the gem install with admin privileges:
sudo gem install colorize optparse clipboard
. - Re-install ruby and gems.
The first chapter of the book repeats
☑️ Use version 1.4.3 of jgclark's script instead of the newest version.
"Language not found: error
Make sure to download the whole repository. See issue 44 for more information.
Contributing
Pull requests are welcome. You can help me keep creating tools like this by buying me a coffee. ☕️
<a href="https://www.buymeacoffee.com/joschua" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" height= "48" width="173"></a>
Locales
You can contribute by translating this script into your language.
Copy the locales/en folder and rename it with the relevant language tag. Add the translations in a books.txt
, booksAbbr.txt
, booksAbbrShort.txt
and name.txt
files.