Created
December 10, 2020 09:30
-
-
Save Sobsz/9f74ed08344fdcdb1def372c61621eee to your computer and use it in GitHub Desktop.
ilo pi nimi sin
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<h1>ilo pi nimi sin</h1> | |
<p id="nimi"></p> | |
<table><tbody> | |
<tr> | |
<td><label for="open">open pi mute mu lon nimi</label></td> | |
<td><input type="number" id="open" name="open" size="3" min="1" value="2"></td> | |
</tr><tr> | |
<td><label for="pini">pini pi mute mu lon nimi</label></td> | |
<td><input type="number" id="pini" name="pini" size="3" min="1" value="3"></td> | |
</tr><tr> | |
<td><label for="mute">mute nimi</label></td> | |
<td><input type="number" id="mute" name="mute" size="3" min="1" value="10"></td> | |
</tr><tr> | |
<td><label for="kenN">ken pi kalama pini N</label></td> | |
<td><input type="number" id="kenN" name="kenN" size="3" min="0" max="100" value="20"></td> | |
</tr> | |
</tbody></table> | |
<br> | |
<button onclick="panaENimi()">o pana sin</button> | |
<label><input type="checkbox" onclick="panaEPokiPu()">o weka e nimi pu</label> | |
<div id="pokiPu" style="display:none;"><br>sina ken ante e nimi ni:<br><textarea cols="50" rows="10" id="nimiPu">a,akesi,ala,alasa,ali,anpa,ante,anu,awen,e,en,esun,ijo,ike,ilo,insa,jaki,jan,jelo,jo,kala,kalama,kama,kasi,ken,kepeken,kili,kiwen,ko,kon,kule,kulupu,kute,la,lape,laso,lawa,len,lete,li,lili,linja,lipu,loje,lon,luka,oko,lupa,ma,mama,mani,meli,mi,mije,moku,moli,monsi,mu,mun,musi,mute,namako,nanpa,nasa,nasin,nena,ni,nimi,noka,o,oko,olin,ona,open,pakala,pali,palisa,pan,pana,pi,pilin,pimeja,pini,pipi,poka,poki,pona,pu,sama,seli,selo,seme,sewi,sijelo,sike,namako,sina,sinpin,sitelen,sona,soweli,suli,suno,supa,suwi,tan,taso,tawa,telo,tenpo,toki,tomo,tu,unpa,uta,utala,walo,wan,waso,wawa,weka,wile</textarea></div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// probably uncopyrightable but cc0/unlicense/bsd0/wtfpl just in case | |
// ilo lili pi weka pu tan jan Ke Tami pona https://jsbin.com/kewekiqewa/ | |
// (yes i could've written it myself but i didn't feel like it tbhtbhtbh) | |
let pokiPiKalamaLili = ["j", "k", "l", "m", "n", "p", "s", "t", "w"]; | |
let pokiPiKalamaAwen = ["a", "e", "i", "o", "u"]; | |
let kalamaN = "n"; | |
let pokiPiMuIke = ["ji", "ti", "wo", "wu"]; | |
let wekaLon = false; | |
let nimiPu = []; | |
let pokiMu = []; | |
for (var i = 0; i < pokiPiKalamaLili.length; i++) { | |
for (var j = 0; j < pokiPiKalamaAwen.length; j++) { | |
mu = pokiPiKalamaLili[i] + pokiPiKalamaAwen[j]; | |
if (!(pokiPiMuIke.includes(mu))) { | |
pokiMu.push(mu) | |
}; | |
} | |
} | |
let pokiPiMuNanpaWan = pokiMu.concat(pokiPiKalamaAwen); | |
function panaEPokiPu() { | |
if (wekaLon) { | |
wekaLon = false; | |
document.getElementById("pokiPu").style.display = "none"; | |
} else { | |
wekaLon = true; | |
document.getElementById("pokiPu").style.display = "block"; | |
} | |
} | |
function panaENimi() { | |
let open = parseInt(document.getElementById("open").value); | |
let pini = parseInt(document.getElementById("pini").value); | |
let mute = parseInt(document.getElementById("mute").value); | |
let kenN = parseInt(document.getElementById("kenN").value) / 100; | |
if (wekaLon) { | |
nimiPu = document.getElementById("nimiPu").value.split(" ").join("").split(","); | |
} else { | |
nimiPu = []; | |
} | |
nimiPu.push(""); | |
let pokiNimi = []; | |
for (var i = 0; i < mute; i++) { | |
let nimi = ""; | |
while (nimiPu.includes(nimi)) { | |
nimi = ""; | |
muteMu = Math.floor(Math.random() * (pini - open + 1) + open); | |
for (var j = 0; j < muteMu; j++) { | |
if (j == 0) { | |
nimi = nimi.concat(pokiPiMuNanpaWan[Math.floor(Math.random() * pokiPiMuNanpaWan.length)]); | |
} else { | |
muSin = pokiMu[Math.floor(Math.random() * pokiMu.length)]; | |
if (muSin[0] == nimi[nimi.length - 1]) { // yes this does mean 100% end nasals aren't 100% but sh | |
nimi = nimi.concat(muSin.substring(1)); | |
} else { | |
nimi = nimi.concat(muSin); | |
} | |
} | |
if (Math.random() < kenN) { | |
nimi = nimi.concat(kalamaN); | |
} | |
} | |
} | |
pokiNimi.push(nimi) | |
} | |
document.getElementById("nimi").innerHTML = pokiNimi.join("<br>"); | |
} | |
panaENimi(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
body { | |
background-color: #36393f; | |
color: #fff; | |
font-family: Comic Sans MS, sans-serif; | |
text-align: center; | |
font-size: 120%; | |
} | |
table { | |
text-align: right; | |
margin: 0 auto; | |
} | |
input, button { | |
margin: 0 3px; | |
background-color: #23272a; | |
color: #fff; | |
border: 3px #23272a solid; | |
font-size: inherit; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment