Traduza

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
Imagem de XSLT 2.0 e de referência de programador de XPath 2.0 (programador ao programador)
Imagem de conceitos do sistema de exploração
Imagem de programação avançada no ambiente de UNIX, segunda edição (séries de computação do profissional de Addison-Wesley)
Imagem de sistemas de exploração modernos (ó edição)

Tradutor da página de Google

Hoje, eu adicionei um dispositivo a meu blogue de modo que os leitores pudessem facilmente traduzir meus bornes em qualquer de trinta e cinco línguas que usam o Google traduzissem o motor da tradução de língua do Web page.  Você encontrará baixo no lado de mão esquerda deste Web page.  De gota da lista para baixo, apenas escolha a língua que você quer converter o borne atual a e depois que um atraso curto um Web page novo aparecerá com o borne indicou na língua selecionada.  Nota - você precisa de ter os certificados permitidos em seu navegador para que o dispositivo de Google indique neste Web page.

Adicionar esta funcionalidade era challanging do que eu supor inicialmente desde que eu quis se assegurar de que meus bornes permanecessem úteis a um leitor quando indicados em uma língua estrangeira.  Isto significa que o motor da tradução precisa de ser dito que palavras e seções a sair sozinho como é.  A documentação de Google e o FAQ para este dispositivo são obscuros sobre como fazer isto para coisas como minhas caixas de exposição assim que um círculo da experimentação foi exigido.  Despeja que você pode marcar um Web page inteiro, uma palavra ou uma seção de um Web page como não ser utilização traduzida segue Tag. <! - use o elemento do meta para proteger o Web page inteiro - > value='notranslate'> do name='google do <meta <! - use o elemento da extensão para proteger uma palavra ou dois - > o class='notranslate'> <span não traduz estes words</span> <! - elemento do div do uso para proteger as caixas de exposição tais isto - > o class='notranslate'> do <div não traduz section</div> inteiro

Agora que eu figurei para fora como proteger o texto específico e o codificar pequenas notícias da tradução pelo motor da tradução de Google, eu planeio ir para trás e modificar meus bornes precedentes durante a hora de fazê-los mais robustos para a tradução de língua automatizada.

Este será completamente um projeto como eu incluo tipicamente um número palavras reservados do langauge e de pequenas notícias de programação do código em meus bornes.  Por exemplo, exigiu sobre 100 edita a meu borne precedente em Powershell de Microsoft antes que eu estive feliz que esse borne particular era apropriado para a tradução de língua automatizada.

7/1/2009 borne da ACTUALIZAÇÃO deste foram escritos quando eu usava Blogspot. Eu não decidi ainda como executar a tradução automática de meus bornes em blog.fpmurphy.com. Entretanto eu planeio executar logo algo.

Consternações Globetrotting de Google

Eu estou atualmente no console bonito de Cebu nas Filipinas que visito com meus velho amigo e colega Charles Richmond em IISC e que dou algumas negociações em internals do ósmio.  Eu uso um portátil de Lenovo Thinkpad que funciona Windows Vista final ao viajar com Mozilla Firefox 3 como meu navegador do defeito.

Firefox 3 vem com uma barra da busca do defeito no canto de righthand superior que contem um número de motores da busca do defeito que incluem Google. Se eu datilografo um termo da busca na opção da barra da busca de Google, Google figura para fora atrás das cenas que eu estou ficado situado nas Filipinas, reorienta-me a www.google.com.ph e indica-o os resultados da busca com o filipino ajustado da língua de relação (igualmente soletrado como Pilipino) como mostrado aqui.

Este não for demasiado de um obstáculo nas Filipinas mas em transformar-se um aborrecimento total quando em Japão, em China, em Vietman e em muitos outros países. A ac1ão alternativa padrão para esta é forçar Google a indicar sua língua de relação em inglês indo a Google.com e ajustando suas preferências de usuário ao inglês que conduz a Google.com que cria um bolinho em sua máquina para persistir suas preferências.

Talvez é um bocado do overkill ou paranóia mas eu tenho a instalação de Firefox para suprimir de todos os bolinhos ao terminar uma sessão com a finalidade da privacidade pessoal e da segurança. Assim Google opta de volta a o que quer que a língua de relação Google opta para o país que Google pensa que eu sou atualmente dentro a próxima vez mim ateio fogo acima a Firefox e vai a Google.com.

O one-way para superar este problema não é usar a barra da busca de Firefox mas para consultar preferivelmente a www.google.com/ncr onde o NCR representa nenhum país reoriente antes de executar algum searchs. Um pouco do que indo esta rota, eu decidi escrever meu próprio encaixe do Search Engine de modo que eu começ sempre uma relação inglesa quando eu uso a barra de ferramentas da busca de Firefox Google. Despeja que esta é completamente fácil o fazer uma vez compreende o que é exigido.

Cortare-col o seguinte código em uma lima chamada GoogleEN.xml e conserve a lima.

xmlns=” http://www.mozilla.org/2006/browser/search/” do <SearchPlugin > width= do <Image da busca do <Description>Google de <ShortName>GoogleEN</ShortName> (inglês) </Description> <InputEncoding>UTF-8</InputEncoding> do NCR de” height= 16 ″” >data de 16 ″: image/x-icon; base64, method=” texto do type= do” do <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>/HTML COMEÇ”

Utilidade do dd do não seu avô!

Um artigo recente no compartimento de Red Hat por Noah Presente e por Grig Gheorghiu chamado “isto não é seu comando do dd do grandpappy'd demonstrado como usar o pitão, a utilidade do dd e a carta API de Google para produzir uma carta de barra que mostra a produção em tamanhos de bloco diferentes. Entretanto a saída do certificado do pitão era o não o gráfico real mas um URL que você então tivesse que colar em um web browser para ver a carta resultante.

Eu embora este certificado seria útil mas não quereria ter que cortarar-col um URL em um web browser assim que no mim decidi eliminar essa etapa.

Este certificado do pitão é baseado frouxamente em seu certificado mas os usos as bibliotecas do urllib do pitão conectar a Google fazem um mapa para gerar uma lima de imagem do png que seja indicada subseqüentemente usando rotinas de pyGTK+. #! re da importação dos comandos da importação do ósmio da importação do sistema da importação do pitão de /usr/bin/env da classe DisplayGraph do gtk da importação do pygtk pygtk.require da importação da importação urllib2 do urllib da importação de OptionParser da importação do optparse ('′ 2.0): def delete_event (auto, widget, evento, data=None):    o def falso do retorno destrói (auto, widget, data=None):    __init do def de gtk.main_quit () (auto):    self.window = gtk. Janela (gtk.WINDOW_TOPLEVEL)    self.window.connect (“delete_event”, self.delete_event)    self.window.connect (“destrua”, self.destroy)    self.window.set_border_width (10)    self.window.set_position (gtk.WIN_POS_CENTER)    self.window.set_title (do “produção disco ")    pixbuf = gtk.gdk.pixbuf_new_from_file (“/tmp/dd.png ")    os.remove (“/tmp/dd.png ")    self.image = gtk. Imagem ()    self.image.set_from_pixbuf (pixbuf)    ow de self.image.sh ()    self.window.add (self.image)    cano principal do def do ow de self.window.sh () (auto):    classe GoogleChart de gtk.main (): __init do def (auto):    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 do def do ″ &chbh=30,15 (auto, título):    self.gchart_title = self.gchart_title + o def do título escrevem (auto, dados, 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,” + estreptococo (max_t+10.0)     self.gchart_scaling = “&chds=0,” + estreptococo (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    abridor = urllib2.urlopen (self.gchart_url)    se opener.headers [“índice-tipo”]! = imagem do `/png':       aumento BadContentTypeException (responded do usuário do `\          'com um índice-tipo de %s \          % de opener.headers [“índice-tipo”])    abra (“/tmp/dd.png”, `wb').write (opener.read ()) get_disk_throughput do def (dispositivo, tamanho de bloco):    tamanho de bloco = estreptococo (tamanho de bloco) + k do `    cmd = “dd if=/dev/zero of=%s bs=%s” % (dispositivo, tamanho de bloco)    saída = commands.getoutput (cmd)    produção = 0    unidade = “”    para a linha em output.split (n') do `:       s = re.search (o `copiou. *, (\ S+) (\ S+) $ ', linha)       se s:          produção = s.group (1)          unidade = s.group (2)          ruptura    retorne (produção, unidade) se == “__main” do __name:    uso = “uso: opções de %prog”    parser = OptionParser (usage=usage)    parser.add_option (“- d”, “- dispositivo”, do” dispositivo” do dest= \       dispositivo do help=” a usar-se. Os dados do disco overwritten! ")    (opções, args) = parser.parse_args ()    dispositivo = options.device    se não dispositivo:       parser.print_help ()