Teclas de função de contraste do laptop

0

No meu laptop LCD com ângulo de visão estreito e lustroso, além do brilho, gostaria de poder ajustar o contraste pressionando uma tecla de função.

No prompt de comando do console:

 ~ $ xgamma                     

retorna:

 Red  0.900, Green  0.900, Blue  0.900

Gostaria de construir uma linha de comando que utilize o último campo retornado de 0,900, multiplique-o por 1,1 (para obter 0,990) e use esse resultado como valor de entrada para:

~ $  xgamma -gamma 0.990 

Uma linha de comando ao longo das linhas de:

~$ xgamma | last / 1.1 | xgamma -gamma

Em seguida, usando o layout do meu teclado como exemplo e usando a distribuição dependente: Control Center> Atalhos do teclado, podemos definir uma ShiftF5tecla de função com mais contraste acima da tecla de função de brilho existente FnF5. Para menos contraste, multiplique por 1,1

eromana
fonte

Respostas:

0

A solução Fortran.

No diretório inicial do Linux, crie um subdiretório /mygamma/

O diretório mygamma contém seis arquivos: 2 scripts de programa fortran: contrastdown.f90and contrastup.f90, seus executáveis gammadowne gammaup, e um arquivo shebang xgammasave que salva o valor atual do xgamma em um arquivo de textoxgammaval.txt

O arquivo xgammasave é assim:

#!/bin/bash

xgamma |& tee ~/mygamma/xgammaval.txt

O contrastup.f90arquivo fica assim:

program contrastup

 character(len=20):: string,string2,string3 ! variable type declarations

 real(kind(1.0)) :: x

 call system('/home/my_name/mygamma/xgammasave') ! write the xgamma value to a file

 open(unit=2,file='/home/my_name/mygamma/xgammaval.txt',action='read',status='old')

 read(unit=2,fmt=*)string,string2,string3 ! read the file

 read(string3,*)x            ! make a real from a string

 x=x/1.2                     ! change the contrast

  if (x .le. 0.1) goto 10    ! xgamma value can not be less than 0.1

 write(string,*)x            ! make a string from a real

 string2='xgamma -gamma ' // trim(string) ! concatenate 2 strings

 call system(string2)        ! pass the string to the command line

10 close(unit=2)

end program contrastup

e contrastdown.f90

program contrastdown

 character(len=20):: string,string2,string3 ! variable type declarations

 real(kind(1.0)) :: x

 call system('/home/my_name/mygamma/xgammasave')  ! write xgamma value to a file

 open(unit=2,file='/home/my_name/mygamma/xgammaval.txt',action='read',status='old')

 read(unit=2,fmt=*)string,string2,string3 ! read the record

 read(string3,*)x             ! make a real from a string

 x=x*1.2                      ! change the contrast

  if (x .ge. 10.0) goto 10   ! xgamma value can not be greater than 10.0

 write(string,*)x             ! make a string from a real

 string2='xgamma -gamma ' // trim(string) ! concatenate two strings

 call system(string2)         ! pass the string to the command line

10 close(unit=2)

end program contrastdown

Torne os arquivos executáveis ​​do Fortran gammaupe gammadown:

~/mygamma $ gfortran contrastup.f90 -o gammaup  

~/mygamma $ gfortran contrastdown.f90 -o gammadown 

Dependendo da versão do Linux, em Control Center> Atalhos de teclado, em 'Custom Shortcuts', selecione 'add', no campo name digite o nome da tecla de atalho 'raise gamma' e, na caixa de comando, insira o /home/my_name/mygamma/gammaup mesmo 'low contrast' chave com comando/home/my_name/mygamma/gammadown

No meu laptop FnF6e FnF5as teclas de aumento / redução do brilho padrão, agora acima delas, as teclas recém-definidas ShiftF6e ShiftF5as teclas de aumento / redução do contraste. Os filmes em preto e branco do vintage agora ficam bem na tela brilhante :)

A solução Fortran pode ser Code Golfem menos linhas?

eromana
fonte