Updated by Armando Vega on Dec 21 2:37am
Posted by TamTam Migration on Nov 7 12:39pm
Napisao sam nekoliko dodatnih funkcija za Enso Launcher.
"U potpunosti je ekstenzibilan app sa bilo kojim jezikom,
moj language of choice je python.
Ovo nikako nije sve, svaki dan se igram sa novim stvarima i
mjenjati ću sadržaj kako budem mjenjao kod.
Evo kako to izgleda za sada:
import xmlrpclib
import socket
from SimpleXMLRPCServer import SimpleXMLRPCServer
import threading
import webbrowser
socket.setdefaulttimeout( 10.0 )
class MyEnsoExtension:
def __init__( self ):
self.enso = xmlrpclib.ServerProxy( "http://127.0.0.1:11374" )
def callCommand( self, commandName, postfix ):
if commandName == "leetify":
selectedText = self.enso.getUnicodeSelection()
returnText = selectedText.replace('i','1',).replace('a','4').replace('e','3')
returnText = returnText.replace('I','1').replace('o','0').replace('O','0')
returnText = returnText.replace('t','7').replace('T','7')
if returnText:
self.enso.setUnicodeSelection( returnText, "leetify" )
else:
self.enso.displayMessage('<p>No text selection!</p>')
elif commandName == "amazon {keyword}":
self.enso.displayMessage('<p>Searching Amazon for \"'+ postfix + '\"...</p>')
url = 'http://www.amazon.com/s?ie=UTF8&keywords=' + postfix + '&index=blended'
webbrowser.open(url)
elif commandName == "sms {name}":
# do something here
self.enso.displayMessage('<p>\"'+self.enso.getUnicodeSelection()+'\"\
sent to '+postfix.upper()+'</p>')
elif commandName == "camel":
selectedText = self.enso.getUnicodeSelection()
if selectedText:
returnText = ''
for word in selectedText.split():
returnText += word.capitalize()
self.enso.setUnicodeSelection(returnText,'camel')
else:
self.enso.displayMessage('<p>No text selection!</p>')
else:
raise AssertionError( "Unknown command name: %s" % \
commandName )
return True
def runMyExtensionServer():
rpcServer = SimpleXMLRPCServer( ("127.0.0.1", 11375) )
# We set the socket timeout to permit the server to be killed.
rpcServer.socket.settimeout( 1.0 )
rpcServer.register_instance( MyEnsoExtension() )
rpcServer.serve_forever()
# Start the XML-RPC server
serverThread
^ threading.Thread( target
runMyExtensionServer )
serverThread.setDaemon( True )
serverThread.start()
# Register with Enso.
enso = xmlrpclib.ServerProxy( "http://127.0.0.1:11374" )
enso.registerCommand(
"http://127.0.0.1:11375",
"leetify",
"Leetifies your currently selected text",
"<p>This command transforms the current" \
"text selection to the leet version of "\
"that text.</p>",
"none"
)
enso.registerCommand(
'http://127.0.0.1:11375',
'amazon {keyword}',
'Searches Amazon for keyword',
'<p>This command will search Amazon '\
'for the keyword.</p>',
'arbitrary'
)
enso.registerCommand(
'http://127.0.0.1:11375',
'sms {name}',
'Sends SMS to {name} via VIP WebSMS',
'<p>This command will look up a number by name '\
'from the preset phonebook and send an SMS '\
'to that number/person using the VIP WebSMS service.</p>',
'bounded'
)
enso.setCommandValidPostfixes('http://127.0.0.1:11375',
'sms {name}',
['marija', 'test','erik','mum'"<http://www.humanized.com]> )
enso.registerCommand(
"http://127.0.0.1:11375",
"camel",
"Transforms your currently selected text to CamelCase",
"<p>This command transforms the current" \
"text selection to the CamelCase version of "\
"that text, removing whitespaces.</p>",
"none"
)
try:
print "press enter to exit."
raw_input()
finally:
enso.unregisterCommand( "http://127.0.0.1:11375", "leetify" )
enso.unregisterCommand( "http://127.0.0.1:11375", "amazon {keyword}" )
enso.unregisterCommand( "http://127.0.0.1:11375", "sms {name}" )
enso.unregisterCommand( "http://127.0.0.1:11375", "camel" )
original Dec 14 5:58am
Updated by TamTam Migration on Dec 14 5:58am
Posted by TamTam Migration on Dec 14 5:58am
Zanima me puno toga, od toga nešto više o:
- C++
- Neuralne mreže
- AI
- Lego Mindstorms
- Samogradnja
original Dec 14 5:49am
Updated by TamTam Migration on Dec 14 5:49am
Posted by TamTam Migration on Dec 14 5:49am
Od svega znam ponešto, nešto više od ostalog o:
*python
*pygtk
*pyglade
*PHP
original Dec 14 5:47am
Updated by TamTam Migration on Dec 14 5:47am
Posted by TamTam Migration on Dec 14 5:47am
Glade i PyGTK
Na NSND u Moravicama pokazivao sam nešto oko korištenja Glade-a i pygtk za
polu-rapid development GTK GUI aplikacija. Primjer je bio mali app koji šalje
sms preko Vip Web SMS stranice. Glade file možete naći ovdje:
"Python kod slijedi:
import urllib2
import urllib
import cookielib
import gobject
import pygtk
pygtk.require('2.0')
import pango
import gtk
import gtk.glade
class HellowWorldGTK:
"""Main GTK not-thread"""
def __init__(self):
#set the glade file
self.gladefile = "vip.glade"
self.wTree = gtk.glade.XML(self.gladefile)
dic = {"on_send_button_clicked" : self.send_sms,
"on_reset_button_clicked" : self.send_sms,
#"on_VipSMS_key_press_event" : self.update_counter,
"on_VipSMS_destroy" : gtk.main_quit }
self.wTree.signal_autoconnect(dic)
view = self.wTree.get_widget('message_text')
buffer = view.get_buffer()
buffer.connect('changed', self.update_counter)
def update_counter(self,widget):
baf = self.wTree.get_widget('message_text')
buffer = baf.get_buffer()
lenght = buffer.get_char_count()
lenght = 135 - lenght
label = self.wTree.get_widget('count_label')
label.set_text(str(lenght))
def send_sms(self,widget):
global cj
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
params = urllib.urlencode({'userRequestURL':\
'http%3A%2F%2Fwww.vip.hr%2Fsp%2Fd_sendSMS%3F' , \
'serviceRegistrationURL':_ , 'level': '30' , 'SetMsisdn' : 'true' ,\
'serviceOID' : '2000358', 'UserID' : 'user_name', 'Password' : 'password'})
bla = opener.open('http://webauth.vip.hr/vasmpauth/ProcessLoginServlet',params)
#print bla.read()
message = self.wTree.get_widget('message_text')
message = message.get_buffer()
message = message.get_text(message.get_start_iter(),message.get_end_iter())
prefix = self.wTree.get_widget('cell_prefix')
prefix = prefix.get_child()
prefix = prefix.get_text()
number = self.wTree.get_widget('cell_number')
number = number.get_text()
phoneno = str(number)
size_diff = str(260-len(message))
data = urllib.urlencode({'formflag' : 'true', 'netpref' : prefix,\
'phoneno' : phoneno, 'charleft' : size_diff, 'message582' : message , \
'reply_to_mobile' : _})
#print data
sender = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
send = opener.open('http://www.vip.hr/sp/d_sendSMS?',data)
inpu = send.read()
#print 'Preostalo poruka: ' + str(inpu.split('poslati: ')[1"<http://synan.rilinux.hr/code/vip.glade]>.split('<',1)[0])
widg = self.wTree.get_widget('status_label')
widg.set_text('Preostalo poruka: ' + str(inpu.split('poslati:\
')[1].split('<',1)[0]))
if __name__ == "__main__":
cj = cookielib.CookieJar()
hwg = HellowWorldGTK()
gtk.main()
original Dec 14 5:39am
Updated by TamTam Migration on Dec 14 5:39am
Posted by TamTam Migration on Dec 14 5:39am
Updated by TamTam Migration on Dec 12 7:28am
Posted by TamTam Migration on Dec 12 7:28am
Nekoga za warwalking, linux - unix administraciju, mreze, drustvo za pricu oko IT tema :)
original Dec 10 2:16am
Updated by TamTam Migration on Dec 10 2:16am
Posted by TamTam Migration on Dec 10 2:16am
Razmjena vještina
Contents: [RazmjenaVjestina]
|
uKratko
Program pod imenom "Razmjena vještina" neformalna su tjedna okupljanja u net.kulturnom klubu mama u kojima entuzijasti dijele svoja korisna iskustva, znanja i vještine.
Razmjena vještina nalazi svoju inspiraciju u kulturi nesebičnog dijeljenja zajednice slobodnog softvera. Na svakom okupljanju zainteresirani su slobodni donijeti svoja računala, laptope i ručna računala da bi im na njih bio instaliran GNU/Linux operativni sustav. Za razmjenu vještina svake subote od 12:00 do 19:00 u mami su na raspolaganju multimedijalno računalo spojeno na internet, dvd i vhs uređaj, lcd projektor, te osnovni softverski i hardverski alati za različite instalacije i prepravke softvera i hardvera.
kontakt: m@rcell.net
uDugo
Kultura‭ “‬Uradi sam‭” (‬eng.‭ ‬Do It Yourself‭)‬,‭ ‬te stav da se neposredna okolina uz nešto znanja,‭ ‬truda i rada može učiniti boljem i prilagođenijom individualnim potrebama dugi niz godina mobilizirala je zanimljive ljude i projekte kroz kulturne,‭ ‬umjetničke i aktivističke pokrete.
Ideja avantgardne umjetnosti o ispreplitanju svakodnevnog života i umjetnosti,‭ ‬te mogućnosti da svatko bude umjetnik neke od svojih najboljih primjera može naći upravo u gotovo stoljetnoj tradiciji kulture‭ “‬Uradi sam.‭” ‬Filozofiju‭ “‬Uradi sam‭” ‬kulture nalazimo u ranim medijskim inicijativama komunalnih radio stanica prije Drugog svjetskog rata,‭ ‬kontrakulturi‭ ‬60-ih,‭ ‬avantgardnoj video umjetnost kasnih‭ ‬60-ih i ranih‭ ‬70-ih,‭ ‬situacionismu,‭ ‬punk pokretu‭ ‬70/80-ih,‭ ‬ideji taktičkih medija u‭ ‬90-ima,‭ ‬ali vjerojatno svojevrsni vrhunac‭ “‬Uradi sam‭” ‬kultura doživljava kroz pokret slobodnog softvera.
Pokret slobodnog softvera‭ (‬eng.‭ ‬Free Software Movement‭) ‬nastao je sredinom‭ ‬80-ih kao reakcija na tada sve prisutniju restrikivnu regulaciju pristupa programskom kodu koji time postaje tržišni proizvod,‭ ‬tj reakcija na u širem smislu na trend dominacije tržišne logike kroz komodifikacije svih ideja i inovacija.‭ ‬Ideja pokreta slobodnog softvera je da ideje od općeg značaja i univeralne primjene ne smiju biti u isključivom privatnom vlasništvu s diskriminiranim pristupom samim idejama.‭ ‬Pokret slobodnog softvera‭ ‬uspostavlja suradnju kao ključnu dinamiku razvoja ideja i proizvodnje i distribucije znanja.‭
Modeli suradnje u proizvodnji slobodnog softvera,‭ ‬te korištenje pravnog dokumenta‭ (‬licence‭) ‬kao zaštite slobodnog pristupa informacijama,‭ ‬sa prvim vidljivim uspjesima sredinom devedesetih,‭ ‬postali su inspiracija mnogim kulturnim i aktivističkim inicijativama kroz drugu polovicu devedesetih.
GNU/Linux računalni operativni sustav‭ (‬ekvivalent Windowsima‭) ‬rezultat je rada tisuća programera širom svijeta koji surađuju i dijele programski kod,‭ ‬te je danas u upotrebi od srednjih i osnovnih škola,‭ ‬univerziteta i vlada širom svijeta,‭ ‬preko holivudske filmske industrije,‭ ‬do najrazvijenijih korporacija poput IBM-a,‭ ‬Novella,‭ ‬Nokije,‭ ‬Motorole i drugih.
Festivali poput Next5Minutes u Amsterdamu,‭ ‬Transmediale u Berlinu ili Ars Electronica‭ (‬autor Linuxa Linus Torvalds za taj rad dobio je Zlatnu Nicu‭ ‬1999.‭) ‬napravili su jako puno u prepoznavanju i promociji slobodne razmjene informacija i znanja.‭ ‬Nastojanja i želje da se pronađe suradnički model za širu kulturnu produkciju baziranu na modelu slobodnog softvera rezultirao je u danas najšire prihvaćenom modelu licenci koju su ponudili Creative Commons.‭ ‬Pridruživši se pokretu slobodnog softvera Creative Commons inicijativa uspjela je okupiti jednu od najvećih zajednica ljudi koji proizvode i dijele zajednički sustav vrijednosti.
Program pod imenom‭ "‬Razmjena vještina:‭ ‬pokaži sto umiješ‭!" ‬tjedna su okupljanja u net.kulturnom klubu mama u kojima entuzijasti dijele svoja korisna iskustva,‭ ‬znanja i vještine.‭ ‬Planiranju pomaže online burza umijeća na adresi:‭ ‬http://www.razmjenavjestina.org gdje zainteresirani predstavljaju što žele podijeliti s drugima,‭ ‬a što bi voljeli da im drugi pokažu.
Program je u nešto više od godinu dana uspio okupiti svojevrsnu zajednicu ljudi koji redovito razmjenjuju znanja i vještine,‭ ‬organiziraju predavanja,‭ ‬projekcije i distribuciju slobodnog softvera na CD medijima.
Razmjena vještina primjer je djelovanja Multimedijalnog instituta u smjeru transfera znanja i modela iz tehničke sfere u kulturnu i društvenu,‭ ‬dok ljudima iz tehničke sfere pokušavaju približiti širi kontekst upotrebe tehnologije i na taj način uspostavlja komunikacijski kanal između ta dva polja.
Razmjena vještina nalazi svoju inspiraciju u kulturi nesebičnog dijeljenja zajednice slobodnog softvera.‭ ‬Na svakom okupljanju zainteresirani su slobodni donijeti svoja računala,‭ ‬laptope i ručna računala da bi im na njih bio instaliran GNU/Linux operativni sustav,‭ ‬no vještine i znanja nisu ograničena samo na računala i tehnologiju,‭ ‬pitanja i odgovori su jedini limit.‭ ‬Za razmjenu vještina svake subote od‭ ‬12:00‭ ‬do‭ ‬19:00‭ ‬u mami su na raspolaganju multimedijalno računalo spojeno na internet,‭ ‬dvd i vhs uređaj,‭ ‬lcd projektor,‭ ‬te osnovni softverski i hardverski alati za različite instalacije i prepravke softvera i hardvera.
DraftGrad2007
original Dec 5 3:43am
Updated by TamTam Migration on Dec 5 3:43am
Posted by TamTam Migration on Dec 5 3:43am
Updated by TamTam Migration on Dec 5 2:19am
Posted by TamTam Migration on Dec 5 2:19am
Updated by TamTam Migration on Dec 5 2:07am
Posted by TamTam Migration on Dec 5 2:07am
|
Weblog Navigation
Loading...
|