about summary refs log tree commit diff stats
path: root/src/main.nim
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2025-02-15 15:38:02 +0100
committerbptato <nincsnevem662@gmail.com>2025-02-15 16:52:57 +0100
commit342a82c3a9c3acc635916834d206028914979112 (patch)
treea222ec2330c567d5a9ce244bf4f9caaacf4d370c /src/main.nim
parent5feb2c37ee8d6e914f4d31e4db6ddc3e68b24c6a (diff)
downloadchawan-342a82c3a9c3acc635916834d206028914979112.tar.gz
buffer: wait for scripts in headless mode
Dump mode remains the same, except now it can be controlled in
config.toml as well.
Diffstat (limited to 'src/main.nim')
-rw-r--r--src/main.nim8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/main.nim b/src/main.nim
index 54973779..9fc80997 100644
--- a/src/main.nim
+++ b/src/main.nim
@@ -93,7 +93,6 @@ type ParamParseContext = object
   configPath: Option[string]
   contentType: string
   charset: Charset
-  dump: bool
   visual: bool
   opts: seq[string]
   stylesheet: string
@@ -134,7 +133,7 @@ proc parseOutputCharset(ctx: var ParamParseContext) =
   ctx.opts.add("encoding.display-charset = '" & $ctx.getCharset() & "'")
 
 proc parseDump(ctx: var ParamParseContext) =
-  ctx.dump = true
+  ctx.opts.add("start.headless = 'dump'")
 
 proc parseCSS(ctx: var ParamParseContext) =
   ctx.stylesheet &= ctx.getNext()
@@ -146,7 +145,6 @@ proc parseRun(ctx: var ParamParseContext) =
   let script = dqEscape(ctx.getNext())
   ctx.opts.add("start.startup-script = \"\"\"" & script & "\"\"\"")
   ctx.opts.add("start.headless = true")
-  ctx.dump = true
 
 proc parse(ctx: var ParamParseContext) =
   var escapeAll = false
@@ -269,7 +267,7 @@ proc main() =
     elif (let wwwHome = getEnv("WWW_HOME"); wwwHome != ""):
       ctx.pages.add(wwwHome)
       history = false
-  if ctx.pages.len == 0 and not config.start.headless:
+  if ctx.pages.len == 0 and config.start.headless != hmTrue:
     if ps.isatty():
       help(1)
   # make sure tmpdir exists
@@ -286,7 +284,7 @@ proc main() =
   let client = newClient(config, forkserver, loaderPid, jsctx, warnings,
     urandom, loaderControl)
   try:
-    client.pager.run(ctx.pages, ctx.contentType, ctx.charset, ctx.dump, history)
+    client.pager.run(ctx.pages, ctx.contentType, ctx.charset, history)
   except CatchableError:
     client.flushConsole()
     raise