birno

Hozzászólások

10 bejegyzés megtekintése - 221-230 / 1,711
  • Szerző
    Bejegyzés
  • Hozzászólás: awesome ablakkezelő #2147265
    birno
    Felhasználó

      Ilyesmi már nekem is eszembe jutott, de valahogy csak elmaradt a kipróbálása, elvileg jónak tűnik, köszi.

      A bezárás azért érdekes, mert nem az sda/sdb funkción belül nyitom meg a fájlt, hanem az usb_update-nél és az addig nem végez amíg a másik kettő nem fut le.

      Hozzászólás: awesome ablakkezelő #2147266
      birno
      Felhasználó

        Ilyesmi már nekem is eszembe jutott, de valahogy csak elmaradt a kipróbálása, elvileg jónak tűnik, köszi.

        A bezárás azért érdekes, mert nem az sda/sdb funkción belül nyitom meg a fájlt, hanem az usb_update-nél és az addig nem végez amíg a másik kettő nem fut le.

        Hozzászólás: awesome ablakkezelő #2147261
        birno
        Felhasználó

          Van egy kreálmányom rá, de szerintem túl is van bonyolítva, meg csak félig működik.

          Code:
          sda_usage = widget( {type=”textbox”, name=”sda_usage”} )
          sda_usage:mouse_add(mouse({ }, 1, function () usb_update() end))

          sdb_usage = widget( {type=”textbox”, name=”sdb_usage”} )
          sdb_usage:mouse_add(mouse({ }, 1, function () usb_update() end))

          function usb_update()
                  local df = io.popen(‘df -h’)
                  local l = df:lines()
                  function sda()
                          local str = „”
                          for line in l do
                                  if line:find(‘sda’) ~= nil then
                                          local form = string.gsub(line, „(%C+)%s+(%w+)%s+(%w+)%s+(%w+)%s+(%C+)%s+/(%w+)/(%w+)”, „%7: %3/%2 – %5”)
                                          local um = string.match(line, „/media/%w+”, 30)
                                          str = ” | ” .. form .. „”
                                          sda_usage:mouse_add(mouse({ }, 3, function () awful.spawn(„sudo umount ” .. um) usb_update() end))
                                  end
                          end
                          return str
                  end
                 
                  function sdb()
                          local str = „”
                          for line in l do
                                  if line:find(‘sdb’) ~= nil then
                                          local form = string.gsub(line, „(%C+)%s+(%w+)%s+(%w+)%s+(%w+)%s+(%C+)%s+/(%w+)/(%w+)”, „%7: %3/%2 – %5”)
                                          local um = string.match(line, „/media/%w+”, 30)
                                          str = ” | ” .. form .. „”
                                          sdb_usage:mouse_add(mouse({ }, 3, function () awful.spawn(„sudo umount ” .. um) usb_update() end))
                                  end
                          end
                          return str
                  end
          sda_usage.text = sda()
          sdb_usage.text = sdb()
          end

          Lefut, de az „sdb()” már nem kap értéket, szerintem bezárja a fájlt(df-et), mert ha megcserélem az utolsó sorokat és elöszőr az „sdb()” fut, akkor az kap értéket és az „sda()” nem, viszont mindkettő lefut, mert ha berakok a végükre egy print-et, akkor kiírja őket.
          Plusz ha az „sda_usage.text = sda()” elé berakok egy „df:close()”-ot, akkor a logba folyamatosan írja, hogy „file is alredy closed”, de miért zárja be önkéntesen?

          Azt is próbáltam, hogy egy külön funkcióba az „os.execute”-al beleírja a „df -h” kimenetét egy fájlba és azt olvastatom be, de akkor is ugyanez volt.
          Bár most, hogy így mondtad nem tudom miért nem az mtab-ot vagy a /proc/mounts-ot figyeltem, na mindegy, a probléma akkor is fennállna.

          Hozzászólás: awesome ablakkezelő #2147262
          birno
          Felhasználó

            Van egy kreálmányom rá, de szerintem túl is van bonyolítva, meg csak félig működik.

            Code:
            sda_usage = widget( {type=”textbox”, name=”sda_usage”} )
            sda_usage:mouse_add(mouse({ }, 1, function () usb_update() end))

            sdb_usage = widget( {type=”textbox”, name=”sdb_usage”} )
            sdb_usage:mouse_add(mouse({ }, 1, function () usb_update() end))

            function usb_update()
                    local df = io.popen(‘df -h’)
                    local l = df:lines()
                    function sda()
                            local str = „”
                            for line in l do
                                    if line:find(‘sda’) ~= nil then
                                            local form = string.gsub(line, „(%C+)%s+(%w+)%s+(%w+)%s+(%w+)%s+(%C+)%s+/(%w+)/(%w+)”, „%7: %3/%2 – %5”)
                                            local um = string.match(line, „/media/%w+”, 30)
                                            str = ” | ” .. form .. „”
                                            sda_usage:mouse_add(mouse({ }, 3, function () awful.spawn(„sudo umount ” .. um) usb_update() end))
                                    end
                            end
                            return str
                    end
                   
                    function sdb()
                            local str = „”
                            for line in l do
                                    if line:find(‘sdb’) ~= nil then
                                            local form = string.gsub(line, „(%C+)%s+(%w+)%s+(%w+)%s+(%w+)%s+(%C+)%s+/(%w+)/(%w+)”, „%7: %3/%2 – %5”)
                                            local um = string.match(line, „/media/%w+”, 30)
                                            str = ” | ” .. form .. „”
                                            sdb_usage:mouse_add(mouse({ }, 3, function () awful.spawn(„sudo umount ” .. um) usb_update() end))
                                    end
                            end
                            return str
                    end
            sda_usage.text = sda()
            sdb_usage.text = sdb()
            end

            Lefut, de az „sdb()” már nem kap értéket, szerintem bezárja a fájlt(df-et), mert ha megcserélem az utolsó sorokat és elöszőr az „sdb()” fut, akkor az kap értéket és az „sda()” nem, viszont mindkettő lefut, mert ha berakok a végükre egy print-et, akkor kiírja őket.
            Plusz ha az „sda_usage.text = sda()” elé berakok egy „df:close()”-ot, akkor a logba folyamatosan írja, hogy „file is alredy closed”, de miért zárja be önkéntesen?

            Azt is próbáltam, hogy egy külön funkcióba az „os.execute”-al beleírja a „df -h” kimenetét egy fájlba és azt olvastatom be, de akkor is ugyanez volt.
            Bár most, hogy így mondtad nem tudom miért nem az mtab-ot vagy a /proc/mounts-ot figyeltem, na mindegy, a probléma akkor is fennállna.

            Hozzászólás: awesome ablakkezelő #2147257
            birno
            Felhasználó

              Egy kis mocp para:

              Code:
              W: awesome: markup_parse:175: unable to parse text „Arcturus – La Masquerade Infernale (Valle & Hellhammer Reconstruction)(02:19/02:24) | „: Error on line 1: Character ‘ ‘ is not valid at the start of an entity name; the & character begins an entity; if this ampersand isn’t supposed to be an entity, escape it as &

              Az általam régebben használt megoldásnál is ugyanez van, nem szereti a „&” karaktert.

              Amúgy te használsz valamilyen usb figyelő funkciót?
              Olyasmit amivel egy usb eszköz lemez használatát lehet kiíratni egy widgetbe, ha épp fel van mountolva. 

              Hozzászólás: awesome ablakkezelő #2147258
              birno
              Felhasználó

                Egy kis mocp para:

                Code:
                W: awesome: markup_parse:175: unable to parse text „Arcturus – La Masquerade Infernale (Valle & Hellhammer Reconstruction)(02:19/02:24) | „: Error on line 1: Character ‘ ‘ is not valid at the start of an entity name; the & character begins an entity; if this ampersand isn’t supposed to be an entity, escape it as &

                Az általam régebben használt megoldásnál is ugyanez van, nem szereti a „&” karaktert.

                Amúgy te használsz valamilyen usb figyelő funkciót?
                Olyasmit amivel egy usb eszköz lemez használatát lehet kiíratni egy widgetbe, ha épp fel van mountolva. 

                Hozzászólás: awesome ablakkezelő #2147255
                birno
                Felhasználó

                  Mindkét megoldással 5-10 között mozog, leginkább 5-8%.

                  Hozzászólás: awesome ablakkezelő #2147256
                  birno
                  Felhasználó

                    Mindkét megoldással 5-10 között mozog, leginkább 5-8%.

                    Hozzászólás: awesome ablakkezelő #2147253
                    birno
                    Felhasználó
                      uzsolt wrote:
                      Erre gondolsz? Te meg kettő progit hívsz másodpercenként: a mocp-t ill. a grep-et 😛
                      Csomó szűrés? Egy pillanat alatt megvan. A grep azért egy „kicsit” nagy program, amit mindig el kell indítanod, és van benne egy nagy rakás „felesleges” lehetőség, amit ekkor úgysem használsz ki.

                      Ott a pont. 🙂
                      Kíváncsi leszek, éjszaka ha hazaértem még gyorsan kipróbálom.

                      Hozzászólás: awesome ablakkezelő #2147254
                      birno
                      Felhasználó
                        uzsolt wrote:
                        Erre gondolsz? Te meg kettő progit hívsz másodpercenként: a mocp-t ill. a grep-et 😛
                        Csomó szűrés? Egy pillanat alatt megvan. A grep azért egy „kicsit” nagy program, amit mindig el kell indítanod, és van benne egy nagy rakás „felesleges” lehetőség, amit ekkor úgysem használsz ki.

                        Ott a pont. 🙂
                        Kíváncsi leszek, éjszaka ha hazaértem még gyorsan kipróbálom.

                      10 bejegyzés megtekintése - 221-230 / 1,711