在 AWesome WM 中打印屏幕

在 AWesome WM 中打印屏幕

我正在尝试使用 Awesome WM 中的 PrintScrn 按钮进行屏幕截图。我发现了一个Wiki 中带有键绑定的 ImageMagick 脚本,但我无法让它工作。如果我在命令行中调用它,脚本就会工作。我无法理解的是键绑定到底应该对脚本做什么。摘自 Wiki:

脚本:

 #!/bin/bash
 timestamp="$(date +%Y%m%d%H%M%S)"
 targetbase="$HOME/capscr"
 mkdir -p $targetbase
 [ -d $targetbase ] || exit 1
 import -window root $targetbase/$timestamp.png

键绑定:

 -- bind PrintScrn to capture a screen
  awful.key(
     {},
     "Print",
     function()
         awful.util.spawn("capscr",false)
    end
  )

我假设 Lua 代码中的“capscr”正在调用脚本?(脚本以相同的名称保存在我的 /home 文件夹中;具体来说是 ~/.bin,就像 Wiki 中说的那样)。如果不是,我是否需要对脚本和/或 Lua 代码和/或 ??? 执行其他操作,以使两者互相可见?我还尝试将脚本的路径放入代码中以查看是否有效,但没有任何效果。

答案1

首先你需要让它可执行。然后将其移动到 /bin 目录(你需要 root 权限):

$chmod +x capscr
$sudo mv ./capsrc /bin

我还建议您编辑 capscr 文件,例如我的:

#!/bin/bash
timestamp="$(date +%d.%m.%Y"_shot_"%H:%M:%S)"
targetbase="$HOME/Pictures/screenshots"
mkdir -p $targetbase
[ -d $targetbase ] || exit 1
import -window root -quality 98 $targetbase/$timestamp.png

相关内容