diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1d17dae --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.venv diff --git a/README.md b/README.md index 13a5c27..5810f5e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,11 @@ # README All names are temporary and happy about suggestions of improvement. +Dependencies: +- bash +- python3 +- pypdf (e.g. `python3 -m venv .venv && . .venv/bin/activate && pip install pypdf`) +- xelatex (e.g. `apt install texlive-xetex`) --- @@ -69,13 +74,26 @@ s=4: 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 -> 16,01.02,15 14,03.04,13 12,05.06, ### TODO - [x] create md2verse.sh -- [ ] create mk2parallel.sh - - [ ] fix geometry bug - - [ ] fix multi-word string chapter bug -- [ ] create md2tex.sh -- [ ] create pdf2sig.sh /pdf2book.py -s/--sigsize [0,3,4,5] +- [ ] improve mkverse.sh + - [x] write into folder instead of giving back only pdf + - [ ] insert cleaning step (html to md) + - [ ] md2html -> sed pertubation -> html2md +- [X] create mkparallel.sh + - [X] fix geometry bug + - [X] fix multi-word string chapter bug +- [ ] improve mkparallel.sh + - [/] colophon + - [ ] dictionary + - [ ] include pics into title and colophon - [ ] insert cleaning step (html to md) -- [ ] md2html -> sed pertubation -> html2md +- [X] create pdf2sig.sh /pdf2book.py -s/--sigsize [0,3,4,5] +- [ ] move conf files to templates + - [ ] make config a needed argument +- [ ] think of better names for scripts +- [ ] unify scripts +- [ ] python rewrite of md2verse and md2parallel + - [ ] insert cleaning step (html to md) + - [ ] md2html -> sed pertubation -> html2md - [ ] create a script that does: parallel-md -> bilingual word pair list - [ ] 1. word list - [ ] 2. translate (with gpt?) sowas von python diff --git a/md2parallel.sh b/md2parallel.sh index 3f225a8..34565e1 100755 --- a/md2parallel.sh +++ b/md2parallel.sh @@ -23,16 +23,24 @@ KEEP_TMP_FILES=0 # convert md to html pandoc --wrap=none -f markdown $DIRNAME/${BASENAME}.md -t html -o ${BASENAME}.html # convert html to tex -#sed -i '' 's@

@\n\\pstart\n@' ${BASENAME}.html -#sed -i '' 's@

@\n\\pend@' ${BASENAME}.html -sed -i '' 's@

@\n\\pend\\pstart\n@' ${BASENAME}.html -sed -i '' 's@

@@' ${BASENAME}.html -sed -i '' 's@“@\\enquote{@g' ${BASENAME}.html -sed -i '' 's@”@}@g' ${BASENAME}.html -sed -i '' 's@@\\section[@' ${BASENAME}.html -sed -i '' 's@@]@' ${BASENAME}.html -sed -i '' 's@@{@' ${BASENAME}.html -sed -i '' 's@@}@' ${BASENAME}.html -sed -i '' "s@’@'@g" ${BASENAME}.html +# check if on linux or macos +if [[ $(uname) == "Linux" ]] +then + SED_CMD="sed -i" +elif [[ $(uname) == "Darwin" ]] +then + SED_CMD="sed -i ''" +fi +#$SED_CMD 's@

@\n\\pstart\n@' ${BASENAME}.html +#$SED_CMD 's@

@\n\\pend@' ${BASENAME}.html +$SED_CMD 's@

@\n\\pend\\pstart\n@' ${BASENAME}.html +$SED_CMD 's@

@@' ${BASENAME}.html +$SED_CMD 's@“@\\enquote{@g' ${BASENAME}.html +$SED_CMD 's@”@}@g' ${BASENAME}.html +$SED_CMD 's@@\\section[@' ${BASENAME}.html +$SED_CMD 's@@]@' ${BASENAME}.html +$SED_CMD 's@@{@' ${BASENAME}.html +$SED_CMD 's@@}@' ${BASENAME}.html +$SED_CMD "s@’@'@g" ${BASENAME}.html mv ${BASENAME}.html ${BASENAME}.tex cat ${BASENAME}.tex && rm ${BASENAME}.tex diff --git a/mkparallel.sh b/mkparallel.sh index 33f3c6f..f552e16 100755 --- a/mkparallel.sh +++ b/mkparallel.sh @@ -26,8 +26,6 @@ PATH=$PATH:$WD pushd $TMPDIR > /dev/null # CONVERT MD TO TEX -#IFS_OLD=$IFS -#IFS="\n" for tex in $( echo "$INFILES" | grep '.md$' ) do if [[ -f $WD/$tex ]] @@ -42,21 +40,21 @@ do fi fi done -#IFS=$IFS_OLD # CREATE WRAPPER WRAPPER=""" -%\documentclass[twoside]{$DOCCLASS} -\documentclass[twoside]{$DOCCLASS} +\documentclass[twoside,${PAGESIZE}paper]{$DOCCLASS} \usepackage[fontsize=${FONTSIZE}pt]{fontsize} -\usepackage[${PAGESIZE}paper]{geometry} \usepackage{libertine} % also loads fontspec which is needed for ɔ and ɛ %\usepackage{minitoc} % make mini table of content for each chapter \usepackage{graphicx} % include graphics +\usepackage{tcolorbox} % https://en.wikipedia.org/wiki/Colophon_(publishing) \usepackage{placeins} % https://tex.stackexchange.com/a/88659/264579 \usepackage{csquotes} % \enquote \usepackage{reledmac} % needed for repedpar \usepackage{reledpar} % parallel text +\firstlinenum*{1000} +\linenumincrement*{1000} \newcommand{\pagesinclude}[2]{ \begin{pages} \begin{Leftside} @@ -75,16 +73,81 @@ WRAPPER=""" \title{$TITLE} \author{$AUTHOR} \begin{document} -\maketitle +""" +TITLE_PAGE=""" +%\date{} +%\maketitle +%%% +\begin{titlingpage} %This starts the title page + \begin{center} + % ~ + \vspace{2cm} %put the distance you need. + % ~ + \begin{HUGE} + \thetitle \\ + \end{HUGE} + \vspace{3cm} %put the distance you need. + \begin{large} + \theauthor\\ + \end{large} + %\thedate + \begin{figure}[hb] + \centering +% \includegraphics[width=\adinkrawidth]{img/sankofa.jpeg} + \end{figure} +% \vspace{3cm} %put the distance you need. +% \begin{figure}[hb] +% \centering +%% \includegraphics[width=.2\textwidth]{img/ghana_flag.jpeg} +% \end{figure} + \end{center} +\end{titlingpage} +%%% +""" +COLOPHON=""" +\cleardoublepage +\thispagestyle{empty} +\begin{vplace}[0.7] +\begin{centering} + \begin{huge} + \thetitle + \end{huge} + \\ + \vspace{3cm} + \begin{LARGE} + \begin{tcolorbox}[width=.5\textwidth] + \centering +% \texttt{AQO}\\ +% \texttt{ABA}\\ +% \texttt{~\newline AQO\newline ABA\newline}%\\ + \texttt{$PUBLISHER} + \end{tcolorbox} + \end{LARGE} +% \includegraphics[width=.3\textwidth]{img/onipa_logo.png} + \vspace{2cm} + \par\noindent\rule{\textwidth}{0.4pt} + \large { \the\year{} }\\ + $EDITION\\ +\end{centering} +\end{vplace} +\clearpage +""" +TOC=""" +\cleardoublepage \tableofcontents """ WRAPPER_END=""" \end{document} """ -echo "$WRAPPER" > $PROJECT.tex +echo "$WRAPPER" > $PROJECT.tex +echo "$TITLE_PAGE" >> $PROJECT.tex +echo "$COLOPHON" >> $PROJECT.tex +echo "$TOC" >> $PROJECT.tex # INCLUDE INDIVIDUAL TEX FILE first_lang="true" +IFS_OLD=$IFS +IFS=$'\n' for input in $INFILES do if [[ $input == *.md ]] @@ -101,6 +164,7 @@ do echo '\chapter' " { $input }" >> $PROJECT.tex fi done +IFS=$IFS_OLD echo "$WRAPPER_END" >> $PROJECT.tex # CREATE PDF diff --git a/mkverse.sh b/mkverse.sh index f31aaaa..4356bbf 100755 --- a/mkverse.sh +++ b/mkverse.sh @@ -84,10 +84,8 @@ echo "$WRAPPER_END" >> $PROJECT.tex # CREATE PDF $LATEX_ENGINE $PROJECT.tex 2&> /dev/null $LATEX_ENGINE $PROJECT.tex 2&> /dev/null -# $LATEX_ENGINE $PROJECT.tex -cp $PROJECT.pdf $WD -echo "File $PROJECT.pdf created at $WD" -#cp $PROJECT.tex $WD -echo "File $PROJECT.tex created at $WD" popd > /dev/null +if [[ -d $WD/$PROJECT ]] ; then rm -rf $WD/$PROJECT ; fi +cp -r $TMPDIR $WD/$PROJECT +echo "File $PROJECT.pdf created at $WD/$PROJECT" rm -rf $TMPDIR diff --git a/parallel.conf b/parallel.conf index dc6134a..fe15373 100644 --- a/parallel.conf +++ b/parallel.conf @@ -4,10 +4,12 @@ DOCCLASS_EXTRA="twoside" FONTSIZE="10" PAGESIZE="a5" PROJECT="asem" -TITLE="Nsɛm wɔ Twi ne Brɔfo\\\LARGE Texts in Twi and English" +TITLE="Nsɛm wɔ Twi ne Brɔfo\\\\ \\LARGE Texts in Twi and English" AUTHOR="" INFILES=""" -'Anansesem - Ghanaian Folk Tales' +Anansesem - Ghanaian Folk Tales testfiles/parallel-ak.md testfiles/parallel-en.md """ +PUBLISHER="AQO\\\\ABA" +EDITION="First Edition"