TempleOSCDV4.11.ISO
This commit is contained in:
1 parent
9206246147
commit
93ca216483
662 files changed
+6431
-7369
No files matched your search
@@ -0,0 +1,348 @@
|
||||
#help_index "God"
|
||||
U0 BibleInit()
|
||||
{
|
||||
DefineLstLoad("ST_BIBLE_BOOKS",
|
||||
"Genesis\0"
|
||||
"Exodus\0"
|
||||
"Leviticus\0"
|
||||
"Numbers\0"
|
||||
"Deuteronomy\0"
|
||||
"Joshua\0"
|
||||
"Judges\0"
|
||||
"Ruth\0"
|
||||
"1 Samuel\0"
|
||||
"2 Samuel\0"
|
||||
"1 Kings\0"
|
||||
"2 Kings\0"
|
||||
"1 Chronicles\0"
|
||||
"2 Chronicles\0"
|
||||
"Ezra\0"
|
||||
"Nehemiah\0"
|
||||
"Esther\0"
|
||||
"Job\0"
|
||||
"Psalms\0"
|
||||
"Proverbs\0"
|
||||
"Ecclesiastes\0"
|
||||
"Song of Songs\0"
|
||||
"Isaiah\0"
|
||||
"Jeremiah\0"
|
||||
"Lamentations\0"
|
||||
"Ezekiel\0"
|
||||
"Daniel\0"
|
||||
"Hosea\0"
|
||||
"Joel\0"
|
||||
"Amos\0"
|
||||
"Obadiah\0"
|
||||
"Jonah\0"
|
||||
"Micah\0"
|
||||
"Nahum\0"
|
||||
"Habakkuk\0"
|
||||
"Zephaniah\0"
|
||||
"Haggai\0"
|
||||
"Zechariah\0"
|
||||
"Malachi\0"
|
||||
"Matthew\0"
|
||||
"Mark\0"
|
||||
"Luke\0"
|
||||
"John\0"
|
||||
"Acts\0"
|
||||
"Romans\0"
|
||||
"1 Corinthians\0"
|
||||
"2 Corinthians\0"
|
||||
"Galatians\0"
|
||||
"Ephesians\0"
|
||||
"Philippians\0"
|
||||
"Colossians\0"
|
||||
"1 Thessalonians\0"
|
||||
"2 Thessalonians\0"
|
||||
"1 Timothy\0"
|
||||
"2 Timothy\0"
|
||||
"Titus\0"
|
||||
"Philemon\0"
|
||||
"Hebrews\0"
|
||||
"James\0"
|
||||
"1 Peter\0"
|
||||
"2 Peter\0"
|
||||
"1 John\0"
|
||||
"2 John\0"
|
||||
"3 John\0"
|
||||
"Jude\0"
|
||||
"Revelation\0");
|
||||
DefineLstLoad("ST_BIBLE_BOOK_LINES",
|
||||
"297\0"
|
||||
"5068\0"
|
||||
"9123\0"
|
||||
"12005\0"
|
||||
"15977\0"
|
||||
"19168\0"
|
||||
"21329\0"
|
||||
"23598\0"
|
||||
"23902\0"
|
||||
"26892\0"
|
||||
"29345\0"
|
||||
"32241\0"
|
||||
"34961\0"
|
||||
"37633\0"
|
||||
"40756\0"
|
||||
"41671\0"
|
||||
"42963\0"
|
||||
"43605\0"
|
||||
"46190\0"
|
||||
"53793\0"
|
||||
"56267\0"
|
||||
"56966\0"
|
||||
"57332\0"
|
||||
"61806\0"
|
||||
"66736\0"
|
||||
"67217\0"
|
||||
"71804\0"
|
||||
"73189\0"
|
||||
"73876\0"
|
||||
"74130\0"
|
||||
"74615\0"
|
||||
"74697\0"
|
||||
"74860\0"
|
||||
"75241\0"
|
||||
"75416\0"
|
||||
"75604\0"
|
||||
"75806\0"
|
||||
"75932\0"
|
||||
"76684\0"
|
||||
"76908\0"
|
||||
"79970\0"
|
||||
"81941\0"
|
||||
"85266\0"
|
||||
"87803\0"
|
||||
"90914\0"
|
||||
"92110\0"
|
||||
"93323\0"
|
||||
"94088\0"
|
||||
"94514\0"
|
||||
"94869\0"
|
||||
"95153\0"
|
||||
"95402\0"
|
||||
"95647\0"
|
||||
"95772\0"
|
||||
"96090\0"
|
||||
"96320\0"
|
||||
"96440\0"
|
||||
"96500\0"
|
||||
"97370\0"
|
||||
"97687\0"
|
||||
"97976\0"
|
||||
"98163\0"
|
||||
"98506\0"
|
||||
"98552\0"
|
||||
"98597\0"
|
||||
"98684\0"
|
||||
"100111\0");
|
||||
DefinePrint("ST_BIBLE_LINES","%d",
|
||||
Str2I64(DefineSub(DefineCnt("ST_BIBLE_BOOK_LINES")-1,
|
||||
"ST_BIBLE_BOOK_LINES"))-1);
|
||||
} BibleInit;
|
||||
|
||||
public U8 *BibleLine2Verse(I64 line,I64 separate_ch=CH_SPACE)
|
||||
{//Line number to verse str, Malloc()ed.
|
||||
//Separate with <SPACE> or ','. If you pass '%', it uses "%20".
|
||||
CDoc *doc;
|
||||
CDocEntry *doc_e;
|
||||
I64 i=0,cnt=DefineCnt("ST_BIBLE_BOOKS"),start=0,last_start=0;
|
||||
U8 *ptr=DefineSub(0,"ST_BIBLE_BOOK_LINES"),*ptr2;
|
||||
while (i<=cnt) {
|
||||
last_start=start;
|
||||
start=Str2I64(ptr);
|
||||
if (line<start)
|
||||
break;
|
||||
i++;
|
||||
ptr+=StrLen(ptr)+1;
|
||||
}
|
||||
if (0<=--i<cnt) {
|
||||
doc=DocRead(BIBLE_FILENAME,DOCF_PLAIN_TEXT|DOCF_NO_CURSOR);
|
||||
DocLineNumGoTo(doc,line); //one based
|
||||
doc_e=doc->cur_entry;
|
||||
while (doc_e!=doc && (doc_e->type_u8!=DOCT_TEXT || !*doc_e->tag))
|
||||
doc_e=doc_e->next;
|
||||
if (doc_e->type_u8==DOCT_TEXT && '0'<=*doc_e->tag<='9') {
|
||||
ptr=ptr2=doc_e->tag;
|
||||
while ('0'<=*ptr2<='9' || *ptr2==':')
|
||||
ptr2++;
|
||||
*ptr2=0;
|
||||
if (separate_ch=='%')
|
||||
ptr=MStrPrint("%Z%%20%s",i,"ST_BIBLE_BOOKS",ptr);
|
||||
else
|
||||
ptr=MStrPrint("%Z%c%s",i,"ST_BIBLE_BOOKS",separate_ch,ptr);
|
||||
} else {
|
||||
while (TRUE) {
|
||||
doc_e=doc_e->last;
|
||||
if (doc_e==doc) {
|
||||
ptr=NULL;
|
||||
break;
|
||||
}
|
||||
if (doc_e->y+1<last_start) {
|
||||
ptr=MStrPrint("%Z",i,"ST_BIBLE_BOOKS");
|
||||
break;
|
||||
}
|
||||
if (doc_e->type_u8==DOCT_TEXT && StrLen(doc_e->tag)>=3) {
|
||||
ptr=doc_e->tag+StrLen(doc_e->tag)-1;
|
||||
while (ptr>doc_e->tag && (!('0'<=*(ptr-1)<='9') || *ptr!=':' ||
|
||||
!('0'<=*(ptr+1)<='9')))
|
||||
ptr--;
|
||||
ptr--;
|
||||
while (ptr>=doc_e->tag && '0'<=*ptr<='9')
|
||||
ptr--;
|
||||
ptr2=++ptr;
|
||||
if ('0'<=*ptr2++<='9') {
|
||||
while ('0'<=*ptr2<='9')
|
||||
ptr2++;
|
||||
if (*ptr2++==':' && '0'<=*ptr2++<='9') {
|
||||
while ('0'<=*ptr2<='9')
|
||||
ptr2++;
|
||||
*ptr2=0;
|
||||
if (separate_ch=='%')
|
||||
ptr=MStrPrint("%Z%%20%s",i,"ST_BIBLE_BOOKS",ptr);
|
||||
else
|
||||
ptr=MStrPrint("%Z%c%s",i,"ST_BIBLE_BOOKS",separate_ch,ptr);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
DocDel(doc);
|
||||
return ptr;
|
||||
} else
|
||||
return NULL;
|
||||
}
|
||||
|
||||
public U0 BibleLines(CDoc *doc_out=NULL,I64 start,I64 lines,
|
||||
U8 *bible_filename=BIBLE_FILENAME)
|
||||
{//Put N line starting at line M into doc.
|
||||
CDoc *doc_in;
|
||||
CDocEntry *doc_e;
|
||||
if (!doc_out) doc_out=DocPut;
|
||||
if (doc_out && FileFind(bible_filename)) {
|
||||
doc_in=DocRead(bible_filename,DOCF_PLAIN_TEXT|DOCF_NO_CURSOR);
|
||||
DocLineNumGoTo(doc_in,start); //one based
|
||||
doc_e=doc_in->cur_entry;
|
||||
while (lines>0 && doc_e!=doc_in) {
|
||||
if (doc_e->type_u8==DOCT_TEXT)
|
||||
DocPrint(doc_out,"%s",doc_e->tag);
|
||||
else if (doc_e->type_u8==DOCT_NEW_LINE) {
|
||||
DocPutKey(doc_out,'\n');
|
||||
lines--;
|
||||
}
|
||||
doc_e=doc_e->next;
|
||||
}
|
||||
DocDel(doc_in);
|
||||
}
|
||||
}
|
||||
|
||||
public U0 BibleVerse(CDoc *doc_out=NULL,U8 *verse,I64 lines)
|
||||
{//Put N lines starting at verse str into doc.
|
||||
I64 i;
|
||||
CDoc *doc_in;
|
||||
CDocEntry *doc_e;
|
||||
U8 *st,*st2;
|
||||
if (!doc_out) doc_out=DocPut;
|
||||
if (doc_out && FileFind(BIBLE_FILENAME)) {
|
||||
st=StrNew(verse);
|
||||
st2=StrNew(verse);
|
||||
if (StrOcc(st,','))
|
||||
StrLastRem(st,",",st2);
|
||||
else
|
||||
*st2=0;
|
||||
i=DefineMatch(st,"ST_BIBLE_BOOKS",LMF_IGNORE_CASE);
|
||||
if (i>=0) {
|
||||
i=Str2I64(DefineSub(i,"ST_BIBLE_BOOK_LINES"));
|
||||
doc_in=DocRead(BIBLE_FILENAME,DOCF_PLAIN_TEXT|DOCF_NO_CURSOR);
|
||||
DocLineNumGoTo(doc_in,i); //one based
|
||||
if (*st2) {
|
||||
StrCpy(doc_in->find_replace->find_text,st2);
|
||||
EdFindNext(doc_in);
|
||||
}
|
||||
doc_e=doc_in->cur_entry;
|
||||
while (lines>0 && doc_e!=doc_in) {
|
||||
if (doc_e->type_u8==DOCT_TEXT)
|
||||
DocPrint(doc_out,"%s",doc_e->tag);
|
||||
else if (doc_e->type_u8==DOCT_NEW_LINE) {
|
||||
DocPutKey(doc_out,'\n');
|
||||
lines--;
|
||||
}
|
||||
doc_e=doc_e->next;
|
||||
}
|
||||
DocDel(doc_in);
|
||||
}
|
||||
Free(st);
|
||||
Free(st2);
|
||||
}
|
||||
}
|
||||
|
||||
public CDoc *BibleDoc()
|
||||
{//Return Bible as DolDoc with trees.
|
||||
CDoc *res=DocRead(BIBLE_FILENAME);
|
||||
CDocEntry *doc_e=res->head.next,*doc_e1;
|
||||
Bool open_chapter=FALSE;
|
||||
U8 *ptr=Define("ST_BIBLE_BOOK_LINES");
|
||||
I64 book,book_cnt=DefineCnt("ST_BIBLE_BOOK_LINES")-1,
|
||||
chapter,
|
||||
line=Str2I64(ptr,,&ptr);
|
||||
ptr++;
|
||||
for (book=0;book<book_cnt;book++) {
|
||||
while (doc_e->y+1<line) {
|
||||
doc_e1=doc_e->next;
|
||||
DocEntryDel(res,doc_e);
|
||||
doc_e=doc_e1;
|
||||
}
|
||||
res->cur_entry=doc_e;
|
||||
res->cur_col=0;
|
||||
DocPrint(res,"$$TR,\"%Z\"$$\n$$ID,2$$",book,"ST_BIBLE_BOOKS");
|
||||
line=Str2I64(ptr,,&ptr);
|
||||
ptr++;
|
||||
chapter=1;
|
||||
while (doc_e->y+1<line) {
|
||||
doc_e1=doc_e->next;
|
||||
if (doc_e->type_u8==DOCT_TEXT && StrMatch(":1 ",doc_e->tag)) {
|
||||
res->cur_entry=doc_e;
|
||||
res->cur_col=0;
|
||||
if (open_chapter) {
|
||||
DocPrint(res,"$$ID,-2$$");
|
||||
open_chapter=FALSE;
|
||||
}
|
||||
DocPrint(res,"$$TR,\"%d\"$$\n$$ID,2$$",chapter++);
|
||||
open_chapter=TRUE;
|
||||
} else if (chapter==1) {
|
||||
doc_e1=doc_e->next;
|
||||
DocEntryDel(res,doc_e);
|
||||
doc_e=doc_e1;
|
||||
}
|
||||
doc_e=doc_e1;
|
||||
}
|
||||
res->cur_entry=doc_e;
|
||||
res->cur_col=0;
|
||||
if (open_chapter) {
|
||||
DocPrint(res,"$$ID,-2$$");
|
||||
open_chapter=FALSE;
|
||||
}
|
||||
DocPrint(res,"$$ID,-2$$");
|
||||
}
|
||||
while (doc_e!=res) {
|
||||
doc_e1=doc_e->next;
|
||||
DocEntryDel(res,doc_e);
|
||||
doc_e=doc_e1;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
public U0 BibleView()
|
||||
{//View Bible as DolDoc with trees.
|
||||
U8 buf[STR_LEN];
|
||||
CDoc *doc=BibleDoc;
|
||||
StrPrint(buf,"AL:%d,1",doc);
|
||||
Ed(buf);
|
||||
DocDel(doc);
|
||||
}
|
||||
U0 CtrlAltB(I64)
|
||||
{
|
||||
PopUp("BibleView;");
|
||||
}
|
||||
CtrlAltCBSet('B',&CtrlAltB,"Cmd /Bible");
|
||||
Reference in new issue
Block a user