diff --git a/README.md b/README.md
index 4fac3b0..269deae 100644
--- a/README.md
+++ b/README.md
@@ -3,19 +3,8 @@
This tool was made so I could write my content only in `gmi` and publish both a
gemini capsule and a website.
-For now, this is very rudimentary and things are bound to change... and break from
-version to version.
-
-## Features
-
-- generates HTML from gemtext
-- can synchronise your files with your server using rsync
-
-## Notes on usage
-
-Good practice for gemini dictates that we don't use multiple `h1` titles in one page
-and for that reason, the last (and therefore the first) `h1` title encountered will
-be used as the title of the HTML page.
+For now, this is very rudimentary and things are bound to change, especially the way
+I structure the directory where my content lives.
## TODO
@@ -34,14 +23,12 @@ be used as the title of the HTML page.
- [ ] move config file to `~/.config` with placeholder values
- [X] check for a config file in `~/.config`
- [ ] maybe save the old Bash script somewhere for posterity ?
-- [ ] reorganise the directory where the content is
## My setup
-
My current folder structure for my capsule+website looks something like this:
```
-myinternet
+my-internet
├── assets
│ ├── favicon.ico
│ └── style.css
@@ -50,20 +37,9 @@ myinternet
│ │ └── index.gmi
│ ├── index.gmi
│ └── projects.gmi
-├── gmi-helper
-│ └── footer.gmi
-├── html-helper
-│ ├── footer-part.html
-│ └── header-part.html
-├── README.md
-└── web
- ├── favicon.ico
- ├── gemlog
- │ └── index.html
- ├── index.html
- ├── projects.html
- └── style.css
+├── footer.gmi
+├── html-output
+└── html-parts
+ ├── footer-part.html
+ └── header-part.html
```
-
-This is only meant as a reference if my code isn't clear enough and had too much
-implicits
diff --git a/config.json b/config.json
index 28bd070..d5a01bb 100644
--- a/config.json
+++ b/config.json
@@ -1,11 +1,11 @@
{
- "dir_assets" : "path/to/assets",
- "dir_gmi_content" : "path/to/content",
- "dir_gmi_helper" : "path/to/gmi-helper",
- "dir_html_helper" : "path/to/html-helper",
- "dir_html_out" : "path/to/web",
- "rem_gmi" : "remote_server:path/to/gmi",
- "rem_html" : "remote_server:path/to/gmi",
- "port" : "1312"
+ "workdir" : "where/your/sources/live",
+ "dir_assets" : "assets",
+ "dir_source" : "content",
+ "dir_helper" : "html-parts",
+ "dir_o_html" : "html-output",
+ "rem_gmi" : "your/remote/gemini/path",
+ "rem_html" : "your/remote/html/path",
+ "port" : "1312"
}
diff --git a/src/gmirator/__init__.py b/src/gmirator/__init__.py
index d466b4a..7a67d4a 100644
--- a/src/gmirator/__init__.py
+++ b/src/gmirator/__init__.py
@@ -7,14 +7,13 @@ cfg_file = xdg_path if xdg_path.exists() else "config.json"
with open(cfg_file) as f:
config = json.load(f)
-DIR_ASSETS = Path(config["dir_assets"])
-DIR_SOURCE = Path(config["dir_gmi_content"])
-DIR_GMI_HELPER = Path(config["dir_gmi_helper"])
-DIR_HELPER = Path(config["dir_html_helper"])
-DIR_O_HTML = Path(config["dir_html_out"])
+WORKDIR = Path(config["workdir"])
+DIR_ASSETS = WORKDIR / config["dir_assets"]
+DIR_SOURCE = WORKDIR / config["dir_source"]
+DIR_HELPER = WORKDIR / config["dir_helper"]
+DIR_O_HTML = WORKDIR / config["dir_o_html"]
+GMI_FOOTER = WORKDIR / "footer.gmi"
-GMI_FOOTER = DIR_GMI_HELPER / "footer.gmi"
-
-REM_HTML = config["rem_html"]
-REM_GMI = config["rem_gmi"]
-RPORT = config["port"]
+REM_HTML = config["rem_html"]
+REM_GMI = config["rem_gmi"]
+RPORT = config["port"]
diff --git a/src/gmirator/generate.py b/src/gmirator/generate.py
index b56168d..5ebadde 100644
--- a/src/gmirator/generate.py
+++ b/src/gmirator/generate.py
@@ -156,7 +156,7 @@ def process_inline(line: str):
def repl_url(matchobj: re.Match):
url, text = matchobj.groupdict().values()
- if not re.findall(r'(http|gemini)', url):
+ if not re.findall(r'=> (http|gemini)', url):
url = re.sub(r'gmi$', r'html', url)
return f'=> {text if text else url}
\n'
diff --git a/tests/test_generate.py b/tests/test_generate.py
index c69ca57..a49c6ce 100644
--- a/tests/test_generate.py
+++ b/tests/test_generate.py
@@ -1,4 +1,3 @@
-import re
from gmirator.generate import (
process_file,
process_list,
@@ -12,26 +11,13 @@ def test_process_file():
pass
def test_process_list():
- test_str = "this is a line outside a list"
- assert process_list(test_str, True) == ("\n\n", False)
- assert process_list(test_str, False) == (test_str, False)
- test_str = "* this is a list item"
- assert process_list(test_str, True) == ("