Salvando o trabalho automaticamente quando a bateria está fraca

1

Eu sou escritor e, claro, às vezes perco meu trabalho se a bateria acabar. Eu estou procurando sugestões de maneiras de economizar quando a bateria chega a 5% ou 1%. Talvez um comando bash escrito para salvar documentos de texto e Libra em uma determinada porcentagem de bateria? Obrigado!

    
por simetra 19.04.2016 / 13:57

2 respostas

4

Eu posso pensar em dois métodos fáceis para isso

1) Preste atenção na porcentagem da bateria?
2) Use o recurso de gravação automática do Libre Office. A imagem abaixo mostra a localização da configuração no menu de opções:

    
por Android Dev 19.04.2016 / 14:14
2

Um script em Python:

#!/usr/bin/env python

import subprocess

apps_to_save = ['Gedit', 'Writer']

battery_limit = 10  # in percent

def get_battery_percentage():

    percentage, err = subprocess.Popen([r'upower -i $(upower -e | grep BAT) | grep --color=never -E percentage | xargs | cut -d ' ' -f2 | sed s/%//
'], shell=True, stdout=subprocess.PIPE).communicate()

    return(int(percentage))

while True:

    if get_battery_percentage() <= battery_limit:

        for app in apps_to_save:

            app_window_ids = subprocess.Popen(['xdotool', 'search', '--class', app],
            stdout=subprocess.PIPE)

            out, err = app_window_ids.communicate()

            for app_window_id in out.splitlines():

                subprocess.Popen(['xdotool', 'windowactivate', app_window_id,
                ';', 'xdotool', 'key', 'ctrl+s'], shell=True)

Por padrão, ele salva todas as janelas do Gedit e do LibreOffice Writer quando a bateria atinge 10%.

Você pode adicionar itens à lista apps_to_save modificando essa linha como:

apps_to_save = ['Gedit', 'Writer', 'SomeOtherApp']

E altere o battery_limit para qualquer porcentagem que você deseja salvar. (Mas não adicione um sinal % - apenas o número)

Também seria trivial transformar isso em algo que economize a cada dez minutos, independentemente da porcentagem de bateria.

    
por UniversallyUniqueID 30.04.2016 / 20:17