真棒顽皮的通知
Awesome naughty notifications
我正在基于 playerctl 为 Awesome 创建一个小部件。
当我用 awesomeclient 测试时它工作正常。
awesome-client '
local stdout = "Playing;Eurythmics;Miracle of Love;file:///home/mgaber/Workbench/awesome/stags1.7/testing/173308_26.png"
local words = {}
for w in stdout:gmatch("([^;]*)") do
print(w)
table.insert(words, w)
end
mpdstatus = words[1]
current_song = words[2]
artist = words[3]
song_art = words[4]
a,b,c = 1, 2, 3
local song_art = string.sub( song_art,8, -1)
local awful = require("awful");
local gears = require("gears")
local naughty= require("naughty");
local bubble =function(cr, w, h)
return gears.shape.infobubble(cr, w, h, 20, 10, w/2 - 30)
end
naughty.notification(
{
margin = 15,
position = "top_left",
width = 640,
height = 160,
title = mpdstatus,
text=current_song .. " By " .. artist .. a .. c,
image = song_art});
'
然而,当我将代码放入 rc.lua 时,图标没有出现,我进行了测试,我的代码按预期工作,图像文件被传递到 naughty.notification..
local function show_MPD_status()
spawn.easy_async(GET_MPD_CMD, function(stdout, _, _, _)
-- notification = naughty.notification {
naughty.notification {
margin = 10,
timeout = 5,
hover_timeout = 0.5,
width = auto,
height = auto,
title = mpdstatus,
text = current_song .. " by " .. artist,
image = artUr
}
end)
end
很棒的版本
$ awesome --version
awesome v4.3-895-g538586c17-dirty (Too long)
• Compiled against Lua 5.3.6 (running with Lua 5.3)
• API level: 4
• D-Bus support: yes
• xcb-errors support: yes
• execinfo support: yes
• xcb-randr version: 1.6
• LGI version: 0.9.2
• Transparency enabled: yes
• Custom search paths: no
我收到通知显示
“状态”
没有图像或图标的艺术家的歌曲。
谢谢
我认为这是 Lua 版本问题。我不知道具体细节,但它在 Lua 5.3 和 5.4 上运行良好 - 在 LuaJIT、Lua 5.1 和 5.2 中,你会看到同样缺乏艺术家和歌曲艺术你提。你碰巧知道你的 AwesomeWM 是针对哪个版本 Lua 编译的吗?
#! /usr/bin/env lua
print( _VERSION )
local stdout = 'Playing;Eurythmics;Miracle of Love;file:///home/mgaber/Workbench/awesome/stags1.7/testing/173308_26.png'
local words = {}
for w in stdout :gmatch( '([^;]*)' ) do
if #w > 0 then
print( w )
words [#words +1] = w
end
end
local mpdstatus = words[1] ; print( mpdstatus )
local current_song = words[2] ; print( current_song )
local artist = words[3] ; print( artist )
local song_art = words[4] :sub( 8 ) ; print( song_art )
local awful = require('awful')
local gears = require('gears')
local naughty = require('naughty')
local bubble = function( cr, w, h )
return gears .shape .infobubble( cr, w, h, 20, 10, w /2 -30 )
end
naughty .notification( {
margin = 15,
position = 'top_left',
width = 640,
height = 160,
title = mpdstatus,
text = current_song ..' By ' ..artist,
image = song_art } )
编辑:
它在您的单词列表中放置的条目比预期的要多。过滤掉空白条目。
我终于设法解决了这个问题。
问题是由塑造通知的 Widget 模板引起的并且配置错误,删除模板修复它
我正在基于 playerctl 为 Awesome 创建一个小部件。 当我用 awesomeclient 测试时它工作正常。
awesome-client '
local stdout = "Playing;Eurythmics;Miracle of Love;file:///home/mgaber/Workbench/awesome/stags1.7/testing/173308_26.png"
local words = {}
for w in stdout:gmatch("([^;]*)") do
print(w)
table.insert(words, w)
end
mpdstatus = words[1]
current_song = words[2]
artist = words[3]
song_art = words[4]
a,b,c = 1, 2, 3
local song_art = string.sub( song_art,8, -1)
local awful = require("awful");
local gears = require("gears")
local naughty= require("naughty");
local bubble =function(cr, w, h)
return gears.shape.infobubble(cr, w, h, 20, 10, w/2 - 30)
end
naughty.notification(
{
margin = 15,
position = "top_left",
width = 640,
height = 160,
title = mpdstatus,
text=current_song .. " By " .. artist .. a .. c,
image = song_art});
'
然而,当我将代码放入 rc.lua 时,图标没有出现,我进行了测试,我的代码按预期工作,图像文件被传递到 naughty.notification..
local function show_MPD_status()
spawn.easy_async(GET_MPD_CMD, function(stdout, _, _, _)
-- notification = naughty.notification {
naughty.notification {
margin = 10,
timeout = 5,
hover_timeout = 0.5,
width = auto,
height = auto,
title = mpdstatus,
text = current_song .. " by " .. artist,
image = artUr
}
end)
end
很棒的版本
$ awesome --version
awesome v4.3-895-g538586c17-dirty (Too long)
• Compiled against Lua 5.3.6 (running with Lua 5.3)
• API level: 4
• D-Bus support: yes
• xcb-errors support: yes
• execinfo support: yes
• xcb-randr version: 1.6
• LGI version: 0.9.2
• Transparency enabled: yes
• Custom search paths: no
我收到通知显示 “状态” 没有图像或图标的艺术家的歌曲。
谢谢
我认为这是 Lua 版本问题。我不知道具体细节,但它在 Lua 5.3 和 5.4 上运行良好 - 在 LuaJIT、Lua 5.1 和 5.2 中,你会看到同样缺乏艺术家和歌曲艺术你提。你碰巧知道你的 AwesomeWM 是针对哪个版本 Lua 编译的吗?
#! /usr/bin/env lua
print( _VERSION )
local stdout = 'Playing;Eurythmics;Miracle of Love;file:///home/mgaber/Workbench/awesome/stags1.7/testing/173308_26.png'
local words = {}
for w in stdout :gmatch( '([^;]*)' ) do
if #w > 0 then
print( w )
words [#words +1] = w
end
end
local mpdstatus = words[1] ; print( mpdstatus )
local current_song = words[2] ; print( current_song )
local artist = words[3] ; print( artist )
local song_art = words[4] :sub( 8 ) ; print( song_art )
local awful = require('awful')
local gears = require('gears')
local naughty = require('naughty')
local bubble = function( cr, w, h )
return gears .shape .infobubble( cr, w, h, 20, 10, w /2 -30 )
end
naughty .notification( {
margin = 15,
position = 'top_left',
width = 640,
height = 160,
title = mpdstatus,
text = current_song ..' By ' ..artist,
image = song_art } )
编辑:
它在您的单词列表中放置的条目比预期的要多。过滤掉空白条目。
我终于设法解决了这个问题。 问题是由塑造通知的 Widget 模板引起的并且配置错误,删除模板修复它