Imports
-
../utils/eprint, ../encoding/charset, chapath, conftypes, cookie, ../css/cssparser, ../css/cssvalues, ../html/script, ../io/chafile, ../io/dynstream, ../server/headers, ../types/cell, ../types/color, ../types/jscolor, ../types/jsopt, ../types/opt, ../types/url, ../utils/dtoawrap, ../utils/lrewrap, ../utils/myposix, ../utils/twtstr
Types
ActionMap = ref object defaultAction*: JSValue t*: seq[Action] keyLast* {.jsget.}: int
BoolAuto = enum baAuto = "auto", baFalse = "false", baTrue = "true"
Config = ref ConfigObj
ConfigEntry = object section*: ConfigSection opt*: ConfigOption case t*: ConfigOptionClass of cocBit: bit*: ConfigOptionBit of cocHWord: hword*: ConfigOptionHWord of cocWord: word*: ConfigOptionWord of cocStr: str*: string of cocStrSeq: strSeq*: seq[string] of cocCharsetSeq: charsetSeq*: seq[Charset] of cocHeaders: headers*: ConfigHeadersInit of cocURL: url*: URL of cocRegex: regex*: Regex of cocFunction: fun*: pointer of cocCmdInit: cmdInit*: seq[tuple[k: string, fun: pointer]] of cocClear: nil
ConfigHeadersInit = ref object clear*: bool s*: seq[HTTPHeader]
ConfigOption = enum coAllowHttpFromFile = "allowHttpFromFile", coAltScreen = "altScreen", coAutofocus = "autofocus", coBracketedPaste = "bracketedPaste", coColorMode = "colorMode", coConsoleBuffer = "consoleBuffer", coCookie = "cookie", coDisplayCharset = "displayCharset", coDoubleWidthAmbiguous = "doubleWidthAmbiguous", coForceColumns = "forceColumns", coForceLines = "forceLines", coForcePixelsPerColumn = "forcePixelsPerColumn", coForcePixelsPerLine = "forcePixelsPerLine", coFormatModeStatus = "status.formatMode", coHeadless = "headless", coHighlightMarks = "highlightMarks", coHistory = "history", coIgnoreCase = "ignoreCase", coImageMode = "imageMode", coImages = "images", coMarkLinks = "markLinks", coMetaRefresh = "metaRefresh", coNoFormatMode = "noFormatMode", coOsc52Copy = "osc52Copy", coOsc52Primary = "osc52Primary", coRefererFrom = "refererFrom", coScripting = "scripting", coSetTitle = "setTitle", coShowCursorPosition = "showCursorPosition", coShowDownloadPanel = "showDownloadPanel", coShowHoverLink = "showHoverLink", coStyling = "styling", coUseMouse = "useMouse", coViNumericPrefix = "viNumericPrefix", coW3mCgiCompat = "w3mCgiCompat", coWrap = "wrap", coColumns = "columns", coFormatModeDisplay = "display.formatMode", coHistorySize = "historySize", coLines = "lines", coMaxNetConnections = "maxNetConnections", coMaxRedirect = "maxRedirect", coMinimumContrast = "minimumContrast", coPixelsPerColumn = "pixelsPerColumn", coPixelsPerLine = "pixelsPerLine", coSideWheelScroll = "sideWheelScroll", coSixelColors = "sixelColors", coWheelScroll = "wheelScroll", coDefaultBackgroundColor = "defaultBackgroundColor", coDefaultForegroundColor = "defaultForegroundColor", coHighlightColor = "highlightColor", coAutoMailcap = "autoMailcap", coBookmark = "bookmark", coCookieFile = "cookieFile", coCopyCmd = "copyCmd", coDownloadDir = "downloadDir", coEditor = "editor", coHistoryFile = "historyFile", coLinkHintChars = "linkHintChars", coPasteCmd = "pasteCmd", coPrependScheme = "prependScheme", coStartupScript = "startupScript", coTmpdir = "tmpdir", coUserStyle = "userStyle", coVisualHome = "visualHome", coCgiDir = "cgiDir", coInclude = "include", coMailcap = "mailcap", coMimeTypes = "mimeTypes", coUrimethodmap = "urimethodmap", coDocumentCharset = "documentCharset", coDefaultHeaders = "defaultHeaders", coProxy = "proxy", coAddEntry = "-cha-addEntry", coFilterCmd = "filterCmd", coHost = "host", coInsecureSslNoVerify = "insecureSslNoVerify", coMatch = "match", coRewriteUrl = "rewriteUrl", coShareCookieJar = "shareCookieJar", coSubstituteUrl = "substituteUrl", coUrl = "url"
ConfigOptionClass = enum cocBit, cocHWord, cocWord, cocStr, cocStrSeq, cocCharsetSeq, cocHeaders, cocURL, cocRegex, cocFunction, cocCmdInit, cocClear
ConfigRule = ref object matchType*: SiteconfMatch regex*: Regex fun*: JSValue entries*: seq[ConfigEntry]
ConfigSection = enum csNone = "none", csBuffer = "buffer", csDisplay = "display", csEncoding = "encoding", csExternal = "external", csInput = "input", csNetwork = "network", csSearch = "search", csStart = "start", csStatus = "status", csCmd = "cmd", csPage = "page", csLine = "line", csSiteconf = "siteconf", csOmnirule = "omnirule"
FormRequestType = enum frtHttp = "http", frtFtp = "ftp", frtData = "data", frtMailto = "mailto"
RegexCase = enum rcAuto = "auto", rcStrict = "", rcIgnore = "ignore"
SiteconfMatch = enum smUrl, smHost
Procs
proc addConfigModule(ctx: JSContext): Opt[void] {....raises: [], tags: [], forbids: [].}
proc freeValues(ctx: JSContext; list: ConfigList) {....raises: [], tags: [], forbids: [].}
proc fromJS(ctx: JSContext; val: JSValueConst; res: var FormatModeAuto): FromJSResult {. ...raises: [], tags: [RootEffect], forbids: [].}
proc fromJS(ctx: JSContext; val: JSValueConst; res: var RGBColorAuto): FromJSResult {. ...raises: [], tags: [], forbids: [].}
proc fromJS(ctx`gensym46: JSContext; val`gensym46: JSValueConst; res`gensym46: var ColorModeAuto): FromJSResult {....raises: [], tags: [], forbids: [].}
proc fromJS(ctx`gensym55: JSContext; val`gensym55: JSValueConst; res`gensym55: var ImageModeAuto): FromJSResult {....raises: [], tags: [], forbids: [].}
proc openConfig(dir, dataDir: var string; override: string; warnings: var seq[string]): Opt[ChaFile] {....raises: [], tags: [], forbids: [].}
proc parseConfig(config: Config; dir: string; buf: openArray[char]; warnings: var seq[string]; ctx: JSContext; name: string; laxnames = false): Err[string] {....raises: [], tags: [RootEffect, ReadIOEffect, ReadEnvEffect], forbids: [].}
proc parseConfig(config: Config; dir: string; file: ChaFile; warnings: var seq[string]; ctx: JSContext; name: string; laxnames = false): Err[string] {....raises: [], tags: [RootEffect, ReadIOEffect, ReadEnvEffect], forbids: [].}
proc toJS(ctx: JSContext; cookie: CookieMode): JSValue {....raises: [], tags: [], forbids: [].}
proc toJS(ctx: JSContext; headless: HeadlessMode): JSValue {....raises: [], tags: [], forbids: [].}
proc toJS(ctx: JSContext; v: FormatModeAuto): JSValue {....raises: [], tags: [], forbids: [].}
proc toJS(ctx: JSContext; v: RGBColorAuto): JSValue {....raises: [], tags: [], forbids: [].}
proc toJS(ctx: JSContext; val: ScriptingMode): JSValue {....raises: [], tags: [], forbids: [].}
proc toJS(ctx`gensym46: JSContext; v`gensym46: ColorModeAuto): JSValue {. ...raises: [], tags: [], forbids: [].}
proc toJS(ctx`gensym55: JSContext; v`gensym55: ImageModeAuto): JSValue {. ...raises: [], tags: [], forbids: [].}
Iterators
iterator items(list: ConfigList): ConfigRule {....raises: [], tags: [], forbids: [].}
Templates
template get(v: FormatModeAuto): FormatMode {..}
template isNone(v: RGBColorAuto): bool {..}
template isNone(v`gensym46: ColorModeAuto): bool {..}
template isNone(v`gensym55: ImageModeAuto): bool {..}