]> git.madduck.net Git - etc/awesome.git/blobdiff - asyncshell.lua

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

better weather module: OpenWeatherMap; #105
[etc/awesome.git] / asyncshell.lua
index 51885e8179715e2d832b2261a32773b6b863691e..0aafa17e7df9ffb2194c4ee76baa25575af65774 100644 (file)
 -- How to use...
 -- ...asynchronously:
 -- asyncshell.request('wscript -Kiev', function(f) wwidget.text = f:read("*l") end)
--- ...synchronously
--- wwidget.text = asyncshell.demand('wscript -Kiev', 5):read("*l") or "Error"
-
--- This makes things faster, but puts weight on sysload and is more cpu demanding.
+-- ...synchronously:
+-- widget:set_text(asyncshell.demand('wscript -Kiev', 5):read("*l") or "Error")
 
 local spawn = require('awful.util').spawn
 
@@ -39,13 +37,12 @@ end
 function asyncshell.request(command, callback)
    local id = next_id()
    local tmpfname = asyncshell.file_template .. id
-   asyncshell.request_table[id] = {callback = callback}
+   asyncshell.request_table[id] = { callback = callback }
    local req =
       string.format("sh -c '%s > %s; " ..
                     'echo "asyncshell.deliver(%s)" | ' ..
                     "awesome-client' 2> /dev/null",
-                    string.gsub(command, "'", "'\\''"), tmpfname,
-                    id, tmpfname)
+                    string.gsub(command, "'", "'\\''"), tmpfname, id)
    spawn(req, false)
    return id
 end