about summary refs log tree commit diff stats
path: root/src/extern/runproc.nim
diff options
context:
space:
mode:
Diffstat (limited to 'src/extern/runproc.nim')
-rw-r--r--src/extern/runproc.nim58
1 files changed, 0 insertions, 58 deletions
diff --git a/src/extern/runproc.nim b/src/extern/runproc.nim
deleted file mode 100644
index 9d189dff..00000000
--- a/src/extern/runproc.nim
+++ /dev/null
@@ -1,58 +0,0 @@
-import std/posix
-import std/streams
-
-import display/term
-
-proc c_system(cmd: cstring): cint {.
-  importc: "system", header: "<stdlib.h>".}
-
-# Run process (without suspending the terminal controller).
-proc runProcess*(cmd: string): bool =
-  let wstatus = c_system(cstring(cmd))
-  if wstatus == -1:
-    result = false
-  else:
-    result = WIFEXITED(wstatus) and WEXITSTATUS(wstatus) == 0
-    if not result:
-      # Hack.
-      #TODO this is a very bad idea, e.g. say the editor is writing into the
-      # file, then receives SIGINT, now the file is corrupted but Chawan will
-      # happily read it as if nothing happened.
-      # We should find a proper solution for this.
-      result = WIFSIGNALED(wstatus) and WTERMSIG(wstatus) == SIGINT
-
-# Run process (and suspend the terminal controller).
-proc runProcess*(term: Terminal, cmd: string, wait = false): bool =
-  term.quit()
-  result = runProcess(cmd)
-  if wait:
-    term.anyKey()
-  term.restart()
-
-# Run process, and capture its output.
-proc runProcessCapture*(cmd: string, outs: var string): bool =
-  let file = popen(cmd, "r")
-  if file == nil:
-    return false
-  let fs = newFileStream(file)
-  outs = fs.readAll()
-  let rv = pclose(file)
-  if rv == -1:
-    return false
-  return rv == 0
-
-# Run process, and write an arbitrary string into its standard input.
-proc runProcessInto*(cmd, ins: string): bool =
-  let file = popen(cmd, "w")
-  if file == nil:
-    return false
-  let fs = newFileStream(file)
-  fs.write(ins)
-  let rv = pclose(file)
-  if rv == -1:
-    return false
-  return rv == 0
-
-proc myExec*(cmd: string) =
-  discard execl("/bin/sh", "sh", "-c", cmd, nil)
-  exitnow(127)