如何在Ubuntu 18.04上将截图应用程序更改为Flameshot?

我需要在我的截图中突出显示一些文本,但是我不知道如何使用默认的截图应用程序来实现。 Flameshot 是一个解决方案。我已经安装了它。
我该如何替换 PrtScr 快捷键,以便启动 Flameshot?

1你应该将第二句话以后的内容剪切出来,作为一个回答发布,并从问题中删除它,以保持问答的格式。 - dsSTORM
由于Ask Ubuntu是一个问答网站,你应该像@dsSTORM所说的那样单独发布答案。我已经从问题中删除了答案部分,但你可以在这里找到它。请在下面的“你的答案”部分发布答案。自己回答自己的问题完全没问题。 - pomsky
11个回答

如果你需要或想要更改 PrtScr 快捷键,请按照以下步骤操作:
  1. 通过以下命令取消绑定 PrtScr
  2. gsettings set org.gnome.settings-daemon.plugins.media-keys screenshot '[]'
    
  3. 进入 设置 -> 设备 -> 键盘,滚动到底部。按下 + 即可创建自定义快捷方式。
    Ubuntu 18.04中的自定义快捷方式
  4. 输入名称: "flameshot",命令: /usr/bin/flameshot gui/snap/bin/flameshot
  5. 将快捷键设置为 PrtScr(打印)。

就是这样。下次你按下 PrtScr 键,flameshot 就会启动。


来源: 由提问者在问题中发布,本应该作为答案发布。


2你需要在''内部加上[],所以应该是'[]'。否则这将被接受为正确答案。 - Khongor Bayarsaikhan
7适用于Ubuntu 20.04 - 43Tesseracts
3如果它是作为一个快照安装的,只需将命令设置为 flameshot gui(不带路径)。 - Niclas Lindgren
3奇怪的是,Flameshot有很多键盘快捷方式的配置选项,除了最重要的那一个。 - Coder Guy
我在我的PopOS 21.04上工作。谢谢! - Akhil
1根据你安装Flameshot的方式,检查路径。如果是通过Snapshot安装的话,路径应该是/snap/bin/flameshot。 - Andrea Moro
1对我来说效果不错,只是我使用的是Snap,所以我必须使用/snap/bin/flameshot gui命令,而且在设置中找到该选项的方式与这里描述的有些不同,因为我使用的是Ubuntu 21.10。但是并不难找到。 - Matt Welke
@niclas-lindgren 谢谢你! - ame
1如果您使用的是Flatpak版本,命令是: flatpak run org.flameshot.Flameshot gui - Tyler C

通过终端安装和设置flameshot ...如果没有配置custom0快捷键/绑定 安装flameshot:
sudo apt install flameshot

通过以下命令解除 PrtScr 绑定:
Ubuntu 19.10(感谢 @jobou 的评论)
gsettings set org.gnome.settings-daemon.plugins.media-keys screenshot '[]'

旧版本的Ubuntu:

gsettings set org.gnome.settings-daemon.plugins.media-keys screenshot ''

设置新的自定义绑定:

gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/']"

设置名称:

gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ name 'flameshot'

设置命令:
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ command '/usr/bin/flameshot gui'

设置绑定:

gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ binding 'Print'

4еЬ®Ubuntu 19.10дЄКпЉМжИСйЬАи¶БдљњзФ®дї•дЄЛеСљдї§gsettings set org.gnome.settings-daemon.plugins.media-keys screenshot '[]'жЭ•йЗКжФЊPtrScrзїСеЃЪгАВ - jobou
这在 Fedora 31 上运行成功了! - Rocky Kev
在Ubuntu 20.04上工作过。 - 43Tesseracts
适用于 Elementary OS Hera 5.1 - naim5am
完美运行 - Vladimir Kovalchuk
1这是Linux的答案,只有命令,不需要点击,有效。 - questionto42
3在Ubuntu 22.04上,绑定好像已经移动了。运行命令:gsettings set org.gnome.shell.keybindings show-screenshot-ui '[]' - CivMeierFan
你能否也为备用截屏模式 <Shift>Print<Alt>Print 添加支持? - CivMeierFan

如果您是通过snapcraft.io安装Flameshot而不是通过标准的sudo apt install flameshot安装的话,那么路径/usr/bin/flameshot gui将无法使用,因为路径是不同的。
首先,在Ubuntu 18.04及更高版本中运行命令type flameshot。这将显示应用程序安装的路径。
复制此路径。
按下Super键并搜索键盘快捷方式。
找到单词"screenshot"。 see this example 编辑它(在我的情况下,我分配了Shift+Ctrl+Alt+~,因为我从未使用过这个组合键)。
然后返回,点击+符号,并将您复制的路径添加到命令中。 and see this example

which也可以像type一样工作,但它不会告诉你它是否是一个终端命令。 - mekb

这在Ubuntu 20.04上进行了测试

  1. 通过打开键盘快捷键设置来禁用 PrtScrPrint 快捷键。

  2. 在左下角菜单中导航到键盘快捷键,然后选择Print 快捷键,即保存屏幕截图到图片

    keyboard shortcuts dialog

  3. 按下 Backspace 键来禁用当前的键盘快捷键,以便稍后使用 Flameshot。

  4. 点击 Set 来应用/确认更改。

    enter image description here

  5. 使用 which 命令找到 Flameshot 的二进制文件位置。

    $ which flameshot
    /usr/bin/flameshot
    
  6. 然后,向下滚动到底部,选择+符号以添加新的快捷键。

    enter image description here

  7. 添加自定义快捷键

    • 名称:Flameshot
    • 命令:/usr/bin/flameshot gui
    • 快捷键:Print

    enter image description here

就是这样


同样在Ubuntu 22.04上验证通过 - Christian Wilkie
@ChristianWilkie 在22.04版本中,你可以直接添加快捷方式,它会要求禁用“旧”的绑定。 - Rob Audenaerde

或者只需将任何快捷键(包括 PrtScr)设置为 flameshot gui:如其他答案所示,无需进行任何其他设置。至少在 Xfce 中会询问您是否要重新映射该键(但我猜在大多数桌面环境中都是一样的)。
您可以考虑保留 PrtScr 作为默认的截图工具,并使用其他快捷键来使用 flameshot,至少两个,因为您还可以进行延迟截屏:例如,使用 flameshot gui -d 5000 进行5秒延迟截屏。
更多信息请点击这里

  1. 打开系统设置应用并选择设备,然后进入键盘
  2. 向下滚动到截图。选择将截图保存到图片中,然后点击删除以禁用快捷方式。
  3. 然后滚动到底部并点击加号按钮。在这里,给它起一个名字,并输入您想要绑定到快捷方式的Flameshot命令。
  4. 然后将快捷方式设置为Print Screen,并在命令类型中输入flameshot gui

完成了。


Ubuntu 20.04:

  1. 取消 PrtScr 的键盘快捷键:

    设置 -> 键盘快捷键 -> 点击 将截图保存到图片文件夹 -> 按下 Backspace 来取消指定。

  2. PrtScr 分配给 Flameshot:

    点击+ 图标 -> 名称:Flameshot -> 命令:flameshot GUI -> 设置快捷键 -> 按下 PrtScr -> 点击添加进行保存。


在Pop!_OS 22.04上的操作步骤:

  1. 进入设置 -> 键盘 -> 键盘快捷方式 -> 查看和自定义快捷方式。

  2. 搜索“截图”,移除“交互式截图”。

    配置

  3. 在同一窗口中,搜索自定义快捷方式 -> 添加(+图标) -> 设置以下配置:

Flameshot截图 /usr/bin/flameshot GUI 打印(或您想要配置的按键)

enter image description here


这是一个已接受答案的副本。 - Marc Vanhoomissen

对于那些通过FlatPak安装的用户,这里有一个更新。绑定到快捷键的二进制命令是:
/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=/app/bin/flameshot org.flameshot.Flameshot gui --delay 500

至少,在Ubuntu Jammy/Mint Vera x86_64上是这样的。
我通过检查位于/var/lib/flatpak/exports/share/applications的.desktop文件找到了该命令。
egrep ^Exec.*gui /var/lib/flatpak/exports/share/applications/org.flameshot.Flameshot.desktop

在Exec=行之后接收命令。

只是对其他人已经写过的解决方案进行更新。 如果你做了一切正确的事情,但按下“Print Screen”按钮时仍然没有任何反应,请再次检查是否通过snap安装了flameshot。如果是这样的话,命令会有些不同:
/snap/bin/flameshot gui

要找到您的Flameshot准确位置路径,请在终端中输入。
type flameshot

你应该能够看到要使用的可执行文件的确切路径作为命令(只需在其后面添加额外的gui关键字)。 希望这有所帮助。
祝好!