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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
# .*(misc|preserved).*html
#
# == About ==
#
# Each file list is a "details" element, that contains a table, each row being a different file
# or alternatively, just the table on it's own.
#
# -- Result HTML --
#
# <details>
# <summary>Folder Info</summary>
# <table>
# <tr>File Data</tr>
# </table>
# </details>
# or
# <table>
# <tr>File Data</tr>
# </table>
#
# == ftags ==
#
# &&folder The text right afterwards is the title of the folder. All files
# are hidden inside the collapsed details tag (click to show).
# The file table is indented. You cannot have a folder inside a folder.
# It can be omitted, and the files table will be shown as-is.
#
# &&file Everything that follows this tag is the data for a file. You should
# use &&fd to specify columns of information! Depending on the context,
# it might be flrepllaced with the start of a table, closing the summary
# and starting table, or closing and opening a table row.
#
# &&/files This tag must exist at the bottom of a file list, no matter if it was
# started with or without a &&folder.
#
# &&fd Defines a column of information for a file (row). Practically, it is
# flrepllaced with <td>, and </td> is added to the end of the line.
# If you don't use it, make sure to have the leading and trailing td tags!
#
# &&ft-TYPE Depending on TYPE, it inserts an image tag that contains the file "icon"
# for the corresponding type.
# Available values for TYPE: photo, text, zip, movie, markdown
#
# -- Placement/Flow --
#
# All ftags, except &&fd, can be placed on their own line (empty line above and below)
# or before/after another ftag.
# Folder title must be inside the same paragraph as the ftag itself. This means that,
# after
# every &&folder ftag, the text can continue directly next to it and/or on new lines,
# without there being any empty lines (you can add those with <br> or two spaces at
# line end).
#
# -- Example Usage --
#
# (I like to indent a bit &&fd ftags, for readability's sake, but you don't have to)
#
# &&file
# &&ft-text
# &&fd Notes
# &&fd 10 KB
# &&/files
#
# &&folder Math
# &&file
# &&ft-text
# &&fd Homework 1
# &&file
# &&ft-text
# &&fd Homework 2
# &&/files
#
# &&folder Art Project<br>
# Status: 70% complete<br>
# Note: Reserach Van Gogh paintings
#
# &&file
# &&fd Painting 1
# &&fd 100% Complete
#
# &&file
# &&fd Painting 2
# &&fd 40% Complete
#
# &&/files
function flSub(name, repl) {
sub("&&" name, "<span class=\"file-type-icon\">" repl "</span>")
}
/&&ft-photo/ { flSub("ft-photo", "\\") }
/&&ft-text/ { flSub("ft-text", "\\") }
/&&ft-zip/ { flSub("ft-zip", "\\") }
/&&ft-movie/ { flSub("ft-movie", "\\") }
/&&ft-markdown/ { flSub("ft-markdown", "\\") }
/&&ft-browser/ { flSub("ft-browser", "\\") }
|