Χρήστης:Vanished user Xorisdtbdfgonugyfs/html-εργαλεία
tonismos.html
Ο παρακάτω κώδικας μπορεί να αποθηκευτεί σαν αρχείο html στον τοπικό υπολογιστή και να ανοιχτεί τοπικά με περιηγητή ιστοσελίδων. Δημιουργεί τονισμένα γράμματα.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
<TITLE></TITLE>
<META NAME="AUTHOR" CONTENT="Ηλιάδης Ηλίας">
<META NAME="CREATED" CONTENT="20140101;000000">
<META NAME="ABOUT" CONTENT="Generate greek accented letters plus stub articles for el and cs wiktionary.org">
<META NAME="LICENSE" CONTENT="Κοινό κτήμα (Public Domain)">
<META NAME="VERSION" CONTENT="0.1.4">
<STYLE TYPE="text/css">
p { font-size: 150%; }
.theletter { font-size: 400%; font-weight: bold; text-align: center; color: black;}
.theerror { font-size: 400%; font-weight: bold; text-align: center; color: red;}
.thelemma { text-align:left;}
.allletters { font-size: 100%;}
.myversion { font-size: 80%;}
</STYLE>
<script LANGUAGE="JavaScript1.2" >
//<!-- hide script from older browsers
//Συνάρτηση που φορτώνει και τον κώδικα js.
function reset_page()//for testing from clear
{
document.location.reload("location?type=<%=USER_TYPE%>");
}
var ypogegrammenh = 0;
var dialytika = 0;
var gramma = 1;
var pneyma = 0;
var tonos = 0;
var kefalaio = false;
var unaccented = new Array();
unaccented[1] = new Array();
unaccented[2] = new Array();
unaccented[3] = new Array();
unaccented[4] = new Array();
unaccented[5] = new Array();
unaccented[6] = new Array();
unaccented[7] = new Array();
unaccented[8] = new Array();
unaccented[1][0]='\u03b1';//α
unaccented[1][1]='\u0391';//Α
unaccented[2][0]='\u03b5';//ε
unaccented[2][1]='\u0395';//Ε
unaccented[3][0]='\u03b7';//η
unaccented[3][1]='\u0397';//Η
unaccented[4][0]='\u03b9';//ι
unaccented[4][1]='\u0399';//Ι
unaccented[5][0]='\u03bf';//ο
unaccented[5][1]='\u039f';//Ο
unaccented[6][0]='\u03c5';//υ
unaccented[6][1]='\u03a5';//Υ
unaccented[7][0]='\u03c9';//ω
unaccented[7][1]='\u03a9';//Ω
unaccented[8][0]='\u03c1';//ρ
unaccented[8][1]='\u03a1';//Ρ
var Spsili = '\u0313';
var Sdaseia = '\u0314';
var Sokseia = '\u0301';
var Sbareia = '\u0300';
var Sperispomeni = '\u0342';
var Sdialytika = '\u0308';
var Sypogegrammenh = '\u0345';
var Spneyma = new Array();
Spneyma[0] = '';
Spneyma[1] = Spsili;
Spneyma[2] = Sdaseia;
var Stonos = new Array();
Stonos[0] = '';
Stonos[1] = Sokseia;
Stonos[2] = Sbareia;
Stonos[3] = Sperispomeni;
function setatstart(poio){
var aboutstr = "Έκδοση:"
+ document.querySelector('meta[name="VERSION"]').getAttribute("CONTENT")
+ ", Άδεια:"
+ document.querySelector('meta[name="LICENSE"]').getAttribute("CONTENT")
+ ", Δημιουργός:"
+ document.querySelector('meta[name="AUTHOR"]').getAttribute("CONTENT")
document.getElementById("versionetc").innerHTML = aboutstr
document.getElementById("optionletters").innerHTML = '<input name="γράμμα" value="1" type="radio" onClick = "setit(this)" CHECKED> α, '
for (var i=2; i <= 8; i++){
document.getElementById("optionletters").innerHTML = document.getElementById("optionletters").innerHTML + '<input name="γράμμα" value="'+i+'" type="radio" onClick = "setit(this)">'+unaccented[i][0]+', ';//accented[i][0]
}
setit(poio);
}
function setit(poio){
if (poio.name == 'υπογεγραμμένη'){ypogegrammenh = poio.checked?1:0 ;}
if (poio.name == 'διαλυτικά'){ dialytika = poio.checked?1:0 ;}
if (poio.name == 'γράμμα'){ gramma = parseInt(poio.value);}
if (poio.name == 'πνεύμα'){ pneyma = parseInt(poio.value);}
if (poio.name == 'τόνος'){ tonos = parseInt(poio.value);}
if (poio.name == 'κεφαλαίο'){ kefalaio = poio.checked;}
showletter();
}
function showletter(){
var capital = kefalaio?1:0;
var str1 = unaccented[gramma][capital];
if (dialytika==1){str1 += Sdialytika;}
var str2 = Stonos[tonos];
var str3 = Spneyma[pneyma];
str1 += str3 + str2;
if (ypogegrammenh == 1){str1 += Sypogegrammenh;}
var str8 = str1.normalize('NFKC');
if (str8.length == 1 ){
document.getElementById("showtimeid").setAttribute('class','theletter');
document.getElementById("resulttext").innerHTML = '';
document.getElementById('copybutton').style.visibility = "visible";
}
else{
document.getElementById("showtimeid").setAttribute('class','theerror');
document.getElementById('copybutton').style.visibility = "hidden";
document.getElementById("resulttext").innerHTML = 'Δεν υπάρχει τέτοιος χαρακτήρας!';
}
document.getElementById("showtimeid").innerHTML= str8;
}
function copyresult()
{
if (document.selection) { // IE
var range = document.body.createTextRange();
range.moveToElementText(document.getElementById("showtimeid"));
range.select();
} else if (window.getSelection) {
var range = document.createRange();
range.selectNode(document.getElementById("showtimeid"));
window.getSelection().removeAllRanges();
window.getSelection().addRange(range);
}
document.execCommand("copy");
if (document.selection)
{
document.selection.empty();
obj.blur();
}
else
{
window.getSelection().removeAllRanges();
}
document.getElementById('copybutton').style.visibility = "hidden";
document.getElementById("resulttext").innerHTML = 'Αντιγράφτηκε στο πρόχειρο.';
} //end function
// -->
</script>
</HEAD>
<BODY LANG="el-GR" DIR="LTR" onLoad = "setatstart(this)">
<input type="button" value="Νέο" onClick = "reset_page()" />
<TABLE WIDTH=100% CELLPADDING=2 CELLSPACING=2 BORDER='1'>
<TR VALIGN=CENTER>
<TD WIDTH=100% COLSPAN=4>
<center>Δημιουργία τονισμένων</center>
</TD>
</TR>
<TR VALIGN=CENTER>
<TD WIDTH=50% id="optionletters">
<input id="gr1" name="γράμμα" value="1" type="radio" onClick = "setit(this)" CHECKED>α,
</TD>
<TD WIDTH=20% COLSPAN=2>
<P ALIGN=LEFT id="allaccentedid" class = "allletters"><input name="κεφαλαίο" type="checkbox" onClick = "setit(this)">Κεφαλαίο</p>
</TD>
<TD ROWSPAN=3 WIDTH=30%>
<P ALIGN=CENTER name="theletter" id="showtimeid" class="theletter">α</P>
</TD>
</TR>
<TR>
<TD WIDTH=70% COLSPAN=3>
<input name="πνεύμα" value="0" type="radio" onClick = "setit(this)" CHECKED>Χωρίς πνεύμα
<input name="πνεύμα" value="1" type="radio" onClick = "setit(this)">Ψιλή (᾿)
<input name="πνεύμα" value="2" type="radio" onClick = "setit(this)">Δασεία (῾)
</TD>
<TD WIDTH=25%>
</TD>
</TR>
<TR>
<TD WIDTH=70% COLSPAN=3>
<input name="τόνος" value="0" type="radio" onClick = "setit(this)" CHECKED>Χωρίς τόνο
<input name="τόνος" value="1" type="radio" onClick = "setit(this)">Οξεία (´)
<input name="τόνος" value="2" type="radio" onClick = "setit(this)">Βαρεία (`)
<input name="τόνος" value="3" type="radio" onClick = "setit(this)">Περισπωμένη (῀)
</TD>
</TR>
<TR>
<TD WIDTH=70% COLSPAN=3>
<input name="διαλυτικά" type="checkbox" onClick = "setit(this)">Διαλυτικά ( ̈)
<input name="υπογεγραμμένη" type="checkbox" onClick = "setit(this)">Υπογεγραμμένη (ͺ)
</TD>
<TD>
<center><button id="copybutton" onclick="copyresult()">Αντιγραφή</button></center>
<p id="resulttext" ></p>
</TD>
</TR>
</TABLE>
<div><p id="versionetc" class="myversion">v.</p></div>
</BODY>
</HTML>