Htmlx

trait Htmlx

This trait provide additional methods on a NodeSeq or a Node representing an html document

Companion:
object
class Object
trait Matchable
class Any
object Htmlx.type

Type members

Classlikes

case class Header(level: Int, node: Node, namer: UniqueNames)
object HeaderShow extends Show[Header]
case class NodeRewriteRule(pf: PartialFunction[Node, Seq[Node]]) extends RewriteRule

Value members

Concrete methods

def anchorName(name: String): String

create a sanitized anchor name

create a sanitized anchor name

def headers(nodes: NodeSeq): NodeSeq
Returns:

all the headers and all the subtoc elements of a document

This rule can be used to add anchors to header elements

This rule can be used to add anchors to header elements

def headersToTree(body: NodeSeq, headers: TreeLoc[Header]): TreeLoc[Header]

collect all the headers as a Tree

collect all the headers as a Tree

def isHeader(e: Node): Boolean
Returns:

true if the element is a header

def nodeText(n: Node): String
Returns:

the text of the first child of a Node

def rewriteRule(pf: PartialFunction[Node, Seq[Node]]): NodeRewriteRule
Returns:

a rewrite rule that will rewrite recursively each node based on a partial function

def sanitize(s: String): String

sanitize a string so that it can be used as a href

sanitize a string so that it can be used as a href

def updateHead(ns: NodeSeq)(f: PartialFunction[Node, Node]): NodeSeq
Returns:

a NodeSeq where the first Node is updated with a partial function

def updateHeadAttribute(ns: NodeSeq, name: String, value: String): NodeSeq
Returns:

a NodeSeq where the first Node attribute named 'named' has a new value

def updateHeadAttribute(ns: NodeSeq, name: String, value: Int): NodeSeq
Returns:

a NodeSeq where the first Node attribute named 'named' has a new value, from an Int

def urls(ns: NodeSeq, filePath: FilePath): List[String]
Returns:

the href urls in elements

Givens

Givens

given given_Diffable_NodeSeq: Diffable[NodeSeq]

Extensions

Extensions

extension (n: Node)
def addHeadersAnchors: NodeSeq
extension (ns: NodeSeq)
def addHeadersAnchors(using nothing: Int): NodeSeq
def headers(using nothing: Int): NodeSeq
def headersTree(using nothing: Int): Tree[Header]
extension (ns: Seq[Node])
def updateHead(using nothing: Int)(f: PartialFunction[Node, Node]): NodeSeq
def updateHeadAttribute(using nothing: Int)(name: String, value: String): NodeSeq
extension (s: String)
def anchorName(using nothing: Int): String
def sanitize(using nothing: Int): String