Envoltorio del diccionario multilingüe en línea Glosbe. Traduce y obtén definiciones de palabras entre idiomas.
Vea una lista completa de idiomas admitidos.
Agregue esta línea al Gemfile de su aplicación:
gem 'glosbe-translate'
Y luego ejecuta:
$ bundle
O instálelo usted mismo como:
$ gem install glosbe-translate
Todas las traducciones y definiciones toman los códigos de idiomas ISO-639 to
y from
en las versiones de dos o tres caracteres. Glosbe admite una larga lista de idiomas.
Métodos de clase en el objeto de lenguaje que le permiten realizar una única búsqueda:
Glosbe :: Language . translate ( "please" , from : :en , to : :nl )
=> "alstublieft"
Obtenga una variedad de definiciones en el idioma from
:
Glosbe :: Language . define ( "pineapple" , from : :en , to : :fr )
=> [ "fruit" ,
"Large sweet fleshy tropical fruit with a terminal tuft of stiff leaves." ,
"plant" ]
Obtenga una serie de definiciones en el idioma to
:
Glosbe :: Language . translated_define ( "pie" , from : :en , to : :fr )
=> [ "Plat constitué de viandes, fruits ou autres nourriture cuits dans ou sur une pâte." ,
"Plat, préparation à base de pâte aplatie au rouleau, et d’une garniture salée ou sucrée" ]
Cualquiera de los tres métodos anteriores también puede utilizar el par clave-valor más simple de from: :to
idiomas:
Glosbe :: Language . translate ( "fromage" , fr : :en )
=> "cheese"
Las traducciones y definiciones se realizan desde un objeto Language
:
language = Glosbe :: Language . new ( from : "eng" , to : "nld" )
Se aceptan símbolos y cadenas, y el código de idioma se convertirá para que coincida con lo esperado por la API.
Los mismos tres métodos están disponibles para traducir y definir una frase usando este objeto:
language . translate ( "please" )
=> "alstublieft"
language . define ( "pineapple" )
=> [ "fruit" ,
"Large sweet fleshy tropical fruit with a terminal tuft of stiff leaves." ,
"plant" ]
language . translated_define ( "pie" )
=> [ "Plat constitué de viandes, fruits ou autres nourriture cuits dans ou sur une pâte." ,
"Plat, préparation à base de pâte aplatie au rouleau, et d’une garniture salée ou sucrée" ]
Hacer una búsqueda devolverá un objeto Response
:
response = language . lookup ( "coffee" )
La respuesta representa todos los campos devueltos por la API en una estructura muy similar.
¿Estaba bien el HTTP 200?
response.success?
=> true
¿Se obtuvieron resultados?
response.found?
=> true
Los campos de la respuesta se asignan directamente para mayor comodidad:
response . from
=> "en"
response . to
=> "nl"
response . phrase
=> "coffee"
A veces puede haber un mensaje devuelto desde el servidor. Esto es particularmente interesante para las advertencias de limitación de velocidad:
response . message
=> "Too many queries, your IP has been blocked"
Los métodos convenientes extraen las mismas tres funciones y devuelven valores repetidos anteriormente:
response . translation
response . define
response . translated_define
Los resultados brutos que coinciden con la estructura de la API están disponibles aquí.
La lista de todos los resultados está disponible en una respuesta:
response . results
=> [ ... ]
Cada objeto de resultado tiene la frase traducida si está presente;
result . phrase
=> "koffie"
El resultado luego enumera a sus autores:
result . authors
=> [ ... ]
Y sus significados:
result . meanings
=> [ ... ]
Cada significado tiene lenguaje y texto:
meaning . text
=> "Een drank bekomen door infusie van de bonen van de koffieplant in heet water."
meaning . language
=> "nl"
No se garantiza que ninguno de estos campos exista. Aunque devolverán una cadena o nil
para los campos de valor y siempre devolverán una matriz vacía para los campos de colección.
El registro está predeterminado en nil
, pero se puede pasar cualquier objeto Logger
para depurar solicitudes de red.
Glosbe . logger = Logger . new ( "glosbe.log" )
Glosbe . logger = Rails . logger
Después de revisar el repositorio, ejecute bin/setup
para instalar las dependencias. Luego, ejecute rake spec
para ejecutar las pruebas. También puede ejecutar bin/console
para obtener un mensaje interactivo que le permitirá experimentar.
Para instalar esta joya en su máquina local, ejecute bundle exec rake install
.
Los informes de errores y las solicitudes de extracción son bienvenidos en GitHub en https://github.com/kmcphillips/glosbe-translate.
Ven a hablarme sobre en qué estás trabajando. Me encantaría revisar las relaciones públicas si encuentra errores o piensa en mejoras.
La gema está disponible como código abierto según los términos de la licencia MIT.