Запобігання заставки, коли спалах працює в Linux


4

Я уявляю, що моя проблема не характерна для моїх обставин, і я маю її вже деякий час.

Я запускаю Arch Linux і досить часто переглядаю відеоролики, зокрема спалахи, на повноекранному екрані. Однак з часом з'являється заставка і починає затемнювати екран. У мене встановлена ​​заставка для роботи, коли комп'ютер працює в режимі очікування. Хтось знає спосіб до будь-якого

  • Зупинити заставки не з’являтися під час спалаху чи перегляду іншого відео?
  • Зупинити показ заставки при повноекранному екрані флеш-відео чи звичайного відео? Чорт, навіть ...
  • Нехай заставка знає, що моя машина не працює в режимі очікування під час перегляду спалаху.

Відповіді:


2

Заставку можна відключити, запустивши xset s off.

Увімкніть це ще раз, написавши xset s 5, де 5 - це кількість секунд, що потрібно заставки, щоб повернутися.

Якщо ви хочете написати сценарій, ви можете спробувати зробити щось подібне:

#!/bin/bash
# Wrapper around the main body to facilitate being run
# from a startup file like .xinitrc, ~/.config/autostart, ...

while :; do
    if pgrep xscreensaver >/dev/null; then
        METHOD="xscreensaver"
        pkill xscreensaver
    else
        METHOD="xset"
        xset s off
    fi

    # If you want to be really fancy:
    ## notify-send "Screensaver Disabled" $"The Flash plugin is running"

    while ps ax | grep libflashplayer.so >/dev/null; do
          sleep 1 # Sleep while waiting for Flash to exit
    done

    if [ "$METHOD" = "xscreensaver" ]; then
        xscreensaver &
    else
        xset s 30
    fi

    # If you want to be really fancy:
    ## notify-send "Screensaver Enabled" $"The Flash plugin has exited"

    sleep 30
done

На прохання @ snapfractalpop, короткий посібник із використання:

  1. Помістіть це десь у вашому домашньому каталозі - це не має значення. Можливо, ви хочете скласти ~/binкаталог, якщо у вас вже немає ніде для персональних сценаріїв. Для цього пояснення я припускаю, що ви його виклали ~/bin/youtube-scrn-svr.sh.

  2. chmod +x ~/bin/youtube-scrn-svr.sh або зробити його виконаним якимось іншим способом.

  3. Припустимо, що ваш DE є одним із поширених (XFCE, GNOME та KDE може завантажувати сценарії таким чином), створіть файл, який називається, ~/.config/autostart/flash-screensaver.desktopі додайте до нього наступне.

    [Desktop Entry]
    Name=Flash Screensaver Disabler
    Exec=/home/WHATEVER_YOUR_USERNAME_IS/bin/youtube-scrn-svr.sh
    Terminal=false
    Categories=Network;
    StartupNotify=false
    
  4. Спробуйте вийти із системи та перегляньте відповідне довге відео та перевірте, чи заставку екрана включено.


1
if [ "$(pgrep xscreensaver)" ];if pgrep xscreensaver;. Просто говорю'.
grawity

@grawity Спасибі за підказку - я більше звик до Tcl та C, тому додатковий синтаксис відчуває себе трохи природніше.
new123456

Чи можете ви трохи розібратися в цьому? Куди йде цей сценарій? Чи потрібно вручну запускати його щоразу, коли вони переглядають відео на YouTube, яке триває більше 5 хвилин? Чому це не спрацьовує?
snapfractalpop

1
@snapfractalpop Спробуйте зараз. Внизу є доданий розділ, де пояснюється, як найкраще його використовувати.
new123456

Це має бути найбільш стереотипно надто розробленою відповіддю на питання "як" про Linux. Де я проголосую за це в залі слави?
Марк Е. Хааз

0

Ви перевірили це: https://bbs.archlinux.org/viewtopic.php?id=130447

Я зробив це деякий час тому і хочу поділитися. Це сценарій Bash, який перевіряє, коли ви переглядаєте повноекранний екран відео в Firefox та Chromium і запобігає активації заставки та DPMS (вимикає екран).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.