Variabilní signatura? Pod Linuxem nic složitého!
Také vám připadají podpisy v mailech jednotvárné? Poradíme vám, jak si alespoň ten svůj vylepšit.
Pod DOSem a MS-Windows umí variabilní signatury například
program Pegasus Mail. Ale ne všichni pracují pod DOSem. Stále více lidí
přechází na Linux. A tam je samozřejmě možné velmi snadno dosáhnout
stejného efektu. Neptejte se mě, jestli je to možné pod některým z
produktů dalších firem. Nevím. Vím jen tolik, že pod Microsoft Office
by něco takového šlo vytvořit snadno ve Visual Basicu, ale netuším jak
zajistit startování takto vytvořeného scriptu při potřebě vkládat
signaturu. Signatura se na Unixu implicitně ukládá do souboru .signature
v domovském adresáři. Všechny poštovní programy to respektují a
načítají ji z tohoto souboru. Některé z nich však umí získat signaturu
i jinými způsoby. Např. spuštěním externího scriptu.
A právě na tom je založeno mnou zvolené řešení. Je vytvořeno pro program PINE, ale jistě by fungovalo i s většinou ostatních programů. Script pro generování signatury je napsán v pythonu. Python
je objektový programovací jazyk vyznačující se kromě rychlosti tvorby
programů také tím, že je k dispozici pro téměř všechny používané
počítačové platformy. Co tedy budete potřebovat? Zaprvé soubor .signature (takový,
jaký jste používali dosud). Potom soubor .quote (název pochází z
Pegasus Mailu a zachoval jsem jej z nostalgie) a můj script. Do souboru
.quote vložíte citáty, vtipy nebo cokoliv dalšího, co chcete vkládat do
podpisu. Jeho struktura je velmi jednoduchá, neboť text je v něm psán
tak, jak se má vkládat do podpisu, a jednotlivé položky se oddělují
prázdným řádkem. Například takto: Šli dva a prostřední upad'
Nezapomeňte:
Dobro bývá po zásluze potrestáno.
Why use Windows, when there is a door???
A teď script. Není na něm vskutku nic zvláštního. V první
části překopíruje na standardní výstup obsah souboru .signature, v
druhé načte obsah souboru .quote, rozdělí jej na části oddělené
prázdným řádkem (dva znaky nový řádek za sebou) a pomocí generátoru
pseudonáhodných čísel jednu část vybere a opět ji okopíruje na
standardní výstup. #!/usr/bin/python
import rand, sys, string, os
home = os.path.expandvars('$HOME')
a=open(home+'/.signature','r')
sys.stdout.writelines(a.readlines())
a.close()
a=open(home+'/.quotes','r')
sys.stdout.write(rand.choice(string.split(a.read(),'\n\n')))
a.close()
Script si uložíte někam, kam dáváte podobné věci, řekněme do
~/bin. Nazvěte jej třeba "dynsig". Potom nastavíte atribut
spustitelnosti chmod u+x ~/bin/dynsig a v konfiguraci programu PINE
nastavíte: signature-file=/home/já/bin/dynsig|
A už se můžete kochat tím, jak se signatura mění s každým
mailem. Povšimněte si ale, že řádek končí znakem kolony "|". Ten je
zcela nezbytný. Bez něho by se totiž vkládal obsah scriptu.
Dan Ohnesorg (dan@feld.cvut.cz) - 21.4.1999
Zaujal Vás tento článek? Chcete nám
k němu něco sdělit? Neváhejte a sdělte nám svůj
názor

V A Š E N Á Z O R Y . . .
|