local helpers = require("lain.helpers") local markup = require("lain.util.markup") local utils = {} function utils.home() return os.getenv("HOME") .. "/" end function utils.handle_pid(command, callback) helpers.async_with_shell(string.format("ps x -o pid=,command=|grep -E '^\\s*[0-9]* %s$'|sed 's/\\s*\\([0-9]*\\) .*/\\1/'", command), callback) end function utils.ansi2markup(ansi, colors) return ansi :gsub("\x1b%[1m([^\x1b]*)", markup.bold("%1")) :gsub("\x1b%[7m([^\x1b]*)", markup.color(colors.base1, colors.base02, "%1")) :gsub("\x1b%[0m([^\x1b]*)", "%1") end return utils