sábado, 7 de agosto de 2021

Controlando o brilho pelo teclado em notebook no GNU/Linux


Em algumas distribuições ou versões do GNU/Linux, o ajuste do brilho usando a tecla "FN" mais tecla de "Brilho sobe" e "Brilho desce", pode não funcionar nativamente com alguns notebooks, mas mesmo que elas não funcione nativamente deste que os arquivos actual_brightness,  bl_power,  brightness,  device,  max_brightness,  power/,  subsystem,  type, e uevent existirem com o seus valores referente ao brilho a partir do diretório /sys/class/backlight/ onde o caminho completo varia conforme o driver utilizado pelo sistema isto indica que o ajuste do brilho da tela está disponível então podemos ajustar o brilho usando o comando echo com redirecionamento do valor desejado para o arquivo ou usando o comando  xbacklight que é muito mais fácil e neste caso faremos uma associação do comando  xbacklight com as teclas "FN" "Brilho sobe" e "Brilho desce" do notebook, podendo agora fazer o ajuste via teclado pela tecla de função padrão "FN".

Vale lembrar que este procedimento somente funcionara se o driver de vídeo nativo da distro for compatível com a placa de de vídeo e monitor do notebook, mesmo que o uso da tecla FN + "combinação" não funcione nativamente, onde então podemos atribuir programas as estas teclas para executar as mesmas funções originais fazendo uma associação com as mesmas.

Conhecendo o comando de terminal xbacklight

O xbacklight pode ser utilizado numa caixa executar, executado por um arquivo .desktop automaticamente na pasta ~/.config/autostart de gerenciadores de janelas Desktop ou um arquivo para inicializar apps automaticamente utilizado por window manager sem precisar utilizar janela de terminal para isto.

Para instalar em distros Debian ou derivadas: sudo apt install xblacklight 

- Descobrir a porcentagem do brilho atual


Numa janela de terminal execute o comando xbacklight sem parâmetros, onde será exibido o valor relativo a porcentagem que está regulado o brilho, onde o valor 100% é o brilho máximo que o seu monitor está utilizando.- 

$ xbacklight 
100.000000

IMPORTANTE

Quando a utilização da tecla "FN" + teclas de brilho não funciona nativamente por default neste caso o brilho sempre estará em 100% e a configuração do brilho dependendo do app utilizando para ajustar o brilho não fica salva automaticamente, devendo refazer o ajuste do brilho  na próxima vez que o computador for ligado, onde mais adiante demostrarei como salvar a porcentagem de brilho para iniciar sempre com o mesmo valor de brilho com a utilização do xbacklight ao iniciar o seu ambiente gráfico.

- Definindo o brilho em 60%

Para isto usamos a opção -set que define o nível do brilho diretamente para o valor especificado.

$ xbacklight -set 60

Conferindo:
$ xbacklight 
59.995169

O nível do brilho que estava em 100% agora ficou em 60% (arredondamento)

- Reduzindo o nível do brilho em 10%

Utilize a opção -dec para reduzir o nível do brilho com o valor desejado, neste exemplo é -10%

$ xbacklight -dec 10

Conferindo:
$ xbacklight
49.987924

O brilho que estava em 60% foi reduzido para 50% (arredondamento)

- Aumentando o nível do brilho em 10%

Utilize sempre a opção -inc para aumentar o nível do brilho com o valor desejado, neste exemplo é +10%

$ xbacklight -inc 10

Conferindo:
$ xbacklight 
59.987119

O nível do brilho que estava antes em 50%, agora ficou novamente em 60% (arredondamento)

Para ajuda:
$ xbacklight -help

Associando o xbacklight com as teclas "FN" mais "Brilho sobe" e "Brilho desce"

O seu ambiente gráfico desktop provavelmente já tenha um app gráfico para criar teclas de atalhos para comandos e ações do sistema, mas caso não tenha, relatarei sobre o uso do xbindkeys que pode ser utilizado em qualquer ambiente desktop ou window manager.

Para instalar em distros Debian e derivadas use o comando: sudo apt install xbindkeys

Após instalado devemos criar primeiro o arquivo de configuração com o comando abaixo:

$ xbindkeys --defaults > /home/seu-user/.xbindkeysrc

Criando o atalho de teclado para diminuir o brilho (Brilho desce)

Execute o comando abaixo em uma janela de terminal e pressione simultaneamente as teclas "FN" + "Brilho desce"

$ xbindkeys -k
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.
"NoCommand"
    m:0x0 + c:232
    XF86MonBrightnessDown

Agora utilizando um editor de texto ASCII de sua preferência copie a saída do comando acima e cole no arquivo .xbindkeysrc que está oculto no seu HOME.

$ leafpad .xbindkeysrc 

Na parte "NoCommand" coloque o nome do executável do comando desejado com o seus flags caso necessário.

Exemplo:
Substitua "NoCommand" por "xbacklight -dec 10" onde será usando o xbacklight com opção reduzir em -10% ou seja toda vez que pressionar simultaneamente as teclas "FN" + "Brilho desce" será diminuído em 10% do brilho atual.
"xbacklight -dec 10"
    m:0x0 + c:232
    XF86MonBrightnessDown

Para entrar em efeito o novo atalho de teclado configurado, é necessário matar o processo atual do xbindkey e executar novamente xbindkey sem paramentos.

$ killall xbindkeys
$ xbindkeys

Criando o atalho de teclado para aumentar o brilho (Brilho sobe)

Execute o comando abaixo em uma janela de terminal e pressione simultaneamente as teclas "FN" + "Brilho sobe".

$ xbindkeys -k
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.
"NoCommand"
    m:0x0 + c:233
    XF86MonBrightnessUp

Copie a saída do comando acima e cole no arquivo .xbindkeysrc que está oculto no seu HOME.

$ leafpad .xbindkeysrc 

Substitua "NoCommand" por "xbacklight -inc 10" onde será usando o xbacklight com incremento de +10% ou seja toda vez que pressionar as teclas "FN" + "Brilho sobe" será aumentado sempre em 10% do brilho atual, até chegar ao valor máximo que é 100%.

Conteúdo parcial (as últimas linhas) do arquivo .xbindkeysrc após feita a associação das teclas.

-----corte-----

"xbacklight -dec 10"
    m:0x0 + c:232
    XF86MonBrightnessDown

"xbacklight -inc 10"
    m:0x0 + c:233
    XF86MonBrightnessUp

##################################

# End of xbindkeys configuration #

##################################


Nota:
Para que os atalhos criado com o xbindkeys funcione no próximo boot, ele deve ser sempre executado, e para fazer que ele inicie junto com o seu gerenciador de janela Desktop, basta criar um arquivo .desktop manualmente em ~/.config/autostart, ou usar a item do seu ambiente gráfico para incluir programas pra iniciar automaticamente, ou colocar em um arquivo que é utilizado pelo seu window manager para executar apps automaticamente na inicialização, onde em qualquer uma das opções citadas nunca é preciso utilizar janela de terminal na configuração, bastando somente o comando xbindkeys.


Salvando o nível de brilho do xbacklight

Para sempre utilizar o mesmo nível do brilho ao iniciar o seu ambiente gráfico preferido.

Para ambientes gráficos completos tipo Desktop

- Utilizando um editor de texto ASCII puro

Crie o arquivo  xbacklight.desktop em ~/.config/autostart/ com um editor de texto ASCII puro com o conteúdo abaixo:

[Desktop Entry]
Version=1.0
Type=Application
Comment=Salvando o ajuste de brilho da tela
Exec=xbacklight -set 40
Terminal=false

Quando você ligar o computador ou fizer logoff, o nível de brilho de 40% será carregando junto com o seu ambiente gráfico.

- Utilizando o app padrão do seu Gerenciador de janelas

Configurando programas para iniciar automaticamente no Desktop LXDE

No LXDE, acesse Menu Configurações/Aplicativos padrões do LXSession na guia Inicio automático ao lado do botão +Adicionar digite somente: xbacklight -set 40  e depois clique no botão Adicionar.

Para outros ambientes gráficos Desktop, o procedimento é similar apenas varia o caminho e o nome do app.

- Iniciando o app automaticamente em window manager

No Openbox puro coloque a linha xbacklight -set 40 no final do arquivo ~/.config/openbox/autostart.sh 

No Window Maker coloque a linha xbacklight -set 40 no final do arquivo  ~/GNUstep/Library/WindowMaker/autostart 

- Iniciando o app xbindkeys junto com o seu ambiente gráfico

Para que os atalhos de teclados configurado no arquivo ~/.xbindkeysrc funcione automaticamente o comando xbindkeys deve ser carregado junto com o seu ambiente gráfico.

O procedimento é exatamente o mesmo feito anteriormente em "Salvando o nível de brilho do xbacklight" basta somente colocar o comando xbindkeys e não precisa especificar ou marcar janela de terminal.






Nenhum comentário:

Postar um comentário