From e8d07e713c0e551e84fbc212e2e7f904374a18de Mon Sep 17 00:00:00 2001 From: kthoden Date: Wed, 18 Mar 2020 08:01:16 +0100 Subject: [PATCH 1/7] Avoid opening of another version --- eoa.rc | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/eoa.rc b/eoa.rc index 2f11f85..1e9f470 100644 --- a/eoa.rc +++ b/eoa.rc @@ -11,7 +11,7 @@ di=$rootpath/EOASkripts/runtime/input do=$rootpath/EOASkripts/runtime/output e15=$rootpath/eoa-1.5 -# build sphinx documentation +# build sphinx documentation and open in browser function msx(){ cd $1; make html; @@ -19,6 +19,13 @@ function msx(){ cd - } +# build sphinx documentation silently +function msx(){ + cd $1; + make html; + cd - +} + # get latest hashes of some django apps for inclusion in requirements.txt of eoa-1.5 function get_head_hash(){ current_dir=$(pwd); From a6642d1a79a1f01ec871162d8f70ac25f8662df2 Mon Sep 17 00:00:00 2001 From: kthoden Date: Wed, 18 Mar 2020 08:03:11 +0100 Subject: [PATCH 2/7] New name for function --- eoa.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eoa.rc b/eoa.rc index 1e9f470..209e624 100644 --- a/eoa.rc +++ b/eoa.rc @@ -20,7 +20,7 @@ function msx(){ } # build sphinx documentation silently -function msx(){ +function msxs(){ cd $1; make html; cd - From 1aca784674ecc46e7b61a82cd396d6995c83cdbc Mon Sep 17 00:00:00 2001 From: kthoden Date: Wed, 18 Mar 2020 08:19:22 +0100 Subject: [PATCH 3/7] Remove old build --- eoa.rc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eoa.rc b/eoa.rc index 209e624..6d7a469 100644 --- a/eoa.rc +++ b/eoa.rc @@ -14,6 +14,7 @@ e15=$rootpath/eoa-1.5 # build sphinx documentation and open in browser function msx(){ cd $1; + rm -rf $1/_build/html; make html; open $1/_build/html/index.html; cd - @@ -22,6 +23,7 @@ function msx(){ # build sphinx documentation silently function msxs(){ cd $1; + rm -rf $1/_build/html; make html; cd - } From c6adb47b19a1fa42c00139f025df6504366ac316 Mon Sep 17 00:00:00 2001 From: kthoden Date: Wed, 1 Apr 2020 16:43:42 +0200 Subject: [PATCH 4/7] Use make clean instead --- eoa.rc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eoa.rc b/eoa.rc index 6d7a469..257d8d5 100644 --- a/eoa.rc +++ b/eoa.rc @@ -14,7 +14,7 @@ e15=$rootpath/eoa-1.5 # build sphinx documentation and open in browser function msx(){ cd $1; - rm -rf $1/_build/html; + make clean; make html; open $1/_build/html/index.html; cd - @@ -23,7 +23,7 @@ function msx(){ # build sphinx documentation silently function msxs(){ cd $1; - rm -rf $1/_build/html; + make clean; make html; cd - } From 011752d879ebf1e6348c6e7de7d3278a3a7248c4 Mon Sep 17 00:00:00 2001 From: kthoden Date: Wed, 1 Apr 2020 16:44:01 +0200 Subject: [PATCH 5/7] Check for presence --- eoa.rc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/eoa.rc b/eoa.rc index 257d8d5..5efb473 100644 --- a/eoa.rc +++ b/eoa.rc @@ -62,8 +62,12 @@ function pimp(){ mediafiles="$e15/runtime_data/res.rt/all_media_files/$pseries/$pnumber"; cd $e15; - rm -vfr $mediafiles; - rm -vfr $e15/src/$import_dir; + if [ -d $mediafiles ]; then + rm -vfr $mediafiles; + fi + if [ -d $e15/src/$import_dir ]; then + rm -vfr $e15/src/$import_dir; + fi cp -rv $do/$1/django src/$import_dir; docker-compose exec webserver bash -c "python manage.py publicationimport ${import_dir}"; cd $current_dir; From 101e9b54e04abe0b29de5be223a22fd0e5f6aa0c Mon Sep 17 00:00:00 2001 From: kthoden Date: Thu, 2 Apr 2020 20:38:38 +0200 Subject: [PATCH 6/7] Documentation --- .gitignore | 1 + docs/Makefile | 20 +++++++++++ docs/_templates/layout.html | 11 ++++++ docs/conf.py | 71 +++++++++++++++++++++++++++++++++++++ docs/index.rst | 20 +++++++++++ docs/make.bat | 35 ++++++++++++++++++ 6 files changed, 158 insertions(+) create mode 100644 .gitignore create mode 100644 docs/Makefile create mode 100644 docs/_templates/layout.html create mode 100644 docs/conf.py create mode 100644 docs/index.rst create mode 100644 docs/make.bat diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3f0ed21 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +docs/_build/ diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 0000000..d4bb2cb --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,20 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line, and also +# from the environment for the first two. +SPHINXOPTS ?= +SPHINXBUILD ?= sphinx-build +SOURCEDIR = . +BUILDDIR = _build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/docs/_templates/layout.html b/docs/_templates/layout.html new file mode 100644 index 0000000..678a5b9 --- /dev/null +++ b/docs/_templates/layout.html @@ -0,0 +1,11 @@ +{% extends '!layout.html' %} + +{%- block header %} + {%- if theme_showheader|tobool %} + + {%- endif %} +{%- endblock %} diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000..5945dad --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,71 @@ +# Configuration file for the Sphinx documentation builder. +# +# This file only contains a selection of the most common options. For a full +# list see the documentation: +# https://www.sphinx-doc.org/en/master/usage/configuration.html + +# -- Path setup -------------------------------------------------------------- + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +# +# import os +# import sys +# sys.path.insert(0, os.path.abspath('.')) +from better import better_theme_path +html_theme_path = [better_theme_path] + + +# -- Project information ----------------------------------------------------- + +project = 'EOA Utilities' +copyright = '2020, Max Planck Institute for the History of Science' +author = 'Klaus Thoden' + + +# -- General configuration --------------------------------------------------- + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'sphinx.ext.intersphinx', + 'sphinx.ext.autosectionlabel', +] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +# +# This is also used if you do content translation via gettext catalogs. +# Usually you set "language" from the command line for these cases. +language = 'en' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +# This pattern also affects html_static_path and html_extra_path. +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] + + +# -- Options for HTML output ------------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +# +html_theme = 'better' + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + + +# -- Extension configuration ------------------------------------------------- + +# -- Options for intersphinx extension --------------------------------------- + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = {'https://docs.python.org/3/': None} diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000..214cd4f --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,20 @@ +.. EOA Utilities documentation master file, created by + sphinx-quickstart on Thu Apr 2 08:55:11 2020. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +Welcome to EOA Utilities's documentation! +========================================= + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/docs/make.bat b/docs/make.bat new file mode 100644 index 0000000..2119f51 --- /dev/null +++ b/docs/make.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +pushd %~dp0 + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=sphinx-build +) +set SOURCEDIR=. +set BUILDDIR=_build + +if "%1" == "" goto help + +%SPHINXBUILD% >NUL 2>NUL +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.http://sphinx-doc.org/ + exit /b 1 +) + +%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% +goto end + +:help +%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% + +:end +popd From 323efb73de7584e95890349ab889cc5ac103b7bf Mon Sep 17 00:00:00 2001 From: kthoden Date: Wed, 8 Apr 2020 19:22:17 +0200 Subject: [PATCH 7/7] Improved regular expression --- eoa.rc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eoa.rc b/eoa.rc index 5efb473..7677b5e 100644 --- a/eoa.rc +++ b/eoa.rc @@ -55,8 +55,8 @@ function cpdi(){ # function to import new publication function pimp(){ current_dir=$(pwd); - pnumber=$(grep Number $do/$1/django/publication.cfg| cut -f 2 -d ":"| tr -d '[:space:]'); - pseries=$(grep Serie $do/$1/django/publication.cfg| cut -f 2 -d ":"| tr -d '[:space:]'| tr '[:upper:]' '[:lower:]'); + pnumber=$(grep '^Number:' $do/$1/django/publication.cfg| cut -f 2 -d ":"| tr -d '[:space:]'); + pseries=$(grep '^Serie:' $do/$1/django/publication.cfg| cut -f 2 -d ":"| tr -d '[:space:]'| tr '[:upper:]' '[:lower:]'); import_dir="import_${pseries}${pnumber}"; mediafiles="$e15/runtime_data/res.rt/all_media_files/$pseries/$pnumber";