Problemas com o $ {eval} de Conky

1

Estou tentando fazer algo com $ {eval} no Conky, mas estou tendo problemas mesmo com um exemplo mínimo:

${eval ${exec echo '${font DejaVu Sans Mono :size=6}hey!'}}

Tanto quanto eu entendo, eu acredito que eu deveria ver a string "hey!" impresso com a fonte 'DejaVu Sans Mono', mas em vez disso eu estou recebendo isso como saída:

${font DejaVu Sans Mono :size=6}hey!

Eu quero ser capaz de executar algo como faria no terminal e, em seguida, analisar isso como uma declaração Conky. Não é toda a idéia de $ eval para analisar essa seqüência novamente? Em caso afirmativo, estou fazendo algo errado, estou entendendo mal como isso funciona ou isso é um bug em $ eval?

    
por Seb 02.07.2011 / 21:57

3 respostas

1

Eu não sei o que há de errado com ${eval} e ninguém no chat do Conky conseguiu me explicar, mas eles sugeriram usar o ${execpi} e ele fez exatamente o que eu queria:)

    
por Seb 03.07.2011 / 01:31
1

Eu cheguei aqui com o mesmo problema. Em seu exemplo, você precisa substituir exec por execp dentro de eval para que funcione conforme o esperado.

    
por Sog 22.07.2011 / 10:54
0

Eu acho que você precisa

${font DejaVu Sans Mono :size=6}${exec echo 'hey!'}

A formatação do Conky não é aninhada como HTML. Em vez disso, você define uma formatação e permanece até que você a altere. Então, primeiro definimos a fonte e o tamanho ( ${font DejaVu Sans Mono :size=6} ), e então dizemos a qual saída ( ${exec echo 'hey!'} ), que é nesse caso a saída do comando echo 'hey' .

Então, se eu colocar isso

 ${font DejaVu Sans Mono :size=6}${font DejaVu Sans Mono :size=20}${exec echo 'hey!'}

'hey' seria impresso em tamanho 20 e o tamanho 6 seria essencialmente inútil. Espero que isso resolva as coisas.

    
por Azendale 03.07.2011 / 00:31