The first and hardest step is to build your reading plan file. BibleReader reading plans are XML files, so if you’ve had any experience with them or even HTML you’ll understand the format instantly. If you haven’t had any experience with this style of code, it is fairly self explanatory, but you may need to Google a basic tutorial. Here’s my one line tutorial:
- Code: Select all
<otDoNotChangeThis title="ChangeThis">Change This</DoNotChangeThis>
Create a new file in your text editor of choice and save it using a name in this format: readingtemplate_YourPlanName.xml. All you need to change is YourPlanName. I’m not sure exactly what characters are allowed, but probably safest to only use alphanumeric characters and avoid spaces.
Next, add this code to the start of your file:
- Code: Select all
<otReadingTemplate selectionType="injective" textSource="ASV">
<otTemplateTitle>Daily Reading: A Random Example</otTemplateTitle>
<otTemplateCopyright>Compiled by Benn, quite randomly, 1.0, 5/1/11.</otTemplateCopyright>
<otTemplateCreated>January 5th, 2011</otTemplateCreated>
<otTemplateDescription>Use this reading schedule to blindly guide your reading and study of God's Word.
This schedule offers a reading plan that moves through the Bible completely at random. You’ll have no idea just how much you need to read each day in order to read through the Old and New Testaments in one year.
<otReadingBin title=“Random Daily Readings">
Customise this code, putting the name of your plan in the otTemplateTitle tags and an abbreviated title in otTemplateAbbrTitle. otTemplateTitle, otTemplateAuthor, otTemplateCopyright and otTemplateDescription are visible from within BibleReader. The rest only need to be changed if you plan to share your Reading Plan file, so others will know if they have your latest revision and can contact you about corrections.
Don’t change otDailyReadingEngineVersion or otTemplateCreateCode (not sure what the create codes are or what they mean, but 100 is used by the default reading plans).
You’ll notice that the ASV (American Standard Version) is referred to on the first line of code. Generally you wont need to change this as BibleReader will just use whatever Bible you have open. My guess is that this might be to let the app know that this reading plan uses the Protestant Bible books and spelling. If you were creating a reading plan involving apocrypha or maybe even non-Bible resources you’d change this to a matching resource. Let me know if you try this and this ends up being the case or not.
Lastly, change the otReadingBin title. I don’t think this shows up anywhere, but this is going to take a bit of work so you may as well be a completist!
Next comes your actual readings, repeatedly add this code to your file, once for each period of reading:
- Code: Select all
<otReadingSelection title="Day 1">
<otReadingRange begin="Gen 11:1" end="Gen 11:4" />
The title on the first line needs to be changed for each entry, in this example you’d obviously name them Day 2, Day 3 and so on. Alternatively you might like to use another system such as morning and evening readings. If you are using the plain days it might be faster to write your reading plan over the top of a copy of one of the default files, this will save you numbering up to 365. So read this rest of this guide to find out how to access these files before you actually start writing your entries!
The otReadingRange line obviously shows the reading range for that entry, fill in the begining verse and the ending verse. You can be less specific with the end if it is the last verse of the chapter. Instead of the verse number you can just ff. For example, to finish Genesis chapter 12 you’d have end="Gen 12:ff" (you can also drop the colon if you wish). Alternatively, if your end verse is the last verse of the chapter you began in you can skip everything and just have end="ff".
To have non-consecutive ranges of verses simply add more copies of the otReadingRange line within the otReadingSelection tags. For example:
- Code: Select all
<otReadingSelection title="Day 2">
<otReadingRange begin="Prov 18:1" end="Prov 19:4" />
<otReadingRange begin="Mat 7:1" end="ff" />
<otReadingRange begin="Jude 1:4" end="Jude 1:7" />
Note that I’ve alternated between three and four letter abbreviations for book names. I’ve recently been coding my own online Bible site and am now well aware of how complicated Bible abbreviation can get and the problems it can cause! You will need to be a little aware of this when writing your own reading plan files. When working with two and three letter abbreviations there are a few collisions between the books, an example is Jud 1. Some may read this as Judges, others Jude. Two letter abbreviations are worse, is Hb 2 Hebrews? Or Habbakuk? I did a survey of existing online Bibles and apps, and they regularly disagreed. BibleReader accepts many name options, to avoid issues in your files see this list of options: http://www.olivetree.com/cgi-bin/EnglishBible.htm?help=abbreviations. BibleReader resolves Jud to Jude and wisely doesn’t accept Hb.
Now finish your file with these lines:
- Code: Select all
Now you just need to get your file onto your iOS device. Until Olive Tree add an official way to add them you will need to download another application. Go to http://www.macroplant.com/iphoneexplorer/ and download the free app, iPhone Explorer. This app allows you to look in certain areas of your iOS device’s file system and view, copy and paste the content. If you don’t have a jailbroken device then the extent of this is limited, you couldn’t add your own SMS ringtones, but you can add reading plans to BibleReader!
Install and launch iPhone Explorer on your computer and plug in your iOS device. You will be able to see your device in the app, click on it, select the App folder and then find BibleReader. This may take a little time if you have a lot of apps on your device as the list wont appear to be in any order (it is, but is based off the random folder names iOS uses for your apps, luckily iPhone Explorer doesn’t show you their real names as you’d be completely lost!).
Within the BibleReader folder there are four folders, one which is named Documents, and two files. To add your finished reading plan, find the file within your computer’s file explorer (Finder on Mac, Windows Explorer on Windows), then drag that file into the Documents folder in iPhone Explorer. Now unplug your iOS device, and close BibleReader. If you don’t have iOS4 then all you need to do is leave BibleReader (if it was even open in the first place). If you do it is a little more fiddly. Leave BibleReader if you had it open, then double-tap the Home button, find BibleReader in the opened dock, hold down on it till it enters wiggle mode and then tap the close button.
Now open up BibleReader again and you’ll find your reading plan!
To get copies of BibleReader’s default reading plans you need to look somewhere else, they aren’t in the Documents folder. One of the other four folders is called BibleReader.app. Within that is readingtemplate_Chronological.xml, readingtemplate_DailyReading.xml and readingtemplate_MCheyneDaily.xml. Select them and drag them to your computer. You may wonder why your custom plan is put in another folder, it is actually possible (though quite fiddly) to put them in the same folder as the default plans, but as soon as you upgrade your copy of BibleReader you’d lose your plan, everything outside of the Documents folder gets replaced when upgrading.
I’ve written this fairly fast, so if you run into issues or I simply stopped writing in a recognisable language for part of this then post here, I’ll be subscribed to this thread. If you’d like to know if a particular mod is possible through iPhone Explorer ask away too (before BR5 I had customised the UI of BibleReader on my iPad, subtler buttons and a flatter interface, and I even have resources like the Life Application Study Bible notes in BR5, I don’t think Olive Tree sells it through their store).
So there you go! Happy daily reading!