суббота, 23 мая 2015 г.

Как сделать screenshot в Linux


Для снятия скриншотов в Windows я пользуюсь программой Lightshot, мне требуется всего 2 сценария, снять скриншот окна целиком, для этого в windows если сочетание Alt + PrtScr, и выделенной области, для чего и служит программа lightshot.


Как же добиться такого же поведения в Linux?


Оказывается Lightshot прекрасно работает под wine. Отлично. Его и будем использовать.

Первое, создадим скрипт, назовем его lightshot.sh:
#!/bin/sh

wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Skillbrains/lightshot/Lightshot.exe

Второе, добавим на него hotkey: сделаем это через xbindkeys

Запустим
xbindkeys -k
и нажмем PrtScr
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
    m:0x10 + c:107
    Mod2 + Print

Мы получили коды для клавиши, назначим на них скрипт, открываем ~/.xbindkeysrc и добавляем
"lightshot.sh"
    m:0x10 + c:107
    Mod2 + Print

Готово.

Для Ctrl + PrtScr(ctrl нажимать удобнее чем atl) поступим аналогичным образом, но будем использовать команду import из пакета imagemagick.
#!/bin/sh

import -window `xwininfo |grep 'Window id:' |cut -d" " -f4` ~/scr/"screen_$(date '+%Y-%m-%d_%H-%M-%S').jpg"

Запускаем xbindkeys -k, нажимаем Ctrl + PrtScr и добавляем в ~/.xbindkeysrc
"screenshot_wnd.sh"
    m:0x14 + c:107
    Control+Mod2 + Print

Все, можно пользоваться, но не забываем перечитать файл  ~/.xbindkeysrc, для этого нужно просто запустить xbindkeys без параметров.

Комментариев нет :

Отправить комментарий