Traduzca

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
Imagen del desarrollo del núcleo del linux (3ro edición)
Imagen de los conceptos del sistema operativo
Imagen del desarrollo de aplicaciones sin hilos androide
Imagen de la programación avanzada en el ambiente de UNIX, segunda edición (series computacionales del profesional de Addison-Wesley)

Traductor de la página de Google

Hoy, agregué un adminículo a mi blog de modo que los lectores puedan traducir fácilmente mis postes de treinta y cinco idiomas usando el Google traduzcan el motor de la traducción de lengua del Web page.  Usted encontrará bajo en el lado de mano izquierda de este Web page.  Del lista de persiana, apenas escoja la lengua que usted quiere convertir el poste actual a y después de que un retardo corto un nuevo Web page aparezca con el poste que exhibió en la lengua seleccionada.  Nota - usted necesita tener escrituras permitidas en su hojeador para que el adminículo de Google exhiba en este Web page.

El adición de esta funcionalidad era challanging más que asumí inicialmente puesto que quise asegurarme de que mis postes seguían siendo útiles a un lector cuando estaban exhibidos en un idioma extranjero.  Esto significa que el motor de la traducción necesita ser dicho qué palabras y secciones a dejar solo como es.  La documentación de Google y el FAQ para este adminículo son confusos sobre cómo hacer esto para las cosas como mis cajas de presentación así que un redondo de la experimentación fue requerido.  Resulta que usted puede marcar un Web page entero, una palabra o una sección de un Web page como no ser traducido usando sigue etiquetas. ¡<! ¡- utilice el elemento de la meta para proteger Web page entero - > value='notranslate'> del name='google del <meta <! ¡- utilice el elemento del palmo para proteger una palabra o dos - > el class='notranslate'> <span no traduce estos words</span> <! - elemento del div del uso para proteger las cajas de presentación tales esto - > el class='notranslate'> del <div no traduce section</div> entero

Ahora que he imaginado cómo proteger los recortes específicos del texto y de código de ser traducido por el motor de la traducción de Google, planeo volver y modificar mis postes anteriores durante hora de hacerlos más robustos para la traducción de lengua automatizada.

Esto será absolutamente un proyecto como incluyo típicamente un número de palabras reservadas del langauge y de recortes de código programados en mis postes.  Por ejemplo, requirió sobre 100 corrige a mi poste anterior en Powershell de Microsoft antes de que fuera feliz que ese poste particular era conveniente para la traducción de lengua automatizada.

Poste de la ACTUALIZACIÓN 7/1/2009 de este fue escrito cuando utilizaba Blogspot. Todavía no he decidido cómo ejecutar la traducción automática de mis postes en blog.fpmurphy.com. Sin embargo planeo ejecutar algo pronto.

Aflicciones Globetrotting de Google

Estoy actualmente en la isla hermosa de Cebú en las Filipinas que visita con mi viejo amigo y colega Charles Richmond en IISC y que da algunas negociaciones sobre internals del OS.  Utilizo un ordenador portátil de Lenovo Thinkpad que funciona con Windows Vista último al viajar con Mozilla Firefox 3 como mi hojeador del defecto.

Firefox 3 viene con una barra de la búsqueda del defecto en la esquina derecha superior que contiene un número de motores de la búsqueda del defecto incluyendo Google. Si mecanografío un término de la búsqueda en la opción de la barra de la búsqueda de Google, Google calcula hacia fuera detrás de las escenas que estoy situado en las Filipinas, me vuelve a dirigir a www.google.com.ph y exhibe los resultados de la búsqueda con el filipino determinado de la lengua de interfaz (también deletreado como Pilipino) como se muestra aquí.

Éste no es demasiado de un obstáculo en las Filipinas sino convertirse en una molestia total cuando en Japón, China, Vietman y muchos otros países. La solución alternativa estándar para esto es forzar Google a exhibir su lengua de interfaz en inglés yendo a Google.com y fijando sus preferencias de usuario al inglés que da lugar a Google.com que crea una galleta en su máquina para persistir sus preferencias.

Es quizá un pedacito de la capacidad de destrucción superior al de las fuerzas enemigas o paranoia pero tengo disposición de Firefox para suprimir todas las galletas al terminar una sesión con el fin de aislamiento personal y de seguridad. Así Google omite de nuevo a lo que la lengua de interfaz Google omite para el país que Google piensa que soy adentro la próxima vez yo enciendo actualmente para arriba Firefox y va a Google.com.

Una forma para superar este problema no es utilizar la barra de la búsqueda de Firefox sino que por el contrario hojear a www.google.com/ncr donde la NCR representa ninguÌn país vuelva a dirigir antes de realizar cualesquiera searchs. Algo que yendo esta ruta, decidía escribir mi propio enchufe del Search Engine de modo que consiga siempre un interfaz inglés cuando utilizo la barra de herramientas de la búsqueda de Firefox Google. Resulta que esto es absolutamente fácil hacerle una vez entiende se requiere qué.

Corte y pegar el código siguiente en un archivo llamado GoogleEN.xml y salve el archivo.

xmlns= http://www.mozilla.org/2006/browser/search/ del <SearchPlugin > width= del <Image de la búsqueda del <Description>Google de <ShortName>GoogleEN</ShortName> (inglés) de la NCR </Description> <InputEncoding>UTF-8</InputEncoding> de height= 16 >data de 16 : image/x-icon; base64, method= del texto/HTML del type= del <Url de 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 + de 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> CONSIGUEN

¡Utilidad de la DD de no su abuelo!

Un artículo reciente en el compartimiento de Red Hat por Noah Gift y Grig Gheorghiu llamado esto no es su comando de la DD del grandpappy'd demostrado cómo utilizar el pitón, la utilidad y la carta API de la DD de Google para producir una carta de barra que demuestra rendimiento de procesamiento en diversos tamaños de bloque. Sin embargo la salida de la escritura del pitón era no el gráfico real sino un URL que usted entonces tuvo que pegar en un web browser para ver la carta resultante.

I aunque esta escritura sería útil pero no quiso tener que cortar y pegar un URL en un web browser así que mí decidía a eliminar ese paso.

Esta escritura del pitón se basa libremente en su escritura pero las aplicaciones las bibliotecas del urllib del pitón de conectar con Google trazan para generar un archivo de imagen del png que se exhiba posteriormente usando rutinas de pyGTK+. ¡#! re de la importación de los comandos de la importación del OS de la importación del sistema de la importación del pitón de /usr/bin/env de la clase DisplayGraph del gtk de la importación del pygtk pygtk.require ('de la importación de la importación urllib2 del urllib de la importación de OptionParser de la importación del optparse 2.0): def delete_event (uno mismo, aparato, acontecimiento, data=None):    el def falso de vuelta destruye (uno mismo, aparato, data=None):    __init del def de gtk.main_quit () (uno mismo):    self.window = gtk. Ventana (gtk.WINDOW_TOPLEVEL)    self.window.connect (delete_event, self.delete_event)    self.window.connect (destruya, self.destroy)    self.window.set_border_width (10)    self.window.set_position (gtk.WIN_POS_CENTER)    self.window.set_title (rendimiento de procesamiento del disco ")    pixbuf = gtk.gdk.pixbuf_new_from_file (/tmp/dd.png ")    os.remove (/tmp/dd.png ")    self.image = gtk. Imagen ()    self.image.set_from_pixbuf (pixbuf)    ow de self.image.sh ()    self.window.add (self.image)    cañería del def del ow de self.window.sh () (uno mismo):    clase GoogleChart de gtk.main (): __init del def (uno mismo):    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=400×250    self.gchart_axis_labels = &chxt=x, y, x, y    self.gchart_axis_position = &chxp=2,50|3.50    self.gchart_bar_settings = título del def del &chbh=30,15 (uno mismo, título):    self.gchart_title = self.gchart_title + el def del título escriben (uno mismo, los datos, las etiquetas, max_t):     self.gchart_data = self.gchart_data + data.rstrip (`, ')     self.gchart_labels = self.gchart_labels \       + etiqueta + 2: |Block%20Size|3: |Mb/s     self.gchart_axis_range = &chxr=1,0, + str (max_t+10.0)     self.gchart_scaling = &chds=0, + str (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    abrelatas = urllib2.urlopen (self.gchart_url)    ¡si opener.headers [contenido-tipo]! = imagen/png': del `       aumento BadContentTypeException (responded del servidor del `\          'con un contenido-tipo de %s \          % de opener.headers [contenido-tipo])    ábrase (/tmp/dd.png, `wb').write (opener.read ()) get_disk_throughput del def (dispositivo, tamaño de bloque):    tamaño de bloque = str (tamaño de bloque) + k del `    cmd = DD if=/dev/zero of=%s bs=%s % (dispositivo, tamaño de bloque)    salida = commands.getoutput (cmd)    rendimiento de procesamiento = 0    unidad =    para la línea en output.split (n') del `:       s = re.search (el `copió. *, (\ S+) (\ S+) $ ', línea)       si s:          rendimiento de procesamiento = s.group (1)          unidad = s.group (2)          rotura    vuelva (rendimiento de procesamiento, unidad) si == __main del __name:    uso = uso: opciones de %prog    programa de análisis = OptionParser (usage=usage)    parser.add_option (- d, - dispositivo, del dest= del dispositivo, \       dispositivo del help= a utilizar. ¡Los datos del disco serán sobreescritos! ")    (opciones, args) = parser.parse_args ()    dispositivo = options.device    si no dispositivo:       parser.print_help ()