diff --git a/README.org b/README.org index 71b3be6..0eec543 100644 --- a/README.org +++ b/README.org @@ -8,7 +8,7 @@ This is very much set up for my own use, but the code is public so others can se This is for my personal use and definitely won’t work as is for other people, but feel free to dig around in the files. I am an amateur and I almost certainly don’t follow best practices in any respect. -Fic metadata lives in =originalsmeta/= following the template, translation metadata in =translationsmeta/=; the filename for each is a unique 3-digit number. Fic files with the corresponding filenames live in =texts= (HTML, PDF, and EPUB are recognised in the script, which then moves them into =build/files/= or =build/secret/= according to metadata). +Fic metadata lives in =files/originalsmeta/= following the template, translation metadata in =files/translationsmeta/=; the filename for each is a unique 3-digit number. Fic files with the corresponding filenames live in =files/texts= (HTML, PDF, and EPUB are recognised in the script, which then moves them into =build/files/= or =build/secret/= according to metadata). On the server my =secret/= folder is protected using =.htpasswd=. In the current setup the comments are sent to my private Discord server using webhooks, so do modify the POST request in the comments pages if you don’t want your own test comments being sent to my server, haha. diff --git a/commentpage.py b/commentpage.py index 2359d87..eccb595 100644 --- a/commentpage.py +++ b/commentpage.py @@ -162,7 +162,7 @@ def commentindex(local=False): # write header headerfooter.headerwrite("build/comments/index.html","Comments","Comments","",False,local) filewrite = open("build/comments/index.html", "a") - filewrite.write("

Comments I receive are archived on this site and linked back to the original. If you don’t want your comments from other sources archived here, or if you require any changes to the presentation of your comments, please email me. Please note, however, that this website is not indexed by search engines and the only places I really “advertise” it are Dreamwidth and, sparingly, AO3.

\n

You can leave comments on the relevant comment pages for each fic. If you’d like notification of any reply, please leave your email address. If you’d like a link from your pseudonym to a website, you can supply this as well. I’ll happily link to personal websites, Dreamwidth profiles, and (at least for now) AO3 profiles; I’m unlikely to include links to for-profit social media websites, Carrd, or Patreon.

\n

Comments are turned off on any fic over two years old unless it’s in a Final Fantasy fandom. On AO3, comments are left open on fics written for AO3-hosted gift exchanges that ran in 2020 or later.

\n") + filewrite.write("

Comments I receive are archived on this site and linked back to the original. If you don’t want your comments from other sources archived here, or if you require any changes to the presentation of your comments, please email me. Please note, however, that this website is not indexed by search engines and I don’t “advertise” it on mainstream social media.

\n

You can leave comments on the relevant comment pages for each fic (where this is enabled). If you’d like notification of any reply, please leave your email address. If you’d like a link from your pseudonym to a website, you can supply this as well. I’ll happily link to personal websites, Dreamwidth profiles, and (at least for now) AO3 profiles; I’m unlikely to include links to for-profit social media websites, Carrd, or Patreon.

\n

Comments are turned off on any fic over two years old unless it’s in a Final Fantasy fandom.

\n") filewrite.close() headerfooter.footerwrite("build/comments/index.html",False,local) diff --git a/indexgen.py b/indexgen.py index bfbf25c..d9b5161 100644 --- a/indexgen.py +++ b/indexgen.py @@ -58,7 +58,7 @@ def indexgen(local=False): # write header headerfooter.headerwrite("build/index.html","Tré’s fic archive","Tré’s fic archive","",True,local) filewrite = open("build/index.html", "a") - filewrite.write("

Here is all my fanfiction! Much of it is also archived at AO3 under the name \"[archiveofourown.orgovely.

\n

The code for this archive is available here. Commenting is switched on for most fics written at least semi-recently – read about that Here is all my fanfiction! Some of it is also syndicated elsewhere, but this site is the canonical location for everything I’ve written. I authorise transformative works as long as the original is linked and no financial transactions are involved.

\n

The code for this archive is available here. Commenting is switched on for most fics written at least semi-recently – read about that Events\n

I’ve been participating in fandom exchanges and other events since late 2020. Most fics I write these days that aren’t in FF fandoms are in this category (although a lot of the FF ones are as well).

\n\n
\n

Other

\n\n
\n
\n\n
\n") + filewrite.write("\">Events\n

Since 2020 I’ve participated in some fandom exchanges and other events. Many of my more recent fics are in this category.

\n\n
\n

Other

\n\n
\n
\n\n
\n") filewrite.close() headerfooter.footerwrite("build/index.html",True,local) diff --git a/originals-template.py b/originals-template.py new file mode 100644 index 0000000..3f44c8d --- /dev/null +++ b/originals-template.py @@ -0,0 +1,49 @@ +import datetime + +title = "" # just the number is fine +showtitle = False +language = "en" +# translation = +datewords = [{"date":datetime.datetime(YYYY,M,D),"words":}] +# revealdate = datetime.datetime(YYYY,M,D) +# approxdate = "" +status = "complete" # incomplete, abandoned +rating = "" # g, t, m, e +# ratingreason = "" +fandom = [""] +# fandomtext = "" +# charpov = [""] +# charmain = [""] +# charsecondary = [""] +# charmention = [""] +# ship = [""] +genre = [""] +# warnings = "" +time = "" +location = [""] +# locationtext = "" +# summary = "" +# notes = "" +# event = "" # challenge (including fests; anything without a specific prompt), ao3exchange, exchange, prompt +# eventlocation = "" # dwcomm, dwjournal, ljjournal +# eventname = "" +# eventdeets = "" # probably not needed unless it’s robotsoup +# eventfrequency = "" # "annual" or some custom value like "summer 2022 round" – or can leave +# prompt = "" +# recip = "" +# recippseud = "" +# recipsite = "" # ao3, dw, tumblr +locked = False +# ao3slug = +# ao3locked = +html = True +pdf = True +epub = True +# fedislug = "" +# comments = [{"site":"", # ao3, dw, lj, discord +# "registered":, # True or False, not required for discord +# "username":"", # leave out if it’s a dw/lj anon +# "pseud":"", # optional, ao3 only +# "date":datetime.datetime(), +# "link":"", +# "text":""}] diff --git a/translations-template.py b/translations-template.py new file mode 100644 index 0000000..c7d175a --- /dev/null +++ b/translations-template.py @@ -0,0 +1,11 @@ +import datetime + +title = "" +showtitle = False +language = "fr" +original = +datewords = [{"date":datetime.datetime(YYYY,M,D),"words":}] +status = "complete" # incomplete, abandoned +summary = "" +ao3slug = +# comments = [] # see originalsmeta/template.py for format