Package-level declarations

Types

Link copied to clipboard
data class DocumentAuthor(val name: String, val info: Map<String, String> = emptyMap())

An author of a document.

Link copied to clipboard
data class DocumentInfo(val type: DocumentType = DocumentType.PLAIN, val name: String? = null, val authors: List<DocumentAuthor> = emptyList(), val locale: Locale? = null, val numbering: DocumentNumbering? = null, val theme: DocumentTheme? = null, val tex: TexInfo = TexInfo(), val layout: DocumentLayoutInfo = DocumentLayoutInfo())

Immutable information about the document. This data is updated by library functions .docname, .docauthor, etc., by overwriting com.quarkdown.core.context.MutableContext.documentInfo.

Link copied to clipboard
data class DocumentTheme(val color: String?, val layout: String?)

The theme of a document. A theme is defined by different components, hence allowing different combinations. Components can also be not specified by setting them to null, and are hence ignored.

Link copied to clipboard

Type of produced document, which affects its post-rendering stage.

Functions

Link copied to clipboard
fun DocumentInfo.deepCopy(type: DocumentType = this.type, name: String? = this.name, authors: List<DocumentAuthor> = this.authors, locale: Locale? = this.locale, numbering: DocumentNumbering? = this.numbering, numberingHeadings: NumberingFormat? = numbering?.headings, numberingHeadingsSymbols: List<NumberingSymbol>? = numberingHeadings?.symbols, numberingFigures: NumberingFormat? = numbering?.figures, numberingFiguresSymbols: List<NumberingSymbol>? = numberingFigures?.symbols, numberingTables: NumberingFormat? = numbering?.tables, numberingTablesSymbols: List<NumberingSymbol>? = numberingTables?.symbols, numberingMath: NumberingFormat? = numbering?.math, numberingMathSymbols: List<NumberingSymbol>? = numberingMath?.symbols, numberingCodeBlocks: NumberingFormat? = numbering?.codeBlocks, numberingCodeBlocksSymbols: List<NumberingSymbol>? = numberingCodeBlocks?.symbols, numberingFootnotes: NumberingFormat? = numbering?.footnotes, numberingFootnotesSymbols: List<NumberingSymbol>? = numberingFootnotes?.symbols, numberingExtra: Map<String, NumberingFormat>? = numbering?.extra, theme: DocumentTheme? = this.theme, themeColor: String? = theme?.color, themeLayout: String? = theme?.layout, tex: TexInfo = this.tex, texMacros: Map<String, String> = tex.macros, layout: DocumentLayoutInfo = this.layout, layoutPageFormat: PageFormatInfo = layout.pageFormat, layoutPageFormatPageWidth: Size? = layoutPageFormat.pageWidth, layoutPageFormatPageWidthValue: Double? = layoutPageFormatPageWidth?.value, layoutPageFormatPageWidthUnit: Size.Unit? = layoutPageFormatPageWidth?.unit, layoutPageFormatPageHeight: Size? = layoutPageFormat.pageHeight, layoutPageFormatPageHeightValue: Double? = layoutPageFormatPageHeight?.value, layoutPageFormatPageHeightUnit: Size.Unit? = layoutPageFormatPageHeight?.unit, layoutPageFormatMargin: Sizes? = layoutPageFormat.margin, layoutPageFormatMarginTop: Size? = layoutPageFormatMargin?.top, layoutPageFormatMarginTopValue: Double? = layoutPageFormatMarginTop?.value, layoutPageFormatMarginTopUnit: Size.Unit? = layoutPageFormatMarginTop?.unit, layoutPageFormatMarginRight: Size? = layoutPageFormatMargin?.right, layoutPageFormatMarginRightValue: Double? = layoutPageFormatMarginRight?.value, layoutPageFormatMarginRightUnit: Size.Unit? = layoutPageFormatMarginRight?.unit, layoutPageFormatMarginBottom: Size? = layoutPageFormatMargin?.bottom, layoutPageFormatMarginBottomValue: Double? = layoutPageFormatMarginBottom?.value, layoutPageFormatMarginBottomUnit: Size.Unit? = layoutPageFormatMarginBottom?.unit, layoutPageFormatMarginLeft: Size? = layoutPageFormatMargin?.left, layoutPageFormatMarginLeftValue: Double? = layoutPageFormatMarginLeft?.value, layoutPageFormatMarginLeftUnit: Size.Unit? = layoutPageFormatMarginLeft?.unit, layoutPageFormatContentBorderWidth: Sizes? = layoutPageFormat.contentBorderWidth, layoutPageFormatContentBorderWidthTop: Size? = layoutPageFormatContentBorderWidth?.top, layoutPageFormatContentBorderWidthTopValue: Double? = layoutPageFormatContentBorderWidthTop?.value, layoutPageFormatContentBorderWidthTopUnit: Size.Unit? = layoutPageFormatContentBorderWidthTop?.unit, layoutPageFormatContentBorderWidthRight: Size? = layoutPageFormatContentBorderWidth?.right, layoutPageFormatContentBorderWidthRightValue: Double? = layoutPageFormatContentBorderWidthRight?.value, layoutPageFormatContentBorderWidthRightUnit: Size.Unit? = layoutPageFormatContentBorderWidthRight?.unit, layoutPageFormatContentBorderWidthBottom: Size? = layoutPageFormatContentBorderWidth?.bottom, layoutPageFormatContentBorderWidthBottomValue: Double? = layoutPageFormatContentBorderWidthBottom?.value, layoutPageFormatContentBorderWidthBottomUnit: Size.Unit? = layoutPageFormatContentBorderWidthBottom?.unit, layoutPageFormatContentBorderWidthLeft: Size? = layoutPageFormatContentBorderWidth?.left, layoutPageFormatContentBorderWidthLeftValue: Double? = layoutPageFormatContentBorderWidthLeft?.value, layoutPageFormatContentBorderWidthLeftUnit: Size.Unit? = layoutPageFormatContentBorderWidthLeft?.unit, layoutPageFormatContentBorderColor: Color? = layoutPageFormat.contentBorderColor, layoutPageFormatContentBorderColorRed: Int? = layoutPageFormatContentBorderColor?.red, layoutPageFormatContentBorderColorGreen: Int? = layoutPageFormatContentBorderColor?.green, layoutPageFormatContentBorderColorBlue: Int? = layoutPageFormatContentBorderColor?.blue, layoutPageFormatContentBorderColorAlpha: Double? = layoutPageFormatContentBorderColor?.alpha, layoutPageFormatColumnCount: Int? = layoutPageFormat.columnCount, layoutPageFormatAlignment: Container.TextAlignment? = layoutPageFormat.alignment, layoutFont: FontInfo = layout.font, layoutFontMainFamily: FontFamily? = layoutFont.mainFamily, layoutFontHeadingFamily: FontFamily? = layoutFont.headingFamily, layoutFontCodeFamily: FontFamily? = layoutFont.codeFamily, layoutFontSize: Size? = layoutFont.size, layoutFontSizeValue: Double? = layoutFontSize?.value, layoutFontSizeUnit: Size.Unit? = layoutFontSize?.unit, layoutParagraphStyle: ParagraphStyleInfo = layout.paragraphStyle, layoutParagraphStyleLineHeight: Double? = layoutParagraphStyle.lineHeight, layoutParagraphStyleLetterSpacing: Double? = layoutParagraphStyle.letterSpacing, layoutParagraphStyleSpacing: Double? = layoutParagraphStyle.spacing, layoutParagraphStyleIndent: Double? = layoutParagraphStyle.indent, layoutCaptionPosition: CaptionPositionInfo = layout.captionPosition, layoutCaptionPositionDefault: CaptionPosition = layoutCaptionPosition.default, layoutCaptionPositionFigures: CaptionPosition? = layoutCaptionPosition.figures, layoutCaptionPositionTables: CaptionPosition? = layoutCaptionPosition.tables, layoutCaptionPositionCodeBlocks: CaptionPosition? = layoutCaptionPosition.codeBlocks): DocumentInfo

Creates a deep copy of this data class, with optional modification of nested properties.

Link copied to clipboard

Given this theme with nullable components, merges it with a default theme in order to fill in the missing components. If this is null itself, the default theme is returned.