Voglio fare uno screenshot di un intero desktop con la selezione del menu Applicazioni. Come fare?
Voglio fare uno screenshot di un intero desktop con la selezione del menu Applicazioni. Come fare?
Risposte:
In realtà, è possibile farlo senza indugio, ma con alcuni hack invece. Ho scritto una piccola sceneggiatura che ti permetterà di farlo senza indugio. Questo è un grande trucco, ma funziona ed è sicuramente (per me) più preferibile che usare il ritardo.
#!/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
Prima di poter effettivamente utilizzare lo script (su Ubuntu), è necessario assicurarsi di avere xinput e unbuffer . Per farlo semplicemente fai:
sudo apt-get install xinput expect-dev
Quindi puoi eseguire lo script. Eseguilo prima con l'opzione -h per vedere le possibili opzioni di configurazione. Per impostazione predefinita, lo script funzionerà solo una volta e dovrai riavviare lo script dopo ogni schermata (ad esempio tramite una scorciatoia da tastiera). Questo perché lo script potrebbe avere un impatto sulle prestazioni. Se vuoi eseguirlo come un "demone" eseguilo con l' -d
opzione.
Per impostazione predefinita utilizzerà anche l'otturatore. Se vuoi usare qualcos'altro, usa l' -e
opzione, ad esscript.sh -c "ksnapshot"
Per impostazione predefinita, il pulsante di acquisizione sarà Meta+ R. puoi cambiarlo con le opzioni di configurazione.
Dal momento che ti chiedevi se fosse possibile anche con Shutter ...
Per farlo in Otturatore , aprilo e seleziona Schermo intero dalla barra degli strumenti o da File > Nuovo > Schermo intero .
Assicurati di avere un ritardo impostato in modo da avere abbastanza tempo per aprire il menu Applicazioni ( Modifica > Preferenze > scheda Principale ; in fondo, c'è una casella di selezione: Cattura dopo un ritardo di __ secondi ).
( per utenti ubuntu medio-avanzati )
gnome-screenshot --delay=numIntValueInSecs
gnome-screenshot --delay=3
Aggiungine un altro per acquisire screenshot attivi della finestra:
gnome-screenshot -w --delay=3
Questo è tutto , ma ti consiglio anche di impostarne altri 2 che ti darebbero più tempo per navigare più a fondo nei menu.
gnome-screenshot --delay=10
gnome-screenshot -w --delay=10
( principiante all'hacker )
Ogni volta che premi PrntScr, tutto ciò che Ubuntu fa è chiamare gnome-screenshot
che di solito si trova sul /usr/bin/
percorso e disponibile dal "terminale" (teletype, tty, cli, riga di comando / prompt), quindi puoi usarlo in tutti i modi per adattare il tuo funky scopi.
Il gnome-screenshot
piccolo programma accetta parametri opzionali, puoi vedere tutte le opzioni passando il parametro standard per chiedere aiuto, conosci quello ( -h
)
Se non sei ancora sicuro di come utilizzarlo, puoi sempre leggere un aiuto più dettagliato, basta chiedere la digitazione manuale man gnome-screenshot
Più leggi i manuali completi, hackerare Ubuntu per soddisfare le tue esigenze diventerà intuitivo e non avrai bisogno di altre persone per darti istruzioni dettagliate. Forse a questo punto sai anche come risolvere questo problema da solo, se sei ancora perso (speriamo di no), continua a leggere ...
Adesso
Shortcuts
scheda.Custom Shortcuts
+
pulsante per aggiungere il tuo nuovo collegamento personalizzato.*presto!
Hai appena fatto un ulteriore passo per diventare un maestro Ubuntu, spero che questa risposta sia stata utile *
Ho trovato una soluzione per questo, non una soluzione reale.
Aprire l' Screenshot
applicazione, nella finestra aperta, impostare un tempo come Afferrare dopo un ritardo di x secondi .
Nota: Siamo spiacenti, non è anche possibile prendere lo screenshot dell'applicazione Screenshot stessa come una finestra o afferrare una porzione specifica.