remove vagrant + index and blog page
Signed-off-by: Superkooka <aymeric.gueracague@gmail.com>
This commit is contained in:
parent
67053a4251
commit
8e5880a022
|
|
@ -1,3 +1,6 @@
|
|||
.idea
|
||||
.vscode
|
||||
|
||||
public/~blog/**/*
|
||||
public/~notes/**/*
|
||||
public/flux.rss
|
||||
|
|
@ -7,5 +10,3 @@ raw/~blog/**/*
|
|||
raw/~notes/**/*
|
||||
|
||||
!.gitkeep
|
||||
|
||||
ubuntu-bionic-18.04-cloudimg-console.log
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
Vagrant.configure("2") do |config|
|
||||
config.vm.box = "ubuntu/bionic64"
|
||||
|
||||
config.vm.provision "shell" do |s|
|
||||
s.inline = <<-SHELL
|
||||
sudo apt update -y
|
||||
sudo apt install -y build-essential
|
||||
|
||||
# Installation of Janet from source
|
||||
git clone https://github.com/janet-lang/janet.git
|
||||
cd janet
|
||||
sudo make
|
||||
sudo make test
|
||||
|
||||
sudo cp build/janet /usr/local/bin/
|
||||
cd ..
|
||||
|
||||
# Installation of Perl from source
|
||||
git clone https://github.com/Perl/perl5
|
||||
cd perl5
|
||||
./Configure -des -Dprefix=/usr/local -Dusedevel
|
||||
make test
|
||||
make install
|
||||
SHELL
|
||||
end
|
||||
|
||||
config.vm.provider "virtualbox" do |v|
|
||||
v.memory = 2048
|
||||
v.cpus = 4
|
||||
end
|
||||
end
|
||||
85
blog.janet
85
blog.janet
|
|
@ -0,0 +1,85 @@
|
|||
#!/usr/bin/env janet
|
||||
|
||||
(defn read-from-file [file-path]
|
||||
(let [f (file/open file-path :r)
|
||||
content (file/read f :all)]
|
||||
(file/close f)
|
||||
content))
|
||||
|
||||
(def md-to-ast
|
||||
"A custom markdown flavored grammar"
|
||||
~{
|
||||
# Symbole
|
||||
:end-of-line (* (? "\r") "\n")
|
||||
:space "\u0020"
|
||||
:code-block-tag "```"
|
||||
:list-item-starter (+ "*" "-")
|
||||
|
||||
:paragraph (some (if-not :end-of-line 1))
|
||||
|
||||
# Block
|
||||
:heading (cmt (* (<- (between 1 6 "#")) :space (<- :paragraph)),|[:heading (length $0) $1])
|
||||
:hr (cmt (at-least 3 (+ "-" "_" "*")),|[:hr])
|
||||
:code-block (cmt (* :code-block-tag (? (<- :paragraph)) :end-of-line (<- (some (if-not :code-block-tag 1))) :code-block-tag),|[:code-block $0 $1])
|
||||
:quote (cmt (* ">" :space (<- :paragraph)),|[:quote $0])
|
||||
:list-item (cmt (* :list-item-starter :space (<- :paragraph)),|[:list-item $0])
|
||||
:list (cmt (some (* :list-item (? :end-of-line))),|[:list $&])
|
||||
|
||||
# :table-cel ""
|
||||
:table-row (* "|" (cmt (some (* (<- (some (if-not "|" 1))) "|")),|[:table-row (map string/trim $&)]) :end-of-line)
|
||||
:table-delimiter (* "|" (cmt (some (* (any :space) (at-least 3 "-") (any :space) "|")),|[:delimiter]) :end-of-line) # Delimiter Row <https://github.github.com/gfm/#delimiter-row>
|
||||
:table # <https://github.github.com/gfm/#table>
|
||||
(cmt (*
|
||||
:table-row
|
||||
:table-delimiter
|
||||
(some :table-row)),|[:table $&])
|
||||
|
||||
:line (cmt (<- :paragraph),|[:line $0])
|
||||
|
||||
:block (+ :heading
|
||||
:hr
|
||||
:code-block
|
||||
:quote
|
||||
:list
|
||||
:table
|
||||
:table-row
|
||||
:line
|
||||
:end-of-line)
|
||||
|
||||
:main (some (* :block (? :end-of-line)))})
|
||||
|
||||
(defn to-html
|
||||
"Convert AST to HTML"
|
||||
[ast]
|
||||
(if ast
|
||||
(string/join
|
||||
(map
|
||||
|(match $0
|
||||
[:heading level value]
|
||||
(string "<h" level ">" value "</h" level ">")
|
||||
[:quote value]
|
||||
(string "<blockquote>" value "</blockquote>")
|
||||
[:list items]
|
||||
(string/join @["<ul>"
|
||||
;(map |(string "<li>" $0 "</li>") (get items 0))
|
||||
"</ul>"] "\n")
|
||||
[:line value]
|
||||
(string "<p>" value "</p>")
|
||||
[:code-block lang value]
|
||||
(string "<pre><code>" value "</code></pre>")
|
||||
_
|
||||
(error (string "Invalid symbol: " (get $0 0))))
|
||||
ast) "\n" )))
|
||||
|
||||
(defn pp-ast
|
||||
"Pretty prints the Mardown AST (as provided by (peg/match md-to-ast))"
|
||||
[ast]
|
||||
(if ast
|
||||
(do
|
||||
(print "[")
|
||||
(map |(printf "\t%q" $0) ast)
|
||||
(print "]"))))
|
||||
|
||||
(defn main [bin & args]
|
||||
(pp-ast (peg/match md-to-ast (read-from-file "raw/~notes/blog.md"))))
|
||||
# (print (to-html (peg/match md-to-ast (read-from-file "raw/~notes/blog.md")))))
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400&display=swap" rel="stylesheet">
|
||||
<script src="https://cdn.tailwindcss.com"></script>
|
||||
<script>
|
||||
tailwind.config = {
|
||||
theme: {
|
||||
extend: {
|
||||
fontFamily: {
|
||||
'sans': ['"Source Sans 3"'],
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<title>Meow</title>
|
||||
</head>
|
||||
<body class="flex flex-row my-8">
|
||||
<nav class="my-8 ml-16 text-xl">
|
||||
<div class="flex flex-row">
|
||||
<ul class="flex flex-col mr-6">
|
||||
<li class="p-1 w-max"><a href="index.html">Blog</a></li>
|
||||
<li class="p-1 w-max"><a href="~blog/sample.html">Portfolio</a></li>
|
||||
<li class="p-1 w-max"><a href="~blog/sample.html">À Propos de moi</a></li>
|
||||
</ul>
|
||||
<span class="after:content-[''] after:w-[1px] after:bg-black after:my-2 after:h-4/5 after:block"></span>
|
||||
</div>
|
||||
</nav>
|
||||
<main class="my-8 ml-24">
|
||||
<section class="flex flex-col mb-4">
|
||||
<time class="text-slate-600 ">Il y a un jour</time>
|
||||
<a class="hover:underline" href="~blog/sample.html">BCrypt, MD5, Argon2Id... Quoi choisir pour hasher ses mots de passe</a>
|
||||
</section>
|
||||
<section class="flex flex-col mb-4">
|
||||
<time class="text-slate-600 ">Il y a une semaine</time>
|
||||
<a class="hover:underline" href="~blog/sample.html">Les intermittents de l’audiovisuel en grève : « On demande juste le rattrapage de nos salaires »</a>
|
||||
</section>
|
||||
<section class="flex flex-col mb-4">
|
||||
<time class="text-slate-600 ">Le 07/11/2023</time>
|
||||
<a class="hover:underline" href="~blog/sample.html">L’affaire du sénateur Guerriau menace tout un « système » local</a>
|
||||
</section>
|
||||
<section class="flex flex-col mb-4">
|
||||
<time class="text-slate-600 ">Le 12/05/2022</time>
|
||||
<a class="hover:underline" href="~blog/sample.html">En Israël, les proches des otages à Gaza militent contre l’oubli</a>
|
||||
</section>
|
||||
</main>
|
||||
<footer class="w-full fixed m-1 left-0 bottom-0 flex justify-center">
|
||||
<a class="mx-1 underline" href="#">Flux RSS</a>
|
||||
<span class="mx-1" >•</span>
|
||||
<a class="mx-1 underline" href="#">Inspirer de Sidey</a>
|
||||
<span class="mx-1" >•</span>
|
||||
<a class="mx-1 underline" href="#">GitHub</a>
|
||||
<span class="mx-1" >•</span>
|
||||
<a class="mx-1 underline" href="#">Instagram</a>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,97 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400&display=swap" rel="stylesheet">
|
||||
<script src="https://cdn.tailwindcss.com"></script>
|
||||
<script>
|
||||
tailwind.config = {
|
||||
theme: {
|
||||
extend: {
|
||||
fontFamily: {
|
||||
'sans': ['"Source Sans 3"'],
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<title>Meow</title>
|
||||
</head>
|
||||
|
||||
<body class="flex flex-row my-8">
|
||||
<nav class="my-8 ml-16 text-xl">
|
||||
<div class="flex flex-row">
|
||||
<ul class="flex flex-col mr-6">
|
||||
<li class="p-1 w-max"><a href="../index.html">Blog</a></li>
|
||||
<li class="p-1 w-max"><a href="index.html">Portfolio</a></li>
|
||||
<li class="p-1 w-max"><a href="index.html">À Propos de moi</a></li>
|
||||
</ul>
|
||||
<span class="after:content-[''] after:w-[1px] after:bg-black after:my-2 after:h-4/5 after:block"></span>
|
||||
</div>
|
||||
</nav>
|
||||
<main class="my-8 ml-24 mr-[38rem]">
|
||||
<h1 class="text-3xl my-4">Suspendisse quam dolor, sollicitudin nec velit sodales, tempus iaculis elit.</h1>
|
||||
<h2 class="text-xl text-[#747474] italic my-4">Neque porro quisquam est qui dolorem ipsum quia dolor sit amet,
|
||||
consectetur, adipisci velit...</h2>
|
||||
<div class="text-[#404852]">
|
||||
<p class="my-3">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus porta erat non maximus
|
||||
porttitor. Etiam massa felis,
|
||||
luctus at eros nec, vestibulum sodales dolor. Donec pellentesque, tellus eu pharetra fringilla, arcu
|
||||
sapien fringilla
|
||||
nulla, eget gravida arcu mi eu diam. In hac habitasse platea dictumst. Vestibulum neque mauris, faucibus
|
||||
eget hendrerit
|
||||
molestie, ultrices sed purus. In porttitor scelerisque euismod. Sed ultrices efficitur interdum.
|
||||
Maecenas massa urna,
|
||||
lobortis ac arcu ac, hendrerit ultricies turpis. Nulla in consectetur justo, sit amet elementum lacus.
|
||||
</p>
|
||||
<p class="my-3">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam vitae consequat massa. Aliquam
|
||||
egestas pellentesque
|
||||
elementum. Ut efficitur justo eu libero vestibulum dapibus. Etiam vitae turpis nunc. Maecenas sit amet
|
||||
elementum dolor.
|
||||
In luctus tellus non rhoncus dictum. Mauris laoreet velit velit, in pellentesque enim auctor a. Nulla at
|
||||
lacus vel magna
|
||||
lacinia tincidunt. Ut aliquet suscipit tincidunt.
|
||||
|
||||
Nulla arcu tortor, aliquet quis congue in, vestibulum vitae arcu. Duis nisi ex, tincidunt quis
|
||||
condimentum in,
|
||||
sollicitudin quis nisi. In fringilla ultricies venenatis. Aliquam a quam eros. Curabitur eget tincidunt
|
||||
orci. Quisque
|
||||
hendrerit porta augue, eget venenatis diam pellentesque sed. Sed pellentesque vitae urna blandit
|
||||
lobortis. Sed tellus
|
||||
nulla, rutrum rhoncus ante at, lacinia efficitur augue. Pellentesque habitant morbi tristique senectus
|
||||
et netus et
|
||||
malesuada fames ac turpis egestas. Nam eget dolor ut augue commodo lacinia et at dolor. Sed ut vehicula
|
||||
lacus. Integer
|
||||
semper vehicula dignissim.
|
||||
</p>
|
||||
<h3 class="text-black text-xl">Donec vitae nisl in sem viverra cursus.</h3>
|
||||
<p class="my-3">Suspendisse dictum urna nunc, non laoreet tortor vulputate eget. Praesent sit amet risus a
|
||||
lacus eleifend bibendum.
|
||||
Vivamus et placerat tellus, ut tristique nibh. Maecenas porttitor ex ac turpis interdum iaculis. Etiam
|
||||
egestas erat non
|
||||
metus vehicula, viverra vulputate est condimentum. Interdum et malesuada fames ac ante ipsum primis in
|
||||
faucibus. Nam
|
||||
vehicula diam sed pharetra malesuada. Etiam non libero et risus viverra volutpat. Donec in justo tortor.
|
||||
Mauris gravida
|
||||
finibus sem eget lacinia. Praesent lacinia posuere lacus eget dignissim. Morbi tempus mauris id ante
|
||||
aliquet finibus.
|
||||
Quisque ut dignissim neque, ut accumsan urna. Morbi interdum erat eu erat tempus finibus.
|
||||
</p>
|
||||
</div>
|
||||
</main>
|
||||
<footer class="w-full fixed m-1 left-0 bottom-0 flex justify-center">
|
||||
<a class="mx-1 underline" href="#">Flux RSS</a>
|
||||
<span class="mx-1">•</span>
|
||||
<a class="mx-1 underline" href="#">Inspirer de Sidey</a>
|
||||
<span class="mx-1">•</span>
|
||||
<a class="mx-1 underline" href="#">GitHub</a>
|
||||
<span class="mx-1">•</span>
|
||||
<a class="mx-1 underline" href="#">Instagram</a>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Reference in New Issue