lipu li ken lon linluwi

This commit is contained in:
tess 2022-05-03 14:10:07 +02:00
parent 828750cad5
commit e2719e88d9
17 changed files with 1273 additions and 15 deletions

1130
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -8,3 +8,10 @@ edition = "2021"
[dependencies]
rand = "0.8.5"
markov = "1.1.0"
rocket = "0.4.10"
[dependencies.rocket_contrib]
version = "0.4.10"
default-features = false
features = ["handlebars_templates", "serve"]

View File

@ -1,5 +1,5 @@
akesi ala alasa ale anpa ante awen esun ijo ike ilo insa jaki jan jelo jo kala kalama kama kasi ken kili kiwen ko kon kule kulupu kute lape laso lawa len lete lili linja lipu loje luka lukin lupa ma mama mani mi moku moli monsi mu mun musi mute nanpa nasa nasin nena ni nimi noka olin ona open pakala pali palisa pan pilin pimeja pini pipi poka poki pona pu seli selo seme sewi sike sin sina sinpin sona sitelen soweli suli suno supa suwi taso telo tenpo toki tomo tu unpa uta utala walo wan waso wawa weka wile tonsi ku epiku jasima kijetesantakalu kin kipisi kokosila lanpan leko meso misikeke monsuta namako oko soko
kepeken sama tan tawa lon
li e o a la
li e o a la en
w t p s j k l n m
e u i o a

View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -1,13 +1,39 @@
#![feature(proc_macro_hygiene, decl_macro)]
#[macro_use]
extern crate rocket;
use rocket_contrib::templates::Template;
use rocket_contrib::serve::StaticFiles;
use rocket::response::NamedFile;
use markov::Chain;
use std::collections::HashMap;
mod toki;
mod nimi_sin;
mod lipu_nimi;
#[get("/")]
fn nimi() -> Template {
let lipu = o_pali_e_lipu();
Template::render("index", &lipu)
}
#[get("/seme")]
fn seme() -> Option<NamedFile> {
NamedFile::open("static/ni-li-seme.html").ok()
}
fn main() {
rocket::ignite().attach(Template::fairing()).mount("/", routes![nimi])
.mount("/static", StaticFiles::from("static"))
.mount("/", routes![seme]).launch();
}
fn o_pali_e_lipu() -> HashMap<String, String> {
let mut ijo = HashMap::new();
let nimi_sin = nimi_sin::pali(4);
println!("{}", nimi_sin); //o pali e nimi sin
println!("{}", markov(1));// o pali e kon pi nimi sin ni
println!("{}", toki::pali(&nimi_sin));
ijo.insert("nimisin".to_string(), nimi_sin.clone());
ijo.insert("kon".to_string(), markov(1));
ijo.insert("toki".to_string(), toki::pali(&nimi_sin));
ijo
}
fn markov(nanpa: u8) -> String { // pali e nimi sin kepeken ilo Mako.

View File

@ -47,7 +47,7 @@ fn pali_lili(toki: String, nimi_sin: &str, la_li_ken: bool, nimi_sin_li_lon_a: b
}
while y < suli_kipisi {
let nimi_ni = nimi_pi_ku_suli.choose(&mut rand::thread_rng()).unwrap();
if (nimi_ni == &"mi" || nimi_ni == &"sina") && suli_kipisi == 1 {
if (nimi_ni == "mi" || nimi_ni == "sina") && suli_kipisi == 1 {
mi_anu_sina = true; //nimi li nimi "mi" taso anu nimi "sina" taso
}
if (rand::thread_rng().gen_range(0_u8..6) == 0 || (x == suli-1 && y == suli_kipisi-1)) && !nimi_sin_li_lon {

BIN
static/OpenSans-Bold.ttf Normal file

Binary file not shown.

BIN
static/OpenSans-Regular.ttf Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

24
static/ni-li-seme.html Normal file
View File

@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="/static/stylesheet.css">
<title> seme a </title>
<meta charset="UTF-8" name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="/static/󱥠.png">
</head>
<body>
<div class=poki>
<h2 class=nimisin>ilo ni li seme??</h2>
<p class=kon>toki a! ilo ni li pali e nimi sin. kin la, ona li pali e kon pi nimi sin, li pali e toki kepeken nimi sin ni.<br>
mi pali e ona kepeken ilo Rust tan ni: mi wile kama sona pi ilo Rust! kin la, pali ni li musi mute a a a</p>
<p class=kon>sina wile lukin e insa pi ilo ni la, sina o tawa <a href="https://git.kittycat.homes/tess/ilo-pali-pi-nimi-sin" class=toki>lipu Git</a>!</p>
<h2 class=nimisin>seme li pali e ilo ni a?</h2>
<p class=kon>mi a! mi <a href="https://tess.kittycat.homes" class="toki">soweli Tesa</a>!
</div>
<footer id="footer" class=toki>
<a href="seme">ni li seme</a>
<a href="./">o pana e nimi sin</a>
</footer>

67
static/stylesheet.css Normal file
View File

@ -0,0 +1,67 @@
@font-face {
font-family: nimi sin;
src:url("PlayfairDisplay-Bold.ttf");
}
@font-face {
font-family: kon;
src:url("OpenSans-SemiBold.ttf");
}
@font-face {
font-family: toki;
src:url("OpenSans-Regular.ttf");
}
#footer {
bottom : 40px;
height : 40px;
margin-top : 40px;
text-align: center;
vertical-align: middle;
position:fixed;
width:100%;
}
#footer * {
margin-right: 40px;
margin-left: 40px;
}
body {
background-color: #f8f8ff;
font-size:150%
}
a {
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
.nimisin-poki {
position: absolute;
top: 50%;
left: 50%;
-moz-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
}
.nimisin {
font-family: nimi sin;
color: #00002f;
}
.kon {
color: #00002f;
font-family: kon;
}
.toki {
color: #7979ff;
font-family: toki;
font-style: italic;
}

BIN
static/󱥠.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

24
templates/index.html.hbs Normal file
View File

@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="/static/stylesheet.css">
<title> ilo pali pi nimi sin </title>
<meta charset="UTF-8" name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="/static/󱥠.png">
</head>
<body>
<div class=nimisin-poki>
<h1 class=nimisin>{{nimisin}}</h1>
<p class=kon>{{kon}}</p>
<p class=toki>//{{toki}}</p>
</div>
<footer id="footer" class="toki">
<a href="seme">ni li seme</a>
<a href="./">o pana e nimi sin</a>
</footer>
</body>
</html>

BIN
󱥠.avif Normal file

Binary file not shown.

BIN
󱥠.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB