Vertaal

Translate to EnglishÜbersetzen Sie zum Deutsch/GermanΜεταφράστε στα ελληνικά/GreekПереведите к русскому/RussianOversetter til Norsk/NorwegianÖversätta till Svensk/Swedishहिन्दी अनुवाद करने के लिए/Hindi
Tradueix al català/CatalanTulkot uz latviešu/LatvianPreložiť do slovenčiny/SlovakVertaal aan het Nederlands/Dutchترجمة الى العربية/ArabicTraduzca al Español/SpanishTraduisez au Français/French
Traduca ad Italiano/ItalianTraduza ao Português/Portuguese日本語に翻訳しなさい /Japanese한국어에게 번역하십시오/Korean中文翻译/Chinese Simplified中文翻译/Chinese TraditionalПереклад на українську/Ukrainian
Beeld van de Concepten van het Werkende Systeem
Beeld van Moderne Werkende Systemen (3de Uitgave)
Beeld van XSLT 2.0 en XPath 2.0 de Verwijzing van de Programmeur (Programmeur aan Programmeur)
Beeld van Ontwikkeling van de Pit Linux (3de Uitgave)

De Vertaler van de Pagina van Google

Vandaag, voegde ik een gadget aan mijn blog toe zodat de lezers mijn posten in om het even wie van vijfendertig talen kunnen gemakkelijk vertalen gebruikend Google vertalen van de vertaal webpagetaal motor.U zult het aan de linkerkant van dit webpage laag vinden.Van de daling onderaan lijst, enkel wil de oogst de taal u omzetten de huidige post in en na een korte vertraging zal een nieuwe webpage met de post verschijnen die in de geselecteerde taal wordt getoond.Nota - u moet manuscripten hebben die in uw browser voor het gadget Google worden toegelaten op dit webpage te tonen.

Toevoegen van deze functionaliteit was challanging dan ik aanvankelijk veronderstelde aangezien ik wilde ervoor zorgen dat mijn posten aan een lezer wanneer getoond in een vreemde taal nuttig bleven.Dit betekent dat de vertaalmotor moet worden verteld welke woorden en secties aan daar gelaten zoals is.De documentatie Google en FAQ voor dit gadget zijn onduidelijk over hoe te om dit voor dingen zoals mijn vertoningsvakjes te doen zo een ronde van proefneming werd vereist.Het blijkt dat u een volledige webpage kunt merken, volgen een woord of een sectie van een webpage niet om te zijn het vertaalde gebruiken zo markeringen. <! - het element van gebruiksmeta om volledige webpage te beschermen - > <meta name='google value='notranslate'> <! - het element van de gebruiksspanwijdte om een woord of twee te beschermen - > vertaalt <span class='notranslate'> deze niet words</span> <! - gebruiksafd. element om vertoningsdozen te beschermen dergelijke dit - > vertaalt <div class='notranslate'> geen volledige section</div>

Nu ik heb berekend hoe te om specifieke tekst en codefragmenten tegen wordt vertaald door de Google vertaalmotor te beschermen, ben ik terug te gaan en van plan mijn vorige posten over een periode van tijd te wijzigen om hen voor geautomatiseerde taalvertaling robuuster te maken.

Dit zal vrij een project zijn aangezien ik typisch een aantal programmering langauge reserveerde woorden en codefragmenten in mijn posten omvat.Bijvoorbeeld, vereiste het meer dan 100 aan mijn vorige post op Powershell uitgeven van Microsoft alvorens ik gelukkig was dat die bepaalde post voor geautomatiseerde taalvertaling geschikt was.

De UPDATE 7/1/2009 werd Deze post geschreven toen ik Blogspot gebruikte. Ik heb nog niet beslist hoe te om automatische vertaling van mijn posten op blog.fpmurphy.com ten uitvoer te leggen. Nochtans ben ik van plan om iets spoedig uit te voeren.

De Narigheden van Globetrotting van Google

Ik ben momenteel op het mooie Eiland Cebu in de Filippijnen die met mijn oude vriend en collega Charles Richmond bij IISC bezoeken en sommige besprekingen op OS internals geven. Ik gebruik een laptop van Lenovo Thinkpad lopend Uiteindelijk Uitzicht van Vensters wanneer het reizen met Mozilla Firefox 3 als mijn standaardbrowser.

Firefox 3 komt met een Bar standaard van het Onderzoek op de hoogste rechtse hoek die een aantal standaardonderzoeksmotoren met inbegrip van Google bevat. Als ik een onderzoekstermijn in de optie van de Bar van het Onderzoek Google typ, berekent Google achter de scnes dat ik in de Filippijnen word gevestigd, opnieuw richt me aan www.google.com.ph en toont de onderzoeksresultaten met de interfacetaal vastgestelde Filipijner (spelde ook als Pilipino) hier zoals getoond.

Dit is niet teveel van een belemmering in de Filippijnen maar het worden een totale ergernis wanneer in Japan, China, Vietman en veel andere landen. De standaardalternerende actie voor dit moet Google dwingen om zijn interfacetaal in het Engels te tonen door naar Google.com te gaan en uw gebruikersvoorkeur aan het Engels te plaatsen die in Google.com crerend een koekje op uw machine om voort te duren uw voorkeur resulteert.

Misschien is het een beetje van overkill of paranoia maar ik heb opstelling Firefox om alle koekjes te schrappen wanneer het eindigen van een zitting voor persoonlijke privacy en veiligheid. Aldus blijft Google terug naar welk interfacetaal ook Google in gebreke aan voor het land in gebreke blijft dat Google denkt ik momenteel in volgende tijd I brand op Firefox ben en naar Google.com ga.

Unidirectioneel deze moeilijkheid moet overwinnen de Firefox onderzoeksbar in plaats daarvan gebruiken maar aan www.google.com/ncr doorbladeren waar NCR de tribunes voor Geen Land alvorens geen searchs uit te voeren opnieuw richten. Eerder dan gaande deze route, besliste ik mijn eigen elektrisch toestel van de Motor van het Onderzoek te schrijven zodat ik altijd een Engelse interface word wanneer ik de het onderzoekstoolbar van Firefox Google gebruik. Het blijkt dat dit vrij gemakkelijk is te doen zodra u begrijpt wat wordt vereist.

Cut and paste de volgende code in een dossier genoemd GoogleEN.xml en sla het dossier op.

<SearchPlugin xmlns= http://www.mozilla.org/2006/browser/search/ > <Image </Description> <InputEncoding>UTF-8</InputEncoding> width= 16 height= 16 >data <Description>Google van het Onderzoek <ShortName>GoogleEN</ShortName> (NCR het Engels): image/x-pictogram; base64, AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQA AAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAACZMwD/mTMA/5kzAP+ZMwD/mTMA/5k zAP+ZMwD/mTMA/5kzAP+ZMwD/mTMA/5kzAP+Z MwD/mTMA/5kzAP+ZMwD/mTMA////////////////////////////////////////////////// //////////////////////////mTMA/5kzAP/ ////////////////48u//0a2g/71vWP +hLgz/pCUI/5xDG/+dRRz/pFIs/7ibk//q4+D//////5kzAP+ZMwD////////////q0MX/pDIP/6gxC//kq5H//fj1//////////////////zezv +MHgf /r5SE////// +ZMwD/mTMA///////36+X/pjAL /6YwC//Wr5z////////////////////////// //97eX/jB4G/7ecjP//////mTMA/5kzAP//// //4ZJu/5o5DP/Hm4j//////////////////// ///bk2/ +gUCv/mD4V/54rCP+vhm7//////5kz AP+ZMwD///7+/7xPHf+dLAn/+PXz/wAA/////////////wAA/////fz/AAD///bRv//52Mf/AA D//wAA//+ZMwD/mTMA//77+f+uNAz/nzcZ//////8AAP///////wAA//8AAP///////wAA//// ////AAD//wAA////////mTMA/5kzAP/ ++/n/t FUo/5RAG///////AAD//wAA////////AAD///////8AAP//AAD//wAA/////////////5kzAP + ZMwD////+/7xVLv+WPBf//////wAA//8AAP///////wAA////////AAD/////////////AAD// ///// +ZMwD/mTMA///////plHP/mDUR//////8AAP////////////8AAP///////wAA//8AAP//AAD//wAA////////mTMA/5kzAP//////8cm8 /607FP +6jn//+Ojl////////////////////////////9 +7q//b08v///////////5kzAP+ZMw D////////////yu6X/qD4Z/8eQgP/46OX/////////////////7Luz/55IIf95JQj/9O3q//// // +ZMwD/mTMA//////////////////PFuP/Pa Uj/uDUO/7U0Cf+1NAr/tTQJ/6k2Ff/dqJH/8t DD//79/f//////mTMA/5kzAP////////////////////////////38 +f/48uz/9e3m//bv6P/7 +PX//////////////////////5kzAP+ZMwD/m TMA/5kzAP+ZMwD/mTMA/5kzAP+ZMwD/mTMA/5 kzAP+ZMwD/mTMA/5kzAP+ZMwD/mTMA/5kzAP+ ZMwD/AACsQQAArEEAAKxBAACsQQAArEEAAKxB AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQ QAArEEAAKxBAACsQQ== </Image> <Url type= tekst/HTML method= KRIJG

Niet dd van uw Grootvader Nut!

Een recent artikel in het Tijdschrift van Red Hat door Noah Gift en Grig Gheorghiu called dit niet uw grandpappy'ddd bevel is toonde aan hoe te om Python, het dd nut en de Google Grafiek API te gebruiken om een grafiek uit te vaardigen die productie toont bij verschillende blokgrootte. Nochtans was de output van het manuscript van de Python de daadwerkelijke grafiek maar geen URL die u toen in browser van het Web moest kleven om de resulterende grafiek te bekijken.

I hoewel dit manuscript zou zijn nuttig maar niet wilde moeten cut and paste een URL in browser van het Web zodat besliste ik die stap overbodig te maken.

Dit manuscript van Python is los gebaseerd op hun manuscript maar gebruikt de bibliotheken van de Python urllib met Grafieken te verbinden Google om een PNG- beelddossier te produceren dat later gebruikend routines pyGTK+ wordt getoond. #! /usr/bin/env de invoeros van de pythoninvoer sys de de invoerbevelen voeren Re van van de de invoer urllib invoer de klasse DisplayGraph urllib2 van OptionParser van de optparseinvoer van de de invoer pygtk ('2.0 ) invoer pygtk.require gtk in: def delete_event (zelf, widget, gebeurtenis, data=None): vernietigt terugkeer Valse def (zelf, widget, data=None): gtk.main_quit () def __init (zelf): self.window = gtk. Venster (gtk.WINDOW_TOPLEVEL) self.window.connect (delete_event, self.delete_event) self.window.connect (vernietig, self.destroy) self.window.set_border_width (10) self.window.set_position (gtk.WIN_POS_CENTER) self.window.set_title (de Productie van de Schijf) pixbuf = gtk.gdk.pixbuf_new_from_file (/tmp/dd.png) os.remove (/tmp/dd.png) self.image = gtk. Beeld () self.image.set_from_pixbuf (pixbuf) self.image.sh ow () self.window.add (self.image) self.window.sh ow () def leiding (zelf): gtk.main () klasse GoogleChart: def __init (zelf): self.gchart_url = http://chart.apis.google.com/chart? self.gchart_type = cht=bvs self.gchart_title = &chtt= self.gchart_data = &chd=t: self.gchart_labels = &chxl=0: | self.gchart_size = &chs=400250 self.gchart_axis_labels = &chxt=x, y, x, y self.gchart_axis_position = &chxp=2,50|3.50 self.gchart_bar_settings = def titel &chbh=30,15 (zelf, titel): self.gchart_title = self.gchart_title + schrijft de titel def (zelf, gegevens, etiketten, max_t): self.gchart_data = self.gchart_data + data.rstrip (`, ') self.gchart_labels = self.gchart_labels \ + etiketteert + 2: |Block%20Size|3: |Mb/s self.gchart_axis_range = &chxr=1,0, + streptokok (max_t+10.0) self.gchart_scaling = &chds=0, + streptokok (max_t+10.0) self.gchart_url += self.gchart_type \ + self.gchart_title + self.gchart_size self.gchart_url += self.gchart_bar_settings \ + self.gchart_data + self.gchart_labels self.gchart_url += self.gchart_axis_labels \ + self.gchart_axis_position self.gchart_url += self.gchart_axis_range \ + self.gchart_scaling opener = urllib2.urlopen (self.gchart_url) als opener.headers [tevreden-type]! = beeld `/png': hef BadContentTypeException op (`Server responded \ 'met een tevreden-type van %s \ % opener.headers [tevreden-type]) open (/tmp/dd.png, `wb').write (opener.read ()) def get_disk_throughput (apparaat, blokgrootte): blok grootte = streptokok (blokgrootte) + `k cmd = dd if=/dev/zero of=%s bs=%s % (apparaat, blokgrootte) output = commands.getoutput (cmd) productie = 0 eenheid = voor lijn in output.split (`n'): s = re.search (gekopirde `. *, (\ S+) (\ S+) $ ', lijn) als s: productie = s.group (1) eenheid = s.group (2) onderbreking keer terug (productie, eenheid) als __name == __main: gebruik = Gebruik: %prog opties syntactische parser = OptionParser (usage=usage) parser.add_option (- D, - apparaat, dest= apparaat, \ help= Apparaat aan gebruik. De gegevens van de schijf zullen worden beschreven! ) (opties, args) = parser.parse_args () apparaat = options.device als niet apparaat: parser.print_help ()