我想使用``应用程序菜单''选择来拍摄整个桌面的屏幕截图。
我想使用``应用程序菜单''选择来拍摄整个桌面的屏幕截图。
Answers:
其实,这是可以做到这一点没有延迟,但也有一些黑客来代替。我写了一个小脚本,可以让您立即进行操作。这是一个大技巧,但是它可以工作,并且(对我而言)当然比使用延迟更可取。
#!/bin/bash
######################################################################################
# Simple script to enable users to make screenshots of tooltips/menus/etc... #
# without timers #
######################################################################################
######################################################################################
# Configuration Section (defaults) #
######################################################################################
SCREENSHOT_COMMAND="shutter -s"
# The keys can be found out using xinput test "keyboard name"
MODIFIER_KEY=133 #The <Super> Key (aka. Meta or Windows Key)f
CANCEL_KEY=54 # C
CAPTURE_KEY=27 # R
DAEMON_MODE="false" # change to true if you want to keep the script running after the screenshot was taken
VERBOSE="true" #Change this to any value if you dont want to have notifications
######################################################################################
######################################################################################
# Command parsing #
######################################################################################
function usage {
echo "$0 [-hemrcdn]"
echo "-h prints this message"
echo "-e <command> - execute that command instead of shutter"
echo "-m <int> - The modifier key to use. Use xinput test <keyboar> to find out what is what"
echo "-r <int> - The key to use for capture."
echo "-c <int> - The key used for cancelling (only valid in non daemon mode)"
echo "-d - daemon mode. Will keep on running after a screenshot was taken. to kill the daemon, use \"killall xinput\""
echo "-n - disables notifications"
exit;
}
while getopts "he:m:r:c:dn" flag
do
if [ "$flag" == "h" ]; then
usage
fi
if [ "$flag" == "e" ]; then
SCREENSHOT_COMMAND=$OPTARG
fi
if [ "$flag" == "m" ]; then
CAPTURE_KEY=$OPTARG
fi
if [ "$flag" == "r" ]; then
SCREENSHOT_COMMAND=$OPTARG
fi
if [ "$flag" == "c" ]; then
CANCEL_KEY=$OPTARG
fi
if [ "$flag" == "d" ]; then
DAEMON_MODE="true"
fi
if [ "$flag" == "n" ]; then
VERBOSE="false"
fi
done
######################################################################################
KEYBOARDS=`xinput list | grep "slave" | grep "keyboard" | sed "s/[^a-zA-Z]*\(.*\)id=.*/\1/" | sed "s/[\t ]*$//"`
function run {
MODIFIER_PRESSED="false"
while read line;
do
COMMAND=`echo $line | awk '{print $2;}'`
KEY=`echo $line | awk '{print $3;}'`
if [ "$KEY" == "$MODIFIER_KEY" ]; then
if [ "$COMMAND" == "press" ]; then
MODIFIER_PRESSED="true"
else
MODIFIER_PRESSED="false"
fi
fi
if [ "$KEY" == "$CAPTURE_KEY" -a "$MODIFIER_PRESSED" == "true" -a "$COMMAND" == "press" ]; then
bash -c $SCREENSHOT_COMMAND
if [ "$VERBOSE" == "true" ]; then
notify-send "Taking Screenshot"
fi
if [ "$DAEMON_MODE" == "false" ]; then
quit
fi
fi
if [ "$KEY" == "$CANCEL_KEY" -a "$MODIFIER_PRESSED" == "true" -a "$COMMAND" == "press" -a "$DAEMON_MODE" == "false" ]; then
if [ "$VERBOSE" == "true" ]; then
notify-send "Canceling Screenshot"
fi
quit
fi
done;
}
function quit {
killall -9 xinput
exit
}
if [ "$VERBOSE" == "true" ]; then
notify-send "Screenshot script waiting. Press Meta + R to capture the screenshot"
fi
IFS=$'\n'
for i in $KEYBOARDS
do
unbuffer xinput test "$i" | run &
done
在实际使用脚本(在ubuntu上)之前,需要确保您具有xinput和unbuffer。为此,只需执行以下操作:
sudo apt-get install xinput expect-dev
然后,您可以运行脚本。首先使用-h选项运行它,以查看可能的配置选项。默认情况下,该脚本只能运行一次,并且您必须在每个屏幕截图之后重新启动脚本(例如,通过键盘快捷键)。这是因为脚本可能会影响性能。如果要将其作为“守护程序”运行,请使用-d
选项运行它。
默认情况下,它也会使用快门。如果要使用其他-e
选项,请使用选项,例如script.sh -c "ksnapshot"
默认情况下,捕获按钮将为Meta+ R。您可以使用配置选项进行更改。
(适用于中高级ubuntu用户)
gnome-screenshot --delay=numIntValueInSecs
gnome-screenshot --delay=3
添加另一个以获取活动的窗口截图:
gnome-screenshot -w --delay=3
就是这样,但我还建议您设置2个其他菜单,这将给您更多时间浏览菜单。
gnome-screenshot --delay=10
gnome-screenshot -w --delay=10
(黑客新手)
每当您按时PrntScr,Ubuntu所做的全部工作就是调用gnome-screenshot
,通常位于/usr/bin/
路径上,并且可以从“终端”(teletype,tty,cli,命令行/提示符)访问,因此您可以通过各种方式使用它以适应您的时髦需求目的。
这个gnome-screenshot
小程序接受可选参数,您可以通过传递标准参数来寻求帮助来查看所有选项,您知道一个(-h
)
如果您仍然不确定如何使用此功能,可以随时阅读更详细的帮助,只需手动输入 man gnome-screenshot
您阅读了更多的完整手册后,可以轻松地找到符合您需求的ubuntu黑客,而您也不需要其他人来逐步指导您。也许到此为止,您甚至都知道如何自行解决此问题,如果您仍然迷路(希望不会迷路),请继续阅读...
现在
Shortcuts
标签。Custom Shortcuts
+
按钮添加新的自定义快捷方式。*保存!
您刚刚迈出了成为ubuntu大师的第一步,希望这个答案对您有所帮助*