Sum*_*ukh 10 nautilus shortcut-keys
我已经设置了一个Nautilus 脚本。我已经把脚本放进去了/home/sumeet/.local/share/nautilus/scripts,它确实出现在右键菜单中。并且也按预期工作。我只想为脚本分配一个快捷方式。
上面问题中给出的答案针对特定版本并且已经完全过时,除了这个问题之外,我找不到关于该主题的任何其他内容。
当您右键单击 nautilus 脚本的文件或文件夹时,所选文件将作为参数传递给脚本。在大多数情况下,通过以下方式:
import os
subject = os.getenv("NAUTILUS_SCRIPT_CURRENT_URI")
Run Code Online (Sandbox Code Playgroud)
...以最简单的形式使用python3。
如果您将其替换为:
import pyperclip
subprocess.call(["xdotool", "key", "Control_L+c"])
subject = pyperclip.paste()
Run Code Online (Sandbox Code Playgroud)
...当前选定的文件在脚本中用作参数
要使用此解决方案(16.04 及更高版本),您需要同时安装xdotool和python3-pyperclip:
sudo apt-get install python3-pyperclip xdotool
Run Code Online (Sandbox Code Playgroud)
然后变成:
sudo apt-get install python3-pyperclip xdotool
Run Code Online (Sandbox Code Playgroud)
添加这一个快捷键,可以将图标的所有目录中选定一个。
添加快捷键、运行(使用 - 的脚本)xdotool命令以按下另一个组合键可能会很棘手。为防止两个组合键相互干扰,请使用:
/bin/bash -c "sleep 1 && python3 /path/to/script.py"
Run Code Online (Sandbox Code Playgroud)
在选择文件时按下Ctrl+C时,文件路径将复制到剪贴板。我们正在模拟按键按下:
subprocess.call(["xdotool", "key", "Control_L+c"])
Run Code Online (Sandbox Code Playgroud)
python的pyperclip模块只是生成路径,file://在使用时被删除pyperclip.paste()(这不会直接粘贴,而是使路径在脚本内可用)。
| 归档时间: |
|
| 查看次数: |
788 次 |
| 最近记录: |