Added markdown cleanup, gitignore, and makefile
This commit is contained in:
parent
1ab154541f
commit
85ddba33d7
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
md/
|
||||
wiki/
|
||||
oldwiki/
|
36
Makefile
Normal file
36
Makefile
Normal file
@ -0,0 +1,36 @@
|
||||
PYTHON = python3
|
||||
DIR = $(CURDIR)
|
||||
WIKIOUTDIR = $(DIR)/wiki
|
||||
MDOUTDIR = $(DIR)/md
|
||||
OLDDIR = $(DIR)/oldwiki
|
||||
|
||||
.PHONY: default clean clean_md clean_wiki \
|
||||
export initial_cleanup final_cleanup \
|
||||
convert all
|
||||
|
||||
default:
|
||||
echo "Moin export and convert -- read Makefile for more details"
|
||||
|
||||
clean: clean_md clean_wiki
|
||||
|
||||
clean_md:
|
||||
rm -rf $(MDOUTDIR)
|
||||
|
||||
clean_wiki:
|
||||
rm -rf $(WIKIOUTDIR)
|
||||
|
||||
export: moin_export.py
|
||||
mkdir $(WIKIOUTDIR) &> /dev/null || true
|
||||
$(PYTHON) moin_export.py $(OLDDIR) $(WIKIOUTDIR)
|
||||
|
||||
initial_cleanup: wiki_cleanup.py
|
||||
$(PYTHON) wiki_cleanup.py $(WIKIOUTDIR)
|
||||
|
||||
final_cleanup: md_cleanup.py
|
||||
$(PYTHON) md_cleanup.py $(MDOUTDIR)
|
||||
|
||||
convert: convert_markdown.py
|
||||
mkdir $(MDOUTDIR) &> /dev/null || true
|
||||
$(PYTHON) convert_markdown.py $(WIKIOUTDIR) $(MDOUTDIR)
|
||||
|
||||
all: clean export initial_cleanup convert final_cleanup
|
@ -6,17 +6,18 @@ import subprocess
|
||||
|
||||
# argv[1] - wiki files directory
|
||||
|
||||
if len(sys.argv) < 2:
|
||||
print("Argument missing. Usage: python3 convert_markdown.py <wiki content dir>")
|
||||
if len(sys.argv) < 3:
|
||||
print("Argument missing. Usage: python3 convert_markdown.py <wiki content dir> <output dir>")
|
||||
else:
|
||||
path = sys.argv[1]
|
||||
output_path = sys.argv[2]
|
||||
if os.path.exists(path):
|
||||
files = [ f for f in listdir(path) if isfile(join(path, f)) ]
|
||||
for filename in files:
|
||||
name, file_extension = os.path.splitext(filename)
|
||||
if file_extension == ".txt":
|
||||
print("Converting %s/%s" % (path, filename))
|
||||
options = ['pandoc','-f','mediawiki','-t','markdown','-s',join(path,filename),'-o',join(path,name + ".md")]
|
||||
options = ['pandoc','-f','mediawiki','-t','markdown','-s',join(path,filename),'-o',join(output_path,name + ".md")]
|
||||
subprocess.call(options)
|
||||
else:
|
||||
print("Error: the path specified is invalid")
|
||||
|
30
md_cleanup.py
Normal file
30
md_cleanup.py
Normal file
@ -0,0 +1,30 @@
|
||||
from os import listdir
|
||||
from os.path import isfile, join
|
||||
import os
|
||||
import sys
|
||||
import re
|
||||
import subprocess
|
||||
|
||||
# argv[1] - markdown files directory
|
||||
|
||||
if len(sys.argv) < 2:
|
||||
print("Argument missing. Usage: python3 md_cleanup.py <md content dir>")
|
||||
else:
|
||||
path = sys.argv[1]
|
||||
if os.path.exists(path):
|
||||
files = [ f for f in listdir(path) if isfile(join(path, f)) ]
|
||||
for filename in files:
|
||||
name, file_extension = os.path.splitext(filename)
|
||||
if file_extension == ".md":
|
||||
print("Cleaning up %s/%s" % (path, filename))
|
||||
with open(join(path,filename), "r+", encoding="utf-8") as file:
|
||||
content = file.read()
|
||||
content = re.sub(r"`\*(.*)`[\\]?", r"*\g<1>", content)
|
||||
content = re.sub(r"!(\w+)", r"\g<1>", content)
|
||||
file.seek(0)
|
||||
file.truncate()
|
||||
file.write(content)
|
||||
file.close()
|
||||
else:
|
||||
print("Error: the path specified is invalid")
|
||||
|
@ -17,7 +17,6 @@ else:
|
||||
name, file_extension = os.path.splitext(filename)
|
||||
if file_extension == ".txt":
|
||||
print("Cleaning up %s/%s" % (path, filename))
|
||||
#options = ['pandoc','-f','mediawiki', '-t', 'markdown', '-s', join(path,filename), '-o', join(path,name + ".md")]
|
||||
with open(join(path,filename), "r+", encoding="utf-8") as file:
|
||||
content = file.read()
|
||||
content = re.sub("(\-{3,}\n(.*)[\n]*)$", "", content) # remove trailing categories list
|
||||
|
Loading…
Reference in New Issue
Block a user