Latin Springboard

The Latin Springboard is a html-page which displays lists of links to reference works written in Latin or about Roman (and Greek) antiquities. Each link points to a random page inside of the respective work (or site). By pressing F5 or CTRL-R new random links are generated. The purpose is to give access to a random bit of information either in Latin or about Roman (and Greek) antiquities, for those moments when you want something of that sort but are unwilling to make up your mind up about what exactly you want to read about.

Currently, the following reference works are given:

  • Smith's Dictionary of Greek and Roman Biography and Mythology
  • William Smith's Dictionary of Greek and Roman Antiquities
  • Oskar Seyffert's Dictionary of Classical Antiquities
  • William Hazlitt's Classical Gazetteer
  • Anthony Rich, The illustrated companion to the Latin dictionary, and Greek lexicon
  • Alexander Adam's Roman Antiquities (6th ed., 1807)
  • Rev. Bevan's Student's Manual to Ancient Geography
  • William S. Davis' A Day in old Athens and A Day in old Rome
  • Harold W. Johnston, The Private Life of the Romans
  • Routledge (publ.), New Dictionary of the Latin and English Languages (Eng./Lat.)
  • Daremberg & Saglio, Dictionnaire des Antiquités Grecques et Romaines [French]
  • Johann J. Hofmann's Lexicon Universale (1698)
  • Latin Wikipedia.

Try it out here. If you like it, copy the code (see end of page), put it into a html-file (e..g "springboard.html") and then load that file in your browser. That is a lot faster.



<!DOCTYPE html>
<html>
<head>
<title>Latin Springboard</title>
</head>
<body>
 
<script>
 
// Declare some global variables
//var TARGET = " target=\"_blank\"" // Open URL in new window.
var TARGET = " target=\"_self\"" // Open URL in same window.
var FONT_SIZE = "medium" // "small", "medium"
 
/** Pad a number with 0 on the left */
// Source of function 'zeroPad':
// http://stackoverflow.com/questions/1267283/how-can-i-create-a-zerofilled-value-using-javascript
 
// Zero-pad a number, e.g. "zeroPad(3, 4)" = "0003".
function zeroPad(number, digits) {
  var num = number + "";
  while(num.length < digits){
    num = '0' + num;
  }
  return num;
}
 
// Create a random number with values minpage <= x <= maxpage.
function createRndNr(minpage, maxpage) {
  var randomnumber = Math.floor(Math.random()*(maxpage - minpage + 1)) + minpage;
  return randomnumber;
}
 
// Create a html-hyperlink reference, specifically tailored to
// the web-site www.ancientlibrary.com
function createURL(base, suffix, pagenum, text) {
  var url = base + zeroPad(pagenum, 4) + suffix;
 
  return "<a href=" + "\"" + url + "\"" + TARGET + ">" + text + "</a>"
}
var randomnumber
 
//-----------------------------------------------
// Introductory text.
document.write("<h1 style=\"text-align:center;\">Latin Springboard</h1>")
var intro = "This is a list of links to reference works written in Latin or about Roman (and Greek) antiquities. Each link points to a random page inside of the respective work (or site).<br>Press F5 or Ctrl-R to refresh this page and generate new random links."
document.write("<p>" + intro + "</p>")
 
//Set font size for everything except intro.
document.write("<" + FONT_SIZE + ">")
 
//-----------------------------------------------
document.write("<h3>Books at <i>The Ancient Library</i></h3>")
document.write("<ul>");
 
// Smith's "Dictionary of Greek and Roman Biography and Mythology"
// Vol. 1 = html-pages 0010-1099 = Abaris - Dysponteus
// Vol. 2 = html-pages 1109-2327 = Ebion - Nyx
// Vol. 3 = html-pages 2334-3739 = Oarses - Zygia
// Choose volume (1-3)
var vol = createRndNr(1, 3) // number of "volume" of complete work.
var title = "<i>Dictionary of Greek and Roman Biography and Mythology</i> (Vol. " + vol + ", "
// Select page and title according to volume chosen.
if (vol == 1)
{
  randomnumber = createRndNr(10, 1099);
  title = title + "Abaris - Dysponteus)";
}
else if (vol == 2)
{
  randomnumber = createRndNr(1109, 2327);
  title = title + "Ebion - Nyx)";
}
else
{
  randomnumber = createRndNr(2334, 3739);
  title = title + "Oarses - Zygia)";
}
htmlurl = createURL("http://www.ancientlibrary.com/smith-bio/", ".html", randomnumber, title)
document.write("<li>William Smith, " + htmlurl + " (p. " + randomnumber + ")</li>")
 
// William Smith's "Dictionary of Greek and Roman Antiquities"
randomnumber = createRndNr(8, 1248)
htmlurl = createURL("http://www.ancientlibrary.com/smith-dgra/", ".html", randomnumber, "<i>Dictionary of Greek and Roman Antiquities</i>")
document.write("<li>William Smith, " + htmlurl + " (p. " + randomnumber + ")</li>")
 
// Oskar Seyffert's "Dictionary of Classical Antiquities"
randomnumber = createRndNr(4, 710)
htmlurl = createURL("http://www.ancientlibrary.com/seyffert/", ".html", randomnumber, "<i>Dictionary of Classical Antiquities</i>")
document.write("<li>Oskar Seyffert, " + htmlurl + " (p. " + randomnumber + ")</li>")
 
// William Hazlitt's "Classical Gazetteer"
randomnumber = createRndNr(3, 380)
htmlurl = createURL("http://www.ancientlibrary.com/gazetteer/", ".html", randomnumber, "<i>Classical Gazetteer</i>")
document.write("<li>William Hazlitt, " + htmlurl + " (p. " + randomnumber + ")</li>")
 
document.write("</ul>");
 
//-----------------------------------------------
 
document.write("<h3>Books at <i>Archive.org</i></h3>");
document.write("<ul>");
 
// Anthony Rich's "Illustrated Companion"
randomnumber = createRndNr(18, 732);
htmlurl = "<a href=\"http://archive.org/stream/illustratedcompa00richuoft#page/n" + randomnumber + "/mode/1up\"" + TARGET + "><i>The illustrated companion to the Latin dictionary, and Greek lexicon</i></a>";
document.write("<li>Anthony Rich, " + htmlurl + " (p. " + randomnumber + ")</li>");
 
// Alexander Adam's "Roman Antiquities" (6th ed., 1807)
var adam=[1, 1, 2, 7, 11, 16, 20, 26, 29, 30, 31, 32, 33, 34, 35, 42, 44, 44, 46, 46, 47, 47, 49, 57, 62, 62, 67, 68, 69, 71, 75, 76, 77, 79, 95, 101, 106, 108, 119, 127, 134, 142, 144, 147, 148, 152, 155, 157, 157, 158, 158, 158, 165, 167, 176, 180, 181, 186, 187, 188, 189, 191, 222, 224, 225, 226, 227, 229, 245, 247, 249, 250, 252, 253, 257, 257, 258, 260, 261, 263, 271, 274, 283, 286, 290, 320, 328, 328, 334, 334, 339, 340, 345, 352, 361, 366, 372, 378, 384, 387, 391, 392, 394, 398, 411, 433, 435, 435, 438, 440, 442, 447, 452, 455, 457, 459, 467, 470, 490, 495, 500, 502, 504, 505, 516, 518, 522, 525, 530, 532, 544, 549, 560, 564, 564, 567, 568, 568, 569, 570, 572, 572, 573, 574, 575, 575, 579];
randomnumber=adam[Math.floor(Math.random()*adam.length)];
htmlurl = "<a href=\"http://archive.org/stream/romanantiquities00adamrich#page/" + randomnumber + "/mode/1up\"" + TARGET + ">Alexander Adam's <i>Roman Antiquities</i> (6th ed., 1807)</a>";
document.write("<li>" + htmlurl + " (p. " + randomnumber + ")</li>");
 
// Rev. Bevan's "Student's Manual to Ancient Geography"
// 1st link: Complete Opus
randomnumber = createRndNr(17, 699)
htmlurl = "<a href=\"http://archive.org/stream/studentsmanuala00smitgoog#page/n" + randomnumber + "/mode/1up\"" + TARGET + ">Complete Work</i></a>" + " (p. " + (randomnumber-16) + ")";
// 2nd link: Asia only
randomnumber = createRndNr(83, 268)
htmlurl = htmlurl + ", " + "<a href=\"http://archive.org/stream/studentsmanuala00smitgoog#page/n" + randomnumber + "/mode/1up\"" + TARGET + ">Asia</i></a>" + " (p. " + (randomnumber-16) + ")";
// 3rd link: Africa only
randomnumber = createRndNr(269, 328)
htmlurl = htmlurl + ", " + "<a href=\"http://archive.org/stream/studentsmanuala00smitgoog#page/n" + randomnumber + "/mode/1up\"" + TARGET + ">Africa</i></a>" + " (p. " + (randomnumber-16) + ")";
// 4th link: Europe only
randomnumber = createRndNr(329, 699)
htmlurl = htmlurl + ", " + "<a href=\"http://archive.org/stream/studentsmanuala00smitgoog#page/n" + randomnumber + "/mode/1up\"" + TARGET + ">Europe</i></a>" + " (p. " + (randomnumber-16) + ")";
 
document.write("<li>Rev. Bevan's <i>Student's Manual to Ancient Geography (1875)</i>: " + htmlurl + "</li>");
 
// William Stearns Davis' "A day in old Athens", "A day in old ROme"
// 1st link: "A day in old Athens"
randomnumber = createRndNr(1, 237)
htmlurl = "<a href=\"http://archive.org/stream/dayinoldathenspi00daviiala#page/" + randomnumber + "/mode/1up\"" + TARGET + ">A Day in old Athens</i></a>" + " (1914, p. " + randomnumber + ")";
// 2nd link: "A day in old Rome"
randomnumber = createRndNr(36, 515)
htmlurl = htmlurl + ", " + "<a href=\"http://archive.org/stream/dayinoldrome007400mbp#page/n" + randomnumber + "/mode/1up\"" + TARGET + ">A Day in old Rome</i></a>" + " (1963, ca. p. " + (randomnumber-35) + ")";
 
document.write("<li>William S. Davis': " + htmlurl + "</li>");
 
// Harold W. Johnston's "The Private Life of the Romans"
randomnumber = createRndNr(11, 331)
htmlurl = "<a href=\"http://archive.org/stream/privatelifeofrom00john#page/" + randomnumber + "/mode/1up\"" + TARGET + "><i>The Private Life of the Romans</i></a>";
document.write("<li>Harold W. Johnston, " + htmlurl + " (p. " + randomnumber + ")</li>");
 
// Routledge's "New Dictionary of the Latin and English Languages" (Eng./Lat.)
randomnumber = createRndNr(1, 212)
htmlurl = "<a href=\"http://archive.org/stream/newdictionaryofl00londuoft#page/" + randomnumber + "/mode/1up\"" + TARGET + "><i>New Dictionary of the Latin and English Languages</i></a>";
document.write("<li>Routledge (publ.), " + htmlurl + " (Eng./Lat., p. " + randomnumber + ")</li>");
 
document.write("</ul>");
 
//-----------------------------------------------
document.write("<h3>Other Books</h3>")
 
// Daremberg & Saglio, "Dictionnaire des Antiquités Grecques et Romaines" (in French)
// There are 9 volumes in 
// 1: Tome 1, Vol. 1: html-pages 13-768 (A-B)
// 2: Tome 1, Vol. 2: html-pages 4-950 (C)
// 3: Tome 2, Vol. 1: html-pages 5-950 (D-E)
// 4: Tome 2, Vol. 2: html-pages 5-774 (F-G)
// 5: Tome 3, Vol. 1: html-pages 5-880 (H-K)
// 6: Tome 3, Vol. 2: html-pages 4-1266 (L-M)
// 7: Tome 4, Vol. 1: html-pages 5-812 (N-Q)
// 8: Tome 4, Vol. 2: html-pages 5-797 (R-S)
// 9: Tome 5, Vol. 1: html-pages 10-1087 (T-Z)
var tome = createRndNr(1, 5);
vol = createRndNr(1,2);
if (tome == 5) vol = 1;
 
title = "<i>Dictionnaire des Antiquités Grecques et Romaines</i> (Tome ";
 
if (tome == 1 && vol == 1)
{
  randomnumber = createRndNr(1, 768);
  title = title + "1/1, A/ab - Byssus)"
}
else if (tome == 1 && vol == 2)
{
  randomnumber = createRndNr(1, 950);
  title = title + "1/2, Cabiri - Cyziceni)"
}
else if (tome == 2 && vol == 1)
{
  randomnumber = createRndNr(1, 950);
  title = title + "2/1, Dactyli - Extraordinarii)"
}
else if (tome == 2 && vol == 2)
{
  randomnumber = createRndNr(1, 782);
  title = title + "2/2, Faba - Gyrgillus)"
}
else if (tome == 3 && vol == 1)
{
  randomnumber = createRndNr(1, 950);
  title = title + "3/1, Habena - Kytherodikes)"
}
else if (tome == 3 && vol == 2)
{
  randomnumber = createRndNr(1, 1266);
  title = title + "3/2, Labronios - Mystrum)"
}
else if (tome == 4 && vol == 1)
{
  randomnumber = createRndNr(1, 812);
  title = title + "4/1, Nablia - Quorum Bonorum)"
}
else if (tome == 4 && vol == 2)
{
  randomnumber = createRndNr(1, 800);
  title = title + "4/2, Radius - Syssitia)"
}
else if (tome == 5 && vol == 1)
{
  randomnumber = createRndNr(1, 1092);
  title = title + "5/1, Tabella - Zythum)"
}
htmlurl = "http://dagr.univ-tlse2.fr/sdx/dagr/feuilleter.xsp?tome=";
htmlurl = htmlurl + tome + "&partie=" + vol + "&numPage=" + randomnumber;
htmlurl = "<a href=" + "\"" + htmlurl + "\"" + TARGET + ">" + title + "</a>";
document.write("<ul>");
document.write("<li>[French] Daremberg & Saglio, " + htmlurl + " (p. " + randomnumber + ")</li>");
 
// Johann J. Hofmann's "Lexicon Universale" (1698)
tome = createRndNr(1, 4); // Choose one of four tomes.
title = "<i>Lexicon Universale</i> (Tomus ";
if (tome == 1)
{
  randomnumber = createRndNr(1, 1072);
  title = title + "1, A-C)"
}
else if (tome == 2)
{
  randomnumber = createRndNr(1, 900);
  title = title + "2, D-L)"
}
else if (tome == 3)
{
  randomnumber = createRndNr(1, 994);
  title = title + "3, M-Q)"
}
else if (tome == 4)
{
  randomnumber = createRndNr(1, 888);
  title = title + "4, R-Z)";
}
// Now choose the left or right column ("a" or "b").
var column;
if (createRndNr(1, 2) == 1)
{
  column = "a";
}
else
{
  column = "b";
}
htmlurl = "<a href=\"http://www.uni-mannheim.de/mateo/camenaref/hofmann/hof";
htmlurl = htmlurl + tome + "/s" + zeroPad(randomnumber, 4)
htmlurl = htmlurl + column + ".html\"" + TARGET + ">" + title + "</a>";
document.write("<li>Johann J. Hofmann's 1698-edition of his " + htmlurl + " (p. " + randomnumber + ")</li>");
 
document.write("</ul>");
 
//-----------------------------------------------
document.write("<h3>Various</h3>")
htmlurl = "<a href=\"http://la.wikipedia.org/wiki/Specialis:Pagina_fortuita\"" + TARGET + ">Latin Wikipedia</a>"
document.write("<ul>");
document.write("<li>" + htmlurl + "</li>");
document.write("</ul>");
 
document.write("</" + FONT_SIZE + ">")
 
</script>
 
</body>
</html>
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License