blob: c70a96a68db15a53749c3538f0ff82ea040faf29 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
#!/usr/bin/env lua
--
-- Convert koreader metadata to markdown.
--
-- Sort by page number
function compare(a, b)
return a.page < b.page
end
-- Check if a file exists
-- Thanks https://stackoverflow.com/questions/4990990/check-if-a-file-exists-with-lua#4991602
function file_exists(name)
local f=io.open(name,"r")
if f~=nil then io.close(f) return true else return false end
end
-- Get filename
file = arg[1]
-- Usage
if file == nil then
print('usage: ' .. arg[0] .. ' <filename>')
os.exit(1)
else
if not file_exists(file) then
print('file not found: ' .. file)
os.exit(1)
end
end
-- Load metadata
content = assert(loadfile(file))
data = content()
bookmarks = data.bookmarks
annotations = data.annotations
-- Sort
table.sort(bookmarks, compare)
table.sort(annotations, compare)
-- Iterate over bookmarks
for key, item in ipairs(bookmarks) do
print('Page ' .. item.page .. ':')
print('')
print('> ' .. item.notes)
print('')
end
-- Iterate over annotations
for key, item in ipairs(annotations) do
print('Page ' .. item.page .. ':')
print('')
print('> ' .. item.text)
print('')
end
|