initial commit
This commit is contained in:
commit
e2413adfaa
8
Makefile
Normal file
8
Makefile
Normal file
@ -0,0 +1,8 @@
|
||||
install:
|
||||
cp gen_notes.sh /usr/local/bin
|
||||
mkdir -p /opt/gen_notes
|
||||
cp -r templates /opt/gen_notes
|
||||
cp styles.css /opt/gen_notes
|
||||
|
||||
clean:
|
||||
rm -rf /usr/local/bin/gen_notes.sh /opt/gen_notes
|
60
gen_notes.sh
Executable file
60
gen_notes.sh
Executable file
@ -0,0 +1,60 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
[[ -z "$1" ]] && echo "USAGE: $0 NOTES_DIRECTORY" && exit 0
|
||||
|
||||
function _render {
|
||||
echo "rendering $1"
|
||||
pandoc\
|
||||
--toc\
|
||||
--standalone\
|
||||
-t html\
|
||||
--template /opt/gen_notes/templates/article.html\
|
||||
-o "$(dirname "$1")/index.html"\
|
||||
"$1"\
|
||||
--mathjax
|
||||
}
|
||||
|
||||
function _renderindex {
|
||||
echo "rendering $1"
|
||||
pandoc\
|
||||
-t html\
|
||||
--template /opt/gen_notes/templates/index.html\
|
||||
-o index.html\
|
||||
"$1"
|
||||
}
|
||||
|
||||
function _addtolist {
|
||||
echo "adding $1 to list of notes"
|
||||
pandoc\
|
||||
-t html\
|
||||
-V "filepath=$(dirname "$1")"\
|
||||
--template /opt/gen_notes/templates/listitem.html\
|
||||
"$1"\
|
||||
>> index.md
|
||||
}
|
||||
|
||||
export -f _render
|
||||
export -f _addtolist
|
||||
|
||||
#render each markdown file
|
||||
|
||||
for var in "$@"
|
||||
do
|
||||
find "$var" -name '*.md' -exec bash -c "_render '{}'" \;
|
||||
done
|
||||
|
||||
# create an intermediate markdown file of links to each article
|
||||
echo "---
|
||||
title: alv's notes
|
||||
---" > index.md
|
||||
|
||||
for var in "$@"
|
||||
do
|
||||
echo "<h1>$var notes</h1>" >> index.md
|
||||
find "$var" -name '*.md' -exec bash -c "_addtolist '{}'" \;
|
||||
done
|
||||
|
||||
_renderindex index.md
|
||||
|
||||
echo "copying styles.css to current directory"
|
||||
cp /opt/gen_notes/styles.css .
|
50
styles.css
Normal file
50
styles.css
Normal file
@ -0,0 +1,50 @@
|
||||
body {
|
||||
font-family: "Open Sans", sans-serif;
|
||||
color: #454545;
|
||||
font-size: 16px;
|
||||
margin: 2em auto;
|
||||
max-width: 800px;
|
||||
padding: 1em;
|
||||
line-height: 1.4;
|
||||
text-align: justify;
|
||||
background-color: #fefefe;
|
||||
}
|
||||
|
||||
a { color: #07a; }
|
||||
a:visited { color: #941352; }
|
||||
|
||||
img[class="centered"] {
|
||||
margin: 0 auto;
|
||||
display: block;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
margin: 1em auto;
|
||||
}
|
||||
th, td {
|
||||
padding: 1em;
|
||||
border: 1px solid #454545;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
pre {
|
||||
background-color: #d9d9d9 ;
|
||||
color: #000;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
details {
|
||||
padding: 1em 0 1em 0;
|
||||
}
|
||||
|
||||
li {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
img {
|
||||
margin: 0 auto;
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
}
|
11
templates/article.html
Normal file
11
templates/article.html
Normal file
@ -0,0 +1,11 @@
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Open+Sans&display=swap" />
|
||||
<link rel="stylesheet" type="text/css" href="/styles.css" />
|
||||
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
|
||||
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
|
||||
<title>$title$</title>
|
||||
</head>
|
||||
|
||||
<body> $body$ </body>
|
10
templates/index.html
Normal file
10
templates/index.html
Normal file
@ -0,0 +1,10 @@
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Open+Sans&display=swap" />
|
||||
<link rel="stylesheet" type="text/css" href="/styles.css" />
|
||||
<title>$title$</title>
|
||||
</head>
|
||||
<body>
|
||||
$body$
|
||||
</body>
|
1
templates/listitem.html
Normal file
1
templates/listitem.html
Normal file
@ -0,0 +1 @@
|
||||
<li><a href="$filepath$">$title$</a></li>
|
Reference in New Issue
Block a user