Pelo que entendi, apenas algumas chaves têm o privilégio de serem evaled como código python. Alguns deles são explicitados no arquivo de configuração por uma chave que termina com a string "eval", como remotepasseval
, mas outros só têm isso observado nos comentários, como nametrans
, que claramente tem que ser uma função .
Como offlineimap
está em python, você provavelmente encontrará as origens em sua distribuição. No meu caso, o arquivo /usr/lib/python2.7/site-packages/offlineimap/repository/IMAP.py
tem código para manipular remotepasseval
, o que é bastante fácil de entender:
passwd = self.getconf('remotepasseval', None)
if passwd != None:
return self.localeval.eval(passwd)
Você pode procurar outros usos de localeval
para ver quais chaves são processadas dessa maneira. E se você quiser que outras chaves sejam avaliadas, pode não ser muito difícil criar sua própria versão deste programa com chamadas semelhantes.