summaryrefslogtreecommitdiff
path: root/.obsidian/plugins/obsidian-enhancing-export/lua
diff options
context:
space:
mode:
Diffstat (limited to '.obsidian/plugins/obsidian-enhancing-export/lua')
-rwxr-xr-x.obsidian/plugins/obsidian-enhancing-export/lua/citefilter.lua6
-rwxr-xr-x.obsidian/plugins/obsidian-enhancing-export/lua/markdown+hugo.lua5
-rwxr-xr-x.obsidian/plugins/obsidian-enhancing-export/lua/markdown.lua237
-rwxr-xr-x.obsidian/plugins/obsidian-enhancing-export/lua/math_block.lua68
-rwxr-xr-x.obsidian/plugins/obsidian-enhancing-export/lua/pdf.lua12
-rwxr-xr-x.obsidian/plugins/obsidian-enhancing-export/lua/polyfill.lua61
-rwxr-xr-x.obsidian/plugins/obsidian-enhancing-export/lua/url.lua18
7 files changed, 0 insertions, 407 deletions
diff --git a/.obsidian/plugins/obsidian-enhancing-export/lua/citefilter.lua b/.obsidian/plugins/obsidian-enhancing-export/lua/citefilter.lua
deleted file mode 100755
index 01700ed..0000000
--- a/.obsidian/plugins/obsidian-enhancing-export/lua/citefilter.lua
+++ /dev/null
@@ -1,6 +0,0 @@
--- credits to tarleb — StackExchange: https://tex.stackexchange.com/questions/392070/pandoc-markdown-create-self-contained-bib-file-from-cited-references
-function Pandoc(d)
- d.meta.references = pandoc.utils.references(d)
- d.meta.bibliography = nil
- return d
-end
diff --git a/.obsidian/plugins/obsidian-enhancing-export/lua/markdown+hugo.lua b/.obsidian/plugins/obsidian-enhancing-export/lua/markdown+hugo.lua
deleted file mode 100755
index 9341fd9..0000000
--- a/.obsidian/plugins/obsidian-enhancing-export/lua/markdown+hugo.lua
+++ /dev/null
@@ -1,5 +0,0 @@
-package.path=package.path..";" ..debug.getinfo(1).source:match("(.*[/\\])"):sub(2) .. "?.lua"
-
-Mode='hugo'
-
-require('markdown') \ No newline at end of file
diff --git a/.obsidian/plugins/obsidian-enhancing-export/lua/markdown.lua b/.obsidian/plugins/obsidian-enhancing-export/lua/markdown.lua
deleted file mode 100755
index 6071148..0000000
--- a/.obsidian/plugins/obsidian-enhancing-export/lua/markdown.lua
+++ /dev/null
@@ -1,237 +0,0 @@
-package.path=debug.getinfo(1).source:gsub('@',''):sub(0):match('(.*[/\\])'):sub(0) .. '?.lua' .. ';' .. package.path
-
-require("polyfill")
-local url = require('url')
-
-local pandoc=pandoc
-local PANDOC_STATE=PANDOC_STATE
-
-PANDOC_VERSION:must_be_at_least '3.1.7'
-
-os.text = pandoc.text
-
-local PATH = pandoc.path
-local doc_dir = nil
-local media_dir = nil
-
-if Mode == nil then
- Mode = 'default'
-end
-
--- print("Mode: "..Mode)
-
-if PANDOC_STATE.output_file then
- local output_file = PANDOC_STATE.output_file
- doc_dir = PATH.directory(output_file)
- if PANDOC_WRITER_OPTIONS.variables["media_dir"] then
- media_dir = tostring(PANDOC_WRITER_OPTIONS.variables["media_dir"])
- else
- media_dir = PATH.split_extension(output_file)
- if Mode ~= 'hugo' then
- media_dir = media_dir .. '-media'
- end
- end
-end
-assert(doc_dir, "doc_dir is nil")
-assert(media_dir, "media_dir is nil")
-
-
-local function get_absolute_path(file_path)
- if PATH.is_absolute(file_path) then
- return file_path
- end
- for _, dir in pairs(PANDOC_STATE.resource_path) do
- local full_path = PATH.join({dir, file_path})
- if os.exists(full_path) then
- return full_path
- end
- end
- for _, file in pairs(PANDOC_STATE.input_files) do
- if not PATH.is_absolute(file) then
- file = PATH.join({pandoc.system.get_working_directory(), file_path})
- end
- local dir = PATH.directory(file)
- local full_path = PATH.join({dir, file_path})
- if os.exists(full_path) then
- return full_path
- end
- end
- return nil
-end
-
-local function get_output_file(file_path)
- if media_dir then
- local new_file_name = pandoc.utils.sha1(file_path)
- local _, new_file_ext = PATH.split_extension(file_path)
- file_path = new_file_name .. new_file_ext
- local full_path = PATH.join({media_dir, file_path})
- return full_path
- else
- return nil
- end
-end
-
-local function extract_media(file_path)
- os.mkdir(media_dir)
- file_path = url.decode(file_path)
- local abs_path = get_absolute_path(file_path)
- local file = get_output_file(file_path)
- if abs_path and file then
- if not os.exists(file) then
- os.copy(abs_path, file)
- end
- local rel_path = PATH.make_relative(file, doc_dir, false)
- local parts = PATH.split(rel_path)
- for i,v in ipairs(parts) do
- parts[i] = url.encode(v)
- end
- local encoded_rel_path = table.concat(parts, "/")
- if Mode == 'hugo' then
- encoded_rel_path = '../' .. encoded_rel_path
- end
- return encoded_rel_path
- end
-end
-
-local function raw(s)
- return pandoc.RawInline('markdown', s)
-end
-
-function Image(el)
- local src = extract_media(el.src)
- if src then
- el.src = src
- end
- return el
-end
-
-function Space()
- return raw(' ')
-end
-
-function SoftBreak()
- return raw('\n')
-end
-
-function RawInline(el)
- if el.format == "html" then
- el.format = 'markdown'
- el.text = string.gsub(el.text, '<img[^>]+>', function(img)
- return string.gsub(img, 'src="([^"]+)"', function(url)
- if string.find(url, '^[Hh][Tt][Tt][Pp][Ss]?://') == nil then
- local extract_media_url = extract_media(url)
- if extract_media_url then
- return 'src="' .. extract_media_url .. '"'
- end
- return '123'
- end
- return 'src="' .. url .. '"'
- end)
- end)
- end
- return el
-end
-
-function RawBlock(el)
- if el.format == "html" then
- el.format = 'markdown'
- end
- return el
-end
-
-function Math(el)
- if Mode == 'hugo' then
- if el.mathtype == 'DisplayMath' then
- return raw('{{< mathjax >}}\n$$' .. el.text .. '$$\n{{</mathjax >}}')
- else
- el.text = string.gsub(el.text, '\\[\\{\\}]', function (v)
- return '\\' .. v
- end)
- el.text = string.gsub(el.text, '_', function (v)
- return '\\' .. v
- end)
- end
- end
- return el
-end
-
-local function headerLink(input)
- -- github style section link
- return "#"..input:gsub(' ', '-')
-end
-
-
-local function insertLink(content, linkDescription)
- local descriptionText = table.concat(linkDescription, "")
-
- if string.find(descriptionText, '|') then
- local target, desc = descriptionText:match("(.*)|(.*)")
- table.insert(content, pandoc.Link(desc, headerLink(target)))
- else
- table.insert(content, pandoc.Link(descriptionText, headerLink(descriptionText)))
- end
-end
-
-function Para(el)
- local content = el.content
- content = ProcessMath(content)
- content = ProcessInternalLinks(content)
- el.content = content
- return el
-end
-
-function ProcessMath(elements)
- local content = {}
- local in_display_math = false
- for _, item in pairs(elements) do
- if item.t == 'Str'and item.text == "$$" then
- in_display_math = not in_display_math
- else
- if in_display_math then
- if item.t == 'RawInline' and item.format == 'tex' then
- local n = pandoc.Math('DisplayMath', '\n' .. item.text .. '\n')
- table.insert(content, Math(n))
- else
- table.insert(content, item)
- end
- else
- table.insert(content, item)
- end
- end
- end
- return content
-end
-
-function ProcessInternalLinks(elements)
- local content = {}
- local in_section_link = false
- local linkDescription = {}
-
- for _, item in pairs(elements) do
- if item.t == 'Str' and string.starts_with(item.text, '[[#') then
- in_section_link = true
- table.insert(linkDescription, string.sub(item.text, 4))
- elseif in_section_link then
- if string.ends_with(item.text, ']]') then
- table.insert(linkDescription, string.sub(item.text, 1, -3))
- insertLink(content, linkDescription)
- in_section_link = false
- linkDescription = {}
- else
- table.insert(linkDescription, item.text)
- end
- else
- table.insert(content, item)
- end
- end
- return content
-end
-
-function Plain(el)
- el.content = ProcessInternalLinks(el.content)
- return el
-end
-
-function Pandoc(el)
- return el
-end
diff --git a/.obsidian/plugins/obsidian-enhancing-export/lua/math_block.lua b/.obsidian/plugins/obsidian-enhancing-export/lua/math_block.lua
deleted file mode 100755
index 380d96a..0000000
--- a/.obsidian/plugins/obsidian-enhancing-export/lua/math_block.lua
+++ /dev/null
@@ -1,68 +0,0 @@
-traverse = 'topdown'
-
-math_block_text = nil
-function process(el)
-
- -- MathBlock start or end
- if el.t == 'Str' and el.text == '$$' then
- if math_block_text == nil then -- start
- math_block_text = ''
- else -- end
- local math_block = pandoc.Math('DisplayMath', '\n' .. math_block_text .. '\n')
- math_block_text = nil
- return math_block
- end
- return {}
- end
-
- if math_block_text then
- if (el.t == 'RawInline' or el.t == 'RawBlock') and el.format == 'tex' then
- math_block_text = math_block_text .. el.text
- return {}
- elseif el.t == 'Str' then
- math_block_text = math_block_text .. el.text
- return {}
- elseif el.t == 'SoftBreak' or el.t == 'BulletList' then
- return {}
- end
- end
- return el
-end
-
-function RawInline(el)
- return process(el)
-end
-
-function RawBlock(el)
- return process(el)
-end
-
-function Str(el)
- return process(el)
-end
-
-function SoftBreak(el)
- return process(el)
-end
-
-function Header(el)
- return process(el)
-end
-
-function Para(el)
- return process(el)
-end
-
-function Plain(el)
- return process(el)
-end
-
-function BulletList(el)
- return process(el)
-end
-
-
-
-
-
-
diff --git a/.obsidian/plugins/obsidian-enhancing-export/lua/pdf.lua b/.obsidian/plugins/obsidian-enhancing-export/lua/pdf.lua
deleted file mode 100755
index 05fc651..0000000
--- a/.obsidian/plugins/obsidian-enhancing-export/lua/pdf.lua
+++ /dev/null
@@ -1,12 +0,0 @@
-
-return {
- {
- Math = function (elem)
- if elem.text:find("^%s*\\begin{") ~= nil then
- return pandoc.RawInline('tex', elem.text)
- else
- return elem
- end
- end,
- }
-}
diff --git a/.obsidian/plugins/obsidian-enhancing-export/lua/polyfill.lua b/.obsidian/plugins/obsidian-enhancing-export/lua/polyfill.lua
deleted file mode 100755
index 1e8f3e5..0000000
--- a/.obsidian/plugins/obsidian-enhancing-export/lua/polyfill.lua
+++ /dev/null
@@ -1,61 +0,0 @@
-os.platform = nil
-if os.platform == nil then
- local libExt = package.cpath:match("%p[\\|/]?\\.%p(%a+)")
- if libExt == 'dll' then
- os.platform = "Windows"
- elseif libExt == 'so' then
- os.platform = "Linux"
- elseif libExt == 'dylib' then
- os.platform = "MacOS"
- end
-end
-
-
-os.copy = function(src, dest)
- if os.platform == "Windows" then
- src = string.gsub(src, "/", "\\")
- src = os.text.toencoding(src)
- dest = os.text.toencoding(dest)
- os.execute('copy "' .. src .. '" "' .. dest .. '" >NUL')
- else
- os.execute('cp "' .. src .. '" "' .. dest .. '"')
- end
-end
-
-os.mkdir = function(dir)
- if os.exists(dir) then
- return
- end
- if os.platform == "Windows" then
- dir = os.text.toencoding(dir)
- os.execute('mkdir "' .. dir .. '"')
- else
- os.execute('mkdir -p "' .. dir .. '"')
- end
-end
-
-os.exists = function(path)
- if os.platform == "Windows" then
- path = string.gsub(path, "/", "\\")
- path = os.text.toencoding(path)
- local _, _, code = os.execute('if exist "' .. path .. '" (exit 0) else (exit 1)')
- return code == 0
- else
- local _, _, code = os.execute('test -e "' .. path .. '"')
- return code == 0
- end
-end
-
-string.starts_with = function(str, start)
- return str:sub(1, #start) == start
-end
-
-string.ends_with = function(str, ending)
- return ending == "" or str:sub(-#ending) == ending
-end
-
-
-return {
- os = os,
- string = string
-} \ No newline at end of file
diff --git a/.obsidian/plugins/obsidian-enhancing-export/lua/url.lua b/.obsidian/plugins/obsidian-enhancing-export/lua/url.lua
deleted file mode 100755
index 4798146..0000000
--- a/.obsidian/plugins/obsidian-enhancing-export/lua/url.lua
+++ /dev/null
@@ -1,18 +0,0 @@
-local function encode (str)
- str = string.gsub (str, "([^0-9a-zA-Z !'()*._~-])", -- locale independent
- function (c) return string.format ("%%%02X", string.byte(c)) end)
- str = string.gsub (str, " ", "%%20")
- return str
- end
-
-
-local function decode (str)
- str = string.gsub (str, "%%20", " ")
- str = string.gsub (str, "%%(%x%x)", function(h) return string.char(tonumber(h,16)) end)
- return str
-end
-
-return {
- encode = encode,
- decode = decode
-} \ No newline at end of file