-
Notifications
You must be signed in to change notification settings - Fork 7
File data
Quarkdown offers functions to retrieve information from files.
Note
The following functions refer to a path
parameter, which accepts the path to the target file, which may be relative to the location of the main source file, or absolute.
A slash (/
) is the global path separator, agnostic to the current file system in use.
The .read {path}
function returns the string content of the given file.
An optional lines
parameter of type Range
is also supported, which allows for the selection of a specific range of lines (inclusive, starting from 1). An invalid or out of bounds range causes an error.
If no range is provided, the whole file is read.
.read {myfile.txt} lines:{3..8}
The strategy used for open ranges is defined as follows:
- If the range is open on the left end (
..N
) it starts reading from the beginning of the file until lineN
. - If the range is open on the right end (
N..
) it reads from lineN
to the end of the file. - If the range is open on both ends (
..
) the whole file is read.
Tip
.read
is particularly useful when used in combination with .code
in order to load code snippets from external files:
.code {java}
.read {Point.java}
The .csv {path}
function loads a table from a CSV file. The parsing is delegated to the kotlin-csv library.
The first row of the CSV file is always used as the header row.
.csv {people.csv}
- Syntax of a function call
- Declaring functions
- Dynamic typing
- Localization
- Including other Quarkdown files
- Importing external libraries
- Document metadata
- Theme
- Page format
- Page margin content
- Page counter
- Automatic page break
- Numbering
- Table of contents
- Stacks (row, column, grid)
- Align
- Container
- Box
- Collapsible
- Whitespace
- String
- Number
- Markdown content
- Boolean
- Enumeration entry
- Iterable
- Dictionary
- Range
- Lambda
- Size(s)
- Color
- Dynamic