ConvertAll/0000755000175000017500000000000012574423173011615 5ustar dougdougConvertAll/doc/0000755000175000017500000000000012573703031012353 5ustar dougdougConvertAll/doc/README_de.html0000644000175000017500000003573612573411715014671 0ustar dougdoug README-Datei zu ConvertAll

README-Datei zu ConvertAll

Ein Programm zum Konvertieren von Einheiten

Geschrieben von Doug Bell
Version 0.6.1
10. September 2015

Inhalt

Hintergrund

Warum noch ein Einheiten-Konverter? Es gibt doch bereits jede Menge. Tja, ich konnte aber keinen finden, der so funktionierte, wie ich es mir vorstellte.

Mit ConvertAll kann man Einheiten auf beliebige Weise kombinieren. Wenn Sie von Zoll pro Dekade konvertieren wollen, in Ordnung. Oder von Meterpfund. Oder von nautischen Kubikmeilen. Die Einheiten müssen für niemand anderen einen Sinn ergeben.

Da ich nichts mit dem Software-Business zu tun habe, erlaube ich jedem, das Programm kostenlos zu nutzen, zu verteilen und zu modifizieren, so lange es nicht Teil eines proprietären Programms wird. Wenn Ihnen die Software gefällt, sagen Sie es ruhig weiter. Und teilen Sie mir mit, was Sie denken. Meine E-Mail-Adresse ist doug101 AT bellz DOT org.

Features

Rechtliches

ConvertAll ist freie Software. Sie können es unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 der Lizenz oder (nach Ihrer Option) jeder späteren Version.

Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE. Details finden Sie in der Datei LICENSE, die mit diesem Programm ausgeliefert wird.

Systemanforderungen

Linux

ConvertAll benötigt die folgenden Bibliotheken:

Diese Libraries sind relativ neu - evtl. gibt es kein Paket für Ihre Distribution. In diesem Fall gibt es noch eine frühere Version von ConvertAll (0.3.2), die von älteren Versionen der Libraries abhängt. Diese steht aber leider nur in Englisch zur Verfügung.

Windows

Wenn Sie die Dateien aus dem Binärpaket nutzen, sollte ConvertAll auf jedem Computer mit Windows XP, Vista, 7 oder 8 laufen.

Installation

Linux

Packen Sie die Quelldateien aus dem convertall tar-Archiv aus, wechseln Sie dann in einem Terminal in das Verzeichnis ConvertAll. Für eine einfache Installation führen Sie nur den folgenden Befehl als „root“ aus: python install.py

Um alle Installationsoptionen zu sehen, geben Sie ein: python install.py -h

Um ConvertAll unter einem anderen Verzeichnispräfix zu installieren (der Default ist /usr/local), geben Sie dies ein: python install.py -p /prefix/pfad

Windows

Führen Sie einfach die heruntergeladene Installationsdatei aus (convertall-x.x.x-install-all.exe). Damit wird das Programm mit den Libraries installiert und optional werden Dateitypzuordnungen und Verweise angelegt.

Wenn Sie den Quellcode modifizieren wollen oder eigene PyQt-Programme für Windows schreiben wollen, dann folgen Sie nicht den gerade beschrieben Ablauf. Stattdessen müssen Sie Python und das Binary von PyQt installieren. Dann entpacken Sie den Sourcecode und die Daten-Dateien der Linux-Version (die convertall tar-Datei) in ein Verzeichnis Ihrer Wahl und führen die Datei convertall.py aus.

ConvertAll benutzen

Grundlagen

Geben Sie einfach einen Einheitennamen in das Eingabefeld „Ausgangseinheit“ ein. Während Sie tippen, verschiebt sich die Liste unter dem Eingabefeld, bis Einheitennamen angezeigt werden, die Ihrer Eingabe ähnlich sind. Geben Sie entweder das Einheitenkürzel bzw. den Einheitennamen komplett an oder drücken Sie die Eingabetaste, um die in der Liste hervorgehobene Einheit zu nehmen. Natürlich können Sie auch mit der Maus auf eine Einheit aus der Liste klicken, um sie in das Eingabefeld zu übernehmen. Sie können auch die Pfeiltasten nach oben und unten benutzen, um benachbarte Einheiten aus der Liste auszuwählen.

Wiederholen Sie die Einheiteneingabe im Eingabefeld „Zieleinheit”. Wenn Sie fertig und die Einheiten kompatibel sind, dann sehen Sie, dass die numerischen Eingabefelder unterhalb der Einheitenlisten aktiviert werden. Sie können in eines der beiden Felder einen Zahlenwert eingeben, und im anderen Feld wird das Ergebnis der Umwandlung stehen.

Einheiten kombinieren

Die wahre Stärke von ConvertAll liegt in seiner Fähigkeit, mehrere Einheiten zu kombinieren. Geben Sie einfach die Einheitennamen mit einem ‚*‘ oder ‚/‘ dazwischen ein. Damit können Sie Einheiten wie „N*m” oder „km/hr“ ausdrücken. Das Symbol ‚^‘ kann für Exponenten genutzt werden, wie „m^3“ oder „kg*m/s^2”. Negative Exponenten sind erlaubt, um Einheiten wie „sec^-1“ (pro Sekunde) angeben zu können, aber es kann sein, dass sich dadurch Multiplikations- oder Divisionszeichen umkehren („m*s^-2“ wird zu „m/s^2”).

Multiplikation und Division haben die gleiche Präzedenz und werden daher von links nach rechts ausgewertet. Es können auch Klammern benutzt werden, um die Einheiten im Nenner zu gruppieren. Daher kann „m / sec / hr“ auch als „m / (sec * hr)“ eingegeben werden. Die Variante mit den Klammern ist möglicherweise weniger verwirrend.

Die Schaltflächen unter den Einheitenlisten („X“, „/“, „^2“, „^3“) fügen ebenfalls den jeweiligen Operator hinter der Einheit ein, die der Schreibmarke am nächsten steht. Die Schaltflächen für die Exponenten ersetzen den Exponenten der Einheit.

Auch wenn Sie auf eine Einheit aus der Liste klicken, wird im Allgemeinen die der Schreibmarke am nächsten stehende Einheit im Eingabefeld ersetzt.

Die Schaltfläche „Einheit löschen“ unter den Operator-Schaltflächen kann benutzt werden, um das Eingabefeld zu löschen und eine neue Einheit eingeben zu können.

Abkürzungen

Wenn Sie Einheitennamen eingeben, werden Leerzeichen ignoriert. Sie können sie also weglassen. Wenn Sie einen Teil eines Einheitennamens bereits eingetippt haben, wird der entsprechende Eintrag in der Liste hervorgehoben. Durch Drücken der Eingabetaste wird der Name im Eingabefeld vervollständigt. Auch durch Betätigen der Tabulatortaste wird der Name vervollständigt und zum nächsten Eingabefeld gesprungen.

Die Schaltfläche „Zuletzt benutzte Einheit“ öffnet ein Menü der zuletzt verwendeten Einheiten und Einheitenkombinationen. Die aktuelle Einheitenkombination wird durch eine Auswahl in diesem Menü ersetzt.

Der zu konvertierende Zahlenwert kann entweder auf der „Ausgangs”- oder der „Ziel”-Seite eingegeben werden. Für die Eingabe kann Standard- oder wissenschaftliche Schreibweise benutzt werden, oder ein Ausdruck mit einfachen mathematischen Operatoren (+, -, *, /, **) und Klammern.

Einheitensuche

Die Einheitensuche kann benutzt werden, um Einheiten nach Typ zu filtern und/oder mit einem Textstring nach Einheiten zu suchen. Sie zeigt in einem neuen Fenster eine separate Einheitenliste. Die Liste wird anhand des Filters und der Sucheingabe aktualisiert.

Mit Schaltflächen weiter unten im Suchfenster kann die ausgewählte Einheit zu den Einheiten in einem Eingabefeld im Hauptfenster hinzugefügt werden. Die „Ersetzen”-Schaltflächen ersetzen die gesamte Eingabe durch die ausgewählte Einheit. Die „Einfügen”-Schaltflächen ändern nur den Teil einer kombinierten Einheit, der aktiv ist (bei der Schreibmarke im jeweiligen Eingabefeld des Hauptfensters).

Optionen

Die Schaltfläche „Optionen...“ öffnet ein Fenster, in dem sich verschiedene Voreinstellungen ändern lassen. Diese werden automatisch gespeichert, ConvertAll startet das nächste Mal automatisch mit den zuletzt gewählten Einstellungen.

Die erste Option bestimmt die Anzeige numerischer Ergebnisse, einschließlich der Verwendung einer wissenschaftlichen Zahlennotation und der Anzahl der dargestellten Dezimalstellen. Setzen Sie die Zahl der Dezimalstellen nicht zu niedrig, da hierdurch die Genauigkeit stark leiden kann. Sechs oder mehr Stellen sind empfohlen (acht ist die Voreinstellung).

Es gibt eine Option, um festzulegen, wie viele der zuletzt benutzten Einheiten gespeichert werden sollen. Setzt man die Zahl auf Null, dann werden die Schaltflächen für den Zugriff auf die zuletzt benutzten Einheiten deaktiviert.

Ein Option dient dazu, die Schaltflächen mit den Operationen („X“, „/“, „^2“, „^3“, „Einheit löschen“ und „Zuletzt verwendete Einheit“) zu verstecken. Durch diese Option kann man Platz sparen, falls Sie die Operatoren nur mit der Tastatur eingeben.

Weitere Schaltflächen im Optionsdialog dienen dazu, die Farben der Textfelder zu ändern.

Nichtlineare Umwandlungen

Bei einigen Einheiten ist die Umwandlung nichtlinear. Dazu gehören zum Beispiel die Temperaturenskalen für Fahrenheit und Celsius (da der Nullpunkt einen Offset hat) und für American Wire Gauge (amer. Kodierung für Drahtdurchmesser, logarithmische Skala). Die nichtlinearen Einheiten sind in der Kommentarspalte (rechts von der Typ-Spalte) als solche gekennzeichnet.

Diese Einheiten können nur umgewandelt werden, wenn sie nicht mit anderen Einheiten kombiniert werden und keinen Exponenten tragen. Andernfalls wäre die Umwandlung nicht sinnvoll.

Verwendung auf der Kommandozeile

Umwandlungen können auf der Kommandozeile (Linux-Konsole oder Windows/DOS Befehlsaufforderung) ausgeführt werden, ohne die grafische Benutzerschnittstelle aufzurufen. Geben Sie den Befehl („convertall“ unter Linux, „convertall_dos“ aus dem Windows-Binäarpaket), gefolgt von der Zahl, der Ausgangseinheit und der Quelleinheit an, getrennt durch Leerzeichen. Wenn Einheitennamen Leerzeichen enthalten, müssen sie in Anführungszeichen gesetzt werden. Alternativ können Sie auch die Option „-i“ auf der Kommandozeile verwenden („convertall -i“ unter Linux, „convertall_dos -i“ unter Windows), die Angaben werden dann interaktiv eingegeben.

Wenn die Umwandlung erfolgt ist, fragt ConvertAll nach einer neuen Zahl für die gleiche Umwandlung. Mit „n“ wird eine neue Umwandlung gestartet, mit „r“ kann die Konversion umgekehrt werden, mit „q“ wird das Programm beendet.

Mit der Option „-h“ auf der Kommandozeile („convertall -h“ unter Linux, „convertall_dos -h“ unter Windows) bekommen Sie eine ausführlichere Liste der Optionen.

Versionshistorie

Die vollständige Versionshistorie befindet sich in der englischen Version der README-Datei.

Fragen, Kommentare, Kritik?

Man kann mich per E-Mail erreichen unter: doug101 AT bellz DOT org
Ich freue mich über jedes Feedback, einschließlich Mitteilung über Fehler, die Sie finden. Schauen Sie auch regelmäßig unter www.bellz.org nach Updates.

ConvertAll/doc/README_es.html0000644000175000017500000003260512573411731014676 0ustar dougdoug Archivo "léame" para ConvertAll

Archivo "Léame" para ConvertAll

Un programa para convertir unidades

Escrito por Doug Bell
Versión 0.6.1
Septiembre 10, 2015

Contenidos

Introducción

¿Porqué otro convertidor de unidades? Existen muchos por allí. Bien, no he podido encontrar uno que funcionara en la forma que yo quería.

Con ConvertAll, usted puede combinar las unidades en la forma que quiera. Si usted quiere convertir desde pulgadas por década, está bien. O desde metro-libra. O desde millas náuticas al cubo. Las unidades no tienen porqué tener sentido para los demás.

Dado que no estoy en el negocio del software, distribuyo este programa libremente para que cualquiera lo utilice, lo distribuya o lo modifique, siempre y cuando no sea incorporado en ningún programa propietario. Si le gusta este programa siéntase en libertad de darlo a conocer a otros. Y hágame saber qué es lo que piensa - mi dirección de e-mail es doug101 AT bellz DOT org

Características

Cuestiones legales

ConvertAll es software libre; puede usted distribuirlo y/o modificarlo bajo los términos de la licencia pública general GNU como ha sido publicada por la Free Software Foundation; ya sea la versión 2 de la licencia o (a su opción) cualquier versión posterior.

Este programa es distribuido con la esperanza de que resulte de utilidad, pero SIN NINGUNA GARANTÍA. Mire el archivo de LICENCIA distribuido con este programa para mayor información.

Requerimientos del sistema

Linux

ConvertAll requiere las siguientes librerías:

Windows

Utilizando los archivos provistos en la distribución binaria, ConvertAll debería correr en cualquier computador utilizando Windows XP, Vista, 7 o 8.

Instalación

Linux

Extraiga los archivos fuente del archivo tar de convertall, cambie al directorio ConvertAll en la terminal. Para una instalación básica, simplemente ejecute el siguiente comando como administrador: python install.py

Para ver todas las opciones de instalación, utilice: python install.py -h

Para instalar ConvertAll con un prefijo diferente (el valor por defecto es /usr/local), utilice: python install.py -p /prefix/path

Windows

Simplemente ejecute el archivo de instalación descargado (convertall-x.x.x-install-all.exe). Esto instalará el programa con sus librerías y opcionalmente creará las asociaciones de archivos y los accesos directos.

Si usted desea modificar el código fuente o escribir sus propios programas PyQt para Windows, no utilice el procedimiento anterior. En cambio, usted necesita instalar Python y los binarios para PyQt. Extraiga entonces el código fuente y los archivos de datos desde la versión para Linux (el archivo tar para convertall) a un directorio de su elección y ejecute el archivo convertall.py.

Utilizando ConvertAll

Bases

Simplemente escriba el nombre de una unidad en la ventana de edición "Desde unidad" (From Unit). Mientras escribe, la lista debajo se moverá para mostrar el nombre de la unidad más cercano. Puede o bien escribir el nombre completo de la unidad o su abreviación o presionar Enter para utilizar la unidad seleccionada en la lista. Por supuesto, clickando con el ratón en una unidad de la lista también agregará la unidad a la ventana de edición. También es posible utilizar las teclas "arriba" y "abajo" para seleccionar una unidad de la lista.

Repita el procedimiento para seleccionar unidades en la ventana de edición "A unidad" (To Unit). Cuando esté listo, si las unidades son compatibles verá que se activa la ventana de edición numérica debajo de la lista de unidades. Un número puede ser escrito en cualquiera de las ventanas numéricas y la otra mostrará el resultado de la conversión.

Combinando unidades

La verdadera fuerza de ConvertAll descansa en su habilidad para combinar múltiples unidades. Simplemente escriba los nombres de las unidades con '*' o '/' entre ellas. Esto permite entradas como "m*kg" o "km/hr". El símbolo '^' puede utilizarse para exponentes, como "cm^3" o "cm*gr/seg^2". Exponentes negativos pueden utilizarse para unidades como "seg^-1" (por segundo), pero puede cambiar entre los símbolos de multiplicación y división ("cm*seg^-2" se convierte en "cm/seg^2").

Multiplicación y división tienen la misma precedencia, por lo que son evaluadas de izquierda a derecha. Es posible utilizar paréntesis para agrupar unidades en el denominador. De esta forma "m / seg / kg" puede ser también escrito como "m / (seg * kg)". La versión entre paréntesis es probablemente menos confusa.

Los botones debajo de las listas de unidades ('X', '/', '^2', '^3') insertarán también los correspondientes operadores después de la unidad más cercana al cursor. Los botones con exponentes reemplazarán los exponentes de la unidad.

En modo semejante, haciendo click en una unidad de la lista generalmente reemplaza la unidad más cercana al cursor.

El botón de "Limpiar unidades" (Clear Unit) debajo de los botones con los operadores puede ser utilizado para vaciar la ventana de edición de unidades y así permitir que nuevas unidades sean escritas.

Atajos de teclado

Cuando se escriben unidades, los espacios son ignorados por lo que pueden evitarse. También será generalmente ignorado si la forma plural del nombre de la unidad es introducida. Cuando una unidad escrita parcialmente es seleccionada de la lista, presionar Enter completará el nombre. Además, presionar la tecla tab completará el nombre y moverá el cursor al siguiente campo de entrada.

El botón "Unidades recientes" (Recent Unit) abre un menú con las unidades y combinaciones de unidades recientemente utilizadas. La combinación de unidades actual será reemplazada con cualquier selección de ese menú.

El número a ser convertido puede ser ingresado ya sea en "Desde" o en "a". Notación científica estándar puede utilizarse, o una expresión incluyendo los operadores matemáticos normales (+, -, *, /, **) y paréntesis puede ser escrita.

Buscador de unidades

El buscador de unidades (Unit Finder) puede utilizarse para filtrar unidades por tipo y/o buscar unidades utilizando una cadena de texto. El buscador mostrará una lista de unidades separada en una nueva ventana. La lista será actualizada según el filtro y la cadena de búsqueda utilizados.

Los botones cerca de la parte baja de la ventana del buscador agregarán la unidad elegida a las unidades de la ventana principal. El botón "Reemplazar" (Replace) reemplazará toda la combinación de unidades con la selección. El botón "Insertar" (Insert) cambia solo la parte de la unidad combinada que está activa (a la posición del cursor en la ventana principal).

Opciones

El botón "Opciones..." (Options) permite cambiar varios valores por defecto de la configuración. Estos valores son automáticamente almacenados y por lo tanto ConvertAll iniciará con los valores utilizados por última vez.

La primer opción controla la forma en que se muestran los resultados numéricos, incluyendo el uso de notación científica y el número de decimales a utilizar. Tenga cuidado con seleccionar el número de decimales muy bajo ya que podría significar una importante pérdida de precisión. Seis o más dígitos es recomendable (ocho es el valor por defecto).

Sigue la opción para configurar el número de unidades recientemente utilizadas a ser salvadas. Configurando este valor en cero deshabilita el botón "Unidades recientes".

A continuación se tiene la opción de ocultar los botones con los operadores (x, /, ^2, ^3, Clear Unit and Recent Unit). Esto puede utilizarse para salvar espacio en el caso que el teclado sea utilizado para entrar los operadores.

La última opción controla los colores de los campos de texto.

Conversiones no-lineares

La conversión de algunas unidades es no linear. Ejemplos de esto incluyen las escalas de temperatura Fahrenheit y Celsius (debido a los diferentes puntos para el cero) y el "American Wire Gauge" que es logarítmica. Las unidades no lineares están etiquetadas como tales en la columna comentarios (Comments) situada a la derecha de la columna "Tipo" (Type).

Estas unidades pueden ser convertidas solo cuando no están combinadas con otras unidades o utilizadas con un exponente. De otro modo la conversión no tendrá significado.

Uso desde la línea de comandos

Conversiones pueden ser efectuadas desde la línea de comandos (consola Linux o DOS) sin invocar la interfaz gráfica. Es suficiente entrar el comando ("convertall" en Linux, "convertall_dos" con el binario para Windows), el número, la unidad desde la que se quiere convertir y la unidad a la que se quiere llegar (separada por espacios) para realizar la conversión. Los nombres de las unidades que contengan espacios deberán ser rodeados de comillas. O, para que el programa pregunte por cada unidad, utilizar la opción "-i" ("convertall -i" en Linux, "convertall_dos -i" en Windows).

Después de la conversión, ConvertAll preguntará por un nuevo número para realizar la misma conversión. Puede utilizarse "n" para iniciar una nueva conversión, "r" para invertir la conversión o "q" para salir del programa.

Para una lista detallada de las opciones, utilice la opción "-h" ("convertall -h" en Linux, "convertall_dos -h" en Windows).

Historia

La revisión histórica completa puede ser encontrada en la versión inglesa de este archivo.

¿Preguntas, comentarios, críticas?

Puedo ser contactado por email a: doug101 AT bellz DOT org
Agradezco cualquier feedback, incluyendo reporte de cualquier error que usted encuentre. Además, puede usted también consultar periódicamente el sitio www.bellz.org por cualquier actualización.

ConvertAll/doc/README.html0000644000175000017500000005777512573702777014243 0ustar dougdoug ConvertAll ReadMe

ReadMe file for ConvertAll

a unit conversion program

Written by Doug Bell
Version 0.6.1
September 10, 2015

Contents

Background

Why write another unit converter? There are plenty of them out there. Well, I couldn't find one that worked quite the way I wanted.

With ConvertAll, you can combine the units any way you want. If you want to convert from inches per decade, that's fine. Or from meter-pounds. Or from cubic nautical miles. The units don't have to make sense to anyone else.

Since I'm not in the software business, I'm making this program free for anyone to use, distribute and modify, as long as it is not incorporated into any proprietary programs. If you like the software, feel free to let others know about it. And let me know what you think - my email address is doug101 AT bellz DOT org

Features

Legal Issues

ConvertAll is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either Version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. See the LICENSE file provided with this program for more information.

System Requirements

Linux

ConvertAll requires the following libraries:

If these libraries are not be available for your distribution, an earlier version of ConvertAll (0.5.2) that depends on older libraries is still available.

Windows

Using the files provided in the binary distribution, ConvertAll should run on any computer running Windows XP, Vista, 7, 8 or 10.

Installation

Linux

Extract the source files from the convertall tar file, then change to the ConvertAll directory in a terminal. For a basic installation, simply execute the following command as root: python install.py

If your distribution defaults to Python 2.x, you may need to substitute python3, python3.2 or python3.3 for python in these commands.

To see all install options, use: python install.py -h. To install ConvertAll with a different prefix (the default is /usr/local), use: python install.py -p /prefix/path

Windows

To install for all users, execute the ConvertAll-x.x.x-install-all.exe file. Administrator permissions are required.

To install for a single user (administrator rights are not required), execute the ConvertAll-x.x.x-install-user.exe file.

For a portable install, execute the ConvertAll-x.x.x-install-user.exe file, uncheck the shortcuts and uninstaller tasks, and check the portable config task.

Using ConvertAll

Basics

Simply type a unit name in the "From Unit" edit window. As you type, the list below the window will scroll to show unit names which are close matches. Either type the complete unit abbreviation or unit name or hit the return key to use the unit highlighted in the list. Of course, clicking with the mouse on a unit in the list will also add the unit to the edit window. You may also use the up and down arrow keys to select nearby units from the list.

Repeat the unit selection in the "To Unit" edit window. When done, if the units are compatible, you will see the numeric edit windows below the unit lists activate. A number may be entered into either numeric window and the other window will display the conversion result.

Combining Units

The real strength of ConvertAll lies in its ability to combine multiple units. Simply type the unit names with an '*' or a '/' between them. This allows the entry of units such as "ft*lbf" or "mi/hr". The '^' symbol may be used for exponents, such as "ft^3" or "ft*lbm/sec^2". Negative exponents are allowed for units such as "sec^-1" (per second), but may switch the multiplication or division symbol ("ft*sec^-2" becomes "ft/sec^2").

Multiplication and division have the same precedence, so they are evaluated left-to-right. Parenthesis may also be used to group units in the denominator. So "m / sec / kg" can also be entered as "m / (sec * kg)". The version with parenthesis is probably less confusing.

The buttons below the unit lists ('X', '/', '^2', '^3') will also place the operators after the unit nearest to the cursor. The exponent keys will replace the unit's exponent.

Similarly, clicking on a unit from the list generally replaces the unit nearest the cursor.

The "Clear Unit" button below the operator buttons may be used to empty the unit edit window to allow a new unit to be entered.

Shortcuts

When typing unit names, spaces are ignored, so they may be skipped. It is also generally ignored if a plural form of the unit name is typed. When a partially typed unit is highlighted in the list, hitting enter will complete the name. Also, hitting the tab key will complete the name and move to the next entry field.

The "Recent Unit" button opens a menu of recently used units and unit combinations. The current unit combination is replaced with any selections from this menu.

The number to be converted may be entered in either the "From" or "To" unit side. Standard or scientific notation may be used, or an expression including the normal math operators (+, -, *, /, **) and parenthesis may be entered.

Unit Finder

The unit finder can be used to filter units by type and/or search for units using a text string. It displays a separate unit list in a new window. The list will be updated based on the filter and search string entries.

Buttons near the bottom of the finder window add the selected unit to the units in the main window. The "Replace" buttons replace an entire combined unit with the selection. The "Insert" button changes only the part of a combined unit that is active (at the cursor in the main window).

Options

The "Options..." button allows for changing several default settings. These settings are automatically stored so that ConvertAll will re-start with the settings last used.

The first options control the display of numerical results, including the use of scientific notation and the number of decimal places. Be cautious about setting the number of decimal places to a low value, which can result in a significant loss of accuracy. Six places or higher is recommended (eight is the default).

There is an option to set the number of recent units to be saved. Setting it to zero will disable the Recent Unit buttons. Another option will automatically load the most recent previous units at startup.

There is an option to hide the operator text option buttons (x, /, ^2, ^3, Clear Unit and Recent Unit). These can be hidden to save space if the keyboard will be used to enter the operators.

Buttons are also included on the options dialog to control the colors of the text fields.

Non-Linear Conversions

The conversion of some units is non-linear. Examples of these include the Fahrenheit and Celsius temperature scales (due to an offset zero point) and the American Wire Gauge (logarithmic). The non-linear units are labeled as such in the comments column (located to the right of the "Type" column).

These units can be converted only when they are not combined with other units or used with an exponential operator. Otherwise the conversion would not be meaningful.

Command Line Usage

Conversions may be done from the command line (Linux or DOS console) without invoking the graphical interface. Enter the command ("convertall" on Linux, "convertall_dos" from the Windows binary), the number, the from unit and the to unit (separated by spaces) to do the conversion. Unit names containing spaces should be surrounded by quotes. Or, to be prompted for each unit entry, use the "-i" option ("convertall -i" on Linux, "convertall_dos -i" from Windows).

After the conversion is done, ConvertAll will prompt for a new number to do the same conversion. Or "n" can be entered to start a new conversion, "r" to reverse the conversion or "q" to quit.

For a more detailed list of options, use the "-h" option ("convertall -h" on Linux, "convertall_dos -h" on Windows).

Revision History

September 10, 2015 - Release 0.6.1

February 1, 2014 - Release 0.6.0

November 2, 2011 - Release 0.5.2

March 31, 2011 - Release 0.5.1

May 2, 2010 - Translation Update 0.5.0b

April 23, 2010 - Release 0.5.0

September 24, 2009 - Release 0.4.3

May 28, 2008 - Release 0.4.2

January 22, 2008 - Release 0.4.1

October 5, 2006 - Release 0.4.0

October 5, 2006 - Release 0.3.2

February 14, 2005 - Release 0.3.1

March 11, 2004 - Release 0.3.0

November 18, 2003 - Release 0.2.4

March 24, 2003 - Release 0.2.3

May 28, 2002 - Release 0.2.2a

May 16, 2002 - Release 0.2.2

September 17, 2001 - Release 0.2.1

August 20, 2001 - Release 0.2.0

August 10, 2001 - Release 0.1.1

July 28, 2001 - Release 0.1.0

Questions, Comments, Criticisms?

I can be contacted by email at: doug101 AT bellz DOT org
I welcome any feedback, including reports of any bugs you find. Also, you can periodically check back to www.bellz.org for any updates.

ConvertAll/doc/README_fr.html0000644000175000017500000003216212573411741014675 0ustar dougdoug ConvertAll ReadMe

Fichier ReadMe de ConvertAll

un logiciel de conversion d'unités

écrit par Doug Bell
Version 0.6.1
10 septembre 2015

Contenus

Fondement

Pourquoi écrire un autre convertisseur d'unités? Eh bien, je n'en avais trouvé aucun qui était comme je le voulais.

Avec ConvertAll, vous pouvez combiner les unités comme vous le voulez. Si vous voulez convertir des pouces en kilomètre, ca fonctionne! Les unités n'ont pas à avoir de sens pour personne d'autres que vous.

Comme je ne suis pas dans l'industrie du logiciel, je fais ce programme librement, je le distribue librement et j'autorise n'importe qui à le copier ou le modifier tant qu'il ne se retrouve pas dans un logiciel propriétaire. Si vous aimez ce logiciel, sentez-vous libre d'en parler. Aussi, donnez-moi des commentaires par courriel - mon adresse est doug101 AT bellz.org

Capacités

Dispositions légales

ConvertAll est un logiciel libre; vous pouvez le redistribuer et/ou le modifier sous les termes de la licence GNU GPL (GNU General Public License) comme publiée par la Free Software Foundation; la version 2 de cette license ou (comme vous le voulez) une version plus récente.

Ce programme est distribué dans l'espoir d'être utile, mais SANS AUCUNE GARANTIE. Voyez le fichier LICENSE fourni avec ce programme pour plus d'information.

Minimum système

Linux

ConvertAll requiert les librairies suivantes :

Ces librairies sont relativement nouvelles. Des paquets n'existent peut-être pas pour votre distribution. Dans ce cas, une version antérieure de ConvertAll (0.3.2) est toujours disponible.

Windows

En utilisant les binaires de ConvertAll, n'importe quel PC utilsant Windows XP, Vista, Windows 7 ou Windows 8 devrait fonctionner.

Installation

Linux

Extraire les sources du fichier tar de convertall. Ensuite, allez dans le dossier ConvertAll. Pour une utilisation de base, tapez la commande suivante en mode super utilisateur (root) : python install.py

Pour les options, utilisez: python install.py -h

Pour installer ConvertAll avec un prefix différent (par défaut c'est /usr/local), utilisez: python install.py -p /prefix/path

Windows

Simplement utiliser le fichier téléchargé (convertall-x.x.x-install-all.exe). Cela installera les fichiers nécessaires, fera les associations et créera les raccourcis.

Si vous souhaitez modifier le code source ou écrire vos propres programmes PyQt pour Windows, n'utilisez pas les procédures ci-haut. À la place, vous devez installer Python et les fichiers binaires pour PyQt. Ensuite, extraire le code source et les fichiers de données de la version Linux (fichier tar convertall) dans un dossier de votre choix et exécuter convertall.py

Utiliser ConvertAll

Bases

Simplement écrire le nom d'une unité dans le champ "de l'unité". Au fur que vous écrivez, une liste apparaîtra et vous pourrez sélectionner la bonne. Tapez l'abréviation complète, le nom complet ou sélectionné en un dans la liste et taper retour. Cliquer avec la souris fonctionne également tout comme les flèches haut et bas.

Refaire les mêmes étapes dans le champ "vers l'unité". Quand vous aurez terminé, si les unités sont compatibles, vous verrez un champ pour entrer des valeurs numériques sous les listes. Entrer un nombre dans un champ et vous verrez le résultat de la conversion dans l'autre champ.

Combiner les unités

La force de ConvertAll repose dans son habileté à combiner plusieurs unités. Écrivez simplement le nom de deux unités avec un "*" ou un "/" entre eux. Ainsi, cela permet les km/h ou les j/s. Le symbole "^" peut être utilisé pour des m?? "m^2". Même les exposants négatifs "sec^-1" sont possibles, mais le symbole de la division apparaîtra. ("m*sec^-2" deviendra "m/sec^2")

Dans ConvertAll, la multiplication passe avant la division. Donc "m/sec*h" veut dire "m/(sec*h)". Donc, "m/sec/h" revient au même que "m*h/sec". Faites donc attention aux priorités.

Les boutons sous les listes d'unités ('X', '/', '^2', '^3') placeront l'opérateur sur l'unité le plus près du curseur.

Aussi, cliquer sur une unité dans la liste remplace généralement l'unité la plus près du curseur.

Le bouton "Effacer l'unité" sous les opérateurs peu être utilisé pour nettoyer le champ et ainsi laissez de la place pour une nouvelle unité.

Raccouris

Quand vous tapez le nom d'une unité, les espaces seront ignorés. Ils peuvent donc être sautés. Le pluriel aussi est ignoré. Quand vous avez entré un nom partiel d'unité, si vous tapez retour, le nom s'écrira au complet. Si vous utilisez la touche TAB, le curseur ira au champ suivant en plus.

Le nombre devant être converti peut être entré dans le champ "De" ou "Vers" sans problème. La notation décimale et scientifique peuvent être utilisés tout comme les expressions usuelles en mathématique (+, -, *, /, **).

Trouver une unité

Le chercheur d'unité peut être utilisé pour filtrer les unités par type et/ou pour chercher des unités en utilisant une chaîne de caractères. Cela fera apparaître une liste séparée dans une nouvelle fenêtre. Cette liste sera ensuite mise à jour en fonction des filtres utilisés.

Les boutons près du bas de la fenêtre du chercheur ajoutent l'unité sélectionnée dans la fenêtre principale. Le bouton "Remplacer" remplace toutes les unités combinées par la sélection. Le bouton "Insertion" remplace seulement la partie active des unités.

Options

Le bouton "Options..." permet de changer les paramètres par défaut. Les nouveaux paramètres sont enregistrés automatiquement, donc à la prochaine utilisation de ConvertAll, vos paramètres modifiés seront encore présents.

Les premières options contrôlent l'affichage de résultats numériques, incluant l'utilisation de notation scientifique et le nombre de décimales. Faites attention si vous mettez un très petit nombre de décimal, car tout deviendrait moins précis. Six décimales ou plus sont recommandées (par défaut c'est huit).

Il y a une option pour cacher les boutons des opérateurs (x, /, ^2, ^3 and Clear Unit). Ils peuvent être cachés pour sauver de l'espace si le clavier est utilisé pour entrer ces opérateurs.

Des boutons sont aussi disponibles pour changer la couleur des champs de texte.

Conversion non linéaire

La conversion de quelques unités est non linéaire (non proportionnel). La conversion de la température des Fahrenheit et des Celsius est un exemple de conversion non linéaire. Les unités non linéaires sont identifiées dans les commentaires (à droite de la colonne "Type").

Ces unités ne peuvent être converties que lorsqu'ils sont utilisés seuls et sans exposants. Sinon la conversion ne sera pas juste.

Utilisation de la ligne de commande

Les conversions peuvent être faites à partir de la ligne de commande (dans un terminal Linux ou DOS). Entrer la commande ("convertall"), le nombre, l'unité à partir de et l'unité vers (le tout séparé par des espaces) pour faire une conversion. Les unités dont le nom comporte des espaces doit être entourées de guillemets. Encore, si vous voulez qu'on vous demande les entrées, utilisez "convertall -i" en ligne de commande.

Une fois la conversion terminée, ConvertAll vous demandera pour un nouveau nombre pour faire la même conversion. Vous pourrez soit utiliser "r" pour faire la conversion inverse ou "q" pour quitter.

Pour la liste complète des options, entrer "convertall -h" à l'invite.

Historique

23 mars 2010 - Version 0.4.90

L'historique complet du logiciel peut être trouvé dans la version anglaise du fichier README.

Questions, Commentaires, Critiques?

Vous pouvez me contacter par email à l'adresse : doug101 AT bellz.org
Tous les commentaires sont les bienvenus incluant les rapports de bogues. Aussi, vérifié périodiquement au www.bellz.org pour les mises à jour.

ConvertAll/doc/INSTALL0000644000175000017500000000063610736723300013411 0ustar dougdougConvertAll Installation Notes Extract the source files from the convertall tar file, then change to the 'ConvertAll' directory in a terminal. For a basic installation, simply execute the following command as root: 'python install.py' To see all install options, use: 'python install.py -h' To install ConvertAll with a different prefix (the default is '/usr/local'), use: 'python install.py -p /prefix/path' ConvertAll/doc/README_ru.html0000600000175000017500000012127112573702200014675 0ustar dougdoug ConvertAll ReadMe

Руководство по ConvertAll

программа для конвертирования величин

Автор Doug Bell
Версия 0.6.1
10 сентября 2015

Содержание

Введение

Для чего писать ещё один конвертер величин? Да, их множество. Но, я не нашёл такого, который бы работал так, как я хочу.

С помощью ConvertAll можно комбинировать величины как вам захочется. Если Вы хотите конвертировать дюймы за декаду, запросто. Или перевести величину из метр-фунтов. Или морских миль в кубе. Величины не должны иметь смысл для кого-то ещё.

Я не преследую коммерческой цели и делаю эту программу бесплатной для использования, распространения и изменения, так как она не включает в себя никаких проприетарных программ. Если Вам понравилась программа, поделитесь с другими своей находкой. Можете также высказать своё мнение о программе - мой электронный адрес: doug101 собака bellz точка org.

Возможности

Лицензия и распространение

ConvertAll является свободным программным обеспечением ; Вы можете распространять и / или изменять его в соответствии с условиями GNU General Public License , опубликованной Фондом свободного программного обеспечения, либо версии 2 Лицензии, либо (по вашему выбору ) любой более поздней версии.

Эта программа распространяется в надежде, что будет полезна, но БЕЗ ВСЯКОЙ ГАРАНТИИ. Смотри файл LICENSE для подробной информации.

Системные требования

Linux

ConvertAll зависит от следующих библиотек:

Если данные библиотеки не доступны для Вашего дистрибутива, доступна более ранняя версия ConvertAll (0.5.2) которая зависит от более старых версий библиотек.

Windows

Используя файлы дистрибутива, ConvertAll должен работать на любом компьютере под Windows XP, Vista, 7, 8 или 10.

Установка

Linux

Распакуйте исходные файлы convertall из tar архива, затем перейдите в директорию ConvertAll в терминале. Для стандартной установки просто запустите команду с правами root:

python install.py

Если в Вашем дистрибутиве по умолчанию используется Python 2.x, необходимо подставить python3, python3.2 или python3.3 вместо python в этой команде.

Чтобы посмотреть все возможные параметры установки, используйте: python install.py -h.

Чтобы установить ConvertAll с отличным префиксом (по умолчанию /usr/local), используйте: python install.py -p /prefix/путь

Windows

Чтобы установить для всех пользователей, запустите файл ConvertAll-x.x.x-install-all.exe. Потребуются права администратора.

Для пользовательской установки (права администратора не требуются), запустите файл ConvertAll-x.x.x-install-user.exe.

Для установки портативной версии, запустите файл ConvertAll-x.x.x-install-user.exe, снимите отметки установки ярлыков и деинсталлятора, а выберите установку портативной версии.

Использование ConvertAll

Основы

Просто напечатайте имя величины в поле «Из величины». Пока Вы набираете список будет прокручиваться, чтобы показать наиболее подходящий. Вы можете напечатать полностью аббревиатуру или имя величины или нажать клавишу «Enter» для выбора величины подсвеченной в списке. Конечно же, простое нажатие мышкой на элементе списка выберет величину в поле ввода. Также можно использовать клавиши курсора для выбора из величин расположенных рядом.

Повторите выбор величины в поле «В величину».

Когда завершите выбор и если величины совместимы, Вы увидите, что поле для ввода значений под списком станет активным. Значение величины можно указать в любом из полей, а в другом будет отображён результат конвертации.

Комбинирование величин

Настоящая сила ConvertAll заключается в возможности комбинирования нескольких величин. Просто напечатайте имена величин с операторами '*' или '/' между ними. Это даёт возможность получить величины типа "ft*lbf" или "mi/hr". Символ '^' используется для возведения в степень, например "m^3" или "ft*lbm/sec^2". Его также можно использовать для получения величин типа "sec^-1" (в секунду), или переключения операции умножения или деления ("ft*sec^-2" равнозначно "ft/sec^2").

Умножение и деление имеют одинаковый приоритет, поэтому обрабатываются слева на право. Скобки могут быть использованы для группировки знаменателя. Например "м / сек / кг" можно записать как "м / (сек * кг)". Вариант со скобками вероятно менее запутывающий.

Кнопки под списком величин ('X', '/', '^2', '^3') вставляют операторы после величины ближайшей к курсору. Символ возведения в степень заменяет экспоненту.

Также, выбор величины из списка заменит величину на ближайшую к курсору.

Кнопка "Очистить величину" под кнопками операторов используется для очистки поля выбора величины.

Ускорение набора

Когда набираете имена величин пробелы игнорируются, поэтому их можно пропускать. Также игнорируются множественные формы величин. Если написанная часть имени величины подсвечивает нужную величину в списке, нажатие клавиши «Enter» завершит имя. Нажатие клавиши «Tab» также завершит имя и переместит курсор в следующее поле ввода.

Кнопка «Недавняя величина» открывает меню недавно использованных величин и комбинаций величин. Текущая комбинация величин полностью заменяется выбранной из этого меню.

Значение для конвертации можно вводить с любой стороны в "Из" или "В". Можно использовать как стандартную, так и научную запись значения, или выражение включающее нормальные математические операторы (+, -, *, /, **), а также круглые скобки.

Поиск величины

Вызывается кнопкой «Поиск величины...» в верхнем правом углу. В поиске величины можно отфильтровать величины по типу и/или искать величины используя текстовый запрос. Он отображается списком в отдельном окне. Список обновляется на основании фильтра и текстового поиска.

Кнопки внизу окна поиска величины добавляют выбранные величины в основное окно программы. Кнопки "Заменить" — полностью заменяют комбинацию величин на выбранную. Кнопки "Вставить" заменяют только активную часть комбинации величин (по положению курсора в основном окне).

Настройки

Кнопка "Настройки..." позволяет изменить некоторые параметры установленные по умолчанию. Изменения автоматически сохраняются и при следующем запуске ConvertAll будет использовать последние установленные параметры.

Первый раздел включает в себя настройки представления результата, включая научное представление и количество знаков после запятой. Имейте в виду, что установка маленького числа знаков после запятой может повлиять на точность результата. Рекомендуется шесть и более знаков (восемь по умолчанию).

В следующем разделе можно установить количество недавно использованных величин, которые будут запоминаться. При установке нулевого значения, кнопки «Недавние величины» будут отключены. Далее можно включить автоматическую загрузку последней использованной величины при запуска приложения.

Есть возможность скрыть кнопки операторов (X, /, ^2, ^3, Очистить величину и Недавние величины). Ей можно воспользоваться для экономии места, если операторы вводятся с клавиатуры.

Также можно настроить цвет текстовых полей с помощью кнопок расположенных ниже.

Нелинейное конвертирование

Конвертирование некоторых величин нелинейное. Примером такой величины является Фаренгейт. Нелинейные величины отмечены в колонке комментариев (справа от колонки «Тип величины»).

Такие величины могут быть конвертированы только, если они не комбинированы с другими величинами и не возведены в степень. Иначе результат будет неточным.

Режим командной строки (без GUI)

Конвертирование можно выполнить из командной строки (консоль Linux или DOS) без использования графического интерфейса. Введите команду ("convertall" для Linux, "convertall_dos" для Windows), значение, величина из которой и величина в которую (разделённые пробелами) провести конвертацию. Величины содержащие пробелы необходимо взять в кавычки. Или их можно ввести в интерактивном режиме, использую "-i" параметр ("convertall -i" для Linux, "convertall_dos -i" для Windows).

После выполнения конвертации, ConvertAll запросит новое значение величины для аналогичной конвертации. Также можно ввести "n" для начала новой конвертации, "r" чтобы поменять местами величины или "q" для выхода.

Для более детального списка параметров, используйте "-h" параметр ("convertall -h" для Linux, "convertall_dos -h" для Windows).

История версий

Сентябрь 10, 2015 - Release 0.6.1

Февраль 1, 2014 - Release 0.6.0

Ноябрь 2, 2011 - Release 0.5.2

Март 31, 2011 - Release 0.5.1

Май 2, 2010 - Обновление перевода 0.5.0b

Апрель 23, 2010 - Release 0.5.0

Сентябрь 24, 2009 - Release 0.4.3

Май 28, 2008 - Release 0.4.2

Январь 22, 2008 - Release 0.4.1

Октябрь 5, 2006 - Release 0.4.0

Октябрь 5, 2006 - Release 0.3.2

Февраль 14, 2005 - Release 0.3.1

Март 11, 2004 - Release 0.3.0

Ноябрь 18, 2003 - Release 0.2.4

Март 24, 2003 - Release 0.2.3

Май 28, 2002 - Release 0.2.2a

Май 16, 2002 - Release 0.2.2

Сентябрь 17, 2001 - Release 0.2.1

Август 20, 2001 - Release 0.2.0

Август 10, 2001 - Release 0.1.1

Июль 28, 2001 - Release 0.1.0

Вопросы, Комментарии, Критика?

Со мной можно связаться по электронной почте: doug101 собака bellz точка org
Приветствуются различные отзывы, включая сообщения о найденных Вами ошибках. Также Вы можете переодически проверять наличие каких либо обновлений на www.bellz.org.

ConvertAll/doc/LICENSE0000644000175000017500000004310310736723300013361 0ustar dougdoug GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. ConvertAll/data/0000755000175000017500000000000012573703056012526 5ustar dougdougConvertAll/data/units.dat0000644000175000017500000006777112573355312014402 0ustar dougdoug#***************************************************************************** #units.dat, the units data file, version 0.6.1 # # ConvertAll, a units conversion program # Copyright (C) 2015, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, Version 2. This program is # distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. #***************************************************************************** # # Units are defined by an optional quantity and an equivalent unit or unit # combination. A Python expression may be used for the quantity, but is # restricted to using only the following operators: *, /, +, -, **, (, ). # Beware of integer division truncation: be sure to use a float for at least # one of the values. # # The unit type must be placed in square brackets before a set of units. The # first comment after the equivalent unit will be put in parenthesis after the # unit name (usually used to give the full name of an abbreviated unit). The # next comment will be used in the program list's comment column; later # comments and full line comments are ignored. # # Non-linear units are indicated with an equivalent unit in square brackets, # followed by either equations or equivalency lists for the definition. For # equations, two are given, separated by a ';'. Both are functions of "x", the # first going from the unit to the equivalent unit and the second one in # reverse. Any valid Python expression returning a float (including the # functions in the math module) should work. The equivalency list is a Python # list of tuples giving points for linear interpolation. # # All units must reduce to primitive units, which are indicated by an # equivalent unit starting with '!'. A special "unitless" primitve unit # (usualty called "unit") has '!!' for an equivalent unit. Circular references # must also be avoided. # # Primitive units: kg, m, s, K, A, mol, cd, rad, sr, bit, unit # ############################################################################## # # mass units # [mass] kg = ! # kilogram kilogram = kg key = kg # # drug slang hectogram = 100 gram dekagram = 10 gram gram = 0.001 kg g = gram # gram decigram = 0.1 gram centigram = 0.01 gram milligram = 0.001 gram mg = milligram # milligram microgram = 0.001 mg tonne = 1000 kg # # metric metric ton = tonne megagram = tonne kilotonne = 1000 tonne # # metric gigagram = 1e9 gram teragram = 1e12 gram carat = 0.2 gram ct = carat # carat amu = 1.66053873e-27 kg # atomic mass atomic mass unit = amu pound = 0.45359237 kg # # avoirdupois lb = pound # pound # avoirdupois lbm = pound # pound # avoirdupois ounce = 1/16.0 pound # # avoirdupois oz = ounce # ounce # avoirdupois lid = ounce # # drug slang dram = 1/16.0 ounce # # avoirdupois pound troy = 5760 grain lb troy = pound troy # pound troy ounce troy = 1/12.0 lb troy oz troy = ounce troy # ounce troy ton = 2000 lb # # non-metric kiloton = 1000 ton # # non-metric long ton = 2240 lb # # Imperial slug = lbf*s^2/ft stone = 14 lb grain = 1/7000.0 lb pennyweight = 24 grain hundredweight long = 112 lb # # Imperial hundredweight short = 100 lb # # US & Canada solar mass = 1.9891e30 kg # # length / distance units # [length] m = ! # meter meter = m metre = m dm = 0.1 m # decimeter decimeter = dm cm = 0.01 m # centimeter centimeter = cm mm = 0.001 m # millimeter millimeter = mm micrometer = 1e-6 m micron = micrometer nanometer = 1e-9 m nm = nanometer # nanometer dekameter = 10 m hectometer = 100 m km = 1000 m # kilometer kilometer = km megameter = 1000 km angstrom = 1e-10 m fermi = 1e-15 m # # nuclear sizes inch = 2.54 cm in = inch # inch inches = inch mil = 0.001 inch microinch = 1e-6 inch microinches = microinch foot = 12 inch ft = foot # foot feet = foot foot US survey = 1200/3937.0 m yard = 3 ft yd = yard # yard mile = 5280 ft # # statute mile mi = mile # mile # statute mile nautical mile = 1852 m nmi = nautical mile # nautical mile mile US survey = 5280 foot US survey league = 3 mile chain = 66 ft chain US survey = 66 foot US survey link = 0.01 chain fathom = 6 ft rod = 5.5 yard furlong = 40 rod hand = 4 inch cubit = 21.8 inch # # biblical unit point = 1/72.0 inch # # desktop publishing point pica = 12 point caliber = 1.0 inch # # bullet sizes rack unit = 1.75 in # # computing smoot = 67 inch football field = 100 yd marathon = 46145 yd mil Swedish = 10 km versta = 3500 ft # # Russian unit au = 1.49597870691e11 m # astronomical unit astronomical unit = au LD = 384400 km # lunar distance # astronomical lunar distance = LD # # astronomical distance light year = 365.25 light speed * day light minute = light speed * min light second = light speed * s parsec = 3.0856775813e16 m kiloparsec = 1000 parsec megaparsec = 1000 kiloparsec screw size = [in] 0.013*x + 0.06 ; (x - 0.06) / 0.013 \ # # Unified diameters, non-linear AWG Dia = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # American Wire Gauge \ # use -1, -2 for 00, 000; non-linear American Wire Gauge Dia = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # # use -1, -2 for 00, 000; non-linear standard gauge = [in] [(-5, .448350), (1, .269010), (14, .0747250), \ (16, .0597800), (17, .0538020), (20, .0358680), \ (26, .0179340), (31, .0104615), (36, .00672525), \ (38, .00597800)] # steel \ # Manufacturers Std. Gauge, non-linear zinc gauge = [in] [(1, .002), (10, .02), (15, .04), (19, .06), \ (23, .1), (24, .125), (27, .5), (28, 1)] \ # # sheet metal thickness, non-linear ring size = [in] 0.1018*x + 1.4216 ; (x - 1.4216) / 0.1018 \ # # US size, circum., non-linear shoe size mens = [in] x/3.0 + 7 + 1/3.0 ; (x - 7 - 1/3.0) * 3 \ # # US sizes, non-linear shoe size womens = [in] x/3.0 + 6 + 5/6.0 ; (x - 6 - 5/6.0) * 3 \ # # US sizes, non-linear # # time units # [time] s = ! # second sec = s # second second = s ms = 0.001 s # millisecond millisecond = ms microsecond = 1e-6 s ns = 1e-9 s # nanosecond nanosecond = ns minute = 60 s min = minute # minute hour = 60 min hr = hour # hour bell = 30 min # # naval definition watch = 4 hour watches = watch day = 24 hr week = 7 day wk = week # week fortnight = 14 day month = 1/12.0 year year = 365.242198781 day yr = year # year calendar year = 365 day decade = 10 year century = 100 year centuries = century millennium = 1000 year millennia = millennium [scheduling] man hour = 168/40.0 hour man week = 40 man hour man month = 1/12.0 man year man year = 52 man week # # temperature # [temperature] K = ! # Kelvin Kelvin = K deg K = K # Kelvin degree Kelvin = K C = [K] x + 273.15 ; x - 273.15 # Celsius # non-linear Celsius = [K] x + 273.15 ; x - 273.15 # # non-linear deg C = [K] x + 273.15 ; x - 273.15 # Celsius # non-linear degree Celsius = [K] x + 273.15 ; x - 273.15 # # non-linear R = 5/9.0 K # Rankine Rankine = R deg R = R # Rankine F = [R] x + 459.67 ; x - 459.67 # Fahrenheit # non-linear Fahrenheit = [R] x + 459.67 ; x - 459.67 # # non-linear deg F = [R] x + 459.67 ; x - 459.67 # Fahrenheit # non-linear degree Fahrenheit = [R] x + 459.67 ; x - 459.67 # # non-linear [temp. diff.] C deg = K # Celsius degree Celsius degree = C deg F deg = R # Fahrenheit deg. Fahrenheit degree = F deg # # electrical units # [current] A = ! # ampere ampere = A amp = A milliampere = 0.001 A milliamp = milliampere mA = milliampere # milliampere microampere = 0.001 mA kiloampere = 1000 A kA = kiloampere # kiloampere [charge] coulomb = A*s amp hour = A*hr mAh = 0.001 amp hour # milliamp hour milliamp hour = mAh [potential] volt = W/A V = volt # volt millivolt = 0.001 volt mV = millivolt # millivolt kilovolt = 1000 volt kV = kilovolt # kilovolt [resistance] ohm = V/A milliohm = 0.001 ohm microhm = 0.001 milliohm kilohm = 1000 ohm [conductance] siemens = A/V [capacitance] farad = coulomb/V millifarad = 0.001 farad microfarad = 0.001 millifarad nanofarad = 1e-9 farad picofarad = 1e-12 farad [magn. flux] weber = V*s Wb = weber # weber maxwell = 1e-8 Wb [inductance] henry = Wb/A H = henry # henry millihenry = 0.001 henry mH = millihenry # millihenry microhenry = 0.001 mH [flux density] tesla = Wb/m^2 T = tesla # tesla gauss = maxwell/cm^2 # # molecular units # [molecular qty] mol = ! # mole # gram mole mole = mol # # gram mole gram mole = mol kilomole = 1000 mol kmol = kilomole # kilomole pound mole = mol*lbm/gram lbmol = pound mole # pound mole [size of a mol] avogadro = gram/(amu*mol) # # Illumination units # [lum. intens.] cd = ! # candela candela = cd [luminous flux] lumen = cd * sr lm = lumen # lumen [illuminance] lux = lumen/m^2 footcandle = lumen/ft^2 metercandle = lumen/m^2 [luminance] lambert = cd/(pi*cm^2) millilambert = 0.001 lambert footlambert = cd/(pi*ft^2) # # angular units # [angle] radian = ! rad = radian # radian circle = 2 pi*radian turn = circle revolution = circle rev = revolution # revolution degree = 1/360.0 circle deg = degree # degree arc min = 1/60.0 degree # minute arc minute = arc min min arc = arc min # minute minute arc = arc min arc sec = 1/60.0 arc min # second arc second = arc sec sec arc = arc sec # second second arc = arc sec quadrant = 1/4.0 circle right angle = quadrant gradian = 0.01 quadrant # # solid angle units # [solid angle] sr = ! # steradian steradian = sr sphere = 4 pi*sr hemisphere = 1/2.0 sphere # # information units # [data] bit = ! kilobit = 1000 bit # # based on power of 10 megabit = 1000 kilobit # # based on power of 10 byte = 8 bit B = byte # byte kilobyte = 1024 byte # # based on power of 2 kB = kilobyte # kilobyte # based on power of 2 megabyte = 1024 kB # # based on power of 2 MB = megabyte # megabyte # based on power of 2 gigabyte = 1024 MB # # based on power of 2 GB = gigabyte # gigabyte # based on power of 2 terabyte = 1024 GB # # based on power of 2 TB = terabyte # terabyte # based on power of 2 petabyte = 1024 TB # # based on power of 2 PB = petabyte # petabyte # based on power of 2 kilobyte IEC std = 1000 byte # # based on power of 10 kB IEC std = kilobyte IEC std # kilobyte # based on power of 10 megabyte IEC std = 1000 kB IEC std # # based on power of 10 MB IEC std = megabyte IEC std # megabyte # based on power of 10 gigabyte IEC std = 1000 MB IEC std # # based on power of 10 GB IEC std = gigabyte IEC std # gigabyte # based on power of 10 terabyte IEC std = 1000 GB IEC std # # based on power of 10 TB IEC std = terabyte IEC std # terabyte # based on power of 10 petabyte IEC std = 1000 TB IEC std # # based on power of 10 PB IEC std = petabyte IEC std # petabyte # based on power of 10 kibibyte = 1024 byte KiB = kibibyte # kibibyte mebibyte = 1024 KiB MiB = mebibyte # mebibyte gibibyte = 1024 MiB GiB = gibibyte # gibibyte tebibyte = 1024 GiB TiB = tebibyte # tebibyte pebibyte = 1024 TiB PiB = pebibyte # pebibyte [data transfer] bps = bit/sec # bits / second kbps = 1000 bps # kilobits / sec. # based on power of 10 # # Unitless numbers # [quantity] unit = !! 1 = unit # unit pi = 3.14159265358979323846 unit pair = 2 unit hat trick = 3 unit # # sports dozen = 12 unit doz = dozen # dozen bakers dozen = 13 unit score = 20 unit gross = 144 unit great gross = 12 gross ream = 500 unit percent = 0.01 unit % = percent mill = 0.001 unit [interest rate] APR = [unit] log(1 + x/100) ; (exp(x) - 1)*100 \ # annual % rate # based on continuous compounding [concentration] proof = 1/200.0 unit # # alcohol content ppm = 1e-6 unit # parts per million parts per million = ppm ppb = 1e-9 unit # parts per billion parts per billion = ppb ppt = 1e-12 unit # parts per trillion parts per trillion = ppt karat = 1/24.0 unit # # gold purity carat gold = karat # # gold purity # # force units # [force] newton = kg*m/s^2 N = newton # newton dekanewton = 10 newton kilonewton = 1000 N kN = kilonewton # kilonewton meganewton = 1000 kN millinewton = 0.001 N dyne = cm*g/s^2 kg force = kg * gravity # kilogram f kgf = kg force # kilogram force kilogram force = kg force kp = kg force # kilopond kilopond = kg force gram force = g * gravity pound force = lbm * gravity # # avoirdupois lbf = pound force # pound force # avoirdupois ton force = ton * gravity ounce force = ounce * gravity ozf = ounce force # ounce force tonne force = tonne * gravity # # metric pdl = lbm * ft / sec^2 # poundal # Imperial force poundal = pdl # # Imperial force # # area units # [area] barn = 1e-28 m^2 # # particle physics are = 100 m^2 decare = 10 are dekare = 10 are hectare = 100 are stremma = 1000 m^2 acre = 10 chain^2 section = mile^2 township = 36 section homestead = 160 acre rai = 1600 m^2 # # Thai ngaan = 400 m^2 # # Thai circular inch = 1/4.0 pi*in^2 # # area of 1 inch circle circular mil = 1/4.0 pi*mil^2 # # area of 1 mil circle AWG Area = [in^2] pi/4*(92.0**((36-x)/39.0)/200.0)**2 ; \ 36 - 39.0*log(200.0*sqrt(x*4.0/pi))/log(92.0) \ # American Wire Gauge \ # use -1, -2 for 00, 000; non-linear American Wire Gauge Area = [in^2] pi/4*(92.0**((36-x)/39.0)/200.0)**2 ; \ 36 - 39.0*log(200.0*sqrt(x*4.0/pi))/log(92.0) \ # # use -1, -2 for 00, 000; non-linear # # volume units # [volume] cc = cm^3 # cubic centimeter cubic centimeter = cc liter = 1000 cc l = liter # liter litre = liter deciliter = 0.1 liter centiliter = 0.01 liter milliliter = cc ml = milliliter # milliliter microliter = 1e-6 liter dekaliter = 10 liter hectoliter = 100 liter kiloliter = 1000 liter kl = kiloliter # kiloliter megaliter = 1000 kiloliter gallon = 231 in^3 # # US liquid gal = gallon # gallon # US liquid quart = 1/4.0 gallon # # US liquid qt = quart # quart # US liquid pint = 1/2.0 quart # # US liquid pt = pint # pint # US liquid fluid ounce = 1/16.0 pint # # US fl oz = fluid ounce # fluid ounce # US ounce fluid = fluid ounce # # US fluid dram = 1/8.0 fluid ounce # # US minim = 1/480.0 fluid ounce # # US imperial gallon = 4.54609 liter imp gal = imperial gallon # imperial gallon gallon imperial = imperial gallon imperial quart = 1/4.0 imp gal imp qt = imperial quart # imperial quart quart imperial = imperial quart imperial pint = 1/8.0 imp gal imp pt = imperial pint # imperial pint pint imperial = imperial pint imperial fluid ounce = 1/160.0 imp gal imp fl oz = imperial fluid ounce # imperial fluid ounce imperial fluid dram = 1/8.0 imp fl oz imperial minim = 1/480.0 imp fl oz cup = 8 fl oz tablespoon = 1/16.0 cup tbsp = tablespoon # tablespoon teaspoon = 1/3.0 tbsp tsp = teaspoon # teaspoon barrel = 42 gallon bbl = barrel # barrel shot = 1.5 fl oz fifth = 1/5.0 gallon # # alcohol wine bottle = 750 ml magnum = 1.5 liter # # alcohol keg = 15.5 gallon # # beer hogshead wine = 63 gal hogshead beer = 54 gal bushel = 2150.42 in^3 peck = 1/4.0 bushel cord = 128 ft^3 board foot = ft^2*in board feet = board foot # # velocity units # [velocity] knot = nmi/hr kt = knot # knot light speed = 2.99792458e8 m/s mph = mi/hr # miles/hour kph = km/hr # kilometers/hour mach = 340.29 m/s # # speed sound at STP [rot. velocity] rpm = rev/min # rev/min rps = rev/sec # rev/sec # # flow rate units # [fluid flow] gph = gal/hr # gallons/hour gpm = gal/min # gallons/minute cfs = ft^3/sec # cu ft/second cfm = ft^3/min # cu ft/minute lpm = l/min # liter/min [gas flow] sccm = atm*cc/min # std cc/min # pressure * flow sccs = atm*cc/sec # std cc/sec # pressure * flow slpm = atm*l/min # std liter/min # pressure * flow slph = atm*l/hr # std liter/hour # pressure * flow scfh = atm*ft^3/hour # std cu ft/hour # pressure * flow scfm = atm*ft^3/min # std cu ft/min # pressure * flow # # pressure units # [pressure] Pa = N/m^2 # pascal pascal = Pa hPa = 100 Pa # hectopascal hectopascal = hPa kPa = 1000 Pa # kilopascal kilopascal = kPa MPa = 1000 kPa # megapascal megapascal = MPa GPa = 1000 MPa # gigapascal gigapascal = GPa atm = 101325 Pa # atmosphere atmosphere = atm bar = 1e5 Pa mbar = 0.001 bar # millibar millibar = mbar microbar = 0.001 mbar decibar = 0.1 bar kilobar = 1000 bar megabar = 1000 kilobar mm Hg = mm*density Hg*gravity millimeter of Hg = mm Hg torr = mm Hg micron of Hg = micron*density Hg*gravity in Hg = in*density Hg*gravity # inch of Hg inch of Hg = in Hg m water = m*density water*gravity # meter of H2O # fresh water m H2O = m water # meter of H2O # fresh water meter of water = m water # # fresh water in water = in*density water*gravity # inch of H2O # fresh water in H2O = in water # inch of H2O # fresh water inch of water = in water # # fresh water ft water = ft*density water*gravity # feet of H2O # fresh water ft H2O = ft water # feet of H20 # fresh water feet of water = ft water # # fresh water foot of head = ft water # # fresh water ft hd = ft water # foot of head # fresh water psi = lbf/in^2 # pound / sq inch pound per sq inch = psi ksi = 1000 psi # 1000 lb / sq inch # # density units # [density] density water = gram/cm^3 density sea water = 1.025 gram/cm^3 density Hg = 13.5950981 gram/cm^3 density air = 1.293 kg/m^3 # # at STP density steel = 0.283 lb/in^3 # # carbon steel density aluminum = 0.098 lb/in^3 density zinc = 0.230 lb/in^3 density brass = 0.310 lb/in^3 # # 80Cu-20Zn density copper = 0.295 lb/in^3 density iron = 0.260 lb/in^3 # # cast iron density nickel = 0.308 lb/in^3 density tin = 0.275 lb/in^3 density titanium = 0.170 lb/in^3 density silver = 0.379 lb/in^3 density nylon = 0.045 lb/in^3 density polycarbonate = 0.045 lb/in^3 # # energy units # [energy] joule = N*m J = joule # joule kilojoule = 1000 joule kJ = kilojoule # kilojoule megajoule = 1000 kilojoule gigajoule = 1000 megajoule millijoule = 0.001 joule mJ = millijoule # millijoule calorie = 4.1868 J cal = calorie # calorie kilocalorie = 1000 cal kcal = kilocalorie # kilocalorie calorie food = kilocalorie thermie = 1000 kcal Btu = cal*lb*R/(g*K) # British thermal unit British thermal unit = Btu therm = 100000 Btu erg = cm*dyne electronvolt = 1.602176462e-19 J eV = electronvolt # electronvolt kWh = kW*hour # kilowatt-hour kilowatt hour = kWh ton TNT = 4.184e9 J tonne oil equivalent = 41.868 gigajoule tonne coal equivalent = 7000000 kcal # # power units # [power] watt = J/s W = watt # watt kilowatt = 1000 W kW = kilowatt # kilowatt megawatt = 1000 kW MW = megawatt # megawatt gigawatt = 1000 MW GW = gigawatt # gigawatt milliwatt = 0.001 W horsepower = 550 ft*lbf/sec hp = horsepower # horsepower metric horsepower = 75 kgf*m/s ton refrigeration = 12000 Btu/hr # # frequency # [frequency] hertz = unit/sec Hz = hertz # hertz millihertz = 0.001 Hz kilohertz = 1000 Hz kHz = kilohertz # kilohertz megahertz = 1000 kHz MHz = megahertz # megahertz gigahertz = 1000 MHz GHz = gigahertz # gigahertz # # radioactivity # [radioactivity] becquerel = unit/sec Bq = becquerel # becquerel curie = 3.7e10 Bq millicurie = 0.001 curie roentgen = 2.58e-4 coulomb/kg [radiation dose] gray = J/kg Gy = gray # gray centigray = 0.01 Gy rad. abs. dose = 0.01 Gy # # commonly rad sievert = J/kg # # equiv. dose millisievert = 0.001 sievert # # equiv. dose Sv = sievert # sievert # equiv. dose rem = 0.01 Sv # # roentgen equiv mammal millirem = 0.001 rem # # roentgen equiv mammal # # viscosity # [dyn viscosity] poise = g/(cm*s) P = poise # poise centipoise = 0.01 poise cP = centipoise # centipoise [kin viscosity] stokes = cm^2/s St = stokes # stokes centistokes = 0.01 stokes cSt = centistokes # centistokes # # misc. units # [acceleration] gravity = 9.80665 m/s^2 galileo = cm/s^2 [constant] gravity constant = 6.673e-11 N*m^2/kg^2 gas constant = 8.314472 J/(mol*K) # R [fuel consumpt.] mpg = mi/gal # miles/gallon mpg imp = mi/gallon imperial # miles/gallon imp liter per 100 km = [mpg] 3.785411784 / (x * 0.01609344) ; \ 3.785411784 / (x * 0.01609344) # # non-linear [permeability] darcy = 1 cm^2*centipoise/atm/s millidarcy = 0.001 darcy ConvertAll/data/units_fr.dat0000644000175000017500000006325712573354473015073 0ustar dougdoug#***************************************************************************** # units.dat, the units data file, version 0.6.0 # # ConvertAll, a units conversion programme # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, Version 2. This programme is # distributed in the hope that it will be useful, but WITTHOUT ANY WARRANTY. #***************************************************************************** # # Units are defined by an optional quantity and an equivalent unit or unit # combination. A python expression may be used for the quantity, but is # resticted to using only the following operators: *, /, +, -, **, (, ). # Beware of integer division truncation: be sure to use a float for at # least one of the values. # # The unit type must be placed in square brackets before a set of units. # The first comment after the equivalent unit will be put in parenthesis after # the unit name (usually used to give the full name of an abbreviated unit). # The next comment will be used in the programme list's comment column; # later comments and full line comments are ignored. # # Non-linear units are indicated with an equivalent unit in square brackets, # followed by either equations or equivalency lists for the definition. # For equations, two are given, separated by a ';'. Both are functions of # "x", the first going from the unit to the equivalent unit and the second # one in reverse. Any valid Python expression returning a float (including # the functions in the math module) should work. The equivalency list is a # python list of tuples giving points for linear interpolation. # # All units must reduce to primitive units, which are indicated by an # equivalent unit starting with '!'. A special "unitless" primitve unit # (usualty called "unit") has '!!' for an equivalent unit. Circular references # must also be avoided. # # Primitive units: kg, m, s, K, A, mol, cd, rad, sr, bit, unit # ############################################################################## # # mass units # [masse] kg = ! # kilogramme kilogramme = kg key = kg # # jargon de drogue hectogramme = 100 gramme decagramme = 10 gramme gramme = 0.001 kg g = gramme # gramme decigramme = 0.1 gramme centigramme = 0.01 gramme milligramme = 0.001 gramme mg = milligramme # milligramme microgramme = 0.001 mg tonne = 1000 kg # # metriqu tonne metrique = tonne megagramme = tonne kilotonne = 1000 tonne # # metrique gigagramme = 1e9 gramme teragramme = 1e12 gramme carat = 0.2 gramme ct = carat # carat amu = 1.66053873e-27 kg # masse atomique masse atomique = amu livre = 0.45359237 kg lb = livre # livres lbm = livre # livres once = 1/16.0 livre oz = once # once lid = once # # jargon de drogue livre troy = 5760 grain lb troy = livre troy # livre troy once troy = 1/12.0 lb troy oz troy = once troy # once troy ton = 2000 lb # # impériale kiloton = 1000 ton # # impériale slug = lbf*s^2/ft stone = 14 lb grain = 1/7000.0 lb pennyweight = 24 grain masse solaire = 1.9891e30 kg # # length / distance units # [longueur] m = ! # mètre mètre = m decimètre = 0.1 m cm = 0.01 m # centimètre centimètre = cm mm = 0.001 m # millimètre millimètre = mm micromètre = 1e-6 m micron = micromètre nanomètre = 1e-9 m nm = nanomètre # nanomètre decamètre = 10 m hectomètre = 100 m km = 1000 m # kilomètre kilomètre = km megamètre = 1000 km angstrom = 1e-10 m fermi = 1e-15 m # # grandeur nucléaire pouce = 2.54 cm in = pouce # pouce inches = pouce mil = 0.001 pouce microinch = 1e-6 pouce microinches = microinch pied = 12 pouce ft = pied # pied feet = pied pied US survey = 1200/3937.0 m verge = 3 ft yd = verge # verge mile = 5280 ft mi = mile # mille nautical mile = 1852 m nmi = nautical mile # mille nautique league = 3 mile chain = 66 ft brasse = 6 ft fm = brasse perche = 5.5 verge furlong = 40 perche main = 4 pouce cubit = 21.8 pouce # # coudée biblique point = 1/72.0 pouce # # point de caractère pica = 12 point calibre = 1.0 pouce # # calibre d'une arme terrain de football = 100 yd marathon = 46145 yd mille suedois = 10 km ua = 1.49597870691e11 m # unité astronomique unite astronomique = ua annee lumiere = 365.25 vitesse lumiere * jour minute lumiere = vitesse lumiere * min seconde lumiere = vitesse lumiere * s parsec = 3.0856775813e16 m kiloparsec = 1000 parsec megaparsec = 1000 kiloparsec screw size = [in] 0.013*x + 0.06 ; (x - 0.06) / 0.013 \ # # Diamètre unifié, non linéaire AWG = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # Diamètre de câble électrique \ # utilisé -1, -2 for 00, 000; non linéaire American Wire Gauge = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # # utilisé -1, -2 for 00, 000; non linéaire standard gauge = [in] [(-5, .448350), (1, .269010), (14, .0747250), \ (16, .0597800), (17, .0538020), (20, .0358680), \ (26, .0179340), (31, .0104615), (36, .00672525), \ (38, .00597800)] # acier \ # Diamètre standard, non linéaire zinc gauge = [in] [(1, .002), (10, .02), (15, .04), (19, .06), \ (23, .1), (24, .125), (27, .5), (28, 1)] \ # # épaisseur de la feuille de métal, non linéaire taille bague = [in] 0.1018*x + 1.4216 ; (x - 1.4216) / 0.1018 \ # # Taille américaine, circ., non linéaire grandeur soulier homme = [in] x/3.0 + 7 + 1/3.0 ; (x - 7 - 1/3.0) * 3 \ # # Taille américainre, non linéaire grandeur soulier femme = [in] x/3.0 + 6 + 5/6.0 ; (x - 6 - 5/6.0) * 3 \ # # Taille américainre, non linéaire # # unités de temps # [temps] s = ! # seconde sec = s # seconde seconde = s ms = 0.001 s # milliseconde milliseconde = ms microseconde = 1e-6 s ns = 1e-9 s # nanoseconde nanoseconde = ns minute = 60 s min = minute # minute heure = 60 min hr = heure # heure bell = 30 min # # définition nautique watch = 4 heure watches = watch jour = 24 hr semaine = 7 jour wk = semaine # semaine fortnight = 14 jour mois = 1/12.0 annee annee = 365.242198781 jour yr = annee # année annee calendrier = 365 jour decennie = 10 annee siecle = 100 annee siecles = siecle millenaire = 1000 annee millennia = millenaire [horaire] man heure = 168/40.0 heure man week = 40 man heure man month = 1/12.0 man year man year = 52 man week # # température # [temperature] K = ! # Kelvin Kelvin = K deg K = K # Kelvin degree Kelvin = K C = [K] x + 273.15 ; x - 273.15 # Celsius # non linéaire Celsius = [K] x + 273.15 ; x - 273.15 # # non linéaire deg C = [K] x + 273.15 ; x - 273.15 # Celsius # non linéaire degre Celsius = [K] x + 273.15 ; x - 273.15 # # non linéaire R = 5/9.0 K # Rankine Rankine = R deg R = R # Rankine F = [R] x + 459.67 ; x - 459.67 # Fahrenheit # non linéaire Fahrenheit = [R] x + 459.67 ; x - 459.67 # # non linéaire deg F = [R] x + 459.67 ; x - 459.67 # Fahrenheit # non linéaire degree Fahrenheit = [R] x + 459.67 ; x - 459.67 # # non linéaire [temp. diff.] C deg = K # degré Celsius Celsius degree = C deg F deg = R # degré Fahrenheit Fahrenheit degree = F deg # # electrical units ## [intensité du courrant] A = ! # ampère ampère = A amp = A milliampère = 0.001 A milliamp = milliampère mA = milliampère # milliamèpre microampère = 0.001 mA kiloampère = 1000 A kA = kiloampère # kiloampère [charge] coulomb = A*s amp heure = A*hr mAh = 0.001 amp heure # miliampère-heure milliamp heure = mAh [voltage] volt = W/A V = volt # volt millivolt = 0.001 volt mV = millivolt # millivolt kilovolt = 1000 volt kV = kilovolt # kilovolt [resistance] ohm = V/A milliohm = 0.001 ohm microhm = 0.001 milliohm kilohm = 1000 ohm [conductance] siemens = A/V [capacité] farad = coulomb/V millifarad = 0.001 farad microfarad = 0.001 millifarad nanofarad = 1e-9 farad picofarad = 1e-12 farad [flux mag.] weber = V*s Wb = weber # weber maxwell = 1e-8 Wb [inductance] henry = Wb/A H = henry # henry millihenry = 0.001 henry mH = millihenry # millihenry microhenry = 0.001 mH [flux de densité] tesla = Wb/m^2 T = tesla # tesla gauss = maxwell/cm^2 # # molecular units # [quantité moléculaire] mol = ! # mole # masse molaire mole = mol # # masse molaire gramme mole = mol kilomole = 1000 mol kmol = kilomole # kilomole livre mole = mol*lbm/gramme lbmol = livre mole # mole-livres [nombre d'atomes] avogadro = gramme/amu*mol # # Illumination units # [lum. intens.] cd = ! # candela candela = cd [flux lumineux] lumen = cd * sr lm = lumen # lumen [illuminance] lux = lumen/m^2 footcandle = lumen/ft^2 mètrecandle = lumen/m^2 [luminance] lambert = cd/pi*cm^2 millilambert = 0.001 lambert footlambert = cd/pi*ft^2 # # angular units # [angle] radian = ! rad = radian # radian cercle = 2 pi*radian tour = cercle revolution = cercle rev = revolution # tour degre = 1/360.0 cercle deg = degre # degré arc min = 1/60.0 degre # minute arc minute = arc min min arc = arc min # minute minute arc = arc min arc sec = 1/60.0 arc min # seconde arc seconde = arc sec sec arc = arc sec # seconde seconde arc = arc sec quadrant = 1/4.0 cercle right angle = quadrant gradian = 0.01 quadrant # # solid angle units # [angle dans les solides] sr = ! # stéradian steradian = sr sphère = 4 pi*sr hemisphère = 1/2.0 sphère # # information units # [données informatiques] bit = ! kilobit = 1000 bit # # en base 10 megabit = 1000 kilobit # # en base 10 byte = 8 bit B = byte # byte kilobyte = 1024 byte # # en binaire kB = kilobyte # kilobyte # en binaire megabyte = 1024 kB # # en binaire MB = megabyte # megabyte # en binaire gigabyte = 1024 MB # # en binaire GB = gigabyte # gigabyte # en binaire terabyte = 1024 GB # # en binaire TB = terabyte # terabyte # en binaire petabyte = 1024 TB # # en binaire PB = petabyte # petabyte # en binaire kilobyte IEC std = 1000 byte # # en base 10 kB IEC std = kilobyte IEC std # kilobyte # en base 10 megabyte IEC std = 1000 kB IEC std # # en base 10 MB IEC std = megabyte IEC std # megabyte # en base 10 gigabyte IEC std = 1000 MB IEC std # # en base 10 GB IEC std = gigabyte IEC std # gigabyte # en base 10 terabyte IEC std = 1000 GB IEC std # # en base 10 TB IEC std = terabyte IEC std # terabyte # en base 10 petabyte IEC std = 1000 TB IEC std # # en base 10 PB IEC std = petabyte IEC std # petabyte # en base 10 kibibyte = 1024 byte KiB = kibibyte # kibibyte mebibyte = 1024 KiB MiB = mebibyte # mebibyte gibibyte = 1024 MiB GiB = gibibyte # gibibyte tebibyte = 1024 GiB TiB = tebibyte # tebibyte pebibyte = 1024 TiB PiB = pebibyte # pebibyte [transfert de donnée] bps = bit/sec # bits / seconde kbps = 1000 bps # kilobits / sec. # en base 10 # # Unitless numbers # [quantitée] unite = !! 1 = unite # unité pi = 3.14159265358979323846 unite paire = 2 unite tour du chapeau = 3 unite # # sports douzaine = 12 unite doz = douzaine # douzaine trieze à la douzaine = 13 unite score = 20 unite grosse = 144 unite grande grosse = 12 grosse ream = 500 unite pourcent = 0.01 unite % = pourcent millieme = 0.001 unite [taux d'intérêt] APR = [unite] log(1 + x/100) ; (exp(x) - 1)*100 \ # annual % rate # based on continuous comlivreing [concentration] proof = 1/200.0 unite # # contenant d'alcool ppm = 1e-6 unite # parties par million partie par million = ppm ppb = 1e-9 unite # parties par milliard partie par milliard = ppb ppt = 1e-12 unite # parties par billion partie par billion = ppt karat = 1/24.0 unite # # pureté de l'or carat d'or = karat # # pureté de l'or # # force units # [force] newton = kg*m/s^2 N = newton # newton dekanewton = 10 newton kilonewton = 1000 N kN = kilonewton # kilonewton meganewton = 1000 kN millinewton = 0.001 N dyne = cm*g/s^2 kg force = kg * acceleration gravitationnelle # kilogramme-force kgf = kg force # kilogramme-force kilogramme force = kg force gramme force = g * acceleration gravitationnelle livre force = lbm * acceleration gravitationnelle lbf = livre force # livres-force tonne force = tonne * acceleration gravitationnelle once force = once * acceleration gravitationnelle ozf = once force # once-force # # area units # [aire] barn = 1e-28 m^2 # # physique des particules are = 100 m^2 decare = 10 are dekare = 10 are hectare = 100 are acre = 10 chain^2 section = mile^2 township = 36 section homestead = 160 acre rai = 1600 m^2 # # Thai ngaan = 400 m^2 # # Thai circular pouce = 1/4.0 pi*in^2 # # cercle d'un pouce de surface circular mil = 1/4.0 pi*mil^2 # # cercle d'un mille de surface # # volume units # [volume] cc = cm^3 # centimètre cube centimètre cube = cc litre = 1000 cc l = litre # litre liter = litre decilitre = 0.1 litre centilitre = 0.01 litre millilitre = cc ml = millilitre # millilitre dekalitre = 10 litre hectolitre = 100 litre kilolitre = 1000 litre kl = kilolitre # kilolitre megalitre = 1000 kilolitre gallon = 231 in^3 # # US liquide gal = gallon # gallon # US liquide quart = 1/4.0 gallon # # US liquide qt = quart # litre # US liquide pint = 1/2.0 quart # # US liquide pt = pint # pinte # US liquide once liquide = 1/16.0 pint # # US fl oz = once liquide # once liquide # US impérial gallon = 4.54609 litre imp gal = impérial gallon # gallon impérial gallon impérial = impérial gallon impérial quart = 1/4.0 imp gal imp qt = impérial quart # litre impérial quart impérial = impérial quart impérial pint = 1/8.0 imp gal imp pt = impérial pint # pinte impériale pint impérial = impérial pint once liquide impériale = 1/160.0 imp gal imp fl oz = once liquide impériale # once liquide impériale tasse = 8 fl oz cuillier a table = 1/16.0 tasse c-a-t = cuillier a table # cuillère à table cuillier a the = 1/3.0 c-a-t tsp = cuillier a the # cuillère à thé baril = 42 gallon bbl = baril # baril shot = 1.5 fl oz fifth = 1/5.0 gallon # # alcool bouteille de vin = 750 ml magnum = 1.5 litre # # alcool tonneau = 15.5 gallon # # bière hogshead wine = 63 gal hogshead beer = 54 gal bushel = 2150.42 in^3 peck = 1/4.0 bushel cord = 128 ft^3 board foot = ft^2*in board feet = board foot # # velocity units # [vitesse] noeud = nmi/hr kt = noeud # noeud vitesse lumiere = 2.99792458e8 m/s mph = mi/hr # milles/heure kph = km/hr # kilomètres/heure mach = 340.29 m/s # # mur du son [vitesse de rotation] rpm = tour/min # tour/min rps = tour/sec # tour/sec # # flow rate units # [flux de fluide] gph = gal/hr # gallons/heure gpm = gal/min # gallons/minute cfs = ft^3/sec # pieds cubes/seconde cfm = ft^3/min # pieds cubes/minute lpm = l/min # litre/min [flux de gaz] sccm = atm*cc/min # TPN cc/min # pression * flux sccs = atm*cc/sec # TPN cc/sec # pression * flux slpm = atm*l/min # TPN litre/min # pression * flux slph = atm*l/hr # TPN litre/heure # pression * flux scfh = atm*ft^3/heure # TPN pied cube/heure # pression * flux scfm = atm*ft^3/min # TPN pied cube/min # pression * flux # # pressure units # [pression] Pa = N/m^2 # Pascal pascal = Pa hPa = 100 Pa # hectoPascal hectopascal = hPa kPa = 1000 Pa # kiloPascal kilopascal = kPa MPa = 1000 kPa # megaPascal megapascal = MPa GPa = 1000 MPa # gigaPascal gigapascal = GPa atm = 101325 Pa # atmosphère atmosphère = atm bar = 1e5 Pa mbar = 0.001 bar # millibar millibar = mbar microbar = 0.001 mbar decibar = 0.1 bar kilobar = 1000 bar megabar = 1000 kilobar mm Hg = mm*densité Hg*acceleration gravitationnelle millimètre de Hg = mm Hg torr = mm Hg in Hg = in*densité Hg*acceleration gravitationnelle # mm de Hg pouce de Hg = in Hg m water = m*densité eau*acceleration gravitationnelle # mètre de H2O m H2O = m water # mètre de H2O metre de water = m water in water = in*densité eau*acceleration gravitationnelle # pouce de H2O in H2O = in water # pouce de H2O inch of water = in water ft water = ft*densité eau*acceleration gravitationnelle # pied de H2O ft H2O = ft water # pied de H20 feet of water = ft water foot of head = ft water ft hd = ft water # foot of head psi = lbf/in^2 # livre / pouce carré livre par pouce carre = psi ksi = 1000 psi # 1000 lb / pouce carré # # density units # [densite] densité eau = gramme/cm^3 densité eau salee = 1.025 gramme/cm^3 densité Hg = 13.5950981 gramme/cm^3 densité air = 1.293 kg/m^3 # # a TPN densité acier = 0.283 lb/in^3 # # acier carbone densité aluminum = 0.098 lb/in^3 densité zinc = 0.230 lb/in^3 densité cuivre-zinc = 0.310 lb/in^3 # # 80Cu-20Zn densité cuivre = 0.295 lb/in^3 densité fonte = 0.260 lb/in^3 # # fonte densité nickel = 0.308 lb/in^3 densité tin = 0.275 lb/in^3 densité titane = 0.170 lb/in^3 densité argent = 0.379 lb/in^3 densité nylon = 0.045 lb/in^3 densité polycarbonate = 0.045 lb/in^3 # # energy units # [energie] joule = N*m J = joule # joule kilojoule = 1000 joule kJ = kilojoule # kilojoule megajoule = 1000 kilojoule gigajoule = 1000 megajoule millijoule = 0.001 joule mJ = millijoule # millijoule calorie = 4.1868 J cal = calorie # calorie kilocalorie = 1000 cal kcal = kilocalorie # kilocalorie calorie food = kilocalorie thermie = 1000 kcal Btu = cal*lb*R/(g*K) # British thermal unit British thermal unit = Btu therm = 100000 Btu erg = cm*dyne electronvolt = 1.602176462e-19 J eV = electronvolt # electronvolt kWh = kW*heure # kilowatt-heure kilowatt heure = kWh tonne TNT = 4.184e9 J # # power units # [puissance] watt = J/s W = watt # watt kilowatt = 1000 W kW = kilowatt # kilowatt megawatt = 1000 kW MW = megawatt # megawatt gigawatt = 1000 MW GW = gigawatt # gigawatt milliwatt = 0.001 W horsepower = 550 ft*lbf/sec hp = horsepower # chevaux-vapeur horsepower metrique = 75 kgf*m/s # # frequency # [frequence] hertz = unite/sec Hz = hertz # hertz millihertz = 0.001 Hz kilohertz = 1000 Hz kHz = kilohertz # kilohertz megahertz = 1000 kHz MHz = megahertz # megahertz gigahertz = 1000 MHz GHz = gigahertz # gigahertz # # radioactivity # [radioactivite] becquerel = unite/sec Bq = becquerel # becquerel curie = 3.7e10 Bq millicurie = 0.001 curie roentgen = 2.58e-4 coulomb/kg [dose de radiation] gray = J/kg Gy = gray # gray rad. abs. dose = 0.01 Gy # # rad commun sievert = J/kg # # equiv. dose millisievert = 0.001 sievert # # equiv. dose Sv = sievert # sievert # equiv. dose rem = 0.01 Sv # # roentgen equiv mammal millirem = 0.001 rem # # roentgen equiv mammal # # viscosity # [viscosite] poise = g/cm*s P = poise # poise centipoise = 0.01 poise cP = centipoise # centipoise [viscosite] stokes = cm^2/s St = stokes # stokes centistokes = 0.01 stokes cSt = centistokes # centistokes # # misc. units # [acceleration] acceleration gravitationnelle = 9.80665 m/s^2 [constante] constante de gravite = 6.673e-11 N*m^2/kg^2 constante des gaz = 8.314472 J/mol*K # R [consommation d'essence] mpg = mi/gal # milles/gallon mpg imp = mi/gallon impérial # milles/gallon imp. litre par 100 km = [mpg] 3.785411784 / (x * 0.01609344) ; \ 3.785411784 / (x * 0.01609344) # # non linéaire ConvertAll/data/units_ru.dat0000600000175000017500000010406112573702206015056 0ustar dougdoug#***************************************************************************** # units.dat, файл данных величин, версия 0.6.1 # # ConvertAll - программа для конвертирования величин # Copyright (C) 2015, Douglas W. Bell # # Это свободное программное обеспечение; Вы можете распространять и/или изменять # его в соответствии с условиями GNU General Public License, версии 2. # Эта программа распространяется в надежде, что будет полезна, но БЕЗ ВСЯКОЙ ГАРАНТИИ. #***************************************************************************** # # Величины определяются количеством и эквивалентной величиной или комбиначией # величин. Для описания количества может быть использовано выражение Python, # но оно ограничено использованием операторов: *, /, +, -, **, (, ). # Будьте внимательны при округлении целых величин (integer) при делении: # необходимо использовать хотябы одно значение с плавующей точкой (float). # # Тип величины должен быть взят в квадратные скобки [] перед набором величин. # Первый комментарий после эквивалента величины будет отображаться непосредственно # после имени величины (обычно для описания аббревиатуры величины). # Следующий комментарий будет отображён в колонке для комментариев. # Последующие комментарии и комментарии всей строки игнорируются. # # Для нелинейных величин эквивалентная величина указывается в квадратных скобках, # за ней следуют выражения (функции) или список эквивалентности для определения. # Необходимо указать два выражения разделённые ";". Оба являются функциями от "x", # перавая lz перевода из величины в эквивалентную величину, а вторая - обратно. # Любое выражение Python возвращающее значение с плавующей точкой (float) (включая # функции математического модуля) должны работать. Список эквивалентности - это # список Python набора точек для интерполяции. # # Все величины должны ссылаться на примитивные величины, обозначенные знаком '!' # как эквивалент величины. Специальные "безразмерные" примитивы величины обозначены # знаком '!!' для эквивалента величины. Цикличные ссылки также необходимо избегать. # # Примитивы величин: kg, m, s, K, A, mol, cd, rad, sr, bit, unit # ############################################################################## # # Раздел МАССЫ # [масса] kg = ! # килограмм kilogram = kg key = kg # килограмм # разговорное hectogram = 100 gram dekagram = 10 gram gram = 0.001 kg g = gram # грамм decigram = 0.1 gram centigram = 0.01 gram milligram = 0.001 gram mg = milligram # миллиграмм microgram = 0.001 mg tonne = 1000 kg # # метрическая metric ton = tonne megagram = tonne kilotonne = 1000 tonne # # метрическая gigagram = 1e9 gram teragram = 1e12 gram carat = 0.2 gram ct = carat # карат amu = 1.66053873e-27 kg # атомная масса atomic mass unit = amu pound = 0.45359237 kg # # вес lb = pound # фунт # вес lbm = pound # фунт # вес ounce = 1/16.0 pound # # вес oz = ounce # унция lid = ounce # # разговорное dram = 1/16.0 ounce # # вес pound troy = 5760 grain lb troy = pound troy # pound troy ounce troy = 1/12.0 lb troy oz troy = ounce troy # ounce troy ton = 2000 lb # # неметрическая kiloton = 1000 ton # # неметрическая long ton = 2240 lb # # Imperial slug = lbf*s^2/ft stone = 14 lb grain = 1/7000.0 lb pennyweight = 24 grain hundredweight long = 112 lb # # Imperial hundredweight short = 100 lb # # US & Канада solar mass = 1.9891e30 kg кг = kg # килограмм килограмм = kg грамм = gram г = gram # грамм мг = milligram # миллиграмм миллиграмм = milligram тонна = tonne # # метрическая карат = carat фунт = pound # # Раздел ДЛИНА / ДИСТАНЦИЯ # [длина] m = ! # метр meter = m metre = m dm = 0.1 m # дециметр decimeter = dm cm = 0.01 m # сантиметр centimeter = cm mm = 0.001 m # миллиметр millimeter = mm micrometer = 1e-6 m micron = micrometer nanometer = 1e-9 m nm = nanometer # нанометр dekameter = 10 m hectometer = 100 m km = 1000 m # километр kilometer = km megameter = 1000 km angstrom = 1e-10 m fermi = 1e-15 m # # размер ядра inch = 2.54 cm in = inch # дюйм inches = inch mil = 0.001 inch microinch = 1e-6 inch microinches = microinch foot = 12 inch ft = foot # фут feet = foot foot US survey = 1200/3937.0 m yard = 3 ft yd = yard # ярд mile = 5280 ft mi = mile # миля nautical mile = 1852 m nmi = nautical mile # морская миля mile US survey = 5280 foot US survey league = 3 mile chain = 66 ft chain US survey = 66 foot US survey link = 0.01 chain fathom = 6 ft rod = 5.5 yard furlong = 40 rod hand = 4 inch cubit = 21.8 inch # локоть # библейская величина point = 1/72.0 inch # точка # desktop publishing point pica = 12 point caliber = 1.0 inch # # размер пули rack unit = 1.75 in # # computing smoot = 67 inch football field = 100 yd # # футбольное поле marathon = 46145 yd mil Swedish = 10 km versta = 3500 ft # # Русская величина au = 1.49597870691e11 m # астрономическая величина astronomical unit = au LD = 384400 km # расстояние до луны # астрономическая lunar distance = LD # # астрономическое расстояние light year = 365.25 light speed * day # световой год light minute = light speed * min light second = light speed * s parsec = 3.0856775813e16 m # парсек kiloparsec = 1000 parsec megaparsec = 1000 kiloparsec screw size = [in] 0.013*x + 0.06 ; (x - 0.06) / 0.013 \ # # Unified diameters, нелинейная AWG Dia = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # American Wire Gauge \ # use -1, -2 for 00, 000; нелинейная American Wire Gauge Dia = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # # use -1, -2 for 00, 000; нелинейная standard gauge = [in] [(-5, .448350), (1, .269010), (14, .0747250), \ (16, .0597800), (17, .0538020), (20, .0358680), \ (26, .0179340), (31, .0104615), (36, .00672525), \ (38, .00597800)] # steel \ # Manufacturers Std. Gauge, нелинейная zinc gauge = [in] [(1, .002), (10, .02), (15, .04), (19, .06), \ (23, .1), (24, .125), (27, .5), (28, 1)] \ # # sheet metal thickness, нелинейная ring size = [in] 0.1018*x + 1.4216 ; (x - 1.4216) / 0.1018 \ # # US size, circum., нелинейная shoe size mens = [in] x/3.0 + 7 + 1/3.0 ; (x - 7 - 1/3.0) * 3 \ # # US sizes, нелинейная shoe size womens = [in] x/3.0 + 6 + 5/6.0 ; (x - 6 - 5/6.0) * 3 \ # # US sizes, нелинейная метр = m м = m # метр см = cm # сантиметр мм = mm # миллиметр км = km # километр дюйм = inch фут = foot нм = nanometer # нанометр ангстрем = angstrom ярд = yard миля = mile # # Раздел ВРЕМЕНИ # [время] s = ! # секунда sec = s # секунда second = s ms = 0.001 s # миллисекунда millisecond = ms microsecond = 1e-6 s ns = 1e-9 s # наносекунда nanosecond = ns minute = 60 s min = minute # минута hour = 60 min hr = hour # час bell = 30 min # # naval definition watch = 4 hour watches = watch day = 24 hr week = 7 day wk = week # неделя fortnight = 14 day month = 1/12.0 year year = 365.242198781 day yr = year # год calendar year = 365 day decade = 10 year century = 100 year centuries = century millennium = 1000 year millennia = millennium мс = ms # миллисекунда сек = s мин = minute час = hour [трудоёмкость] man hour = 168/40.0 hour man week = 40 man hour man month = 1/12.0 man year man year = 52 man week # # Раздел ТЕМПЕРАТУРА # [температура] K = ! # Кельвин Kelvin = K deg K = K # Кельвин degree Kelvin = K К = K # Кельвин Кельвин = K C = [K] x + 273.15 ; x - 273.15 # Цельсий # нелинейная Celsius = [K] x + 273.15 ; x - 273.15 # # нелинейная deg C = [K] x + 273.15 ; x - 273.15 # Цельсий # нелинейная degree Celsius = [K] x + 273.15 ; x - 273.15 # # нелинейная R = 5/9.0 K # Ранкин Rankine = R deg R = R # Ранкин F = [R] x + 459.67 ; x - 459.67 # фаренгейт # нелинейная Fahrenheit = [R] x + 459.67 ; x - 459.67 # # нелинейная deg F = [R] x + 459.67 ; x - 459.67 # фаренгейт # нелинейная degree Fahrenheit = [R] x + 459.67 ; x - 459.67 # # нелинейная [темературы различные] C deg = K # Celsius degree Celsius degree = C deg F deg = R # Fahrenheit deg. Fahrenheit degree = F deg # # Раздел ЭЛЕКТРИЧЕСТВО # [ток] A = ! # ампер ampere = A amp = A milliampere = 0.001 A milliamp = milliampere mA = milliampere # миллиампер мА = milliampere # миллиампер microampere = 0.001 mA kiloampere = 1000 A kA = kiloampere # килоампер [заряд] coulomb = A*s amp hour = A*hr mAh = 0.001 amp hour # миллиампер час milliamp hour = mAh [напряжение] volt = W/A V = volt # вольт millivolt = 0.001 volt mV = millivolt # милливольт kilovolt = 1000 volt kV = kilovolt # киловольт [сопротивление] ohm = V/A milliohm = 0.001 ohm microhm = 0.001 milliohm kilohm = 1000 ohm [проводимость] siemens = A/V [ёмкость] farad = coulomb/V millifarad = 0.001 farad microfarad = 0.001 millifarad nanofarad = 1e-9 farad picofarad = 1e-12 farad [магнетизм] weber = V*s Wb = weber # Вебер maxwell = 1e-8 Wb [индуктивность] henry = Wb/A H = henry # Генри millihenry = 0.001 henry mH = millihenry # миллигенри microhenry = 0.001 mH [плотность потока] tesla = Wb/m^2 T = tesla # Тесла gauss = maxwell/cm^2 # # Раздел МОЛЕКУЛЯРНЫЙ # [количество вещества] mol = ! # моль # gram mole mole = mol # # gram mole gram mole = mol kilomole = 1000 mol kmol = kilomole # киломоль pound mole = mol*lbm/gram lbmol = pound mole # pound mole [размер моля] avogadro = gram/(amu*mol) авогадро = avogadro # # Раздел ОСВЕЩЕНИЕ # [интенсивность света] cd = ! # candela candela = cd [световой поток] lumen = cd * sr lm = lumen # люмен [освещенность] lux = lumen/m^2 footcandle = lumen/ft^2 metercandle = lumen/m^2 [светимость] lambert = cd/(pi*cm^2) millilambert = 0.001 lambert footlambert = cd/(pi*ft^2) # # Раздел УГЛОВЫХ величин # [угол] radian = ! rad = radian # # радиан circle = 2 pi*radian turn = circle revolution = circle rev = revolution # revolution degree = 1/360.0 circle deg = degree # градус arc min = 1/60.0 degree # минута arc minute = arc min min arc = arc min # минута minute arc = arc min arc sec = 1/60.0 arc min # секунда arc second = arc sec sec arc = arc sec # секунда second arc = arc sec quadrant = 1/4.0 circle right angle = quadrant gradian = 0.01 quadrant # # Раздел УГЛЫ пространственные # [пространственный угол] sr = ! # стерадиан steradian = sr sphere = 4 pi*sr hemisphere = 1/2.0 sphere # # Раздел ИНФОРМАЦИИ / ДАННЫХ # [данные] bit = ! kilobit = 1000 bit # # based on power of 10 megabit = 1000 kilobit # # based on power of 10 byte = 8 bit B = byte # byte kilobyte = 1024 byte # # based on power of 2 kB = kilobyte # kilobyte # based on power of 2 megabyte = 1024 kB # # based on power of 2 MB = megabyte # megabyte # based on power of 2 gigabyte = 1024 MB # # based on power of 2 GB = gigabyte # gigabyte # based on power of 2 terabyte = 1024 GB # # based on power of 2 TB = terabyte # terabyte # based on power of 2 petabyte = 1024 TB # # based on power of 2 PB = petabyte # petabyte # based on power of 2 kilobyte IEC std = 1000 byte # # based on power of 10 kB IEC std = kilobyte IEC std # kilobyte # based on power of 10 megabyte IEC std = 1000 kB IEC std # # based on power of 10 MB IEC std = megabyte IEC std # megabyte # based on power of 10 gigabyte IEC std = 1000 MB IEC std # # based on power of 10 GB IEC std = gigabyte IEC std # gigabyte # based on power of 10 terabyte IEC std = 1000 GB IEC std # # based on power of 10 TB IEC std = terabyte IEC std # terabyte # based on power of 10 petabyte IEC std = 1000 TB IEC std # # based on power of 10 PB IEC std = petabyte IEC std # petabyte # based on power of 10 kibibyte = 1024 byte KiB = kibibyte # kibibyte mebibyte = 1024 KiB MiB = mebibyte # mebibyte gibibyte = 1024 MiB GiB = gibibyte # gibibyte tebibyte = 1024 GiB TiB = tebibyte # tebibyte pebibyte = 1024 TiB PiB = pebibyte # pebibyte [передача данных] bps = bit/sec # бит / сек. kbps = 1000 bps # кбит / сек. # based on power of 10 # # Раздел ПОСТОЯННЫХ величин # [количество] unit = !! 1 = unit # unit pi = 3.14159265358979323846 unit ПИ = pi pair = 2 unit # пара hat trick = 3 unit # # спорт dozen = 12 unit doz = dozen # дюжина дюжина = dozen bakers dozen = 13 unit # # чёртова дюжина чёртова дюжина = bakers dozen score = 20 unit gross = 144 unit great gross = 12 gross ream = 500 unit percent = 0.01 unit % = percent mill = 0.001 unit [процентная ставка] APR = [unit] log(1 + x/100) ; (exp(x) - 1)*100 \ # annual % rate # based on continuous compounding [концентрация] proof = 1/200.0 unit # # содержание алкоголя ppm = 1e-6 unit # частиц на миллион parts per million = ppm ppb = 1e-9 unit # частиц на биллион parts per billion = ppb ppt = 1e-12 unit # частиц на триллион parts per trillion = ppt karat = 1/24.0 unit # # чистота золота carat gold = karat # # чистота золота # # Раздел СИЛА # [сила] newton = kg*m/s^2 N = newton # Ньютон Н = newton # Ньютон dekanewton = 10 newton kilonewton = 1000 N kN = kilonewton # килоньютон meganewton = 1000 kN millinewton = 0.001 N dyne = cm*g/s^2 kg force = kg * gravity # килограм силы kgf = kg force # килограм силы kilogram force = kg force kp = kg force # kilopond kilopond = kg force gram force = g * gravity pound force = lbm * gravity # # вес lbf = pound force # pound force # вес ton force = ton * gravity ounce force = ounce * gravity ozf = ounce force # ounce force tonne force = tonne * gravity # # метрическая pdl = lbm * ft / sec^2 # poundal # Imperial force poundal = pdl # # Imperial force # # Раздел ПЛОЩАДЕЙ # [площадь] barn = 1e-28 m^2 # # particle physics are = 100 m^2 decare = 10 are dekare = 10 are hectare = 100 are stremma = 1000 m^2 acre = 10 chain^2 section = mile^2 township = 36 section homestead = 160 acre rai = 1600 m^2 # # Thai ngaan = 400 m^2 # # Thai circular inch = 1/4.0 pi*in^2 # # area of 1 inch circle circular mil = 1/4.0 pi*mil^2 # # area of 1 mil circle AWG Area = [in^2] pi/4*(92.0**((36-x)/39.0)/200.0)**2 ; \ 36 - 39.0*log(200.0*sqrt(x*4.0/pi))/log(92.0) \ # American Wire Gauge \ # use -1, -2 for 00, 000; non-linear American Wire Gauge Area = [in^2] pi/4*(92.0**((36-x)/39.0)/200.0)**2 ; \ 36 - 39.0*log(200.0*sqrt(x*4.0/pi))/log(92.0) \ # # use -1, -2 for 00, 000; non-linear # # Раздел ОБЪЁМОВ # [объём] cc = cm^3 # кубический сантиметр cubic centimeter = cc liter = 1000 cc l = liter # литр litre = liter deciliter = 0.1 liter centiliter = 0.01 liter milliliter = cc ml = milliliter # миллилитр microliter = 1e-6 liter dekaliter = 10 liter hectoliter = 100 liter kiloliter = 1000 liter kl = kiloliter # килолитр megaliter = 1000 kiloliter gallon = 231 in^3 # # US жидкость gal = gallon # галлон # US жидкость quart = 1/4.0 gallon # # US жидкость qt = quart # кварта # US жидкость pint = 1/2.0 quart # # US жидкость pt = pint # пинта # US жидкость fluid ounce = 1/16.0 pint # # US fl oz = fluid ounce # fluid ounce # US ounce fluid = fluid ounce # # US fluid dram = 1/8.0 fluid ounce # # US minim = 1/480.0 fluid ounce # # US imperial gallon = 4.54609 liter imp gal = imperial gallon # imperial gallon gallon imperial = imperial gallon imperial quart = 1/4.0 imp gal imp qt = imperial quart # imperial quart quart imperial = imperial quart imperial pint = 1/8.0 imp gal imp pt = imperial pint # imperial pint pint imperial = imperial pint imperial fluid ounce = 1/160.0 imp gal imp fl oz = imperial fluid ounce # imperial fluid ounce imperial fluid dram = 1/8.0 imp fl oz imperial minim = 1/480.0 imp fl oz cup = 8 fl oz tablespoon = 1/16.0 cup tbsp = tablespoon # столовая ложка teaspoon = 1/3.0 tbsp tsp = teaspoon # чайная ложка barrel = 42 gallon bbl = barrel # баррель shot = 1.5 fl oz fifth = 1/5.0 gallon # # алкоголь wine bottle = 750 ml magnum = 1.5 liter # # алкоголь keg = 15.5 gallon # # пиво hogshead wine = 63 gal hogshead beer = 54 gal bushel = 2150.42 in^3 peck = 1/4.0 bushel cord = 128 ft^3 board foot = ft^2*in board feet = board foot литр = liter мл = milliliter # миллилитр # # Раздел СКОРОСТЬ # [скорость] knot = nmi/hr kt = knot # узел light speed = 2.99792458e8 m/s mph = mi/hr # миль в час kph = km/hr # километров в час mach = 340.29 m/s # # скорость звука [количество оборотов] rpm = rev/min # rev/min rps = rev/sec # rev/sec # # Раздел СКОРОСТЬ ПОТОКА # [поток жидкости] gph = gal/hr # gallons/hour gpm = gal/min # gallons/minute cfs = ft^3/sec # cu ft/second cfm = ft^3/min # cu ft/minute lpm = l/min # liter/min [поток газа] sccm = atm*cc/min # std cc/min # pressure * flow sccs = atm*cc/sec # std cc/sec # pressure * flow slpm = atm*l/min # std liter/min # pressure * flow slph = atm*l/hr # std liter/hour # pressure * flow scfh = atm*ft^3/hour # std cu ft/hour # pressure * flow scfm = atm*ft^3/min # std cu ft/min # pressure * flow # # Раздел ДАВЛЕНИЙ # [давление] Pa = N/m^2 # паскаль pascal = Pa hPa = 100 Pa # гектопаскаль hectopascal = hPa kPa = 1000 Pa # килопаскаль kilopascal = kPa MPa = 1000 kPa # мегапаскаль megapascal = MPa GPa = 1000 MPa # гигапаскаль gigapascal = GPa atm = 101325 Pa # атмосфера atmosphere = atm bar = 1e5 Pa mbar = 0.001 bar # миллибар millibar = mbar microbar = 0.001 mbar decibar = 0.1 bar kilobar = 1000 bar megabar = 1000 kilobar mm Hg = mm*density Hg*gravity millimeter of Hg = mm Hg torr = mm Hg micron of Hg = micron*density Hg*gravity in Hg = in*density Hg*gravity # inch of Hg inch of Hg = in Hg m water = m*density water*gravity # метр H2O # чистой воды m H2O = m water # метр H2O # чистой воды meter of water = m water # # чистой воды in water = in*density water*gravity # дюйм H2O # чистой воды in H2O = in water # дюйм H2O # чистой воды inch of water = in water ft water = ft*density water*gravity # фут H2O # чистой воды ft H2O = ft water # фут H20 # чистой воды feet of water = ft water # # чистой воды foot of head = ft water # # чистой воды ft hd = ft water # foot of head # чистой воды psi = lbf/in^2 # фунт / кв. дюйм pound per sq inch = psi ksi = 1000 psi # 1000 lb / кв. дюйм Па = Pa # паскаль кПа = kPa # килопаскаль МПа = MPa # мегапаскаль бар = bar атм = atm # атмосфера # # Раздел ПЛОТНОСТЬ # [плотность] density water = gram/cm^3 density sea water = 1.025 gram/cm^3 density Hg = 13.5950981 gram/cm^3 density air = 1.293 kg/m^3 # # at STP density steel = 0.283 lb/in^3 # # карбоновая сталь density aluminum = 0.098 lb/in^3 density zinc = 0.230 lb/in^3 density brass = 0.310 lb/in^3 # # 80Cu-20Zn density copper = 0.295 lb/in^3 density iron = 0.260 lb/in^3 # # cast iron density nickel = 0.308 lb/in^3 density tin = 0.275 lb/in^3 density titanium = 0.170 lb/in^3 density silver = 0.379 lb/in^3 density nylon = 0.045 lb/in^3 density polycarbonate = 0.045 lb/in^3 # # Раздел ЭНЕРГИЯ # [энергия] joule = N*m J = joule # джоуль kilojoule = 1000 joule kJ = kilojoule # килоджоуль megajoule = 1000 kilojoule gigajoule = 1000 megajoule millijoule = 0.001 joule mJ = millijoule # миллиджоуль calorie = 4.1868 J cal = calorie # калория kilocalorie = 1000 cal kcal = kilocalorie # килокалория calorie food = kilocalorie thermie = 1000 kcal Btu = cal*lb*R/(g*K) # британская тепловая единица British thermal unit = Btu therm = 100000 Btu erg = cm*dyne electronvolt = 1.602176462e-19 J eV = electronvolt # электронвольт kWh = kW*hour # киловатт в час kilowatt hour = kWh ton TNT = 4.184e9 J tonne oil equivalent = 41.868 gigajoule tonne coal equivalent = 7000000 kcal # # Раздел МОЩНОСТИ # [мощность] watt = J/s W = watt # Ватт kilowatt = 1000 W kW = kilowatt # киловатт megawatt = 1000 kW MW = megawatt # мегаватт gigawatt = 1000 MW GW = gigawatt # гигаватт milliwatt = 0.001 W horsepower = 550 ft*lbf/sec # # лошадиная сила hp = horsepower # лошадиная сила metric horsepower = 75 kgf*m/s ton refrigeration = 12000 Btu/hr # # Раздел ЧАСТОТ # [частота] hertz = unit/sec Hz = hertz # герц millihertz = 0.001 Hz kilohertz = 1000 Hz kHz = kilohertz # килогерц megahertz = 1000 kHz MHz = megahertz # мегагерц gigahertz = 1000 MHz GHz = gigahertz # гигагерц # # Раздел РАДИОАКТИВНОСТЬ # [радиоактивность] becquerel = unit/sec Bq = becquerel # беккерель curie = 3.7e10 Bq millicurie = 0.001 curie roentgen = 2.58e-4 coulomb/kg [доза радиации] gray = J/kg Gy = gray # Грей # единица измерения поглощённой дозы centigray = 0.01 Gy rad. abs. dose = 0.01 Gy # # commonly rad sievert = J/kg # # equiv. dose millisievert = 0.001 sievert # # equiv. dose Sv = sievert # sievert # equiv. dose rem = 0.01 Sv # # roentgen equiv mammal millirem = 0.001 rem # # roentgen equiv mammal # # Раздел ВЯЗКОСТИ # [вязкость (динамическая)] poise = g/(cm*s) P = poise # пуаз # единица вязкости centipoise = 0.01 poise cP = centipoise # сентипауаз # единица абсолютной вязкости [вязкость (кинематическая)] stokes = cm^2/s St = stokes # стокс centistokes = 0.01 stokes cSt = centistokes # сентистокс # # Раздел РАЗНОЕ # [ускорение] gravity = 9.80665 m/s^2 galileo = cm/s^2 [константы] gravity constant = 6.673e-11 N*m^2/kg^2 gas constant = 8.314472 J/(mol*K) # R [потребление топлива] mpg = mi/gal # миль/галлон mpg imp = mi/gallon imperial # miles/gallon imp liter per 100 km = [mpg] 3.785411784 / (x * 0.01609344) ; \ 3.785411784 / (x * 0.01609344) # # нелинейная [проницаемость] darcy = 1 cm^2*centipoise/atm/s millidarcy = 0.001 darcy ConvertAll/data/units_es.dat0000644000175000017500000006676412573354441015074 0ustar dougdoug#***************************************************************************** # units.dat, el archivo de datos de unidad, versión 0.6.0 # # ConvertAll, un programa para convertir unidades # Copyright (C) 2015, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, Version 2. This program is # distributed in the hope that it will be useful, but WITTHOUT ANY WARRANTY. #***************************************************************************** # # Units are defined by an optional quantity and an equivalent unit or unit # combination. A python expression may be used for the quantity, but is # resticted to using only the following operators: *, /, +, -, **, (, ). # Beware of integer division truncation: be sure to use a float for at # least one of the values. # # The unit type must be placed in square brackets before a set of units. # The first comment after the equivalent unit will be put in parenthesis after # the unit name (usually used to give the full name of an abbreviated unit). # The next comment will be used in the program list's comment column; # later comments and full line comments are ignored. # # Non-linear units are indicated with an equivalent unit in square brackets, # followed by either equations or equivalency lists for the definition. # For equations, two are given, separated by a ';'. Both are functions of # "x", the first going from the unit to the equivalent unit and the second # one in reverse. Any valid Python expression returning a float (including # the functions in the math module) should work. The equivalency list is a # python list of tuples giving points for linear interpolation. # # All units must reduce to primitive units, which are indicated by an # equivalent unit starting with '!'. A special "unitless" primitve unit # (usualty called "unit") has '!!' for an equivalent unit. Circular references # must also be avoided. # # Primitive units: kg, m, s, K, A, mol, cd, rad, sr, bit, unit # ############################################################################## # # unidades de masa # [masa] kg = ! # kilogramo kilogramo = kg key = kg # # jerga de drogas hectogramo = 100 gramo decagramo = 10 gramo gramo = 0.001 kg g = gramo # gramo decigramo = 0.1 gramo centigramo = 0.01 gramo miligramo = 0.001 gramo mg = miligramo # miligramo microgramo = 0.001 mg tonelada = 1000 kg # # métrica tonelada métrica = tonelada megagramo = tonelada kilotonelada = 1000 tonelada # # métrica gigagramo = 1e9 gramo teragramo = 1e12 gramo carat = 0.2 gramo ct = carat # carat amu = 1.66053873e-27 kg # masa atómica unidad de masa atómica = amu libra = 0.45359237 kg lb = libra # libra lbm = libra # libra onza = 1/16.0 libra oz = onza # onza lid = onza # # jerga de drogas libra troy = 5760 grain lb troy = libra troy # libra troy onza troy = 1/12.0 lb troy oz troy = onza troy # onza troy ton = 2000 lb # # no métrico kilotón = 1000 ton # # no métrico slug = lbf*s^2/ft stone = 14 lb grain = 1/7000.0 lb pennyweight = 24 grain hundredweight long = 112 lb # # Imperial hundredweight short = 100 lb # # US & Canadá masa solar = 1.9891e30 kg # # unidades de longitud / distancia # [longitud] m = ! # metro metro = m metre = m decímetro = 0.1 m cm = 0.01 m # centímetro centímetro = cm mm = 0.001 m # milímetro milímetro = mm micrómetro = 1e-6 m micrón = micrómetro nanómetro = 1e-9 m nm = nanómetro # nanómetro decámetro = 10 m hectómetro = 100 m km = 1000 m # kilómetro kilómetro = km megámetro = 1000 km angstrom = 1e-10 m fermi = 1e-15 m # # tamaño nuclear pulgada = 2.54 cm in = pulgada # pulgada pulgadas = pulgada mil = 0.001 pulgada micropulgada = 1e-6 pulgada micropulgadas = micropulgada pie = 12 pulgada ft = pie # pie pies = pie pie US survey = 1200/3937.0 m yarda = 3 ft yd = yarda # yarda milla = 5280 ft mi = milla # milla milla náutica = 1852 m nmi = milla náutica # milla náutica legua = 3 milla chain = 66 ft braza = 6 ft rod = 5.5 yarda furlong = 40 rod estadio = furlong mano = 4 pulgada codo = 21.8 pulgada # # unidad bíblica point = 1/72.0 pulgada # # punto de carácter tipográfico pica = 12 point calibre = 1.0 pulgada # # tamaño de una bala football field = 100 yd marathon = 46145 yd milla escandinava = 10 km au = 1.49597870691e11 m # unidad astronómica unidad astronómica = au año luz = 365.25 velocidad de la luz * día minuto luz = velocidad de la luz * min segundo luz = velocidad de la luz * s parsec = 3.0856775813e16 m kiloparsec = 1000 parsec megaparsec = 1000 kiloparsec screw size = [in] 0.013*x + 0.06 ; (x - 0.06) / 0.013 \ # # Diámetro unificado, no linear AWG Dia = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # American Wire Gauge \ # use -1, -2 for 00, 000; non-linear American Wire Gauge Dia = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # # use -1, -2 for 00, 000; non-linear standard gauge = [in] [(-5, .448350), (1, .269010), (14, .0747250), \ (16, .0597800), (17, .0538020), (20, .0358680), \ (26, .0179340), (31, .0104615), (36, .00672525), \ (38, .00597800)] # steel \ # Manufacturers Std. Gauge, non-linear zinc gauge = [in] [(1, .002), (10, .02), (15, .04), (19, .06), \ (23, .1), (24, .125), (27, .5), (28, 1)] \ # # sheet metal thickness, non-linear ring size = [in] 0.1018*x + 1.4216 ; (x - 1.4216) / 0.1018 \ # # US size, circum., non-linear tamaño de zapato para hombres = [in] x/3.0 + 7 + 1/3.0 ; (x - 7 - 1/3.0) * 3 \ # # medida US, no linear tamaño de zapato para mujeres = [in] x/3.0 + 6 + 5/6.0 ; (x - 6 - 5/6.0) * 3 \ # # medida US, no linear # # unidades de tiempo # [tiempo] s = ! # segundo seg = s # segundo segundo = s ms = 0.001 s # milisegundo milisegundo = ms microsegundo = 1e-6 s ns = 1e-9 s # nanosegundo nanosegundo = ns minuto = 60 s min = minuto # minuto hora = 60 min hr = hora # hora bell = 30 min # # definición naval watch = 4 hora watches = watch día = 24 hr semana = 7 día wk = semana # semana fortnight = 14 días mes = 1/12.0 año año = 365.242198781 día años = año yr = año # año año calendario = 365 día década = 10 año siglo = 100 año siglos = siglo milenio = 1000 año milenios = milenio [planificación] horas hombre = 168/40.0 hora semanas hombre = 40 horas hombre meses hombre = 1/12.0 años hombre años hombre = 52 semanas hombre # # temperatura # [temperatura] K = ! # Kelvin Kelvin = K deg K = K # Kelvin grado Kelvin = K C = [K] x + 273.15 ; x - 273.15 # Celsius # no linear Celsius = [K] x + 273.15 ; x - 273.15 # # no linear deg C = [K] x + 273.15 ; x - 273.15 # Celsius # no linear grado Celsius = [K] x + 273.15 ; x - 273.15 # # no linear R = 5/9.0 K # Rankine Rankine = R deg R = R # Rankine F = [R] x + 459.67 ; x - 459.67 # Fahrenheit # no linear Fahrenheit = [R] x + 459.67 ; x - 459.67 # # no linear deg F = [R] x + 459.67 ; x - 459.67 # Fahrenheit # no linear grado Fahrenheit = [R] x + 459.67 ; x - 459.67 # # no linear [temp. diff.] C deg = K # grados Celsius grados Celsius = C deg F deg = R # grados Fahrenheit grados Fahrenheit = F deg # # unidades eléctricas # [corriente] A = ! # ampere ampere = A amp = A amperio = A miliamperio = 0.001 A miliamp = miliamperio mA = miliamperio # miliamperio microamperio = 0.001 mA kiloamperio = 1000 A kA = kiloamperio # kiloamperio [carga] coulomb = A*s amp hora = A*hr mAh = 0.001 amp hora # miliamp hora miliamp hora = mAh [potencial] voltio = W/A V = voltio # voltio milivoltio = 0.001 voltio mV = milivoltio # milivoltio kilovoltio = 1000 voltio kV = kilovoltio # kilovoltio [resistencia] ohm = V/A miliohm = 0.001 ohm microhm = 0.001 miliohm kilohm = 1000 ohm [conductancia] siemens = A/V [capacitancia] farad = coulomb/V milifarad = 0.001 farad microfarad = 0.001 milifarad nanofarad = 1e-9 farad picofarad = 1e-12 farad [flujo magnético] weber = V*s Wb = weber # weber maxwell = 1e-8 Wb [inductancia] henry = Wb/A H = henry # henry milihenry = 0.001 henry mH = milihenry # milihenry microhenry = 0.001 mH [densidad de flujo] tesla = Wb/m^2 T = tesla # tesla gauss = maxwell/cm^2 # # unidades moleculares # [cantidades moleculares] mol = ! # mole # gramo mole mole = mol # # gramo mole gramo mole = mol kilomol = 1000 mol kmol = kilomol # kilomol libra mole = mol*lbm/gramo lbmol = libra mole # libra mole [tamaño de un mol] avogadro = gramo/(amu*mol) # # Unidades de iluminación # [intensidad de iluminación] cd = ! # candela candela = cd [flujo luminoso] lumen = cd * sr lm = lumen # lumen [iluminancia] lux = lumen/m^2 footcandle = lumen/ft^2 metercandle = lumen/m^2 [luminancia] lambert = cd/(pi*cm^2) mililambert = 0.001 lambert footlambert = cd/(pi*ft^2) # # unidades angulares # [ángulo] radián = ! rad = radián # radián círculo = 2 pi*radián giro = círculo revolución = círculo rev = revolución # revolución grado = 1/360.0 círculo deg = grado # grado arc min = 1/60.0 grado # minuto arc minute = arc min min arc = arc min # minuto minute arc = arc min arc seg = 1/60.0 arc min # segundo arc segundo = arc seg seg arc = arc seg # segundo segundo arc = arc seg cuadrante = 1/4.0 círculo ángulo recto = cuadrante gradián = 0.01 cuadrante # # unidades de ángulo sólido # [ángulo sólido] sr = ! # estereorradián estereorradián = sr esfera = 4 pi*sr hemiesfera = 1/2.0 esfera # # unidades de información # [datos] bit = ! kilobit = 1000 bit # # basado en potencias de 10 megabit = 1000 kilobit # # basado en potencias de 10 byte = 8 bit B = byte # byte kilobyte = 1024 byte # # basado en potencias de 2 kB = kilobyte # kilobyte # basado en potencias de 2 megabyte = 1024 kB # # basado en potencias de 2 MB = megabyte # megabyte # basado en potencias de 2 gigabyte = 1024 MB # # basado en potencias de 2 GB = gigabyte # gigabyte # basado en potencias de 2 terabyte = 1024 GB # # basado en potencias de 2 TB = terabyte # terabyte # basado en potencias de 2 petabyte = 1024 TB # # basado en potencias de 2 PB = petabyte # petabyte # basado en potencias de 2 kilobyte IEC std = 1000 byte # # basado en potencias de 10 kB IEC std = kilobyte IEC std # kilobyte # basado en potencias de 10 megabyte IEC std = 1000 kB IEC std # # basado en potencias de 10 MB IEC std = megabyte IEC std # megabyte # basado en potencias de 10 gigabyte IEC std = 1000 MB IEC std # # basado en potencias de 10 GB IEC std = gigabyte IEC std # gigabyte # basado en potencias de 10 terabyte IEC std = 1000 GB IEC std # # basado en potencias de 10 TB IEC std = terabyte IEC std # terabyte # basado en potencias de 10 petabyte IEC std = 1000 TB IEC std # # basado en potencias de 10 PB IEC std = petabyte IEC std # petabyte # basado en potencias de 10 kibibyte = 1024 byte KiB = kibibyte # kibibyte mebibyte = 1024 KiB MiB = mebibyte # mebibyte gibibyte = 1024 MiB GiB = gibibyte # gibibyte tebibyte = 1024 GiB TiB = tebibyte # tebibyte pebibyte = 1024 TiB PiB = pebibyte # pebibyte [transferencia de datos] bps = bit/seg # bits / segundo kbps = 1000 bps # kilobits / sec. # basado en potencias de 10 # # Números sin unidades # [cantidad] unidad = !! 1 = unidad # unidad pi = 3.14159265358979323846 unidad par = 2 unidad hat trick = 3 unidad # # deportes docena = 12 unidad doz = docena # docena bakers dozen = 13 unidad score = 20 unidad gross = 144 unidad great gross = 12 gross ream = 500 unidad porciento = 0.01 unidad % = porciento mill = 0.001 unidad [tasa de interés] APR = [unidad] log(1 + x/100) ; (exp(x) - 1)*100 \ # annual % rate # based on continuous compounding [concentración] proof = 1/200.0 unidad # # contenido alcohólico ppm = 1e-6 unidad # partes por millón partes por millón = ppm ppb = 1e-9 unidad # partes por billón (US: en realidad es millardo) partes por billón = ppb ppt = 1e-12 unidad # partes por trillón (US: en realidad es billón) partes por trillón = ppt karat = 1/24.0 unidad # # pureza del oro carat oro = karat # # pureza del oro # # unidades de fuerza # [fuerza] newton = kg*m/s^2 N = newton # newton decanewton = 10 newton kilonewton = 1000 N kN = kilonewton # kilonewton meganewton = 1000 kN milinewton = 0.001 N dyna = cm*g/s^2 kg fuerza = kg * gravedad # kilogramo f kgf = kg fuerza # kilogramo fuerza kilogramo fuerza = kg fuerza gramo fuerza = g * gravedad libra fuerza = lbm * gravedad lbf = libra fuerza # libra fuerza ton fuerza = ton * gravedad onza fuerza = onza * gravedad ozf = onza fuerza # onza fuerza tonelada fuerza = tonelada * gravedad # # métrica # # unidades de área # [área] barn = 1e-28 m^2 # # física de partículas área = 100 m^2 decaárea = 10 área dekare = 10 área hectárea = 100 área acre = 10 chain^2 section = milla^2 township = 36 section homestead = 160 acre rai = 1600 m^2 # # Thai ngaan = 400 m^2 # # Thai pulgada circular = 1/4.0 pi*in^2 # # área de un círculo de 1 pulgada de diámetro milla circular = 1/4.0 pi*mil^2 # # área de un círculo de 1 milla de diámetro AWG Area = [in^2] pi/4*(92.0**((36-x)/39.0)/200.0)**2 ; \ 36 - 39.0*log(200.0*sqrt(x*4.0/pi))/log(92.0) \ # American Wire Gauge \ # use -1, -2 for 00, 000; non-linear American Wire Gauge Area = [in^2] pi/4*(92.0**((36-x)/39.0)/200.0)**2 ; \ 36 - 39.0*log(200.0*sqrt(x*4.0/pi))/log(92.0) \ # # use -1, -2 for 00, 000; non-linear # # unidades de volumen # [volumen] cc = cm^3 # centímetro cúbico centímetro cúbico = cc litro = 1000 cc l = litro # litro litros = litro decilitro = 0.1 litro centilitro = 0.01 litro mililitro = cc ml = mililitro # mililitro decalitro = 10 litro hectolitro = 100 litro kilolitro = 1000 litro kl = kilolitro # kilolitro megalitro = 1000 kilolitro galón = 231 in^3 # # líquidos en US gal = galón # galón # líquidos en US quart = 1/4.0 galón # # líquidos en US qt = quart # quart # líquidos en US pint = 1/2.0 quart # # líquidos en US pt = pint # pint # líquidos en US onza líquida = 1/16.0 pint # # US fl oz = onza líquida # onza líquida # US galón imperial = 4.54609 litro imp gal = galón imperial # galón imperial imperial galón = galón imperial cuarto imperial = 1/4.0 imp gal imp qt = cuarto imperial # cuarto imperial imperial cuarto = cuarto imperial imperial pinta = 1/8.0 imp gal imp pt = imperial pinta # pinta imperial pinta imperial = imperial pinta onza líquida imperial = 1/160.0 imp gal imp fl oz = onza líquida imperial # onza líquida imperial taza = 8 fl oz cuchara de mesa = 1/16.0 taza tbsp = cuchara de mesa # cuchara de mesa cuchara de té = 1/3.0 tbsp tsp = cuchara de té # cuchara de té barril = 42 galón bbl = barril # barril shot = 1.5 fl oz fifth = 1/5.0 galón # # alcohol botella de vino = 750 ml magnum = 1.5 litro # # alcohol keg = 15.5 galón # # cerveza hogshead wine = 63 gal hogshead beer = 54 gal bushel = 2150.42 in^3 peck = 1/4.0 bushel cord = 128 ft^3 board foot = ft^2*in board feet = board foot # # unidades de velocidad # [velocidad] nudo = nmi/hr kt = nudo # nudo velocidad de la luz = 2.99792458e8 m/s mph = mi/hr # millas/hora kph = km/hr # kilómetros/hora mach = 340.29 m/s # # velocidad del sonido a STP [velocidad de rotación] rpm = rev/min # rev/min rps = rev/seg # rev/seg # # unidades de flujo # [unidades de flujo] gph = gal/hr # galón/hora gpm = gal/min # galón/minuto cfs = ft^3/seg # cu ft/segundo cfm = ft^3/min # cu ft/minuto lpm = l/min # litro/min [flujo de gas] sccm = atm*cc/min # std cc/min # presión * flujo sccs = atm*cc/seg # std cc/seg # presión * flujo slpm = atm*l/min # std litro/min # presión * flujo slph = atm*l/hr # std litro/hora # presión * flujo scfh = atm*ft^3/hora # std cu ft/hora # presión * flujo scfm = atm*ft^3/min # std cu ft/min # presión * flujo # # unidades de presión # [presión] Pa = N/m^2 # pascal pascal = Pa hPa = 100 Pa # hectopascal hectopascal = hPa kPa = 1000 Pa # kilopascal kilopascal = kPa MPa = 1000 kPa # megapascal megapascal = MPa GPa = 1000 MPa # gigapascal gigapascal = GPa atm = 101325 Pa # atmósfera atmósfera = atm bar = 1e5 Pa mbar = 0.001 bar # milibar milibar = mbar microbar = 0.001 mbar decibar = 0.1 bar kilobar = 1000 bar megabar = 1000 kilobar mm Hg = mm*densidad Hg*gravedad milímetro de Hg = mm Hg torr = mm Hg in Hg = in*densidad Hg*gravedad # pulgadas de Hg pulgadas de Hg = in Hg m agua = m*densidad agua*gravedad # metros de H2O m H2O = m agua # metros de H2O metros de agua = m agua in de agua = in*densidad agua*gravedad # pulgadas de H2O in H2O = in de agua # pulgadas de H2O pulgadas de agua = in de agua ft de agua = ft*densidad agua*gravedad # pies de H2O ft H2O = ft de agua # pies de H20 pies de agua = ft de agua pies de head = ft de agua ft hd = ft de agua # pies de head psi = lbf/in^2 # libra / pulgada cuadrada libra por pulgada cuadrada = psi ksi = 1000 psi # 1000 lb / pulgada cuadrada # # unidades de densidad # [densidad] densidad agua = gramo/cm^3 densidad agua de mar = 1.025 gramo/cm^3 densidad Hg = 13.5950981 gramo/cm^3 densidad aire = 1.293 kg/m^3 # # a STP densidad acero = 0.283 lb/in^3 # # acero al carbón densidad aluminio = 0.098 lb/in^3 densidad zinc = 0.230 lb/in^3 densidad bronce = 0.310 lb/in^3 # # 80Cu-20Zn densidad cobre = 0.295 lb/in^3 densidad hierro = 0.260 lb/in^3 # # hierro colado densidad nickel = 0.308 lb/in^3 densidad estaño = 0.275 lb/in^3 densidad titanio = 0.170 lb/in^3 densidad plata = 0.379 lb/in^3 densidad nylon = 0.045 lb/in^3 densidad polycarbonato = 0.045 lb/in^3 # # unidades de energía # [energía] joule = N*m J = joule # joule kilojoule = 1000 joule kJ = kilojoule # kilojoule megajoule = 1000 kilojoule gigajoule = 1000 megajoule milijoule = 0.001 joule mJ = milijoule # milijoule caloría = 4.1868 J cal = caloría # caloría kilocaloría = 1000 cal kcal = kilocaloría # kilocaloría caloría comida = kilocaloría thermie = 1000 kcal Btu = cal*lb*R/(g*K) # British thermal unit British thermal unit = Btu therm = 100000 Btu erg = cm*dyna electronvolt = 1.602176462e-19 J eV = electronvolt # electronvolt kWh = kW*hora # kilowatt-hora kilowatt hora = kWh ton TNT = 4.184e9 J tonelada de aceite equivalente = 41.868 gigajoule tonelada de carbón equivalente = 7000000 kcal # # unidades de potencia # [potencia] watt = J/s W = watt # watt kilowatt = 1000 W kW = kilowatt # kilowatt megawatt = 1000 kW MW = megawatt # megawatt gigawatt = 1000 MW GW = gigawatt # gigawatt miliwatt = 0.001 W caballo de fuerza = 550 ft*lbf/seg caballo de potencia = caballo de fuerza hp = caballo de fuerza # caballo de fuerza caballo de fuerza métrico = 75 kgf*m/s ton refrigeración = 12000 Btu/hr # # frecuencia # [frecuencia] hertz = unidad/seg Hz = hertz # hertz milihertz = 0.001 Hz kilohertz = 1000 Hz kHz = kilohertz # kilohertz megahertz = 1000 kHz MHz = megahertz # megahertz gigahertz = 1000 MHz GHz = gigahertz # gigahertz # # radioactividad # [radioactividad] becquerel = unidad/seg Bq = becquerel # becquerel curie = 3.7e10 Bq milicurie = 0.001 curie roentgen = 2.58e-4 coulomb/kg [dosis de radiación] gray = J/kg Gy = gray # gray rad. abs. dose = 0.01 Gy # # comúnmente rad sievert = J/kg # # dosis equivalente milisievert = 0.001 sievert # # dosis equivalente Sv = sievert # sievert # dosis equivalente rem = 0.01 Sv # # roentgen equiv mamífero milirem = 0.001 rem # # roentgen equiv mamífero # # viscosidad # [viscosidad dinámica] poise = g/(cm*s) P = poise # poise centipoise = 0.01 poise cP = centipoise # centipoise [viscosidad cinemática] stokes = cm^2/s St = stokes # stokes centistokes = 0.01 stokes cSt = centistokes # centistokes # # unidades misceláneas # [aceleración] gravedad = 9.80665 m/s^2 [constante] constante gravitacional = 6.673e-11 N*m^2/kg^2 constante de los gases = 8.314472 J/(mol*K) # R [consumo de combustible] mpg = mi/gal # millas/galón mpg imp = mi/galón imperial # millas/galón imp litro por 100 km = [mpg] 3.785411784 / (x * 0.01609344) ; \ 3.785411784 / (x * 0.01609344) # # non-linear [permeabilidad] darcy = 1 cm^2*centipoise/atm/s milidarcy = 0.001 darcy ConvertAll/data/units_de.dat0000644000175000017500000010253612573354361015042 0ustar dougdoug#***************************************************************************** # units.dat, the units data file, version 0.6.0 # # ConvertAll, a units conversion program # Copyright (C) 2015, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, Version 2. This program is # distributed in the hope that it will be useful, but WITTHOUT ANY WARRANTY. #***************************************************************************** # # Units are defined by an optional quantity and an equivalent unit or unit # combination. A python expression may be used for the quantity, but is # resticted to using only the following operators: *, /, +, -, **, (, ). # Beware of integer division truncation: be sure to use a float for at # least one of the values. # # The unit type must be placed in square brackets before a set of units. # The first comment after the equivalent unit will be put in parenthesis after # the unit name (usually used to give the full name of an abbreviated unit). # The next comment will be used in the program list's comment column; # later comments and full line comments are ignored. # # Non-linear units are indicated with an equivalent unit in square brackets, # followed by either equations or equivalency lists for the definition. # For equations, two are given, separated by a ';'. Both are functions of # "x", the first going from the unit to the equivalent unit and the second # one in reverse. Any valid Python expression returning a float (including # the functions in the math module) should work. The equivalency list is a # python list of tuples giving points for linear interpolation. # # All units must reduce to primitive units, which are indicated by an # equivalent unit starting with '!'. A special "unitless" primitve unit # (usualty called "unit") has '!!' for an equivalent unit. Circular references # must also be avoided. # # Primitive units: kg, m, s, K, A, mol, cd, rad, sr, bit, unit # ############################################################################## # # mass units # [Masse] kg = ! # Kilogramm Kilogramm = kg Hektogramm = 100 Gramm Dekagramm = 10 Gramm Gramm = 0.001 kg g = Gramm # Gramm Dezigramm = 0.1 Gramm Zentigramm = 0.01 Gramm Milligramm = 0.001 Gramm mg = Milligramm # Milligramm Mikrogramm = 0.001 mg µg = Mikrogramm # Mikrogramm t = 1000 kg # Tonne # metrisch Tonne = t Metrische Tonne = t Megagramm = t Kilotonne = 1000 t # # metrisch Gigagramm = 1e9 g Teragramm = 1e12 g Karat = 0.2 g # # Gewichtsmaß für Edelsteine ct = Karat # Karat # engl. carat amu = 1.66053873e-27 kg # Atomare Masseneinheit atomare Masseneinheit = amu Pfund deutsch = 500 g # # dt. Sprachraum, ugs. pound = 0.45359237 kg # # angloamer. Pfund Pfund = pound # # angloamer. Pfund lb = pound # Pfund # engl. pound lbm = pound # Pfund # engl. pound ounce = 1/16.0 pound # Unze Unze = ounce # # engl. ounce oz = ounce # Unze # engl. ounce lid = ounce # Unze # Drogenslang pound troy = 5760 grain # # angloamer. Apotheker-Pfund lb troy = pound troy # # angloamer. Apotheker-Pfund ounce troy = 1/12.0 lb troy # Feinunze # angloamer. Apotheker-Unze oz troy = ounce troy # Feinunze # angloamer. Apotheker-Unze Feinunze = ounce troy # # Gewichtseinheit für Goldhandel ton = 2000 lb # nicht-metrisch # angloamer. Tonne kiloton = 1000 ton # nicht-metrisch # angloamer. Tonne slug = lbf*s^2/ft hyl = kp*s^2/m # # seit 1978 untersagt stone = 14 lb grain = 1/7000.0 lb pennyweight = 24 grain hundredweight long = 112 lb # # britisches Maß hundredweight short = 100 lb Erdmasse = 5.974e24 kg Mondmasse = 7.349e22 kg Sonnenmasse = 1.9891e30 kg # # length / distance units # [Länge] m = ! # Meter Meter = m metre = m Dezimeter = 0.1 m dm = Dezimeter # Dezimeter Zentimeter = 0.01 m cm = Zentimeter # Zentimeter Millimeter = 0.001 m mm = Millimeter # Millimeter Mikrometer = 1e-6 m Mikron = Mikrometer µm = Mikrometer # Mikrometer Nanometer = 1e-9 m nm = Nanometer # Nanometer Dekameter = 10 m Hektometer = 100 m Kilometer = 1000 m km = Kilometer # Kilometer Megameter = 1000 km Ångström = 1e-10 m Angström = Ångström Å = Angström # Ångström fm = 1e-15 m # Femtometer Fermi = fm # # Kerngrößen, veraltet Zoll = 2.54 cm in = Zoll # Zoll # engl. inch inch = Zoll inches = inch mil US = 0.001 inch # # angloamer. Millizoll Mikrozoll = 1e-6 Zoll microinch = Mikrozoll Fuß = 12 Zoll foot = Fuß # Fuß ft = foot # Fuß # engl. foot feet = foot # Fuß foot US survey = 1200/3937.0 m yard = 3 ft # # engl. Schritt yd = yard # Yard # engl. Schritt Schritt = yard Meile = 5280 ft mile = Meile # Meile # brit. Landmeile mi = Meile # Meile # brit. Landmeile Nautische Meile = 1852 m nmi = Nautische Meile # nautische Meile league = 3 mile # # engl. Wegstunde / Landleug Wegstunde = league chain = 66 ft # # Kette(nlänge) fathom = 6 ft # # nautischer Faden Faden = fathom # # nautischer Faden rod = 5.5 yard # # Rute furlong = 40 rod # # Furchenlänge (angloamer.) hand = 4 inch # # angloamer. Höhenmaß für Pferde cubit = 21.8 inch # # biblische Einheit point = 1/72.0 inch # # Punkt im Desktop Publishing pica = 12 point Kaliber = 1.0 inch # # Geschossdurchmesser caliber = Kaliber # # Geschossdurchmesser Footballfeld = 100 yd # # amer. Football Marathondistanz = 46145 yd mil = 10 km # # Metrische/Skandinav. Meile au = 1.49597870691e11 m # Astronomische Einheit Astronomische Einheit = au Lichtjahr = 365.25 Tage * Lichtgeschwindigkeit Lichtminute = Lichtgeschwindigkeit * min Lichtsekunde = Lichtgeschwindigkeit * s Parsec = 3.0856775813e16 m pc = Parsec # Parsec Kiloparsec = 1000 Parsec Megaparsec = 1000 Kiloparsec Schraubenmaß = [in] 0.013*x + 0.06 ; (x - 0.06) / 0.013 \ # zöllig # Vereinheitlichte Durchmesser, nicht-linear AWG Dia = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # American Wire Gauge \ # US-Maß für Drahtdurchmesser; -1, -2 für 00, 000 benutzen; nicht-linear American Wire Gauge Dia = [in] 92.0**((36-x)/39.0)/200.0 ; \ 36 - 39.0*log(200.0*x)/log(92.0) \ # # US-Maß für Drahtdurchmesser; -1, -2 für 00, 000 benutzen; nicht-linear Standard gauge = [in] [(-5, .448350), (1, .269010), (14, .0747250), \ (16, .0597800), (17, .0538020), (20, .0358680), \ (26, .0179340), (31, .0104615), (36, .00672525), \ (38, .00597800)] # Stahl \ # US-Maß für Dicke von Stahlblechen, nicht-linear Zinc gauge = [in] [(1, .002), (10, .02), (15, .04), (19, .06), \ (23, .1), (24, .125), (27, .5), (28, 1)] \ # # US-Maß für Dicke von Zinkblechen, nicht-linear Ringgröße US = [in] 0.1018*x + 1.4216 ; (x - 1.4216) / 0.1018 \ # # Umfang, nicht-linear Schuhgrößen Männer US = [in] x/3.0 + 7 + 1/3.0 ; (x - 7 - 1/3.0) * 3 \ # # US-Größen, nicht-linear Schuhgrößen Frauen US = [in] x/3.0 + 6 + 5/6.0 ; (x - 6 - 5/6.0) * 3 \ # # US-Größen, nicht-linear Schuhgrößen EU = [cm] (x * 2.0 / 3.0) - 1.5 ; (x + 1.5) * 3.0 / 2.0 \ # # Innenmaß, nicht-linear # # time units # [Zeit] s = ! # Sekunde sec = s # Sekunde Sekunde = s Sekunden = Sekunde ms = 0.001 s # Millisekunde Millisekunde = ms Mikrosekunde = 1e-6 s µs = Mikrosekunde # Mikrosekunde ns = 1e-9 s # Nanosekunde Nanosekunde = ns Minute = 60 s min = Minute # Minute Stunde = 60 min Stunden = Stunde Std = Stunde # Stunde hr = Stunde # Stunde # (lat. hora) Glasen = 30 min # # Schifffahrt Glasenschläge = Glasen # # Schifffahrt Wache = 4 hr # # Schifffahrt Wachen = 4 hr # # Schifffahrt Tag = 24 hr Tage = Tag d = Tag # Tag # (lat. dies) Woche = 7 Tage Wochen = Woche fortnight = 14 Tage # 14 Tage # (engl.) Monat = 1/12.0 Jahr Jahr = 365.242198781 Tage Jahre = Jahr y = Jahr # Jahr # (engl. year) yr = Jahr # Jahr # (engl. year) Kalenderjahr = 365 Tage Dekade = 10 Jahre Jahrzehnt = Dekade Jahrzehnte = Dekade Dezennium = Dekade Jahrhundert = 100 Jahre Centennium = Jahrhundert Hektode = Jahrhundert Jahrhunderte = Jahrhundert Millennium = 1000 Jahre Millennia = Millennium [Zeitplanung] Personenstunde = 168/40.0 Stunden # # auf 40-Std.-Wochen gerechnet Personenstunden = Personenstunde Mannstunde = Personenstunde # # veraltet für "Personenstunde" Mannstunden = Personenstunde # # veraltet für "Personenstunden" Personentag = 8 Personenstunden Personentage = Personentag Manntag = Personentag # # veraltet für "Personentag" Manntage = Personentag # # veraltet für "Personentage" Personenwoche = 5 Personentage Personenwochen = Personenwoche Mannwoche = Personenwoche # # veraltet für "Personenwoche" Mannwochen = Personenwoche # # veraltet für "Personenwochen" Personenmonat = 20 Personentage Personenmonate = Personenmonat Mannmonat = Personenmonat # # veraltet für "Personenmonat" Mannmonate = Personenmonat # # veraltet für "Personenmonate" Personenjahr = 2000 Personenstunden Personenjahre = Personenjahr Mannjahr = Personenjahr # # veraltet für "Personenjahr" Mannjahre = Personenjahr # # veraltet für "Personenjahre" # # temperature # [Temperatur] K = ! # Kelvin Kelvin = K °K = K # Kelvin Grad Kelvin = K C = [K] x + 273.15 ; x - 273.15 # Celsius # nicht-linear Celsius = [K] x + 273.15 ; x - 273.15 # # nicht-linear °C = [K] x + 273.15 ; x - 273.15 # Celsius # nicht-linear Grad Celsius = [K] x + 273.15 ; x - 273.15 # # nicht-linear R = 5/9.0 K # Rankine Rankine = R °R = R # Rankine F = [R] x + 459.67 ; x - 459.67 # Fahrenheit # nicht-linear Fahrenheit = [R] x + 459.67 ; x - 459.67 # # nicht-linear °F = [R] x + 459.67 ; x - 459.67 # Fahrenheit # nicht-linear Grad Fahrenheit = [R] x + 459.67 ; x - 459.67 # # nicht-linear [Temperaturdifferenz] C Grad = K # Grad Celsius Celsius Grad = C Grad F Grad = R # Grad Fahrenheit Fahrenheit Grad = F Grad # # electrical units # [Strom] A = ! # Ampere Ampere = A Milliampere = 0.001 A mA = Milliampere # Milliampere Mikroampere = 0.001 mA Kiloampere = 1000 A kA = Kiloampere # Kiloampere [Ladung] Coulomb = A*s Amperestunde = A*hr Amperestunden = Amperestunde mAh = 0.001 Amperestunde # Milliamperestunde Milliamp hr = mAh [Spannung] Volt = W/A V = Volt # Volt Millivolt = 0.001 Volt mV = Millivolt # Millivolt Kilovolt = 1000 Volt kV = Kilovolt # Kilovolt [Widerstand] Ohm = V/A Ω = Ohm # Ohm Milliohm = 0.001 ohm Mikroohm = 0.001 Milliohm Kiloohm = 1000 ohm [Leitfähigkeit] Siemens = A/V ℧ = Siemens # Mho # veraltet für Siemens ("Ohm" rückwärts) [Kapazität] Farad = Coulomb/V Millifarad = 0.001 Farad Mikrofarad = 0.001 Millifarad Nanofarad = 1e-9 Farad Pikofarad = 1e-12 Farad [Magn. Fluss] Weber = V*s Wb = Weber # Weber Maxwell = 1e-8 Wb [Induktivität] Henry = Wb/A H = Henry # Henry Millihenry = 0.001 Henry mH = Millihenry # Millihenry Mikrohenry = 0.001 mH [Flussdichte] Tesla = Wb/m^2 # T = Tesla # Tesla ### t = metric ton! Gauss = Maxwell/cm^2 Gauß = Gauss # # molecular units # [Molekulare Mengen] mol = ! # Mol Kilomol = 1000 mol kmol = Kilomol # Kilomol pound mole = mol*lbm/gramm # Pfund Mol # engl. lbmol = pound mole # Pfund Mol # engl. pound mole [Größe eines Mol] Avogadrozahl = Gramm/(amu*mol) # # Illumination units # [Lichtstärke] cd = ! # Candela Candela = cd [Lichtstrom] Lumen = cd * sr lm = Lumen # Lumen [Beleuchtungsstärke] lx = Lumen/m^2 # Lux Lux = lx footcandle = Lumen/ft^2 metercandle = lx [Leuchtdichte] Lambert = cd/(pi*cm^2) # # US-Maß la = Lambert # Lambert Millilambert = 0.001 Lambert footlambert = cd/(pi*ft^2) # # Fuß-Lambert (angloamer.) # # angular units # [Winkel] Radian = ! rad = Radian # Radian # Bogengrad Kreis = 2 pi*rad Umdrehung = Kreis rev = Umdrehung # Umdrehung # engl. revolution Grad = 1/360.0 Kreis degree = Grad # Grad # engl. deg = degree # Grad # engl. degree Bogenminute = 1/60.0 Grad arc min = Bogenminute # Bogenminute # engl. arc minute arc minute = Bogenminute # Bogenminute # engl. arc minute min arc = Bogenminute # Bogenminute # engl. minute arc minute arc = Bogenminute # Bogenminute Bogensekunde = 1/60.0 Bogenminute arc sec = Bogensekunde # Bogensekunde # engl. arc second arc second = Bogensekunde # Bogensekunde sec arc = Bogensekunde # Bogensekunde # engl. second arc second arc = Bogensekunde # Bogensekunde Halbkreis = 1/2.0 Kreis Viertelkreis = 1/4.0 Kreis Quadrant = Viertelkreis rechter Winkel = Viertelkreis gon = 0.01 Viertelkreis gradian = gon # gon # engl. Maß # # solid angle units # [Raumwinkel] sr = ! # Steradian Steradian = sr Kugel = 4 pi*sr Halbkugel = 1/2.0 Kugel Hemisphäre = Halbkugel # # information units # [Daten] bit = ! Kilobit = 1000 bit # # basierend auf Basis 10 Megabit = 1000 Kilobit # # basierend auf Basis 10 Nibble = 4 bit Byte = 8 bit Bytes = byte B = byte # Byte Kilobyte = 1024 byte # # basierend auf Basis 2 kB = Kilobyte # Kilobyte # basierend auf Basis 2 Megabyte = 1024 kB # # basierend auf Basis 2 MB = Megabyte # Megabyte # basierend auf Basis 2 Gigabyte = 1024 MB # # basierend auf Basis 2 GB = Gigabyte # Gigabyte # basierend auf Basis 2 Terabyte = 1024 GB # # basierend auf Basis 2 TB = Terabyte # Terabyte # basierend auf Basis 2 petabyte = 1024 TB # # basierend auf Basis 2 PB = petabyte # Petabyte # basierend auf Basis 2 Kilobyte IEC std = 1000 byte # # basierend auf Basis 10 kB IEC std = Kilobyte IEC std # Kilobyte # basierend auf Basis 10 Megabyte IEC std = 1000 kB IEC std # # basierend auf Basis 10 MB IEC std = Megabyte IEC std # Megabyte # basierend auf Basis 10 Gigabyte IEC std = 1000 MB IEC std # # basierend auf Basis 10 GB IEC std = Gigabyte IEC std # Gigabyte # basierend auf Basis 10 Terabyte IEC std = 1000 GB IEC std # # basierend auf Basis 10 TB IEC std = terabyte IEC std # Terabyte # basierend auf Basis 10 petabyte IEC std = 1000 TB IEC std # # basierend auf Basis 10 PB IEC std = petabyte IEC std # Petabyte # basierend auf Basis 10 Kibibyte = 1024 byte KiB = Kibibyte # Kibibyte Mebibyte = 1024 KiB MiB = Mebibyte # Mebibyte Gibibyte = 1024 MiB GiB = Gibibyte # Gibibyte Tebibyte = 1024 GiB TiB = Tebibyte # Tebibyte Pebibyte = 1024 TiB PiB = Pebibyte # Pebibyte [Datenübertragung] bps = bit/sec # Bit/sec kbps = 1000 bps # Kilobit/sec # basierend auf Basis 10 Mbps = 1000 kbps # Megabit/sec # basierend auf Basis 10 Gbps = 1000 Mbps # Gigabit/sec # basierend auf Basis 10 # # Unitless numbers # [Anzahl] unit = !! Stück = unit 1 = Stück # Stück pi = 3.14159265358979323846 Stück # π # Kreiszahl π = pi # # Kreiszahl Paar = 2 Stück hat trick = 3 Stück # # Sport Halbstiege = 10 Stück Dutzend = 12 Stück dozen = Dutzend # Dutzend # engl. Dtz = Dutzend # Dutzend doz = Dutzend # Dutzend # engl. dozen bakers dozen = 13 Stück # # engl. Mandel = 15 Stück Malter = Mandel Große Mandel = 16 Stück Bauernmandel = Große Mandel score = 20 Stück # # engl. Stiege = 20 Stück Steige = Stiege Band = 30 Stück Bund = Band Schock = 5 Dutzend Großschock = 4 Bauernmandel Bauernschock = Großschock Gros = 12 Dutzend gross = Gros # # engl. Großgros = 12 Gros great gross = 12 gross # # engl. ream = 500 Stück # # engl. Prozent = 0.01 Stück percent = Prozent # # engl. % = Prozent Promille = 0.001 Stück mill = 0.001 Stück # # engl. [Verzinsung] APR = [unit] log(1 + x/100) ; (exp(x) - 1)*100 \ # annual percent rate # basierend auf stetiger Verzinsung [Konzentration] proof = 1/200.0 Stück # # Alkoholgehalt ppm = 1e-6 Stück # parts per million # Teile auf eine Million parts per million = ppm # # Teile auf eine Million ppb = 1e-9 Stück # parts per billion # Teile auf eine Milliarde parts per billion = ppb # # Teile auf eine Milliarde ppt = 1e-12 Stück # parts per trillion # Teile auf eine Billion parts per trillion = ppt # # Teile auf eine Billion Karat Gold = 1/24.0 Stück # # Goldreinheit # # force units # [Kraft] Newton = kg*m/s^2 N = Newton # Newton Dekanewton = 10 Newton Kilonewton = 1000 N kN = Kilonewton # Kilonewton Meganewton = 1000 kN Millinewton = 0.001 N dyn = cm*g/s^2 dyne = dyn Kilopond = kg * Erdbeschleunigung kp = Kilopond # Kilopond kg force = Kilopond # Kilopond kgf = Kilopond # Kilopond Pond = g * Erdbeschleunigung gram force = Pond # Pond pound force = lbm * Erdbeschleunigung # # Gewichtskraft eines Pfunds lbf = pound force # pound force # Gewichtskraft eines Pfunds ton force = ton * Erdbeschleunigung # # Gewichtskraft einer angloamer. Tonne ounce force = ounce * Erdbeschleunigung # # Gewichtskraft einer Unze ozf = ounce force # ounce force # Gewichtskraft einer Unze tonne force = Tonne * Erdbeschleunigung # # Gewichtskraft einer metrischen Tonne # # area units # [Fläche] Quadratmeter = m^2 qm = m^2 # Quadratmeter Barn = 1e-28 m^2 # # Teilchenphysik Ar = 100 m^2 are = Ar # # engl. Ar Dekar = 10 Ar Hektar = 100 Ar acre = 10 chain^2 section = mile^2 township = 36 section homestead = 160 acre rai = 1600 m^2 # # Thailändisch ngaan = 400 m^2 # # Thailändisch circular inch = 1/4.0 pi*in^2 # # Fläche eines Kreises mit 1 Zoll Durchmesser circular mil = 1/4.0 pi*mil^2 # # Fläche eines Kreises mit 1 Zoll Durchmesser AWG Area = [in^2] pi/4*(92.0**((36-x)/39.0)/200.0)**2 ; \ 36 - 39.0*log(200.0*sqrt(x*4.0/pi))/log(92.0) \ # American Wire Gauge \ # US-Maß für Drahtquerschnitte; -1, -2 für 00, 000 benutzen; nicht-linear American Wire Gauge Area = [in^2] pi/4*(92.0**((36-x)/39.0)/200.0)**2 ; \ 36 - 39.0*log(200.0*sqrt(x*4.0/pi))/log(92.0) \ # # US-Maß für Drahtquerschnitte; -1, -2 für 00, 000 benutzen; nicht-linear # # volume units # [Volumen] cc = cm^3 # Kubikzentimeter # engl. cubic centimeter Kubikzentimeter = cc Liter = 1000 cc l = Liter # Liter litre = Liter # # engl. Deziliter = 0.1 Liter Zentiliter = 0.01 Liter Milliliter = cc ml = Milliliter # Milliliter Dekaliter = 10 Liter Hektoliter = 100 Liter Kiloliter = 1000 Liter kl = Kiloliter # Kiloliter Megaliter = 1000 Kiloliter gallon = 231 in^3 # Gallone Gallone = gallon # gal = gallon # Gallone quart = 1/4.0 gallon # qt = quart # Quart pint = 1/2.0 quart # pt = pint # Pint fluid ounce = 1/16.0 pint # # Flüssigunze fl oz = fluid ounce # fluid ounce # US ounce fluid = fluid ounce # # US imperial gallon = 4.54609 Liter imp gal = imperial gallon # imperial gallon gallon imperial = imperial gallon imperial quart = 1/4.0 imp gal imp qt = imperial quart # imperial quart quart imperial = imperial quart imperial pint = 1/8.0 imp gal imp pt = imperial pint # imperial pint pint imperial = imperial pint imperial fluid ounce = 1/160.0 imp gal imp fl oz = imperial fluid ounce # imperial fluid ounce cup = 8 fl oz # Tasse # engl. tablespoon = 1/16.0 cup # Esslöffel # engl. tbsp = tablespoon # Esslöffel # engl. tablespoon teaspoon = 1/3.0 tbsp # Teelöffel # engl. tsp = teaspoon # Teelöffel # engl. teaspoon barrel = 42 gallon bbl = barrel # barrel shot = 1.5 fl oz fifth = 1/5.0 gallon # # Alkohol wine bottle = 750 ml magnum = 1.5 Liter # # Alkohol keg = 15.5 gallon # Fass # Bierfass hogshead wine = 63 gal hogshead beer = 54 gal bushel = 2150.42 in^3 peck = 1/4.0 bushel cord = 128 ft^3 board foot = ft^2*in board feet = board foot # # velocity units # [Geschwindigkeit] knot = nmi/hr # Knoten # Schifffahrt kt = knot # Knoten # Schifffahrt, engl. knot Lichtgeschwindigkeit = 2.99792458e8 m/s # # definiert kmh = km/hr # Kilometer/Std Stundenkilometer = kmh # # ugs. für km/h mph = mi/hr # Meilen pro Stunde # engl. miles per hour Mach = 340.29 m/s # # Schallgeschwindigkeit unter Std.bedingungen [Umdrehungsgeschw.] rpm = rev/min # Umdrehungen/min # engl. rounds per min rps = rev/sec # Umdrehungen/sec # engl. rounds per sec Upm = rev/min # Umdrehungen/min Ups = rev/sec # Umdrehungen/sec # # flow rate units # [Flüssigkeitsfluss] gph = gal/hr # Gallonen/Std gpm = gal/min # Gallonen/min cfs = ft^3/sec # cu ft/sec # Kubikfuß pro Sekunde cfm = ft^3/min # cu ft/min # Kubikfuß pro Minute lpm = l/min # Liter/min [Gasfluss] sccm = atm*cc/min # std cc/min # Druck * Fluss sccs = atm*cc/sec # std cc/sec # Druck * Fluss slpm = atm*l/min # std Liter/min # Druck * Fluss slph = atm*l/hr # std Liter/hr # Druck * Fluss scfh = atm*ft^3/hr # std cu ft/hr # Druck * Fluss scfm = atm*ft^3/min # std cu ft/min # Druck * Fluss # # pressure units # [Druck] Pa = N/m^2 # Pascal Pascal = Pa hPa = 100 Pa # Hektopascal Hektopascal = hPa kPa = 1000 Pa # Kilopascal Kilopascal = kPa MPa = 1000 kPa # Megapascal Megapascal = MPa GPa = 1000 MPa # Gigapascal Gigapascal = GPa atm = 101325 Pa # Atmosphäre Atmosphäre = atm Atmosphären = atm Normaldruck = atm # # definiert bar = 1e5 Pa mbar = 0.001 bar # Millibar Millibar = mbar Mikrobar = 0.001 mbar Dezibar = 0.1 bar Kilobar = 1000 bar Megabar = 1000 Kilobar mm Hg = mm*Dichte Hg*Erdgravitation # Millimeter Quecksilbersäule Millimeter Quecksilbersäule = mm Hg Torr = mm Hg in Hg = in*Dichte Hg*Erdgravitation # Zoll Quecksilbersäule Zoll Hg = in Hg # Zoll Quecksilbersäule Zoll Quecksilbersäule = in Hg m Wassersäule = Meter Wassersäule m H2O = Meter Wassersäule # Meter Wassersäule Meter Wassersäule = m*Dichte Wasser*Erdgravitation in water = Zoll Wassersäule # Zoll Wassersäule in H2O = Zoll Wassersäule # Zoll Wassersäule Zoll Wassersäule = in*Dichte Wasser*Erdgravitation ft H2O = Fuß Wassersäule # Fuß Wassersäule Fuß Wassersäule = ft*Dichte Wasser*Erdgravitation foot of head = Fuß Wassersäule # Fuß Wassersäule ft hd = Fuß Wassersäule # Fuß Wassersäule # engl. foot of head ft water = Fuß Wassersäule # Fuß Wassersäule psi = lbf/in^2 # pound per sq inch # Pfund pro Quadratzoll (engl.) pound per sq inch = psi ksi = 1000 psi # kilopound per sq inch # Kilopfund pro Quadratzoll (engl. 1000 lb / sq inch) # # density units # [Dichte] Dichte Wasser = g/cm^3 Dichte Seewasser = 1.025 g/cm^3 Dichte Hg = 13.5950981 g/cm^3 # Quecksilber Dichte Quecksilber = Dichte Hg Dichte Luft = 1.293 kg/m^3 # # unter Standardbedingungen Dichte Stahl = 0.283 lb/in^3 # # Kohlenstoffstahl Dichte Aluminium = 0.098 lb/in^3 Dichte Zink = 0.230 lb/in^3 Dichte Messing = 0.310 lb/in^3 # # 80Cu-20Zn Dichte Kupfer = 0.295 lb/in^3 Dichte Eisen = 0.260 lb/in^3 # # Gusseisen Dichte Nickel = 0.308 lb/in^3 Dichte Zinn = 0.275 lb/in^3 Dichte Titan = 0.170 lb/in^3 Dichte Silber = 0.379 lb/in^3 Dichte Nylon = 0.045 lb/in^3 Dichte Polykarbonat = 0.045 lb/in^3 # # energy units # [Energie] Joule = N*m J = Joule # Joule Kilojoule = 1000 Joule kJ = Kilojoule # Kilojoule Megajoule = 1000 Kilojoule Gigajoule = 1000 Megajoule Millijoule = 0.001 Joule mJ = Millijoule # Millijoule Kalorie = 4.1868 J Kalorien = Kalorie cal = Kalorie # Kalorie Kilokalorie = 1000 Kalorie kcal = Kilokalorie # Kilokalorie Kalorien in Nahrung = Kilokalorie # Kilokalorie thermie = 1000 kcal Btu = cal*lb*R/(g*K) # British thermal unit British thermal unit = Btu therm = 100000 Btu erg = cm*dyne Elektronenvolt = 1.602176462e-19 J eV = Elektronenvolt # Elektronenvolt kWh = kW*hr # Kilowattstunde Kilowattstunde = kWh Tonne TNT = 4.184e9 J Tonne Erdöläquivalent = 41.868 Gigajoule Tonne Kohleäquivalent = 7000000 kcal # # power units # [Leistung] Watt = J/s W = Watt # Watt Kilowatt = 1000 W kW = Kilowatt # Kilowatt Megawatt = 1000 kW MW = Megawatt # Megawatt Gigawatt = 1000 MW GW = Gigawatt # Gigawatt Milliwatt = 0.001 W PS = 735.49875 W # Pferdestärke Pferdestärke = PS horsepower = 550 ft*lbf/sec # engl. Pferdestärke hp = horsepower # engl. Pferdestärke # engl. horsepower metric horsepower = 75 kgf*m/s # Pferdestärke ton refrigeration = 12000 Btu/hr # # amer. Einheit für Kühlleistung # # frequency # [Frequenz] Hertz = unit/sec Hz = Hertz # Hertz Millihertz = 0.001 Hz Kilohertz = 1000 Hz kHz = Kilohertz # Kilohertz Megahertz = 1000 kHz MHz = Megahertz # Megahertz Gigahertz = 1000 MHz GHz = Gigahertz # Gigahertz # # radioactivity # [Radioaktivität] Becquerel = unit/sec Bq = Becquerel # Becquerel Curie = 3.7e10 Bq Millicurie = 0.001 Curie Roentgen = 2.58e-4 Coulomb/kg Röntgen = Roentgen [Strahlungsdosis] Gray = J/kg Gy = Gray # Gray rad Dosis = 0.01 Gy # # Sievert = J/kg # # Äquivalentdosis Millisievert = 0.001 Sievert # # Äquivalentdosis Sv = Sievert # Sievert # Äquivalentdosis rem = 0.01 Sv # # Äquivalentdosis, veraltet Millirem = 0.001 rem # # Äquivalentdosis, veraltet # # viscosity # [dyn. Viskosität] Poise = g/(cm*s) P = Poise # Poise Zentipoise = 0.01 Poise cP = Zentipoise # Zentipoise [kinem. Viskosität] Stokes = cm^2/s St = Stokes # Stokes Zentistokes = 0.01 Stokes cSt = Zentistokes # Zentistokes # # misc. units # [Beschleunigung] Erdbeschleunigung = 9.80665 m/s^2 # # Mittelwert, internat. Konvention Erdschwerebeschleunigung = Erdbeschleunigung Erdgravitation = Erdbeschleunigung Gravitation = Erdbeschleunigung # Erdbeschleunigung [Konstanten] Gravitationskonstante = 6.673e-11 N*m^2/kg^2 Gaskonstante = 8.314472 J/(mol*K) # R [Benzinverbrauch] Meilen pro Gallone = mi/gal mpg = Meilen pro Gallone # Meilen pro Gallone mpg imp = mi/gallon imperial # Meilen pro Gallone (brit.) Liter pro 100 km = 1/100.0 l/km [Permeabilität] Darcy = 1 cm^2*Zentipoise/atm/s Millidarcy = 0.001 Darcy ConvertAll/source/0000755000175000017500000000000012574423205013111 5ustar dougdougConvertAll/source/option.py0000644000175000017500000001611712270776462015012 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # option.py, provides classes to read and set user preferences # # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import sys import os.path class Option: """Stores and retrieves string options. """ def __init__(self, baseFileName, keySpaces=20): self.path = '' if baseFileName: if sys.platform.startswith('win'): fileName = '{0}.ini'.format(baseFileName) userPath = os.environ.get('APPDATA', '') if userPath: userPath = os.path.join(userPath, 'bellz', baseFileName) else: fileName = '.{0}'.format(baseFileName) userPath = os.environ.get('HOME', '') self.path = os.path.join(userPath, fileName) if not os.path.exists(self.path): modPath = os.path.abspath(sys.path[0]) if modPath.endswith('.zip') or modPath.endswith('.exe'): modPath = os.path.dirname(modPath) # for py2exe/cx_freeze self.path = os.path.join(modPath, fileName) if not os.access(self.path, os.W_OK): self.path = os.path.join(userPath, fileName) if not os.path.exists(userPath): try: os.makedirs(userPath) except OSError: print('Error - could not write to config dir') self.path = '' self.keySpaces = keySpaces self.dfltDict = {} self.userDict = {} self.dictList = (self.userDict, self.dfltDict) self.chgList = [] def loadAll(self, defaultList): """Reads defaultList & file, writes file if required return true if file read. """ self.loadSet(defaultList, self.dfltDict) if self.path: try: with open(self.path, 'r', encoding='utf-8') as f: self.loadSet(f.readlines(), self.userDict) return True except IOError: try: with open(self.path, 'w', encoding='utf-8') as f: f.writelines([line + '\n' for line in defaultList]) except IOError: print('Error - could not write to config file', self.path) self.path = '' return False def loadSet(self, list, data): """Reads settings from list into dict. """ for line in list: line = line.split('#', 1)[0].strip() if line: item = line.split(None, 1) + [''] # add value if blank data[item[0]] = item[1].strip() def addData(self, key, strData, storeChange=0): """Add new entry, add to write list if storeChange. """ self.userDict[key] = strData if storeChange: self.chgList.append(key) def boolData(self, key): """Returns true or false from yes or no in option data. """ for data in self.dictList: val = data.get(key) if val and val[0] in ('y', 'Y'): return True if val and val[0] in ('n', 'N'): return False print('Option error - bool key', key, 'is not valid') return False def numData(self, key, min=None, max=None): """Return float from option data. """ for data in self.dictList: val = data.get(key) if val: try: num = float(val) if (min == None or num >= min) and \ (max == None or num <= max): return num except ValueError: pass print('Option error - float key', key, 'is not valid') return 0 def intData(self, key, min=None, max=None): """Return int from option data. """ for data in self.dictList: val = data.get(key) if val: try: num = int(val) if (min == None or num >= min) and \ (max == None or num <= max): return num except ValueError: pass print('Option error - int key', key, 'is not valid') return 0 def strData(self, key, emptyOk=0): """Return string from option data. """ for data in self.dictList: val = data.get(key) if val != None: if val or emptyOk: return val print('Option error - string key', key, 'is not valid') return '' def changeData(self, key, strData, storeChange): """Change entry, add to write list if storeChange Return true if changed. """ for data in self.dictList: val = data.get(key) if val != None: if strData == val: # no change reqd return False self.userDict[key] = strData if storeChange: self.chgList.append(key) return True print('Option error - key', key, 'is not valid') return False def writeChanges(self): """Write any stored changes to the option file - rtn true on success. """ if self.path and self.chgList: try: with open(self.path, 'r', encoding='utf-8') as f: fileList = f.readlines() for key in self.chgList[:]: hitList = [line for line in fileList if line.strip().split(None, 1)[:1] == [key]] if not hitList: hitList = [line for line in fileList if line.replace('#', ' ', 1).strip(). split(None, 1)[:1] == [key]] if hitList: fileList[fileList.index(hitList[-1])] = '{0}{1}\n'.\ format(key.ljust(self.keySpaces), self.userDict[key]) self.chgList.remove(key) for key in self.chgList: fileList.append('{0}{1}\n'.format(key.ljust(self.keySpaces), self.userDict[key])) with open(self.path, 'w', encoding='utf-8') as f: f.writelines([line for line in fileList]) return True except IOError: print('Error - could not write to config file', self.path) return False ConvertAll/source/recentunits.py0000644000175000017500000000377512270342155016037 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # recentunits.py, provides a list of recently used units # # ConvertAll, a units conversion program # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** class RecentUnits(list): """A list of recent unit combo names. """ def __init__(self, options): list.__init__(self) self.options = options self.updateQuantity() self.loadList() def updateQuantity(self): """Update number of entries from options. """ self.numEntries = self.options.intData('RecentUnits', 0, 99) del self[self.numEntries:] def loadList(self): """Load recent units from option file. """ self[:] = [] for num in range(self.numEntries): name = self.options.strData(self.optionTitle(num), True) if name: self.append(name) def writeList(self): """Write list of paths to options. """ for num in range(self.numEntries): try: name = self[num] except IndexError: name = '' self.options.changeData(self.optionTitle(num), name, True) self.options.writeChanges() def addEntry(self, name): """Move name to start if found, otherwise add it. """ try: self.remove(name) except ValueError: pass self.insert(0, name) del self[self.numEntries:] def optionTitle(self, num): """Return option key for the given nummber. """ return 'RecentUnit{0}'.format(num + 1) ConvertAll/source/setup.py0000644000175000017500000000333612573356370014637 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # setup.py, provides a distutils script for use with cx_Freeze # # Creates a standalone windows executable # # Run the build process by running the command 'python setup.py build' # # If everything works well you should find a subdirectory in the build # subdirectory that contains the files needed to run the application # # ConvertAll, a units conversion program # Copyright (C) 2015, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import sys from cx_Freeze import setup, Executable from convertall import __version__ base = None if sys.platform == 'win32': base = 'Win32GUI' extraFiles = [('../data', 'data'), ('../doc', 'doc'), ('../icons', 'icons'), ('../source', 'source'), ('../translations', 'translations'), ('../win', '.')] setup(name = 'convertall', version = __version__, description = 'ConvertAll, a units conversion program', options = {'build_exe': {'includes': 'atexit', 'include_files': extraFiles, 'excludes': ['*.pyc'], 'icon': '../win/convertall.ico', 'include_msvcr': True, 'build_exe': '../../convertall-0.6'}}, executables = [Executable('convertall.py', base=base)]) ConvertAll/source/unitatom.py0000644000175000017500000001035012270342155015317 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # unitatom.py, provides class to hold data on each available unit # # ConvertAll, a units conversion program # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import re import copy import unitdata class UnitAtom(object): """Reads and stores a single unit conversion. """ partialExp = 1000 badOpRegEx = re.compile(r'[^\d\.eE\+\-\*/]') eqnRegEx = re.compile(r'\[(.*?)\](.*)') def __init__(self, dataStr): dataList = dataStr.split('#') unitList = dataList.pop(0).split('=', 1) self.name = unitList.pop(0).strip() self.equiv = '' self.factor = 1.0 self.fromEqn = '' # used only for non-linear units self.toEqn = '' # used only for non-linear units if unitList: self.equiv = unitList[0].strip() if self.equiv[0] == '[': # used only for non-linear units try: self.equiv, self.fromEqn = UnitAtom.eqnRegEx.\ match(self.equiv).groups() if ';' in self.fromEqn: self.fromEqn, self.toEqn = self.fromEqn.split(';', 1) self.toEqn = self.toEqn.strip() self.fromEqn = self.fromEqn.strip() except AttributeError: raise unitdata.UnitDataError(_('Bad equation for "{0}"'). format(self.name)) else: # split factor and equiv unit for linear parts = self.equiv.split(None, 1) if len(parts) > 1 and \ UnitAtom.badOpRegEx.search(parts[0]) == None: # only allowed digits and operators try: self.factor = float(eval(parts[0])) self.equiv = parts[1] except: pass self.comments = [comm.strip() for comm in dataList] self.comments.extend([''] * (2 - len(self.comments))) self.exp = 1 self.viewLink = [None, None] self.typeName = '' def description(self): """Return name and 1st comment (usu. full name) if applicable. """ if self.comments[0]: return '{0} ({1})'.format(self.name, self.comments[0]) return self.name def unitValid(self): """Return True if unit and exponent are valid. """ if self.equiv and \ -UnitAtom.partialExp < self.exp < UnitAtom.partialExp: return True return False def unitText(self, absExp=False): """Return text for unit name with exponent or absolute value of exp. """ exp = self.exp if absExp: exp = abs(self.exp) if exp == 1: return self.name if -UnitAtom.partialExp < exp < UnitAtom.partialExp: return '{0}^{1}'.format(self.name, exp) if exp > 1: return '{0}^'.format(self.name) else: return '{0}^-'.format(self.name) def matchWords(self, wordList): """Return True if unit name and comments match word list. """ dataStr = ' '.join((self.name, self.comments[0], self.comments[1])).lower() for word in wordList: if dataStr.find(word) == -1: return False return True def copy(self): """Return a copy of the unit so the exponent can be changed. """ return copy.copy(self) def __lt__(self, other): """Less than comparison for sorting. """ return self.name.lower() < other.name.lower() def __eq__(self, other): """Equality test. """ return self.name.lower() == other.name.lower() ConvertAll/source/convertall.py0000755000175000017500000001154512454302000015627 0ustar dougdoug#!/usr/bin/env python3 """ **************************************************************************** convertall.py, the main program file ConvertAll, a units conversion program Copyright (C) 2015, Douglas W. Bell This is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, either Version 2 or any later version. This program is distributed in the hope that it will be useful, but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. ***************************************************************************** """ __progname__ = 'ConvertAll' __version__ = '0.6.1' __author__ = 'Doug Bell' dataFilePath = None # modified by install script if required helpFilePath = None # modified by install script if required iconPath = None # modified by install script if required translationPath = 'translations' lang = '' import sys import os.path import locale import getopt import signal import builtins from PyQt4 import QtCore, QtGui def loadTranslator(fileName, app): """Load and install qt translator, return True if sucessful. """ translator = QtCore.QTranslator(app) modPath = os.path.abspath(sys.path[0]) if modPath.endswith('.zip'): # for py2exe modPath = os.path.dirname(modPath) path = os.path.join(modPath, translationPath) result = translator.load(fileName, path) if not result: path = os.path.join(modPath, '..', translationPath) result = translator.load(fileName, path) if not result: path = os.path.join(modPath, '..', 'i18n', translationPath) result = translator.load(fileName, path) if result: QtCore.QCoreApplication.installTranslator(translator) return True else: print('Warning: translation file "{0}" could not be loaded'. format(fileName)) return False def setupTranslator(app): """Set language, load translators and setup translator function. """ try: locale.setlocale(locale.LC_ALL, '') except locale.Error: pass global lang lang = os.environ.get('LC_MESSAGES', '') if not lang: lang = os.environ.get('LANG', '') if not lang: try: lang = locale.getdefaultlocale()[0] except ValueError: pass if not lang: lang = '' numTranslators = 0 if lang and lang[:2] not in ['C', 'en']: numTranslators += loadTranslator('qt_{0}'.format(lang), app) numTranslators += loadTranslator('convertall_{0}'.format(lang), app) def translate(text, comment=''): """Translation function that sets context to calling module's filename. """ try: frame = sys._getframe(1) fileName = frame.f_code.co_filename finally: del frame context = os.path.basename(os.path.splitext(fileName)[0]) return QtCore.QCoreApplication.translate(context, text, comment) def markNoTranslate(text, comment=''): return text if numTranslators: builtins._ = translate else: builtins._ = markNoTranslate def main(): if len(sys.argv) > 1: try: opts, args = getopt.gnu_getopt(sys.argv, 'd:fhiqset', ['decimals=', 'fixed-decimals', 'help', 'interactive', 'quiet', 'sci-notation', 'eng-notation', 'test']) except getopt.GetoptError: # check that arguments aren't Qt GUI options if sys.argv[1][:3] not in ['-ba', '-bg', '-bt', '-bu', '-cm', '-di', '-do', '-fg', '-fn', '-fo', '-ge', '-gr', '-im', '-in', '-na', '-nc', '-no', '-re', '-se', '-st', '-sy', '-ti', '-vi', '-wi']: app = QtCore.QCoreApplication(sys.argv) setupTranslator(app) import cmdline cmdline.printUsage() sys.exit(2) else: app = QtCore.QCoreApplication(sys.argv) setupTranslator(app) import cmdline try: cmdline.parseArgs(opts, args[1:]) except KeyboardInterrupt: pass return userStyle = '-style' in ' '.join(sys.argv) app = QtGui.QApplication(sys.argv) setupTranslator(app) # must be before importing any convertall modules import convertdlg if not userStyle and not sys.platform.startswith('win'): QtGui.QApplication.setStyle('plastique') win = convertdlg.ConvertDlg() win.show() signal.signal(signal.SIGINT, signal.SIG_IGN) app.exec_() if __name__ == '__main__': main() ConvertAll/source/helpview.py0000644000175000017500000001172112270342155015305 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # helpview.py, provides a window for viewing an html help file # # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import os.path import sys import webbrowser from PyQt4 import QtCore, QtGui class HelpView(QtGui.QMainWindow): """Main window for viewing an html help file. """ def __init__(self, path, caption, icons, parent=None): """Helpview initialize with text. """ QtGui.QMainWindow.__init__(self, parent) self.setAttribute(QtCore.Qt.WA_QuitOnClose, False) self.setWindowFlags(QtCore.Qt.Window) self.setStatusBar(QtGui.QStatusBar()) self.textView = HelpViewer(self) self.setCentralWidget(self.textView) path = os.path.abspath(path) if sys.platform.startswith('win'): path = path.replace('\\', '/') self.textView.setSearchPaths([os.path.dirname(path)]) self.textView.setSource(QtCore.QUrl('file:///{0}'.format(path))) self.resize(520, 440) self.setWindowTitle(caption) tools = self.addToolBar('Tools') self.menu = QtGui.QMenu(self.textView) self.textView.highlighted[str].connect(self.showLink) backAct = QtGui.QAction(_('&Back'), self) backAct.setIcon(icons['helpback']) tools.addAction(backAct) self.menu.addAction(backAct) backAct.triggered.connect(self.textView.backward) backAct.setEnabled(False) self.textView.backwardAvailable.connect(backAct.setEnabled) forwardAct = QtGui.QAction(_('&Forward'), self) forwardAct.setIcon(icons['helpforward']) tools.addAction(forwardAct) self.menu.addAction(forwardAct) forwardAct.triggered.connect(self.textView.forward) forwardAct.setEnabled(False) self.textView.forwardAvailable.connect(forwardAct.setEnabled) homeAct = QtGui.QAction(_('&Home'), self) homeAct.setIcon(icons['helphome']) tools.addAction(homeAct) self.menu.addAction(homeAct) homeAct.triggered.connect(self.textView.home) tools.addSeparator() tools.addSeparator() findLabel = QtGui.QLabel(' {0}: '.format(_('Find')), self) tools.addWidget(findLabel) self.findEdit = QtGui.QLineEdit(self) tools.addWidget(self.findEdit) self.findEdit.textEdited.connect(self.findTextChanged) self.findEdit.returnPressed.connect(self.findNext) self.findPreviousAct = QtGui.QAction(_('Find &Previous'), self) self.findPreviousAct.setIcon(icons['helpprevious']) tools.addAction(self.findPreviousAct) self.menu.addAction(self.findPreviousAct) self.findPreviousAct.triggered.connect(self.findPrevious) self.findPreviousAct.setEnabled(False) self.findNextAct = QtGui.QAction(_('Find &Next'), self) self.findNextAct.setIcon(icons['helpnext']) tools.addAction(self.findNextAct) self.menu.addAction(self.findNextAct) self.findNextAct.triggered.connect(self.findNext) self.findNextAct.setEnabled(False) def showLink(self, text): """Send link text to the statusbar. """ self.statusBar().showMessage(text) def findTextChanged(self, text): """Update find controls based on text in text edit. """ self.findPreviousAct.setEnabled(len(text) > 0) self.findNextAct.setEnabled(len(text) > 0) def findPrevious(self): """Command to find the previous string. """ if self.textView.find(self.findEdit.text(), QtGui.QTextDocument.FindBackward): self.statusBar().clearMessage() else: self.statusBar().showMessage(_('Text string not found')) def findNext(self): """Command to find the next string. """ if self.textView.find(self.findEdit.text()): self.statusBar().clearMessage() else: self.statusBar().showMessage(_('Text string not found')) class HelpViewer(QtGui.QTextBrowser): """Shows an html help file. """ def __init__(self, parent=None): QtGui.QTextBrowser.__init__(self, parent) def setSource(self, url): """Called when user clicks on a URL. """ name = url.toString() if name.startswith('http'): webbrowser.open(name, True) else: QtGui.QTextBrowser.setSource(self, QtCore.QUrl(name)) def contextMenuEvent(self, event): """Init popup menu on right click"". """ self.parentWidget().menu.exec_(event.globalPos()) ConvertAll/source/unitedit.py0000644000175000017500000000641012270342155015306 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # unitedit.py, provides a line edit for unit entry # # ConvertAll, a units conversion program # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** from PyQt4 import QtCore, QtGui class UnitEdit(QtGui.QLineEdit): """Text line editor for unit entry. """ unitChanged = QtCore.pyqtSignal() currentChanged = QtCore.pyqtSignal() def __init__(self, unitGroup, parent=None): QtGui.QLineEdit.__init__(self, parent) self.unitGroup = unitGroup self.textEdited.connect(self.updateGroup) self.cursorPositionChanged.connect(self.updateCurrentUnit) def unitUpdate(self): """Update text from unit group. """ newText = self.unitGroup.unitString() cursorPos = len(newText) - len(self.text()) + self.cursorPosition() if cursorPos < 0: # cursor set to same distance from right end cursorPos = 0 self.blockSignals(True) self.setText(newText) self.setCursorPosition(cursorPos) self.blockSignals(False) self.unitChanged.emit() def updateGroup(self): """Update unit based on edit text change (except spacing change). """ if self.text().replace(' ', '') \ != self.unitGroup.unitString().replace(' ', ''): self.unitGroup.update(self.text(), self.cursorPosition()) self.currentChanged.emit() # update listView self.unitUpdate() # replace text with formatted text def updateCurrentUnit(self): """Change current unit based on cursor movement. """ self.unitGroup.updateCurrentUnit(self.text(), self.cursorPosition()) self.currentChanged.emit() # update listView def keyPressEvent(self, event): """Keys for return and up/down. """ if event.key() == QtCore.Qt.Key_Up: self.unitGroup.moveToNext(True) self.currentChanged.emit() # update listView self.unitUpdate() elif event.key() == QtCore.Qt.Key_Down: self.unitGroup.moveToNext(False) self.currentChanged.emit() # update listView self.unitUpdate() elif event.key() in (QtCore.Qt.Key_Return, QtCore.Qt.Key_Enter): self.unitGroup.completePartial() self.currentChanged.emit() # update listView self.unitUpdate() else: QtGui.QLineEdit.keyPressEvent(self, event) def event(self, event): """Catch tab press to complete unit. """ if event.type() == QtCore.QEvent.KeyPress and \ event.key() == QtCore.Qt.Key_Tab: self.unitGroup.completePartial() self.currentChanged.emit() # update listView self.unitUpdate() return QtGui.QLineEdit.event(self, event) ConvertAll/source/optiondefaults.py0000644000175000017500000000324312454301425016521 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # optiondefaults.py, provides defaults for program options # # ConvertAll, a units conversion program # Copyright (C) 2015, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** defaultList = [ "# Options for the ConvertAll unit conversion program", "#", "# All options are set from within the program,", "# editing here is not recommended", "#", "UseDefaultColors yes", "BackgroundR 255", "BackgroundG 255", "BackgroundB 255", "ForegroundR 0", "ForegroundG 0", "ForegroundB 0", "#", "DecimalPlaces 8", "Notation general", "ShowOpButtons yes", "RecentUnits 8", "LoadLastUnit no", "ShowStartupTip yes", "#", "MainDlgXSize 0", "MainDlgYSize 0", "MainDlgXPos 0", "MainDlgYPos 0", "FinderXSize 0", "FinderYSize 0", "FinderXPos 0", "FinderYPos 0", "#", "RecentUnit1 ", "RecentUnit2 ", "RecentUnit3 ", "RecentUnit4 ", "RecentUnit5 ", "RecentUnit6 ", "RecentUnit7 ", "RecentUnit8 "] ConvertAll/source/icondict.py0000644000175000017500000000535712270102756015267 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # icondict.py, provides a class to load and store icons # # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import os.path from PyQt4 import QtCore, QtGui class IconDict(dict): """Stores icons by name, loads on demand. """ iconExt = ['.png', '.bmp'] def __init__(self): dict.__init__(self, {}) self.pathList = [] def addIconPath(self, potentialPaths): """Add first good path from potentialPaths. """ for path in potentialPaths: try: for name in os.listdir(path): pixmap = QtGui.QPixmap(os.path.join(path, name)) if not pixmap.isNull(): self.pathList.append(path) return except OSError: pass def __getitem__(self, name): """Return icon, loading if necessary. """ try: return dict.__getitem__(self, name) except KeyError: icon = self.loadIcon(name) if not icon: raise return icon def loadAllIcons(self): """Load all icons available in self.pathList. """ self.clear() for path in self.pathList: try: for name in os.listdir(path): pixmap = QtGui.QPixmap(os.path.join(path, name)) if not pixmap.isNull(): name = os.path.splitext(name)[0] try: icon = self[name] except KeyError: icon = QtGui.QIcon() self[name] = icon icon.addPixmap(pixmap) except OSError: pass def loadIcon(self, iconName): """Load icon from iconPath, add to dictionary and return the icon. """ icon = QtGui.QIcon() for path in self.pathList: for ext in IconDict.iconExt: fileName = iconName + ext pixmap = QtGui.QPixmap(os.path.join(path, fileName)) if not pixmap.isNull(): icon.addPixmap(pixmap) if not icon.isNull(): self[iconName] = icon return icon return None ConvertAll/source/optiondlg.py0000644000175000017500000002076712270342155015473 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # optiondlg.py, provides classes for option setting dialogs # # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import sys from PyQt4 import QtCore, QtGui class OptionDlg(QtGui.QDialog): """Works with Option class to provide a dialog for pref/options. """ def __init__(self, option, parent=None): QtGui.QDialog.__init__(self, parent) self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint | QtCore.Qt.WindowSystemMenuHint) self.option = option topLayout = QtGui.QVBoxLayout(self) self.setLayout(topLayout) self.columnLayout = QtGui.QHBoxLayout() topLayout.addLayout(self.columnLayout) self.gridLayout = QtGui.QGridLayout() self.columnLayout.addLayout(self.gridLayout) self.oldLayout = self.gridLayout ctrlLayout = QtGui.QHBoxLayout() topLayout.addLayout(ctrlLayout) ctrlLayout.addStretch(0) okButton = QtGui.QPushButton(_('&OK'), self) ctrlLayout.addWidget(okButton) okButton.clicked.connect(self.accept) cancelButton = QtGui.QPushButton(_('&Cancel'), self) ctrlLayout.addWidget(cancelButton) cancelButton.clicked.connect(self.reject) self.setWindowTitle(_('Preferences')) self.itemList = [] self.curGroup = None def addItem(self, dlgItem, widget, label=None): """Add a control with optional label, called by OptionDlgItem. """ row = self.gridLayout.rowCount() if label: self.gridLayout.addWidget(label, row, 0) self.gridLayout.addWidget(widget, row, 1) else: self.gridLayout.addWidget(widget, row, 0, 1, 2) self.itemList.append(dlgItem) def startGroupBox(self, title, intSpace=5): """Use a group box for next added items. """ self.curGroup = QtGui.QGroupBox(title, self) row = self.oldLayout.rowCount() self.oldLayout.addWidget(self.curGroup, row, 0, 1, 2) self.gridLayout = QtGui.QGridLayout(self.curGroup) self.gridLayout.setVerticalSpacing(intSpace) def endGroupBox(self): """Cancel group box for next added items. """ self.gridLayout = self.oldLayout self.curGroup = None def startNewColumn(self): """Cancel any group box and start a second column. """ self.curGroup = None row = self.oldLayout.rowCount() self.gridLayout = QtGui.QGridLayout() self.columnLayout.addLayout(self.gridLayout) self.oldLayout = self.gridLayout def parentGroup(self): """Return parent for new widgets. """ if self.curGroup: return self.curGroup return self def accept(self): """Called by dialog when OK button pressed. """ for item in self.itemList: item.updateData() QtGui.QDialog.accept(self) class OptionDlgItem: """Base class for items to add to dialog. """ def __init__(self, dlg, key, writeChg): self.dlg = dlg self.key = key self.writeChg = writeChg self.control = None def updateData(self): """Dummy update function. """ pass class OptionDlgBool(OptionDlgItem): """Holds widget for bool checkbox. """ def __init__(self, dlg, key, menuText, writeChg=True): OptionDlgItem.__init__(self, dlg, key, writeChg) self.control = QtGui.QCheckBox(menuText, dlg.parentGroup()) self.control.setChecked(dlg.option.boolData(key)) dlg.addItem(self, self.control) def updateData(self): """Update Option class based on checkbox status. """ if self.control.isChecked() != self.dlg.option.boolData(self.key): if self.control.isChecked(): self.dlg.option.changeData(self.key, 'yes', self.writeChg) else: self.dlg.option.changeData(self.key, 'no', self.writeChg) class OptionDlgInt(OptionDlgItem): """Holds widget for int spinbox. """ def __init__(self, dlg, key, menuText, min, max, writeChg=True, step=1, wrap=False, suffix=''): OptionDlgItem.__init__(self, dlg, key, writeChg) label = QtGui.QLabel(menuText, dlg.parentGroup()) self.control = QtGui.QSpinBox(dlg.parentGroup()) self.control.setMinimum(min) self.control.setMaximum(max) self.control.setSingleStep(step) self.control.setWrapping(wrap) self.control.setSuffix(suffix) self.control.setValue(dlg.option.intData(key, min, max)) dlg.addItem(self, self.control, label) def updateData(self): """Update Option class based on spinbox status. """ if self.control.value() != int(self.dlg.option.numData(self.key)): self.dlg.option.changeData(self.key, repr(self.control.value()), self.writeChg) class OptionDlgDbl(OptionDlgItem): """Holds widget for double line edit. """ def __init__(self, dlg, key, menuText, min, max, writeChg=True): OptionDlgItem.__init__(self, dlg, key, writeChg) label = QtGui.QLabel(menuText, dlg.parentGroup()) self.control = QtGui.QLineEdit(repr(dlg.option.numData(key, min, max)), dlg.parentGroup()) valid = QtGui.QDoubleValidator(min, max, 6, self.control) self.control.setValidator(valid) dlg.addItem(self, self.control, label) def updateData(self): """Update Option class based on edit status. """ text = self.control.text() unusedPos = 0 if self.control.validator().validate(text, unusedPos)[0] != \ QtGui.QValidator.Acceptable: return num = float(text) if num != self.dlg.option.numData(self.key): self.dlg.option.changeData(self.key, repr(num), self.writeChg) class OptionDlgStr(OptionDlgItem): """Holds widget for string line edit. """ def __init__(self, dlg, key, menuText, writeChg=True): OptionDlgItem.__init__(self, dlg, key, writeChg) label = QtGui.QLabel(menuText, dlg.parentGroup()) self.control = QtGui.QLineEdit(dlg.option.strData(key, True), dlg.parentGroup()) dlg.addItem(self, self.control, label) def updateData(self): """Update Option class based on edit status. """ newStr = self.control.text() if newStr != self.dlg.option.strData(self.key, True): self.dlg.option.changeData(self.key, newStr, self.writeChg) class OptionDlgRadio(OptionDlgItem): """Holds widget for exclusive radio button group. """ def __init__(self, dlg, key, headText, textList, writeChg=True): # textList is list of tuples: optionText, labelText OptionDlgItem.__init__(self, dlg, key, writeChg) self.optionList = [x[0] for x in textList] buttonBox = QtGui.QGroupBox(headText, dlg.parentGroup()) self.control = QtGui.QButtonGroup(buttonBox) layout = QtGui.QVBoxLayout(buttonBox) buttonBox.setLayout(layout) optionSetting = dlg.option.strData(key) id = 0 for optionText, labelText in textList: button = QtGui.QRadioButton(labelText, buttonBox) layout.addWidget(button) self.control.addButton(button, id) id += 1 if optionText == optionSetting: button.setChecked(True) dlg.addItem(self, buttonBox) def updateData(self): """Update Option class based on button status. """ data = self.optionList[self.control.checkedId()] if data != self.dlg.option.strData(self.key): self.dlg.option.changeData(self.key, data, self.writeChg) class OptionDlgPush(OptionDlgItem): """Holds widget for extra misc. push button. """ def __init__(self, dlg, text, cmd): OptionDlgItem.__init__(self, dlg, '', 0) self.control = QtGui.QPushButton(text, dlg.parentGroup()) self.control.clicked.connect(cmd) dlg.addItem(self, self.control) ConvertAll/source/unitgroup.py0000644000175000017500000004013012454301425015511 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # unitgroup.py, provides a group of units and does conversions # # ConvertAll, a units conversion program # Copyright (C) 2015, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import re from math import * from unitatom import UnitAtom import unitdata class UnitGroup(object): """Stores, updates and converts a group of units. """ maxDecPlcs = 12 operRegEx = re.compile(r'[\*/]') operGroupRegEx = re.compile(r'(\(.*\)|\(.*$|[\*/])') def __init__(self, unitData, option): self.unitData = unitData self.option = option self.unitList = [] self.currentNum = 0 self.factor = 1.0 self.reducedList = [] self.linear = True self.parenthClosed = True def flatUnitList(self): """Return the units with sub-groups flattened. """ result = [] for unit in self.unitList: if hasattr(unit, 'flatUnitList'): result.extend(unit.flatUnitList()) else: result.append(unit) return result def unitGroups(self): """Return a list of this unit group and all sub-groups. """ result = [self] for group in self.unitList: if hasattr(group, 'unitGroups'): result.extend(group.unitGroups()) return result def unitGroupExpSign(self): """Return True if the first unit's exponent is positive. """ unitList = self.unitList while unitList and not hasattr(unitList[0], 'exp'): unitList = unitList[0].unitList if unitList and unitList[0].exp < 0: return False return True def currentGroupPos(self): """Return a tuple of the group and position of the current unit. """ currentUnit = self.currentUnit() if currentUnit: for group in self.unitGroups(): for i in range(len(group.unitList)): if group.unitList[i] is currentUnit: return (group, i) return (self, 0) def update(self, text, cursorPos=None): """Decode user entered text into units. """ self.unitList = self.parseGroup(text) if cursorPos != None: self.updateCurrentUnit(text, cursorPos) else: self.currentNum = len(self.flatUnitList()) - 1 def updateCurrentUnit(self, text, cursorPos): """Set current unit number. """ self.currentNum = len(UnitGroup.operRegEx.findall(text[:cursorPos])) def currentUnit(self): """Return current unit if set, o/w None. """ try: return self.flatUnitList()[self.currentNum] except IndexError: return None def currentPartialUnit(self): """Return unit with at least a partial match, o/w None. """ currentUnit = self.currentUnit() if not currentUnit: return None return self.unitData.findPartialMatch(currentUnit.name) def currentSortPos(self): """Return unit near current unit for sorting. """ try: return self.unitData.findSortPos(self.currentUnit().name) except AttributeError: return self.unitData[self.unitData.sortedKeys[0]] def replaceCurrent(self, newUnit): """Replace the current unit with unit. """ if self.unitList: oldUnit = self.currentUnit() group, pos = self.currentGroupPos() group.unitList[pos] = newUnit.copy() group.unitList[pos].exp = oldUnit.exp return self.unitList.append(newUnit.copy()) def completePartial(self): """Replace a partial unit with a full one. """ partUnit = self.currentUnit() if partUnit and not partUnit.equiv: newUnit = self.unitData.findPartialMatch(partUnit.name) if newUnit: self.replaceCurrent(newUnit) def moveToNext(self, upward): """Replace unit with adjacent one based on match or sort position. """ unit = self.currentSortPos() name = unit.name.lower().replace(' ', '') num = self.unitData.sortedKeys.index(name) + (upward and -1 or 1) if 0 <= num < len(self.unitData.sortedKeys): self.replaceCurrent(self.unitData[self.unitData.sortedKeys[num]]) def addOper(self, mult): """Add new operator & blank unit after current, * if mult is true. """ if self.unitList: self.completePartial() group, pos = self.currentGroupPos() self.currentNum += 1 group.unitList.insert(pos + 1, UnitAtom('')) if not mult: self.currentUnit().exp = -1 def changeExp(self, newExp): """Change the current unit's exponent. """ self.completePartial() currentUnit = self.currentUnit() if currentUnit: if currentUnit.exp > 0: currentUnit.exp = newExp else: currentUnit.exp = -newExp def clearUnit(self): """Remove units. """ self.unitList = [] self.currentNum = 0 self.factor = 1.0 self.reducedList = [] self.linear = True def parseGroup(self, text): """Return list of units from text string. """ unitList = [] parts = [part.strip() for part in UnitGroup.operGroupRegEx.split(text) if part.strip()] numerator = True while parts: part = parts.pop(0) if part == '*' or part == '/': parts.insert(0, part) part = '' # add blank invalid unit if order wrong if part.startswith('('): part = part[1:] group = UnitGroup(self.unitData, self.option) if part.endswith(')'): part = part[:-1] else: group.parenthClosed = False group.update(part) if not group.unitList: group.unitList.append(group.parseUnit('')) if not numerator: for unit in group.flatUnitList(): unit.exp = -unit.exp unitList.append(group) else: unit = self.parseUnit(part) if not numerator: unit.exp = -unit.exp unitList.append(unit) if parts: oper = parts.pop(0) if oper == '*' or oper == '/': numerator = oper == '*' and True or False if not parts: parts.insert(0, '') # add blank invalid unit at end else: parts.insert(0, oper) # put unit back if order wrong return unitList def parseUnit(self, text): """Return a valid or invalid unit with exponent from a text string. """ parts = text.split('^', 1) exp = 1 if len(parts) > 1: # has exponent try: exp = int(parts[1]) except ValueError: if parts[1].lstrip().startswith('-'): exp = -UnitAtom.partialExp # tmp invalid exp else: exp = UnitAtom.partialExp unitText = parts[0].strip().lower().replace(' ', '') unit = self.unitData.get(unitText, None) if not unit and unitText and unitText[-1] == 's' and not \ self.unitData.findPartialMatch(unitText): # check for plural unit = self.unitData.get(unitText[:-1], None) if not unit: unit = UnitAtom('') # tmp invalid unit unit.name = parts[0].strip() unit = unit.copy() unit.exp = exp return unit def unitString(self, unitList=None, swapExpSign=False): """Return the full string for this group or a given group. """ if unitList == None: unitList = self.unitList fullText = '' if unitList: firstUnit = True for unit in unitList: if not firstUnit: if hasattr(unit, 'exp'): expSign = unit.exp > 0 else: expSign = unit.unitGroupExpSign() if swapExpSign: expSign = not expSign fullText = '{0} {1} '.format(fullText, expSign and '*' or '/') if hasattr(unit, 'unitText'): fullText = '{0}{1}'.format(fullText, unit.unitText(swapExpSign or not firstUnit)) else: if firstUnit and not swapExpSign: swap = False else: swap = not unit.unitGroupExpSign() fullText = '{0}({1}{2}'.format(fullText, unit.unitString(None, swap), unit.parenthClosed and ')' or '') firstUnit = False return fullText def groupValid(self): """Return True if all units are valid. """ if not self.unitList or not self.parenthClosed: return False for unit in self.unitList: if hasattr(unit, 'unitValid'): if not unit.unitValid(): return False else: if not unit.groupValid(): return False return True def reduceGroup(self): """Update reduced list of units and factor. """ self.linear = True self.reducedList = [] self.factor = 1.0 if not self.groupValid(): return count = 0 tmpList = self.flatUnitList() while tmpList: count += 1 if count > 5000: raise unitdata.UnitDataError(_('Circular unit definition')) unit = tmpList.pop(0) if unit.equiv.startswith('!'): self.reducedList.append(unit.copy()) elif not unit.equiv: raise unitdata.UnitDataError(_('Invalid conversion for "{0}"'). format(unit.name)) else: if unit.fromEqn: self.linear = False equivUnit = UnitGroup(self.unitData, self.option) equivUnit.update(unit.equiv) newList = equivUnit.flatUnitList() for newUnit in newList: newUnit.exp *= unit.exp tmpList.extend(newList) self.factor *= unit.factor**unit.exp self.reducedList.sort() tmpList = self.reducedList[:] self.reducedList = [] for unit in tmpList: if self.reducedList and unit == self.reducedList[-1]: self.reducedList[-1].exp += unit.exp else: self.reducedList.append(unit) self.reducedList = [unit for unit in self.reducedList if unit.equiv != '!!' and unit.name != 'unit' and unit.exp != 0] def categoryMatch(self, otherGroup): """Return True if unit types are equivalent. """ if not self.checkLinear() or not otherGroup.checkLinear(): return False return self.reducedList == otherGroup.reducedList and \ [unit.exp for unit in self.reducedList] == \ [unit.exp for unit in otherGroup.reducedList] def checkLinear(self): """Return True if linear or acceptable non-linear. """ if not self.linear: flatList = self.flatUnitList() if len(flatList) > 1 or flatList[0].exp != 1: return False return True def compatStr(self): """Return string with reduced unit or linear compatability problem. """ if self.checkLinear(): return self.unitString(self.reducedList) return _('Cannot combine non-linear units') def convert(self, num, toGroup): """Return num of this group converted to toGroup. """ if self.linear: num *= self.factor else: num = self.nonLinearCalc(num, 1) * self.factor if toGroup.linear: return num / toGroup.factor return toGroup.nonLinearCalc(num / toGroup.factor, 0) def nonLinearCalc(self, num, isFrom): """Return result of non-linear calculation. """ x = num try: unit = self.flatUnitList()[0] if unit.toEqn: # regular equations if isFrom: return float(eval(unit.fromEqn)) return float(eval(unit.toEqn)) data = list(eval(unit.fromEqn)) # extrapolation list if isFrom: data = [(float(group[0]), float(group[1])) for group in data] else: data = [(float(group[1]), float(group[0])) for group in data] data.sort() pos = len(data) - 1 for i in range(len(data)): if num <= data[i][0]: pos = i break if pos == 0: pos = 1 return ((num-data[pos-1][0]) / float(data[pos][0]-data[pos-1][0]) * (data[pos][1]-data[pos-1][1]) + data[pos-1][1]) except OverflowError: return 1e9999 except: raise unitdata.UnitDataError(_('Bad equation for {0}'). format(unit.name)) def convertStr(self, num, toGroup): """Return formatted string of converted number. """ return self.formatNumStr(self.convert(num, toGroup)) def formatNumStr(self, num): """Return num string formatted per options. """ decPlcs = self.option.intData('DecimalPlaces', 0, UnitGroup.maxDecPlcs) notation = self.option.strData('Notation') if notation == 'fixed': return '{0:0.{prec}f}'.format(num, prec = decPlcs) if notation == 'scientific': return '{0:0.{prec}E}'.format(num, prec = decPlcs) if notation == 'engineering': exp = 3 * (floor(log10(abs(num))) // 3) num = round(num / 10**exp, decPlcs) # check if rounding bumps exponent if abs(num) >= 1000.0: num /= 1000.0 exp += 3 return '{0:0.{prec}f}E{1:0=+3d}'.format(num, exp, prec = decPlcs) # general short representation return '{0:0.{prec}G}'.format(num, prec = decPlcs) if __name__ == '__main__': import unitdata import option options = option.Option('convertall', 20) options.loadAll(["DecimalPlaces 8", "Notation general"]) data = unitdata.UnitData() data.readData() fromText = input('Enter from unit -> ') fromUnit = UnitGroup(data, options) fromUnit.update(fromText) toText = input('Enter to unit -> ') toUnit = UnitGroup(data, options) toUnit.update(toText) print('{0} TO {1}'.format(fromUnit.unitString(), toUnit.unitString())) fromUnit.reduceGroup() toUnit.reduceGroup() print('{0} TO {1}'.format(fromUnit.unitString(fromUnit.reducedList), toUnit.unitString(toUnit.reducedList))) if not fromUnit.categoryMatch(toUnit): print('NO MATCH') else: print('MATCH') numText = input('Enter value -> ') num = float(numText) print('{0} IS {1}'.format(num, fromUnit.convert(num, toUnit))) ConvertAll/source/numedit.py0000644000175000017500000001145412271233216015130 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # numedit.py, provides a number entry editor # # ConvertAll, a units conversion program # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import re import sys from PyQt4 import QtCore, QtGui import unitdata class NumEdit(QtGui.QLineEdit): """Number entry editor. """ convertRqd = QtCore.pyqtSignal() convertNum = QtCore.pyqtSignal(str) def __init__(self, thisUnit, otherUnit, label, status, recentUnits, primary, parent=None): QtGui.QLineEdit.__init__(self, parent) self.thisUnit = thisUnit self.otherUnit = otherUnit self.label = label self.status = status self.recentUnits = recentUnits self.primary = primary self.onLeft = primary self.setValidator(FloatExprValidator(self)) self.setText(self.thisUnit.formatNumStr(1.0)) self.textEdited.connect(self.convert) def unitUpdate(self): """Update the editor and labels based on a unit change. """ if self.thisUnit.groupValid(): self.label.setTitle(self.thisUnit.unitString()) if self.otherUnit.groupValid(): try: self.thisUnit.reduceGroup() self.otherUnit.reduceGroup() except unitdata.UnitDataError as text: QtGui.QMessageBox.warning(self, 'ConvertAll', _('Error in unit data - {0}'). format(text)) return if self.thisUnit.categoryMatch(self.otherUnit): self.status.setText(_('Converting...')) if self.primary: self.convert() else: self.convertRqd.emit() return if self.onLeft: self.status.setText(_('Units are not compatible ' '({0} vs. {1})'). format(self.thisUnit.compatStr(), self.otherUnit.compatStr())) else: self.status.setText(_('Units are not compatible ' '({0} vs. {1})'). format(self.otherUnit.compatStr(), self.thisUnit.compatStr())) else: self.status.setText(_('Set units')) else: self.status.setText(_('Set units')) self.label.setTitle(_('No Unit Set')) self.setEnabled(False) self.convertNum.emit('') def convert(self): """Do conversion with self primary. """ self.primary = True self.setEnabled(True) if self.onLeft: self.recentUnits.addEntry(self.otherUnit.unitString()) self.recentUnits.addEntry(self.thisUnit.unitString()) else: self.recentUnits.addEntry(self.thisUnit.unitString()) self.recentUnits.addEntry(self.otherUnit.unitString()) try: num = float(eval(self.text())) except: self.convertNum.emit('') return try: numText = self.thisUnit.convertStr(num, self.otherUnit) self.convertNum.emit(numText) except unitdata.UnitDataError as text: QtGui.QMessageBox.warning(self, 'ConvertAll', _('Error in unit data - {0}'). format(text)) def setNum(self, numText): """Set text based on conversion from other number editor. """ if not numText: self.setEnabled(False) else: self.primary = False self.setEnabled(True) self.setText(numText) class FloatExprValidator(QtGui.QValidator): """Validator for float python expressions typed into NumEdit. """ invalidRe = re.compile(r'[^\d\.eE\+\-\*/\(\)]') def __init__(self, parent): QtGui.QValidator.__init__(self, parent) def validate(self, inputStr, pos): """Check for valid characters in entry. """ if FloatExprValidator.invalidRe.search(inputStr): return (QtGui.QValidator.Invalid, inputStr, pos) return (QtGui.QValidator.Acceptable, inputStr, pos) ConvertAll/source/modbutton.py0000644000175000017500000000271112270342155015474 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # modbutton.py, provides a button that signals its text # # ConvertAll, a units conversion program # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** from PyQt4 import QtCore, QtGui class ModButton(QtGui.QPushButton): """Button used to add operators, change exponent or clear unit. """ stateChg = QtCore.pyqtSignal() def __init__(self, function, param, label, parent=None): QtGui.QPushButton.__init__(self, label, parent) self.function = function self.param = param self.setFocusPolicy(QtCore.Qt.NoFocus) self.clicked.connect(self.exe) def exe(self): """Execute function on button push. """ if self.param != None: self.function(self.param) else: self.function() self.stateChg.emit() # update listView def sizeHint(self): """Adjust width smaller. """ size = QtGui.QPushButton.sizeHint(self) size.setWidth(size.width() / 2) return size ConvertAll/source/unitlistview.py0000644000175000017500000001062412270342155016231 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # unitlistview.py, provides a list view of available units # # ConvertAll, a units conversion program # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** from PyQt4 import QtCore, QtGui import convertdlg class UnitListView(QtGui.QTreeWidget): """ListView of units available. """ unitChanged = QtCore.pyqtSignal() def __init__(self, unitGroup, unitRefNum, parent=None): QtGui.QTreeWidget.__init__(self, parent) self.unitGroup = unitGroup self.unitRefNum = unitRefNum self.buttonList = [] self.setRootIsDecorated(False) self.setColumnCount(3) self.setHeaderLabels([_('Unit Name'), _('Unit Type'), _('Comments')]) self.header().setStretchLastSection(False) self.itemSelectionChanged.connect(self.replaceUnit) self.loadUnits() def loadUnits(self): """Load unit items. """ self.clear() for name in convertdlg.ConvertDlg.unitData.sortedKeys: UnitListViewItem(convertdlg.ConvertDlg.unitData[name], self.unitRefNum, self) for col in range(3): self.resizeColumnToContents(col) def relayChange(self): """Update list after buttons changed the unit group. """ self.updateSelection() self.setFocus() self.unitChanged.emit() # update unitEdit def updateSelection(self): """Update list after change to line editor. """ self.blockSignals(True) self.enableButtons(True) self.clearSelection() unit = self.unitGroup.currentUnit() if unit and unit.equiv: self.setCurrentItem(unit.viewLink[self.unitRefNum]) self.setItemSelected(unit.viewLink[self.unitRefNum], True) else: unit = self.unitGroup.currentPartialUnit() if unit: self.setCurrentItem(unit.viewLink[self.unitRefNum]) self.setItemSelected(unit.viewLink[self.unitRefNum], False) else: unit = self.unitGroup.currentSortPos() self.enableButtons(False) self.scrollToCenter(unit) self.blockSignals(False) def replaceUnit(self): """Replace current unit in response to a selection change. """ selectList = self.selectedItems() if selectList: selection = selectList[-1] self.unitGroup.replaceCurrent(selection.unit) self.unitChanged.emit() # update unitEdit self.enableButtons(True) def enableButtons(self, enable=True): """Enable unit modification buttons for valid unit. """ for button in self.buttonList: button.setEnabled(enable) def scrollToCenter(self, unit): """Scroll so given unit is in the center of the viewport. """ unitItem = unit.viewLink[self.unitRefNum] index = self.indexOfTopLevelItem(unitItem) itemHeight = self.visualItemRect(unitItem).height() viewHeight = self.viewport().height() bottomIndex = index + viewHeight / (2 * itemHeight) bottomItem = self.topLevelItem(bottomIndex) if not bottomItem: bottomItem = self.topLevelItem(self.topLevelItemCount() - 1) self.scrollToItem(bottomItem, QtGui.QAbstractItemView.PositionAtBottom) def sizeHint(self): """Adjust width smaller. """ size = QtGui.QTreeWidget.sizeHint(self) size.setWidth(self.columnWidth(0) + self.columnWidth(1) + self.verticalScrollBar().sizeHint().width()) return size class UnitListViewItem(QtGui.QTreeWidgetItem): """Item in list view, references unit. """ def __init__(self, unit, unitRefNum, parent=None): QtGui.QTreeWidgetItem.__init__(self, parent) self.unit = unit unit.viewLink[unitRefNum] = self self.setText(0, unit.description()) self.setText(1, unit.typeName) self.setText(2, unit.comments[1]) ConvertAll/source/unitdata.py0000644000175000017500000001050212270342155015267 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # unitdata.py, reads unit data from file # # ConvertAll, a units conversion program # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import sys import os.path try: from __main__ import dataFilePath, lang except ImportError: dataFilePath = None lang = '' import unitatom class UnitDataError(Exception): """General exception for unit data problems. """ pass class UnitData(dict): """Reads unit data nad stores in a dictionary based on unit name. """ def __init__(self): dict.__init__(self) self.sortedKeys = [] self.typeList = [] def findDataFile(self): """Search for data file, return line list or None. """ modPath = os.path.abspath(sys.path[0]) if modPath.endswith('.zip'): # for py2exe modPath = os.path.dirname(modPath) pathList = [dataFilePath, os.path.join(modPath, '../data/'), modPath] fileList = ['units.dat'] if lang and lang != 'C': fileList[0:0] = ['units_{0}.dat'.format(lang), 'units_{0}.dat'.format(lang[:2])] for path in pathList: if path: for fileName in fileList: try: with open(os.path.join(path, fileName), 'r', encoding='utf-8') as f: lineList = f.readlines() return lineList except IOError: pass raise UnitDataError(_('Can not read "units.dat" file')) def readData(self): """Read all unit data from file, return number loaded. """ lines = self.findDataFile() for i in range(len(lines)): # join continuation lines delta = 1 while lines[i].rstrip().endswith('\\'): lines[i] = ''.join([lines[i].rstrip()[:-1], lines[i+delta]]) lines[i+delta] = '' delta += 1 units = [unitatom.UnitAtom(line) for line in lines if line.split('#', 1)[0].strip()] # remove comment lines typeText = '' for unit in units: # find & set headings if unit.name.startswith('['): typeText = unit.name[1:-1].strip() self.typeList.append(typeText) unit.typeName = typeText units = [unit for unit in units if unit.equiv] # keep valid units for unit in units: self[unit.name.lower().replace(' ', '')] = unit self.sortedKeys = list(self.keys()) self.sortedKeys.sort() if len(self.sortedKeys) < len(units): raise UnitDataError(_('Duplicate unit names found')) return len(units) def findPartialMatch(self, text): """Return first partially matching unit or None. """ text = text.lower().replace(' ', '') if not text: return None for name in self.sortedKeys: if name.startswith(text): return self[name] return None def findSortPos(self, text): """Return unit whose abbrev comes immediately after text. """ text = text.lower().replace(' ', '') for name in self.sortedKeys: if text <= name: return self[name] return self[self.sortedKeys[-1]] def filteredList(self, type='', srchStr=''): """Return list of units matching type and search string, if given. """ units = list(self.values()) if type: units = [unit for unit in units if unit.typeName == type] if srchStr.strip(): srchWords = [word.lower() for word in srchStr.split()] srchUnits = [] for unit in units: if unit.matchWords(srchWords): srchUnits.append(unit) units = srchUnits return units ConvertAll/source/cmdline.py0000644000175000017500000001627112454301425015101 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # cmdline.py, provides a class to read and execute command line arguments # # ConvertAll, a units conversion program # Copyright (C) 2015, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import sys import re import option import optiondefaults import unitdata import unitgroup usage = [_('Usage:'), '', ' convertall [{0}]'.format(_('qt-options')), '', _('-or- (non-GUI):'), ' convertall [{0}] [{1}] {2} [{3}]'.format(_('options'), _('number'), _('from_unit'), _('to_unit')), '', _('-or- (non-GUI):'), ' convertall -i [{0}]'.format(_('options')), '', _('Units with spaces must be "quoted"'), '', _('Options:'), ' -d, --decimals={0:6} {1}'.format(_('num'), _('set number of decimals to show')), ' -f, --fixed-decimals {0}'.format( _('show set number of decimals, even if zeros')), ' -s, --sci-notation {0}'.format( _('show results in scientific notation')), ' -e, --eng-notation {0}'.format( _('show results in engineering notation')), ' -h, --help {0}'.format( _('display this message and exit')), ' -i, --interactive {0}'.format( _('interactive command line mode (non-GUI)')), ' -q, --quiet {0}'.format( _('convert without further prompts')), ''] def parseArgs(opts, args): """Parse the command line and output conversion results. """ options = option.Option('convertall', 20) options.loadAll(optiondefaults.defaultList) quiet = False dataTestMode = False for opt, arg in opts: if opt in ('-h', '--help'): printUsage() return if opt in ('-d', '--decimals'): try: decimals = int(arg) if 0 <= decimals <= unitgroup.UnitGroup.maxDecPlcs: options.changeData('DecimalPlaces', arg, False) except ValueError: pass elif opt in ('-f', '--fixed-decimals'): options.changeData('Notation', 'fixed', False) elif opt in ('-s', '--sci-notation'): options.changeData('Notation', 'scientific', False) elif opt in ('-e', '--eng-notation'): options.changeData('Notation', 'engineering', False) elif opt in ('-q', '--quiet'): quiet = True elif opt in ('-t', '--test'): dataTestMode = True data = unitdata.UnitData() try: data.readData() except unitdata.UnitDataError as text: print('Error in unit data - {0}'.format(text)) sys.exit(1) if dataTestMode: unitDataTest(data, options) return numStr = '1.0' if args: numStr = args[0] try: float(numStr) del args[0] except (ValueError): numStr = '1.0' fromUnit = None try: fromUnit = getUnit(data, options, args.pop(0)) except IndexError: pass if not fromUnit and quiet: return toUnit = None try: toUnit = getUnit(data, options, args[0]) except IndexError: pass if not toUnit and quiet: return while True: while not fromUnit: text = _('Enter from unit -> ') fromText = input(text) if not fromText: return fromUnit = getUnit(data, options, fromText) while not toUnit: text = _('Enter to unit -> ') toText = input(text) if not toText: return toUnit = getUnit(data, options, toText) if fromUnit.categoryMatch(toUnit): badEntry = False while True: if not badEntry: newNumStr = fromUnit.convertStr(float(numStr), toUnit) print('{0} {1} = {2} {3}'.format(numStr, fromUnit.unitString(), newNumStr, toUnit.unitString())) if quiet: return badEntry = False text = _('Enter number, [n]ew, [r]everse or [q]uit -> ') rep = input(text) if not rep or rep[0] in ('q', 'Q'): return if rep[0] in ('r', 'R'): fromUnit, toUnit = toUnit, fromUnit elif rep[0] in ('n', 'N'): fromUnit = None toUnit = None numStr = '1.0' print() break else: try: float(rep) numStr = rep except ValueError: badEntry = True else: print(_('Units {0} and {1} are not compatible'). format(fromUnit.unitString(), toUnit.unitString())) if quiet: return fromUnit = None toUnit = None def getUnit(data, options, text): """Create unit from text, check unit is valid, return reduced unit or None. """ unit = unitgroup.UnitGroup(data, options) unit.update(text) if unit.groupValid(): unit.reduceGroup() return unit print(_('{0} is not a valid unit').format(text)) return None def printUsage(): """Print usage text. """ print('\n'.join(usage)) def unitDataTest(data, options): """Run through a test of all units for consistent definitions, print results, return True if all pass. """ badUnits = {} errorRegEx = re.compile(r'.*"(.*)"$') for unit in data.values(): if not unit.unitValid(): badUnits.setdefault(unit.name, []).append(unit.name) group = unitgroup.UnitGroup(data, options) group.replaceCurrent(unit) try: group.reduceGroup() except unitdata.UnitDataError as errorText: rootUnitName = errorRegEx.match(errorText).group(1) badUnits.setdefault(rootUnitName, []).append(unit.name) if not badUnits: print('All units pass tests') return True for key in sorted(badUnits.keys()): impacts = ', '.join(sorted(badUnits[key])) print('{0}\n Impacts: {1}\n'.format(key, impacts)) return False ConvertAll/source/convertdlg.py0000644000175000017500000004616512574422442015650 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # convertdlg.py, provides the main dialog and GUI interface # # ConvertAll, a units conversion program # Copyright (C) 2015, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import sys import os.path from PyQt4 import QtCore, QtGui try: from __main__ import __version__, __author__, helpFilePath, iconPath from __main__ import lang except ImportError: __version__ = __author__ = '??' helpFilePath = None iconPath = None lang = '' import unitdata from unitgroup import UnitGroup from option import Option import recentunits import unitedit import unitlistview import numedit from modbutton import ModButton import finddlg import icondict import optiondefaults import helpview import optiondlg class ConvertDlg(QtGui.QWidget): """Main dialog for ConvertAll program. """ unitData = unitdata.UnitData() def __init__(self, parent=None): QtGui.QWidget.__init__(self, parent) self.setWindowTitle('ConvertAll') modPath = os.path.abspath(sys.path[0]) if modPath.endswith('.zip'): # for py2exe modPath = os.path.dirname(modPath) iconPathList = [iconPath, os.path.join(modPath, 'icons/'), os.path.join(modPath, '../icons')] self.icons = icondict.IconDict() self.icons.addIconPath([path for path in iconPathList if path]) try: QtGui.QApplication.setWindowIcon(self.icons['convertall_med']) except KeyError: pass self.helpView = None self.findDlg = None self.option = Option('convertall', 20) self.option.loadAll(optiondefaults.defaultList) self.recentUnits = recentunits.RecentUnits(self.option) try: num = ConvertDlg.unitData.readData() except unitdata.UnitDataError as text: QtGui.QMessageBox.warning(self, 'ConvertAll', _('Error in unit data - {0}'). format(text)) sys.exit(1) try: print(_('{0} units loaded').format(num)) except UnicodeError: print('{0} units loaded'.format(num)) self.fromGroup = UnitGroup(ConvertDlg.unitData, self.option) self.toGroup = UnitGroup(ConvertDlg.unitData, self.option) self.origPal = QtGui.QApplication.palette() self.updateColors() self.textButtons = [] self.recentButtons = [] topLayout = QtGui.QHBoxLayout(self) # divide main, buttons mainLayout = QtGui.QVBoxLayout() topLayout.addLayout(mainLayout) unitLayout = QtGui.QHBoxLayout() # unit selection mainLayout.addLayout(unitLayout) fromBox = QtGui.QGroupBox(_('From Unit')) unitLayout.addWidget(fromBox) fromLayout = QtGui.QVBoxLayout(fromBox) fromLayout.setSpacing(3) self.fromUnitEdit = unitedit.UnitEdit(self.fromGroup) fromLayout.addWidget(self.fromUnitEdit) self.fromUnitEdit.setFocus() self.fromUnitListView = unitlistview.UnitListView(self.fromGroup, 0) fromLayout.addWidget(self.fromUnitListView) self.fromUnitEdit.currentChanged.connect(self.fromUnitListView. updateSelection) self.fromUnitListView.unitChanged.connect(self.fromUnitEdit.unitUpdate) self.fromUnitListView.setFocusProxy(self.fromUnitEdit) self.addButtons(self.fromGroup, self.fromUnitListView, fromLayout) toBox = QtGui.QGroupBox(_('To Unit')) unitLayout.addWidget(toBox) toLayout = QtGui.QVBoxLayout(toBox) toLayout.setSpacing(3) self.toUnitEdit = unitedit.UnitEdit(self.toGroup) toLayout.addWidget(self.toUnitEdit) self.toUnitListView = unitlistview.UnitListView(self.toGroup, 1) toLayout.addWidget(self.toUnitListView) self.toUnitEdit.currentChanged.connect(self.toUnitListView. updateSelection) self.toUnitListView.unitChanged.connect(self.toUnitEdit.unitUpdate) self.toUnitListView.setFocusProxy(self.toUnitEdit) self.addButtons(self.toGroup, self.toUnitListView, toLayout) self.showHideButtons() numberLayout = QtGui.QHBoxLayout() mainLayout.addLayout(numberLayout) statusLabel = QtGui.QLabel(_('Set units')) statusLabel.setFrameStyle(QtGui.QFrame.Panel | QtGui.QFrame.Sunken) mainLayout.addWidget(statusLabel) fromNumBox = QtGui.QGroupBox(_('No Unit Set')) numberLayout.addWidget(fromNumBox) fromNumLayout = QtGui.QVBoxLayout(fromNumBox) self.fromNumEdit = numedit.NumEdit(self.fromGroup, self.toGroup, fromNumBox, statusLabel, self.recentUnits, True) fromNumLayout.addWidget(self.fromNumEdit) self.fromUnitEdit.unitChanged.connect(self.fromNumEdit.unitUpdate) self.fromNumEdit.setEnabled(False) equalsLabel = QtGui.QLabel(' = ') equalsLabel.setFont(QtGui.QFont(self.font().family(), 30)) numberLayout.addWidget(equalsLabel) toNumBox = QtGui.QGroupBox(_('No Unit Set')) numberLayout.addWidget(toNumBox) toNumLayout = QtGui.QVBoxLayout(toNumBox) self.toNumEdit = numedit.NumEdit(self.toGroup, self.fromGroup, toNumBox, statusLabel, self.recentUnits, False) toNumLayout.addWidget(self.toNumEdit) self.toUnitEdit.unitChanged.connect(self.toNumEdit.unitUpdate) self.toNumEdit.setEnabled(False) self.fromNumEdit.convertNum.connect(self.toNumEdit.setNum) self.toNumEdit.convertNum.connect(self.fromNumEdit.setNum) self.fromNumEdit.convertNum.connect(self.setRecentAvail) self.toNumEdit.convertNum.connect(self.setRecentAvail) self.fromNumEdit.convertRqd.connect(self.toNumEdit.convert) self.toNumEdit.convertRqd.connect(self.fromNumEdit.convert) buttonLayout = QtGui.QVBoxLayout() # major buttons topLayout.addLayout(buttonLayout) closeButton = QtGui.QPushButton(_('&Close')) buttonLayout.addWidget(closeButton) closeButton.setFocusPolicy(QtCore.Qt.NoFocus) closeButton.clicked.connect(self.close) finderButton = QtGui.QPushButton(_('&Unit Finder...')) buttonLayout.addWidget(finderButton) finderButton.setFocusPolicy(QtCore.Qt.NoFocus) finderButton.clicked.connect(self.showFinder) optionsButton = QtGui.QPushButton(_('&Options...')) buttonLayout.addWidget(optionsButton) optionsButton.setFocusPolicy(QtCore.Qt.NoFocus) optionsButton.clicked.connect(self.changeOptions) helpButton = QtGui.QPushButton(_('&Help...')) buttonLayout.addWidget(helpButton) helpButton.setFocusPolicy(QtCore.Qt.NoFocus) helpButton.clicked.connect(self.help) aboutButton = QtGui.QPushButton(_('&About...')) buttonLayout.addWidget(aboutButton) aboutButton.setFocusPolicy(QtCore.Qt.NoFocus) aboutButton.clicked.connect(self.about) buttonLayout.addStretch() xSize = self.option.intData('MainDlgXSize', 0, 10000) ySize = self.option.intData('MainDlgYSize', 0, 10000) if xSize and ySize: self.resize(xSize, ySize) self.move(self.option.intData('MainDlgXPos', 0, 10000), self.option.intData('MainDlgYPos', 0, 10000)) if self.option.boolData('LoadLastUnit') and len(self.recentUnits) > 1: self.fromGroup.update(self.recentUnits[0]) self.fromUnitEdit.unitUpdate() self.fromUnitListView.updateSelection() self.toGroup.update(self.recentUnits[1]) self.toUnitEdit.unitUpdate() self.toUnitListView.updateSelection() self.fromNumEdit.setFocus() self.fromNumEdit.selectAll() if self.option.boolData('ShowStartupTip'): self.show() tipDialog = TipDialog(self.option, self) tipDialog.exec_() def addButtons(self, unitGroup, listView, upperLayout): """Add buttons to unit selector. """ buttonLayout = QtGui.QHBoxLayout() upperLayout.addLayout(buttonLayout) buttons = [] buttons.append(ModButton(unitGroup.addOper, 1, 'X')) buttons.append(ModButton(unitGroup.addOper, 0, '/')) buttons.append(ModButton(unitGroup.changeExp, 2, '^2')) buttons.append(ModButton(unitGroup.changeExp, 3, '^3')) for button in buttons: buttonLayout.addWidget(button) listView.buttonList = buttons[:] buttons.append(ModButton(unitGroup.clearUnit, None, _('Clear Unit'))) extraLayout = QtGui.QHBoxLayout() upperLayout.addLayout(extraLayout) extraLayout.addWidget(buttons[-1]) for but in buttons: but.stateChg.connect(listView.relayChange) but.setEnabled(False) self.textButtons.append(but) buttons[-1].setEnabled(True) recentButton = QtGui.QPushButton(_('Recent Unit')) recentButton.setFocusPolicy(QtCore.Qt.NoFocus) recentButton.unitGroup = unitGroup recentButton.clicked.connect(self.recentMenu) extraLayout.addWidget(recentButton) self.textButtons.append(recentButton) self.recentButtons.append(recentButton) self.setRecentAvail() def recentMenu(self): """Show a menu with recently used units. """ button = self.sender() menu = QtGui.QMenu() for unit in self.recentUnits: action = menu.addAction(unit) action.unitGroup = button.unitGroup menu.triggered.connect(self.insertRecent) menu.exec_(button.mapToGlobal(QtCore.QPoint(0, 0))) def setRecentAvail(self): """Enable or disable recent unit button. """ for button in self.recentButtons: button.setEnabled(len(self.recentUnits)) def insertRecent(self, action): """Insert the recent unit from the given action. """ action.unitGroup.update(action.text()) if action.unitGroup is self.fromGroup: self.fromUnitEdit.unitUpdate() self.fromUnitListView.updateSelection() else: self.toUnitEdit.unitUpdate() self.toUnitListView.updateSelection() def updateColors(self): """Adjust the colors to the current option settings. """ if self.option.boolData('UseDefaultColors'): pal = self.origPal else: pal = QtGui.QPalette() pal.setColor(QtGui.QPalette.Base, self.getOptionColor('Background')) pal.setColor(QtGui.QPalette.Text, self.getOptionColor('Foreground')) QtGui.QApplication.setPalette(pal) def showFinder(self): """Show dialog for searhing and filtering units. """ if not self.findDlg: self.findDlg = finddlg.FindDlg(self) self.findDlg.show() def changeOptions(self): """Show dialog for option changes. """ origBackground = self.getOptionColor('Background') origForeground = self.getOptionColor('Foreground') dlg = optiondlg.OptionDlg(self.option, self) dlg.startGroupBox(_('Result Precision')) optiondlg.OptionDlgInt(dlg, 'DecimalPlaces', _('Decimal places'), 0, UnitGroup.maxDecPlcs) dlg.endGroupBox() optiondlg.OptionDlgRadio(dlg, 'Notation', _('Result Display'), [('general', _('Use short representation')), ('fixed', _('Use fixed decimal places')), ('scientific', _('Use scientific notation')), ('engineering', _('Use engineering notation'))]) dlg.startGroupBox(_('Recent Units')) optiondlg.OptionDlgInt(dlg, 'RecentUnits', _('Number saved'), 2, 99) optiondlg.OptionDlgBool(dlg, 'LoadLastUnit', _('Load last units at startup')) dlg.startGroupBox(_('User Interface')) optiondlg.OptionDlgBool(dlg, 'ShowOpButtons', _('Show operator buttons')) optiondlg.OptionDlgBool(dlg, 'ShowStartupTip', _('Show tip at startup')) dlg.startGroupBox(_('Colors')) optiondlg.OptionDlgBool(dlg, 'UseDefaultColors', _('Use default system colors')) optiondlg.OptionDlgPush(dlg, _('Set background color'), self.backColor) optiondlg.OptionDlgPush(dlg, _('Set text color'), self.textColor) if dlg.exec_() == QtGui.QDialog.Accepted: self.option.writeChanges() self.recentUnits.updateQuantity() self.updateColors() self.showHideButtons() self.fromNumEdit.unitUpdate() self.toNumEdit.unitUpdate() else: self.setOptionColor('Background', origBackground) self.setOptionColor('Foreground', origForeground) def getOptionColor(self, rootName): """Return a color from option storage. """ return QtGui.QColor(self.option.intData(rootName + 'R', 0, 255), self.option.intData(rootName + 'G', 0, 255), self.option.intData(rootName + 'B', 0, 255)) def setOptionColor(self, rootName, color): """Store given color in options. """ self.option.changeData(rootName + 'R', repr(color.red()), True) self.option.changeData(rootName + 'G', repr(color.green()), True) self.option.changeData(rootName + 'B', repr(color.blue()), True) def backColor(self): """Allow user to set control background color. """ background = self.getOptionColor('Background') newColor = QtGui.QColorDialog.getColor(background, self) if newColor.isValid() and newColor != background: self.setOptionColor('Background', newColor) def textColor(self): """Allow user to set control text color. """ foreground = self.getOptionColor('Foreground') newColor = QtGui.QColorDialog.getColor(foreground, self) if newColor.isValid() and newColor != foreground: self.setOptionColor('Foreground', newColor) def showHideButtons(self): """Show or hide text modify buttons. """ visible = self.option.boolData('ShowOpButtons') for button in self.textButtons: if visible: button.show() else: button.hide() def findHelpFile(self): """Return the path to the help file. """ modPath = os.path.abspath(sys.path[0]) if modPath.endswith('.zip'): # for py2exe modPath = os.path.dirname(modPath) pathList = [helpFilePath, os.path.join(modPath, '../doc/'), modPath, os.path.join(modPath, 'doc/')] fileList = ['README.html'] if lang and lang != 'C': fileList[0:0] = ['README_{0}.html'.format(lang), 'README_{0}.html'.format(lang[:2])] for path in [path for path in pathList if path]: for fileName in fileList: fullPath = os.path.join(path, fileName) if os.access(fullPath, os.R_OK): return fullPath return '' def help(self): """View the ReadMe file. """ if not self.helpView: path = self.findHelpFile() if not path: QtGui.QMessageBox.warning(self, 'ConvertAll', _('Read Me file not found')) return self.helpView = helpview.HelpView(path, _('ConvertAll README File'), self.icons) self.helpView.show() def about(self): """Show about info. """ QtGui.QMessageBox.about(self, 'ConvertAll', _('ConvertAll Version {0}\nby {1}'). format(__version__, __author__)) def closeEvent(self, event): """Save window data on close. """ self.option.changeData('MainDlgXSize', self.width(), True) self.option.changeData('MainDlgYSize', self.height(), True) self.option.changeData('MainDlgXPos', self.x(), True) self.option.changeData('MainDlgYPos', self.y(), True) if self.findDlg: self.option.changeData('FinderXSize', self.findDlg.width(), True) self.option.changeData('FinderYSize', self.findDlg.height(), True) self.option.changeData('FinderXPos', self.findDlg.x(), True) self.option.changeData('FinderYPos', self.findDlg.y(), True) self.recentUnits.writeList() self.option.writeChanges() event.accept() class TipDialog(QtGui.QDialog): """Show a static usage tip at startup by default. """ def __init__(self, option, parent=None): QtGui.QDialog.__init__(self, parent) self.option = option self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint | QtCore.Qt.WindowSystemMenuHint) self.setWindowTitle(_('Convertall - Tip')) topLayout = QtGui.QVBoxLayout(self) self.setLayout(topLayout) box = QtGui.QGroupBox(_('Combining Units')) topLayout.addWidget(box) boxLayout = QtGui.QVBoxLayout(box) label = QtGui.QLabel(self) label.setTextFormat(QtCore.Qt.RichText) label.setText(_('

ConvertAll\'s strength is the ability to combine ' 'units:

' '
  • Enter "m/s" to get meters per second
  • ' '
  • Enter "ft*lbf" to get foot-pounds (torque)
  • ' '
  • Enter "in^2" to get square inches
  • ' '
  • Enter "m^3" to get cubic meters
  • ' '
  • or any other combinations you can imagine
  • ' '
')) boxLayout.addWidget(label) ctrlLayout = QtGui.QHBoxLayout() topLayout.addLayout(ctrlLayout) self.showCheck = QtGui.QCheckBox(_('Show this tip at startup'), self) self.showCheck.setChecked(True) ctrlLayout.addWidget(self.showCheck) ctrlLayout.addStretch() okButton = QtGui.QPushButton(_('&OK'), self) ctrlLayout.addWidget(okButton) okButton.clicked.connect(self.accept) def accept(self): """Called by dialog when OK button pressed. """ if not self.showCheck.isChecked(): self.option.changeData('ShowStartupTip', 'no', True) QtGui.QDialog.accept(self) ConvertAll/source/convertall.pro0000644000175000017500000000115212573413133016001 0ustar dougdougSOURCES = cmdline.py \ convertall.py \ convertdlg.py \ finddlg.py \ helpview.py \ icondict.py \ modbutton.py \ numedit.py \ optiondefaults.py \ optiondlg.py \ option.py \ setup.py \ unitatom.py \ unitdata.py \ unitedit.py \ unitgroup.py \ unitlistview.py TRANSLATIONS = convertall_es.ts \ convertall_de.ts \ convertall_fr.ts \ convertall_it.ts \ convertall_ru.ts \ convertall_xx.ts ConvertAll/source/finddlg.py0000644000175000017500000001767112271312645015105 0ustar dougdoug#!/usr/bin/env python3 #**************************************************************************** # finddlg.py, provides dialog interface for unit find dialog # # ConvertAll, a units conversion program # Copyright (C) 2014, Douglas W. Bell # # This is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License, either Version 2 or any later # version. This program is distributed in the hope that it will be useful, # but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. #***************************************************************************** import sys import os.path from PyQt4 import QtCore, QtGui import convertdlg class FindDlg(QtGui.QWidget): """Dialog for filtering and searching for units. """ def __init__(self, mainDlg, parent=None): QtGui.QWidget.__init__(self, parent) self.setAttribute(QtCore.Qt.WA_QuitOnClose, False) self.mainDlg = mainDlg self.setWindowTitle(_('Unit Finder')) self.currentType = '' self.currentSearch = '' mainLayout = QtGui.QVBoxLayout(self) upperLayout = QtGui.QHBoxLayout() mainLayout.addLayout(upperLayout) filterBox = QtGui.QGroupBox(_('&Filter Unit Types')) upperLayout.addWidget(filterBox) filterLayout = QtGui.QHBoxLayout(filterBox) self.filterCombo = QtGui.QComboBox() filterLayout.addWidget(self.filterCombo) searchBox = QtGui.QGroupBox(_('&Search String')) mainLayout.addWidget(searchBox) searchLayout = QtGui.QHBoxLayout(searchBox) self.searchEdit = QtGui.QLineEdit() searchLayout.addWidget(self.searchEdit) clearButton = QtGui.QPushButton(_('C&lear')) searchLayout.addWidget(clearButton) clearButton.setFocusPolicy(QtCore.Qt.NoFocus) self.unitListView = FindUnitListView() mainLayout.addWidget(self.unitListView) lowerLayout = QtGui.QHBoxLayout() mainLayout.addLayout(lowerLayout) fromBox = QtGui.QGroupBox(_('From Unit')) lowerLayout.addWidget(fromBox) fromLayout = QtGui.QVBoxLayout(fromBox) fromReplaceButton = QtGui.QPushButton(_('&Replace')) fromLayout.addWidget(fromReplaceButton) fromReplaceButton.clicked.connect(self.fromRepl) fromInsertButton = QtGui.QPushButton(_('&Insert')) fromLayout.addWidget(fromInsertButton) fromInsertButton.clicked.connect(self.fromIns) toBox = QtGui.QGroupBox(_('To Unit')) lowerLayout.addWidget(toBox) toLayout = QtGui.QVBoxLayout(toBox) toReplaceButton = QtGui.QPushButton(_('Replac&e')) toLayout.addWidget(toReplaceButton) toReplaceButton.clicked.connect(self.toRepl) toInsertButton = QtGui.QPushButton(_('Inser&t')) toLayout.addWidget(toInsertButton) toInsertButton.clicked.connect(self.toIns) self.buttonList = [fromReplaceButton, fromInsertButton, toReplaceButton, toInsertButton] closeButton = QtGui.QPushButton(_('&Close')) upperLayout.addWidget(closeButton) closeButton.clicked.connect(self.close) option = self.mainDlg.option xSize = option.intData('FinderXSize', 0, 10000) ySize = option.intData('FinderYSize', 0, 10000) if xSize and ySize: self.resize(xSize, ySize) self.move(option.intData('FinderXPos', 0, 10000), option.intData('FinderYPos', 0, 10000)) self.loadUnits() for col in range(3): self.unitListView.resizeColumnToContents(col) self.loadTypes() self.filterCombo.activated[str].connect(self.changeType) self.searchEdit.textChanged.connect(self.changeSearch) clearButton.clicked.connect(self.searchEdit.clear) self.unitListView.itemSelectionChanged.connect(self.updateCtrls) def loadUnits(self): """Load unit items. """ self.unitListView.clear() for unit in convertdlg.ConvertDlg.unitData.\ filteredList(self.currentType, self.currentSearch): FindUnitListItem(unit, self.unitListView) self.unitListView.sortItems(0, QtCore.Qt.AscendingOrder) if self.unitListView.topLevelItemCount() == 1: self.unitListView.setItemSelected(self.unitListView. topLevelItem(0), True) self.updateCtrls() def loadTypes(self): """Load combobox with type names. """ types = convertdlg.ConvertDlg.unitData.typeList[:] types.sort() self.filterCombo.clear() self.filterCombo.addItem(_('[All]')) prevName = '' for name in types: if name != prevName: self.filterCombo.addItem(name) prevName = name def updateCtrls(self): """Change active status of unit set buttons. """ item = self.unitListView.selectedItems() for button in self.buttonList: button.setEnabled(item != []) def changeType(self, newType): """Change current unit type setting. """ self.currentType = newType if self.currentType == _('[All]'): self.currentType = '' self.loadUnits() def changeSearch(self, newStr): """Update the search results based on a change to the text string. """ self.currentSearch = newStr self.loadUnits() def fromRepl(self): """Replace from unit with selected unit. """ item = self.unitListView.currentItem() if item: unit = item.unit self.mainDlg.fromGroup.clearUnit() self.mainDlg.fromGroup.replaceCurrent(unit) self.mainDlg.fromUnitEdit.unitUpdate() self.mainDlg.fromUnitListView.updateSelection() def fromIns(self): """Insert selected unit into from unit. """ item = self.unitListView.currentItem() if item: unit = item.unit self.mainDlg.fromGroup.replaceCurrent(unit) self.mainDlg.fromUnitEdit.unitUpdate() self.mainDlg.fromUnitListView.updateSelection() def toRepl(self): """Replace to unit with selected unit. """ item = self.unitListView.currentItem() if item: unit = item.unit self.mainDlg.toGroup.clearUnit() self.mainDlg.toGroup.replaceCurrent(unit) self.mainDlg.toUnitEdit.unitUpdate() self.mainDlg.toUnitListView.updateSelection() def toIns(self): """Insert selected unit into to unit. """ item = self.unitListView.currentItem() if item: unit = item.unit self.mainDlg.toGroup.replaceCurrent(unit) self.mainDlg.toUnitEdit.unitUpdate() self.mainDlg.toUnitListView.updateSelection() class FindUnitListView(QtGui.QTreeWidget): """ListView of units available. """ def __init__(self, parent=None): QtGui.QTreeWidget.__init__(self, parent) self.setRootIsDecorated(False) self.setColumnCount(3) self.setHeaderLabels([_('Unit Name'), _('Unit Type'), _('Comments')]) self.header().setStretchLastSection(False) self.setSortingEnabled(True) def sizeHint(self): """Adjust width smaller. """ size = QtGui.QTreeWidget.sizeHint(self) size.setWidth(self.columnWidth(0) + self.columnWidth(1) + self.columnWidth(2) + 10 + # fudge factor self.verticalScrollBar().sizeHint().width()) return size class FindUnitListItem(QtGui.QTreeWidgetItem): """Item in the find unit list view. """ def __init__(self, unit, parent=None): QtGui.QTreeWidgetItem.__init__(self, parent) self.unit = unit self.setText(0, unit.description()) self.setText(1, unit.typeName) self.setText(2, unit.comments[1]) ConvertAll/install.py0000755000175000017500000002543612573356151013652 0ustar dougdoug#!/usr/bin/env python3 """ **************************************************************************** install.py, Linux install script for ConvertAll Copyright (C) 2015, Douglas W. Bell This is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, either Version 2 or any later version. This program is distributed in the hope that it will be useful, but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. ***************************************************************************** """ import sys import os.path import getopt import shutil import compileall import py_compile import glob import re import subprocess prefixDir = '/usr/local' buildRoot = '/' progName = 'convertall' docDir = 'share/doc/{0}'.format(progName) iconDir = 'share/icons/{0}'.format(progName) def usage(exitCode=2): """Display usage info and exit. Arguments: exitCode -- the code to retuen when exiting. """ global prefixDir global buildRoot print('Usage:') print(' python install.py [-h] [-p dir] [-d dir] [-i dir] ' '[-b dir] [-s] [-x]') print('where:') print(' -h display this help message') print(' -p dir install prefix [default: {0}]'.format(prefixDir)) print(' -d dir documentaion dir [default: /{0}]' .format(docDir)) print(' -i dir icon dir [default: /{0}]'.format(iconDir)) print(' -b dir temporary build root for packagers [default: {0}]' .format(buildRoot)) print(' -s skip language translation files') print(' -x skip all dependency checks (risky)') sys.exit(exitCode) def cmpVersions(versionStr, reqdTuple): """Return True if point-sep values in versionStr are >= reqdTuple. Arguments: versionStr -- a string with point-separated version numbers reqdTuple -- a tuple of version integers for the minimum acceptable """ match = re.search(r'[0-9\.]+', versionStr) if not match: return False versionStr = match.group() versionList = [int(val) for val in versionStr.split('.') if val] reqdList = list(reqdTuple) while len(versionList) < len(reqdList): versionList.append(0) while len(reqdList) < len(versionList): reqdList.append(0) if versionList >= reqdList: return True return False def copyDir(srcDir, dstDir): """Copy all regular files from srcDir to dstDir. dstDir is created if necessary. Arguments: srcDir -- the source dir path dstDir -- the destination dir path """ try: if not os.path.isdir(dstDir): os.makedirs(dstDir) names = os.listdir(srcDir) for name in names: srcPath = os.path.join(srcDir, name) if os.path.isfile(srcPath): shutil.copy2(srcPath, os.path.join(dstDir, name)) except (IOError, OSError) as e: if str(e).find('Permission denied') >= 0: print('Error - must be root to install files') cleanSource() sys.exit(4) raise def createWrapper(execDir, execName): """Create a wrapper executable file for a python script in execDir. Arguments: execDir -- the path where the executable is placed execName -- the name for the executable file """ text = '#!/bin/sh\n\nexec {0} {1}/{2}.py "$@"'.format(sys.executable, execDir, execName) with open(execName, 'w') as f: f.write(text) os.chmod(execName, 0o755) def replaceLine(path, origLineStart, newLine): """Replaces lines with origLineStart with newLine and rewrites the file. Arguments: path -- the file to modify origLineStart -- the beginning of the line to be replaced newLine -- the replacement line """ with open(path, 'r') as f: lines = f.readlines() with open(path, 'w') as f: for line in lines: if line.startswith(origLineStart): f.write(newLine) else: f.write(line) def cleanSource(): """Remove any temporary files added to untarred dirs. """ for name in glob.glob(os.path.join('source', '*.py[co]')): os.remove(name) removeDir(os.path.join('source', '__pycache__')) global progName if os.path.isfile(progName): os.remove(progName) def removeDir(dir): """Remove dir and all files under it, ignore errors. Arguments: dir -- the directory to remove """ try: shutil.rmtree(dir, 1) except: # shouldn't be needed with ignore error param, but pass # some python versions have a bug def main(): """Main installer function. """ optLetters = 'hp:d:i:b:sx' try: opts, args = getopt.getopt(sys.argv[1:], optLetters) except getopt.GetoptError: usage(2) global prefixDir global docDir global iconDir global buildRoot global progName depCheck = True translated = True for opt, val in opts: if opt == '-h': usage(0) elif opt == '-p': prefixDir = os.path.abspath(val) elif opt == '-d': docDir = val elif opt == '-i': iconDir = val elif opt == '-b': buildRoot = val elif opt == '-s': translated = False elif opt == '-x': depCheck = False if not os.path.isfile('install.py'): print('Error - {0} files not found'.format(progName)) print('The directory containing "install.py" must be current') sys.exit(4) if (os.path.isdir('source') and not os.path.isfile('source/{0}.py'.format(progName))): print('Error - source files not found') print('Retry the extraction from the tar archive') sys.exit(4) if depCheck: print('Checking dependencies...') pyVersion = sys.version_info[:3] pyVersion = '.'.join([str(num) for num in pyVersion]) if cmpVersions(pyVersion, (3, 2)): print(' Python Version {0} -> OK'.format(pyVersion)) else: print(' Python Version {0} -> Sorry, 3.2 or higher is required' .format(pyVersion)) sys.exit(3) try: from PyQt4 import QtCore, QtGui except: print(' PyQt not found -> Sorry, PyQt 4.x is required' ' and must be built for Python 3') sys.exit(3) qtVersion = QtCore.qVersion() if cmpVersions(qtVersion, (4, 6)) and not qtVersion.startswith('5'): print(' Qt Version {0} -> OK'.format(qtVersion)) else: print(' Qt Version {0} -> Sorry, 4.6, 4.7 or 4.8 is required' .format(qtVersion)) sys.exit(3) pyqtVersion = QtCore.PYQT_VERSION_STR if (cmpVersions(pyqtVersion, (4, 8)) and not pyqtVersion.startswith('5')): print(' PyQt Version {0} -> OK'.format(pyqtVersion)) else: print(' PyQt Version {0} -> Sorry, 4.8 through 4.11 is required' .format(pyqtVersion)) sys.exit(3) pythonPrefixDir = os.path.join(prefixDir, 'share', progName) pythonBuildDir = os.path.join(buildRoot, pythonPrefixDir[1:]) if os.path.isdir('source'): compileall.compile_dir('source', ddir=os.path.join(prefixDir, 'source')) print('Installing files...') print(' Copying python files to {0}'.format(pythonBuildDir)) removeDir(pythonBuildDir) # remove old? copyDir('source', pythonBuildDir) if os.path.isdir('source/__pycache__'): copyDir('source/__pycache__', os.path.join(pythonBuildDir, '__pycache__')) if os.path.isdir('translations') and translated: translationDir = os.path.join(pythonBuildDir, 'translations') print(' Copying translation files to {0}'.format(translationDir)) copyDir('translations', translationDir) if os.path.isdir('doc'): docPrefixDir = docDir.replace('/', '') if not os.path.isabs(docPrefixDir): docPrefixDir = os.path.join(prefixDir, docPrefixDir) docBuildDir = os.path.join(buildRoot, docPrefixDir[1:]) print(' Copying documentation files to {0}'.format(docBuildDir)) copyDir('doc', docBuildDir) if not translated: for name in glob.glob(os.path.join(docBuildDir, '*_[a-z][a-z].html')): os.remove(name) # update help file location in main python script replaceLine(os.path.join(pythonBuildDir, '{0}.py'.format(progName)), 'helpFilePath = None', 'helpFilePath = \'{0}\' # modified by install script\n' .format(docPrefixDir)) if os.path.isdir('data'): dataPrefixDir = os.path.join(prefixDir, 'share', progName, 'data') dataBuildDir = os.path.join(buildRoot, dataPrefixDir[1:]) print(' Copying data files to {0}'.format(dataBuildDir)) removeDir(dataBuildDir) # remove old? copyDir('data', dataBuildDir) if not translated: for name in glob.glob(os.path.join(dataBuildDir, '*_[a-z][a-z].dat')): os.remove(name) # update data file location in main python script replaceLine(os.path.join(pythonBuildDir, '{0}.py'.format(progName)), 'dataFilePath = None', 'dataFilePath = \'{0}\' # modified by install script\n' .format(dataPrefixDir)) if os.path.isdir('icons'): iconPrefixDir = iconDir.replace('/', '') if not os.path.isabs(iconPrefixDir): iconPrefixDir = os.path.join(prefixDir, iconPrefixDir) iconBuildDir = os.path.join(buildRoot, iconPrefixDir[1:]) print(' Copying icon files to {0}'.format(iconBuildDir)) copyDir('icons', iconBuildDir) # update icon location in main python script replaceLine(os.path.join(pythonBuildDir, '{0}.py'.format(progName)), 'iconPath = None', 'iconPath = \'{0}\' # modified by install script\n' .format(iconPrefixDir)) if os.path.isdir('source'): createWrapper(pythonPrefixDir, progName) binBuildDir = os.path.join(buildRoot, prefixDir[1:], 'bin') print(' Copying executable file "{0}" to {1}' .format(progName, binBuildDir)) if not os.path.isdir(binBuildDir): os.makedirs(binBuildDir) shutil.copy2(progName, binBuildDir) cleanSource() print('Install complete.') if __name__ == '__main__': main() ConvertAll/translations/0000755000175000017500000000000012574423216014334 5ustar dougdougConvertAll/translations/qt_es.ts0000644000175000017500000051625512271615643016036 0ustar dougdoug PPDOptionsModel Name Nombre Value Q3Accel %1, %2 not defined La secuencia %1, %2 no está definida Ambiguous %1 not handled Secuencia ambigua %1 no tratada Q3DataTable True Verdadero False Falso Insert Insertar Update Actualizar Delete Borrar Q3FileDialog Copy or Move a File Copiar o mover un fichero Read: %1 Lectura: %1 Write: %1 Escritura: %1 Cancel Cancelar All Files (*) Todos los ficheros (*) Name Nombre Size Tamaño Type Tipo Date Fecha Attributes Atributos &OK &Aceptar Look &in: Buscar &en: File &name: &Nombre de fichero: File &type: &Tipo de fichero: Back Precedente (histórico) One directory up Ir al directorio superior Create New Folder Crear una nueva carpeta List View Vista de lista Detail View Vista detallada Preview File Info Información del fichero previsualizado Preview File Contents Contenido del fichero previsualizado Read-write Lectura-escritura Read-only Sólo lectura Write-only Sólo escritura Inaccessible Inaccesible Symlink to File Enlace simbólico a un fichero Symlink to Directory Enlace simbólico a un directorio Symlink to Special Enlace simbólico a un fichero especial File Fichero Dir Dir Special Fichero especial Open Abrir Save As Guardar como &Open &Abrir &Save &Guardar &Rename &Renombrar &Delete &Borrar R&eload R&ecargar Sort by &Name Ordenar por &nombre Sort by &Size Ordenar por &tamaño Sort by &Date Ordenar por &fecha &Unsorted &Sin ordenar Sort Ordenar Show &hidden files Mostrar los ficheros &ocultos the file el fichero the directory el directorio the symlink el enlace simbólico Delete %1 Borrar %1 <qt>Are you sure you wish to delete %1 "%2"?</qt> <qt>¿Seguro que desea borrar %1 «%2»?</qt> &Yes &Sí &No &No New Folder 1 Nueva carpeta 1 New Folder Nueva carpeta New Folder %1 Nueva carpeta %1 Find Directory Buscar en el directorio Directories Directorios Directory: Directorio: Error Error %1 File not found. Check path and filename. %1 Fichero no encontrado. Compruebe la ruta y el nombre del fichero. All Files (*.*) Todos los ficheros (*.*) Open Abrir Select a Directory Seleccionar un directorio Q3LocalFs Could not read directory %1 No se ha podido leer el directorio %1 Could not create directory %1 No se ha podido crear el directorio %1 Could not remove file or directory %1 No se ha podido borrar el fichero o directorio %1 Could not rename %1 to %2 No se ha podido renombrar %1 a %2 Could not open %1 No se ha podido abrir %1 Could not write %1 No se ha podido escribir %1 Q3MainWindow Line up Alinear Customize... Personalizar... Q3NetworkProtocol Operation stopped by the user Operación detenida por el usuario Q3ProgressDialog Cancel Cancelar Q3TabDialog OK Aceptar Apply Aplicar Help Ayuda Defaults Valores por omisión Cancel Cancelar Q3TextEdit &Undo &Deshacer &Redo &Rehacer Cu&t Cor&tar &Copy &Copiar &Paste &Pegar Clear Limpiar Select All Seleccionar todo Q3TitleBar System Restore up Minimize Minimizar Restore down Maximize Close Cerrar Contains commands to manipulate the window Puts a minimized back to normal Moves the window out of the way Puts a maximized window back to normal Makes the window full screen Closes the window Displays the name of the window and contains controls to manipulate it Q3ToolBar More... Más... Q3UrlOperator The protocol `%1' is not supported El protocolo «%1» no está contemplado The protocol `%1' does not support listing directories El protocolo «%1» no permite listar los ficheros de un directorio The protocol `%1' does not support creating new directories El protocolo «%1» no permite crear nuevos directorios The protocol `%1' does not support removing files or directories El protocolo «%1» no permite borrar ficheros o directorios The protocol `%1' does not support renaming files or directories El protocolo «%1» no permite renombrar ficheros o directorios The protocol `%1' does not support getting files El protocolo «%1» no permite recibir ficheros The protocol `%1' does not support putting files El protocolo «%1» no permite enviar ficheros The protocol `%1' does not support copying or moving files or directories El protocolo «%1» no permite copiar o mover ficheros o directorios (unknown) (desconocido) Q3Wizard &Cancel &Cancelar < &Back < &Anterior &Next > Siguie&nte > &Finish &Terminar &Help &Ayuda QAbstractSocket Host not found Equipo no encontrado Connection refused Conexión rechazada Socket operation timed out Operación socket expirada Socket is not connected QAbstractSpinBox &Step up &Aumentar Step &down Re&ducir QApplication Activate Activar Executable '%1' requires Qt %2, found Qt %3. El ejecutable «%1» requiere Qt %2 (se encontró Qt %3). Incompatible Qt Library Error Error: biblioteca Qt incompatible QT_LAYOUT_DIRECTION Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout. LTR Activates the program's main window Activa la ventana principal del programa QAxSelect Select ActiveX Control OK Aceptar &Cancel &Cancelar COM &Object: QCheckBox Uncheck Check Toggle QColorDialog Hu&e: &Tono: &Sat: &Saturación: &Val: &Brillo: &Red: &Rojo: &Green: &Verde: Bl&ue: Az&ul: A&lpha channel: Canal a&lfa: &Basic colors Colores &básicos &Custom colors Colores &personalizados &Define Custom Colors >> &Definir colores personalizados >> OK Aceptar Cancel Cancelar &Add to Custom Colors &Añadir a los colores personalizados Select color Selección de un color QComboBox Open Abrir QDB2Driver Unable to connect Unable to commit transaction Unable to rollback transaction Unable to set autocommit QDB2Result Unable to execute statement Unable to prepare statement Unable to bind variable Unable to fetch record %1 Unable to fetch next Unable to fetch first QDateTimeEdit AM AM am am PM PM pm pm QDialog What's This? ¿Qué es esto? QDialogButtonBox OK Aceptar Save Guardar Open Abrir Cancel Cancelar Close Cerrar Apply Aplicar Reset Help Ayuda Don't Save Discard &Yes &Sí Yes to &All Sí a &todo &No &No N&o to All N&o a todo Save All Abort Interrumpir Retry Reintentar Ignore Ignorar Restore Defaults Close without Saving QDialogButtons Yes to All Sí a todo OK to All Aceptar a todo No to All No a todo Cancel All Cancelar todo Yes OK Aceptar No No Cancel Cancelar Apply Aplicar Ignore Ignorar Retry Reintentar Abort Interrumpir Help Ayuda %1 to All %1 a todo QDirModel Name Nombre Size Tamaño Type Tipo Modified Modificado Kind Match OS X Finder Type All other platforms Tipo Date Modified QErrorMessage Debug Message: Mensaje de depuración: Warning: Aviso: Fatal Error: Error fatal: &Show this message again Mo&strar este mensaje de nuevo &OK &Aceptar QFileDialog All Files (*) Todos los ficheros (*) Directories Directorios &Open &Abrir &Save &Guardar Open Abrir Save Guardar %1 already exists. Do you want to replace it? El fichero %1 ya existe. ¿Desea reemplazarlo? %1 File not found. Please verify the correct file name was given. %1 Fichero no encontrado. Verifique que el nombre del fichero es correcto. My Computer Mi computadora Sort Ordenar &Rename &Renombrar &Delete &Borrar &Reload &Recargar Sort by &Name Ordenar por &nombre Sort by &Size Ordenar por &tamaño Sort by &Date Ordenar por &fecha &Unsorted &Sin ordenar Show &hidden files Mostrar los ficheros &ocultos Back Anterior Parent Directory Directorio superior Create New Folder Crear una nueva carpeta List View Vista de lista Detail View Vista detallada Look in: Buscar en: File name: Nombre de fichero: Files of type: Ficheros de tipo: Cancel Cancelar Directory: Directorio: File not found. Please verify the correct file name was given %1 Directory not found. Please verify the correct directory name was given. %1 Directorio no encontrado. Verique que el nombre del directorio es correcto. '%1' is write protected. Do you want to delete it anyway? Are sure you want to delete '%1'? Could not delete directory. All Files (*.*) Todos los ficheros (*.*) Save As Guardar como Open Abrir Select a Directory Seleccionar un directorio Drive Unidad File Fichero Unknown Desconocido QFileDialogPrivate %1 Directory not found. Please verify the correct directory name was given. %1 Directorio no encontrado. Verique que el nombre del directorio es correcto. QFontDialog &Font &Tipo de letra Font st&yle &Estilo del tipo de letra &Size &Tamaño Effects Efectos Stri&keout &Tachado &Underline S&ubrayado Sample Muestra Wr&iting System Sistema de escr&itura OK Aceptar Apply Aplicar Cancel Cancelar Close Cerrar Select Font Seleccionar un tipo de letra QFtp Not connected No conectado Host %1 not found Equipo %1 no encontrado Connection refused to host %1 Conexión rechazada al equipo %1 Connected to host %1 Conectado al equipo %1 Connection refused for data connection Conexión para conexión de datos rechazada Unknown error Error desconocido Connecting to host failed: %1 La conexión con el equipo ha fallado: %1 Login failed: %1 Identificación fallida: %1 Listing directory failed: %1 El listado del directorio ha fallado: %1 Changing directory failed: %1 Fallo del cambio de directorio: %1 Downloading file failed: %1 Fallo de la descarga del fichero: %1 Uploading file failed: %1 El envío del fichero ha fallado: %1 Removing file failed: %1 Eliminación de fichero fallida: %1 Creating directory failed: %1 Fallo de la creación de un directorio: %1 Removing directory failed: %1 Eliminación de directorio fallida: %1 Connection closed Conexión cerrada Host %1 found Equipo %1 encontrado Connection to %1 closed Conexión a %1 cerrada Host found Equipo encontrado Connected to host Conectado al equipo QHostInfo Unknown error Error desconocido QHostInfoAgent Host not found Equipo no encontrado Unknown address type Dirección de tipo desconocido Unknown error Error desconocido QHttp Unknown error Error desconocido Request aborted Solicitud interrumpida No server set to connect to No se ha indicado ningún servidor al que conectarse Wrong content length Longitud del contenido errónea Server closed connection unexpectedly El servidor cerró la conexión inesperadamente Connection refused Conexión rechazada Host %1 not found Equipo %1 no encontrado HTTP request failed Solicitud HTTP fallida Invalid HTTP response header Cabecera de respuesta HTTP no válida Invalid HTTP chunked body Fragmento HTTP no válido Host %1 found Equipo %1 encontrado Connected to host %1 Conectado al equipo %1 Connection to %1 closed Conexión a %1 cerrada Host found Equipo encontrado Connected to host Conectado al equipo Connection closed Conexión cerrada QIBaseDriver Error opening database Could not start transaction Unable to commit transaction Unable to rollback transaction QIBaseResult Unable to create BLOB Unable to write BLOB Unable to open BLOB Unable to read BLOB Could not find array Could not get array data Could not get query info Could not start transaction Unable to commit transaction Could not allocate statement Could not prepare statement Could not describe input statement Could not describe statement Unable to close statement Unable to execute query Could not fetch next item Could not get statement info QIODevice Permission denied Permiso denegado Too many open files Demasiados ficheros abiertos simultáneamente No such file or directory No hay ningún fichero o directorio con ese nombre No space left on device No queda espacio en el dispositivo Unknown error Error desconocido QInputContext XIM XIM XIM input method Método de entrada XIM Windows input method Método de entrada Windows Mac OS X input method Método de entrada Mac OS X QInputDialog OK Aceptar Cancel Cancelar QLibrary QLibrary::load_sys: Cannot load %1 (%2) QLibrary::unload_sys: Cannot unload %1 (%2) QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3) Could not mmap '%1': %2 Plugin verification data mismatch in '%1' Could not unmap '%1': %2 The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" Unknown error Error desconocido QLineEdit &Undo &Deshacer &Redo &Rehacer Cu&t Cor&tar &Copy &Copiar &Paste &Pegar Delete Borrar Select All Seleccionar todo QMYSQLDriver Unable to open database ' Unable to connect Unable to begin transaction Unable to commit transaction Unable to rollback transaction QMYSQLResult Unable to fetch data Unable to execute query Unable to store result Unable to prepare statement Unable to reset statement Unable to bind value Unable to execute statement Unable to bind outvalues Unable to store statement results QMenu Close Cerrar Open Abrir Execute QMenuBar About Config Preference Options Opciones Setting Setup Quit Exit About %1 About Qt Acerca de Qt Preferences Quit %1 QMessageBox Help Ayuda OK Aceptar Cancel Cancelar &Yes &Sí &No &No &Abort &Interrumpir &Retry &Reintentar &Ignore &Ignorar Yes to &All Sí a &todo N&o to All N&o a todo <h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <tt>http://www.trolltech.com/qt/</tt> for more information.</p> <h3>Acerca de Qt</h3>%1 <p>Qt es una caja de herramientas en C++ para el desarrollo de aplicaciones multiplataforma.</p> <p>Qt permite la portabilidad de un solo código fuente entre MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, GNU/Linux, y las principales versiones comerciales de Unix. Qt también está disponible para los sistemas embebidos bajo el nombre de Qtopia Core.</p> <p>Qt es un producto de Trolltech. Consulte <tt>http://www.trolltech.com/qt/</tt> para más información.</p> About Qt Acerca de Qt <p>This program uses Qt version %1.</p> <p>Este programa utiliza la versión %1 de Qt.</p> <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <tt>http://www.trolltech.com/company/model.html</tt> for an overview of Qt licensing.</p> <p>Este programa utiliza la edición Open Source de Qt versión %1.</p> <p>La edición Open Source de Qt está destinada al desarrollo de aplicaciones libres. Necesita una licencia comercial de Qt para desarrollar aplicaciones privativas (de código cerrado).</p> <p>Consulte en <tt>http://www.trolltech.com/company/model.html</tt> una explicación de las licencias de Qt.</p> <h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <a href="http://www.trolltech.com/qt/">www.trolltech.com/qt/</a> for more information.</p> Show Details... Hide Details... <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a> for an overview of Qt licensing.</p> QMultiInputContext Select IM QMultiInputContextPlugin Multiple input method switcher Multiple input method switcher that uses the context menu of the text widgets QNativeSocketEngine The remote host closed the connection El equpo remoto ha cerrado la conexión Network operation timed out La operación de red ha expirado Out of resources Insuficientes recursos Unsupported socket operation Operación socker no admitida Protocol type not supported Tipo de protocolo no admitido Invalid socket descriptor Descriptor de socket no válido Network unreachable Red inalcanzable Permission denied Permiso denegado Connection timed out Conexión expirada Connection refused Conexión rechazada The bound address is already in use La dirección enlazada ya está en uso The address is not available La dirección no está disponible The address is protected La dirección está protegida Datagram was to large to send El datagrama es demasiado grande para poder ser enviado Unable to send a message Imposible enviar un mensaje Unable to receive a message Imposible recibir un mensaje Unable to write Imposible escribir Network error Error de red Another socket is already listening on the same port Ya hay otro socket escuchando por el mismo puerto Unable to initialize non-blocking socket Imposible inicializar el socket no bloqueante Unable to initialize broadcast socket Imposible inicializar el socket de difusión Attempt to use IPv6 socket on a platform with no IPv6 support Intento de usar un socket IPv6 sobre una plataforma que no contempla IPv6 Host unreachable Datagram was too large to send Operation on non-socket Unknown error Error desconocido QOCIDriver Unable to logon Unable to initialize QOCIDriver QOCIResult Unable to bind column for batch execute Unable to execute batch statement Unable to goto next Unable to alloc statement Unable to prepare statement Unable to bind value Unable to execute select statement Unable to execute statement QODBCDriver Unable to connect Unable to connect - Driver doesn't support all needed functionality Unable to disable autocommit Unable to commit transaction Unable to rollback transaction Unable to enable autocommit QODBCResult QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration Unable to execute statement Unable to fetch next Unable to prepare statement Unable to bind variable QObject All Files (*) Todos los ficheros (*) All Files (*.*) Todos los ficheros (*.*) Open Abrir Save As Guardar como Open Abrir Select a Directory Seleccionar un directorio Drive Unidad File Fichero Directory Directorio Symbolic Link Enlace simbólico Unknown Desconocido False Falso True Verdadero Home Inicio QPSQLDriver Unable to connect Could not begin transaction Could not commit transaction Could not rollback transaction QPSQLResult Unable to create query QPluginLoader Unknown error Error desconocido QPrintDialog locally connected conectado localmente Aliases: %1 Alias: %1 unknown desconocido Unknown Location Ubicación desconocida Printer settings Configuración de la impresión Print in color if available Imprimir en color si es posible Print in grayscale Imprimir en tonos de gris Print destination Destino de la impresión Print to printer: Imprimir por la impresora: Print to file: Imprimir en un fichero: Browse... Examinar... Options Opciones Print all Imprimir todo Print selection Imprimir la selección Print range Imprimir intervalo From page: Desde la página: To page: Hasta la página: Print first page first Imprimir primero la primera página Print last page first Imprimir primero la última página Number of copies: Número de copias: Paper format Formato del papel Portrait Vertical Landscape Apaisado A0 (841 x 1189 mm) A0 (841 x 1189 mm) A1 (594 x 841 mm) A1 (594 x 841 mm) A2 (420 x 594 mm) A2 (420 x 594 mm) A3 (297 x 420 mm) A3 (297 x 420 mm) A4 (210 x 297 mm, 8.26 x 11.7 inches) A4 (210 x 297 mm, 8,26 x 11,7 pulgadas) A5 (148 x 210 mm) A5 (148 x 210 mm) A6 (105 x 148 mm) A6 (105 x 148 mm) A7 (74 x 105 mm) A7 (74 x 105 mm) A8 (52 x 74 mm) A8 (52 x 74 mm) A9 (37 x 52 mm) A9 (37 x 52 mm) B0 (1000 x 1414 mm) B0 (1000 x 1414 mm) B1 (707 x 1000 mm) B1 (707 x 1000 mm) B2 (500 x 707 mm) B2 (500 x 707 mm) B3 (353 x 500 mm) B3 (353 x 500 mm) B4 (250 x 353 mm) B4 (250 x 353 mm) B5 (176 x 250 mm, 6.93 x 9.84 inches) B5 (176 x 250 mm, 6,93 x 9,84 pulgadas) B6 (125 x 176 mm) B6 (125 x 176 mm) B7 (88 x 125 mm) B7 (88 x 125 mm) B8 (62 x 88 mm) B8 (62 x 88 mm) B9 (44 x 62 mm) B9 (44 x 62 mm) B10 (31 x 44 mm) B10 (31 x 44 mm) C5E (163 x 229 mm) C5E (163 x 229 mm) DLE (110 x 220 mm) DLE (110 x 220 mm) Executive (7.5 x 10 inches, 191 x 254 mm) Ejecutivo (7,5 x 10 pulgadas, 191 x 254 mm) Folio (210 x 330 mm) Folio (210 x 330 mm) Ledger (432 x 279 mm) Ledger (432 x 279 mm) Legal (8.5 x 14 inches, 216 x 356 mm) Legal (8,5 x 14 pulgadas, 216 x 356 mm) Letter (8.5 x 11 inches, 216 x 279 mm) Carta (8,5 x 11 pulgadas, 216 x 279 mm) Tabloid (279 x 432 mm) Tabloide (279 x 432 mm) US Common #10 Envelope (105 x 241 mm) Sobre US Common #10 (105 x 241 mm) PostScript Files (*.ps);;All Files (*) Ficheros PostScript (*.ps);;Todos los ficheros (*) OK Aceptar Cancel Cancelar Page size: Tamaño de página: Orientation: Orientación: Paper source: Fuente del papel: Print Impr Pant File Fichero Printer Print To File ... Print dialog Size: Properties Printer info: Browse Print to file Pages from to Selection Copies Collate Other Double side printing File %1 is not writable. Please choose a different file name. %1 already exists. Do you want to overwrite it? File exists <qt>Do you want to overwrite it?</qt> QPrintPropertiesDialog PPD Properties Save Guardar OK Aceptar QProcess Unknown error Error desconocido QProgressBar %1% %1% QProgressDialog Cancel Cancelar QPushButton Open Abrir QRadioButton Check QRegExp no error occurred no se ha producido ningún error disabled feature used se ha usado una característica no habilitada bad char class syntax sintaxis no válida para clase de caracteres bad lookahead syntax sintaxis no válida para lookahead bad repetition syntax sintaxis no válida para repetición invalid octal value valor octal no válido missing left delim falta el delimitador izquierdo unexpected end fin inesperado met internal limit se alcanzó el límite interno QSQLite2Driver Error to open database Unable to begin transaction Unable to commit transaction Unable to rollback Transaction QSQLite2Result Unable to fetch results Unable to execute statement QSQLiteDriver Error opening database Error closing database Unable to begin transaction Unable to commit transaction Unable to roll back transaction QSQLiteResult Unable to fetch row Unable to execute statement Unable to reset statement Unable to bind parameters Parameter count mismatch QScrollBar Scroll here Desplazar hasta aquí Left edge Borde izquierdo Top Principio Right edge Borde derecho Bottom Final Page left Una página a la izquierda Page up Una página hacia arriba Page right Una página a la derecha Page down Una página hacia abajo Scroll left Desplazar hacia la izquierda Scroll up Desplazar hacia arriba Scroll right Desplazar hacia la derecha Scroll down Desplazar hacia abajo Line up Alinear Position Line down QShortcut Space Espacio Esc Esc Tab Tab Backtab Tabulador hacia atrás Backspace Borrar Return Retorno Enter Intro Ins Ins Del Supr Pause Pausa Print Impr Pant SysReq PetSis Home Inicio End Fin Left Izquierda Up Arriba Right Derecha Down Abajo PgUp Re Pág PgDown Av Pág CapsLock Bloq Mayús NumLock Bloq Num ScrollLock Bloq Despl Menu Menú Help Ayuda Back Anterior Forward Siguiente Stop Detener Refresh Actualizar Volume Down Bajar el volumen Volume Mute Silenciar Volume Up Subir el volumen Bass Boost Potenciar los graves Bass Up Subir los graves Bass Down Bajar los graves Treble Up Subir los agudos Treble Down Bajar los agudos Media Play Reproducir el medio Media Stop Detener el medio Media Previous Medio anterior Media Next Siguiente medio Media Record Grabar medio Favorites Favoritos Search Búsqueda Standby Reposo Open URL Abrir URL Launch Mail Lanzar correo Launch Media Lanzar medio Launch (0) Lanzar (0) Launch (1) Lanzar (1) Launch (2) Lanzar (2) Launch (3) Lanzar (3) Launch (4) Lanzar (4) Launch (5) Lanzar (5) Launch (6) Lanzar (6) Launch (7) Lanzar (7) Launch (8) Lanzar (8) Launch (9) Lanzar (9) Launch (A) Lanzar (A) Launch (B) Lanzar (B) Launch (C) Lanzar (C) Launch (D) Lanzar (D) Launch (E) Lanzar (E) Launch (F) Lanzar (F) Print Screen Imprimir pantalla Page Up Retroceder página Page Down Avanzar página Caps Lock Bloqueo de mayúsculas Num Lock Bloq num Number Lock Bloqueo numérico Scroll Lock Bloqueo del desplazamiento Insert Insertar Delete Borrar Escape Escape System Request Petición del sistema Select Seleccionar Yes No No Context1 Contexto1 Context2 Contexto2 Context3 Contexto3 Context4 Contexto4 Call Llamar Hangup Descolgar Flip Voltear Ctrl Ctrl Shift May Alt Alt Meta Meta + + F%1 F%1 Home Page QSlider Page left Una página a la izquierda Page up Una página hacia arriba Position Page right Una página a la derecha Page down Una página hacia abajo QSocks5SocketEngine Socks5 timeout error connecting to socks server Error de expiracioń socks5 mientras se establecía una conexión al servidor socks QSpinBox More Less QSql Delete Borrar Delete this record? ¿Borrar este registro? Yes No No Insert Insertar Update Actualizar Save edits? ¿Guardar las modificaciones? Cancel Cancelar Confirm Confirmar Cancel your edits? ¿Cancelar sus modificaciones? QTDSDriver Unable to open connection Unable to use database QTabBar Scroll Left Scroll Right QTcpServer Socket operation unsupported Operación socket no admitida QTextControl &Undo &Deshacer &Redo &Rehacer Cu&t Cor&tar &Copy &Copiar Copy &Link Location &Paste &Pegar Delete Borrar Select All Seleccionar todo QTextEdit &Undo &Deshacer &Redo &Rehacer Cu&t Cor&tar &Copy &Copiar &Paste &Pegar Delete Borrar Select All Seleccionar todo QToolButton Press Open Abrir QUdpSocket This platform does not support IPv6 La plataforma no contempla IPv6 QUndoGroup Undo Redo QUndoModel <empty> QUndoStack Undo Redo QUnicodeControlCharacterMenu LRM Left-to-right mark LRM Left-to-right mark RLM Right-to-left mark RLM Right-to-left mark ZWJ Zero width joiner ZWJ Zero width joiner ZWNJ Zero width non-joiner ZWNJ Zero width non-joiner ZWSP Zero width space ZWSP Zero width space LRE Start of left-to-right embedding LRE Start of left-to-right embedding RLE Start of right-to-left embedding RLE Start of right-to-left embedding LRO Start of left-to-right override LRO Start of left-to-right override RLO Start of right-to-left override RLO Start of right-to-left override PDF Pop directional formatting PDF Pop directional formatting Insert Unicode control character Insertar carácter de control Unicode QWhatsThisAction What's This? ¿Qué es esto? QWidget * * QWorkspace &Restore &Restaurar &Move &Mover &Size &Tamaño Mi&nimize Mi&nimizar Ma&ximize Ma&ximizar &Close &Cerrar Stay on &Top Permanecer en &primer plano Sh&ade Sombre&ar %1 - [%2] %1 - [%2] Minimize Minimizar Restore Down Restaurar abajo Close Cerrar &Unshade Q&uitar sombra QXml no error occurred no se ha producido ningún error error triggered by consumer error debido al consumidor unexpected end of file fin de fichero inesperado more than one document type definition más de una definición de tipo de documento error occurred while parsing element se ha producido un error durante el análisis de un elemento tag mismatch etiqueta desequilibrada error occurred while parsing content se ha producido un error durante el análisis del contenido unexpected character carácter inesperado invalid name for processing instruction nombre de instrucción de tratamiento no válido version expected while reading the XML declaration se esperaba la versión al leer la declaración XML wrong value for standalone declaration valor erróneo para la declaración independiente encoding declaration or standalone declaration expected while reading the XML declaration se esperaba una declaración de codificación o declaración autónoma al leer la declaración XML standalone declaration expected while reading the XML declaration se esperaba una declaración independiente al leer la declaración XML error occurred while parsing document type definition se ha producido un error durante el análisis de la definición de tipo de documento letter is expected se esperaba una letra error occurred while parsing comment se ha producido un error durante el análisis de un comentario error occurred while parsing reference se ha producido un error durante el análisis de una referencia internal general entity reference not allowed in DTD no se permiten referencias a entidades internas generales en la DTD external parsed general entity reference not allowed in attribute value no se permiten referencias a entidades externas generales ya analizadas en el valor de un atributo external parsed general entity reference not allowed in DTD no se permiten referencias a entidades externas generales ya analizadas en la DTD unparsed entity reference in wrong context referencia a entidad no analizada en un contexto no válido recursive entities entidades recursivas error in the text declaration of an external entity error en la declaración de texto de una entidad externa ConvertAll/translations/convertall_es.ts0000644000175000017500000005477412573413453017566 0ustar dougdoug cmdline Usage: Uso: qt-options opciones-qt -or- (non-GUI): -o- (sin interfaz gráfica): options opciones number número from_unit desde_unidad to_unit a_unidad Units with spaces must be "quoted" Unidades con espacios deben encerrarse entre "comillas" Options: Opciones: num núm set number of decimals to show seleccione el número de decimales a mostrar show set number of decimals, even if zeros mostrar el número seleccionado de decimales, incluso si son ceros display this message and exit mostrar este mensaje y salir interactive command line mode (non-GUI) modo interactivo en línea de comandos (no interfaz) convert without further prompts convertir sin más interacción show results in scientific notation mostrar resultados en notación científica Enter from unit -> Ingresar unidad de origen -> Enter to unit -> Ingresar unidad de destino -> Enter number, [n]ew, [r]everse or [q]uit -> Ingresar número, [n]uevo, [i]nverso o [s]alir Units {0} and {1} are not compatible Las unidades no son compatibles ({0} vs. {1}) {0} is not a valid unit {0} no es una unidad válida show results in engineering notation convertdlg %d units loaded %d unidades leídas Error in unit data - %s Error en los datos de las unidades - %s From Unit Desde unidad To Unit Hacia unidad Set units Seleccionar unidades No Unit Set Ninguna unidad seleccionada &Close &Cerrar &Unit Finder... B&uscador de unidades... &Options... &Opciones... &Help... A&yuda... &About... &Acerca de... Clear Unit Limpiar unidad Result Display Pantalla de resultados Decimal places Lugares decimales Use scientific notation Utilizar notación científica Use fixed decimal places Utilizar un número fijo de decimales Buttons Botones Show operator buttons Mostrar los botones con los operadores Colors Colores Use default system colors Usar colores definidos por el sistema Set background color Seleccionar el color de fondo Set text color Seleccionar el color del texto Read Me file not found Archivo "léame" no encontrado ConvertAll README File Archivo LÉAME de ConvertAll ConvertAll Version %s by %s Versión de ConvertAll %s por %s Recent Unit Unidad reciente Recent Units Unidades recientes Number saved Número salvado Error in unit data - {0} Error en los datos de las unidades - {0} {0} units loaded {0} unidades leídas Load last units at startup Cargue últimas unidades en el arranque User Interface Interfaz de usuario Show tip at startup Mostrar toque en el arranque ConvertAll Version {0} by {1} Versión de ConvertAll {0} por {1} Convertall - Tip ConvertAll &OK &Aceptar Combining Units La combinación de Unidades <p>ConvertAll's strength is the ability to combine units:</p><ul><li>Enter "m/s" to get meters per second</li><li>Enter "ft*lbf" to get foot-pounds (torque)</li><li>Enter "in^2" to get square inches</li><li>Enter "m^3" to get cubic meters</li><li>or any other combinations you can imagine</li> <p>La fuerza de ConvertAll es la capacidad de combinar unidades:</p><ul><li>introduzca "m / s" para obtener metros por segundo</li<li>Enter "ft * lbf" para obtener libras-pie (par)</li><li>Enter "en ^ 2" para pulgadas cuadradas</li><li>Enter "m ^ 3 "para obtener metros cúbicos</li<li>o cualquier otra combinación que se pueda imaginar</li></ul> Show this tip at startup Mostrar toque en el arranque <p>ConvertAll's strength is the ability to combine units:</p><ul><li>Enter "m/s" to get meters per second</li><li>Enter "ft*lbf" to get foot-pounds (torque)</li><li>Enter "in^2" to get square inches</li><li>Enter "m^3" to get cubic meters</li><li>or any other combinations you can imagine</li></ul> <p>La fuerza de ConvertAll es la capacidad de combinar unidades:</p><ul><li>introduzca "m / s" para obtener metros por segundo</li<li>Enter "ft * lbf" para obtener libras-pie (par)</li><li>Enter "in ^ 2" para pulgadas cuadradas</li><li>Enter "m ^ 3 "para obtener metros cúbicos</li<li>o cualquier otra combinación que se pueda imaginar</li></ul> Result Precision Use short representation Use engineering notation finddlg Unit Finder Buscador de unidades &Filter Unit Types &Filtro de tipos de unidades &Search String Bu&scar cadena C&lear &Limpiar From Unit Desde unidad &Replace &Reemplazar &Insert &Insertar To Unit A unidad Replac&e Re&emplazar Inser&t Inser&tar &Close &Cerrar Unit Name Nombre de la unidad Unit Type Tipo de unidad Comments Comentarios [All] [Todo] helpview &Back &Retroceder &Forward &Avanzar &Home &Inicio Find Buscar Find &Previous &Buscar anterior Find &Next Buscar &siguiente Text string not found Cadena de texto que no se encuentra numedit Error in unit data - %s Error en los datos de las unidades - %s Converting... Convirtiendo... Units are not compatible (%s vs. %s) Las unidades no son compatibles (%s vs. %s) Set units Seleccionar unidades No Unit Set Ninguna unidad seleccionada Error in unit data - {0} Error en los datos de las unidades - {0} Units are not compatible ({0} vs. {1}) Las unidades no son compatibles ({0} vs. {1}) optiondlg &OK &Aceptar &Cancel &Cancelar Preferences Preferencias unitatom Bad equation for "%s" Ecuación equivocada para "%s" Bad equation for "{0}" Ecuación equivocada para "{0}" unitdata Can not read "units.dat" file No se puede leer el archivo "units.dat" Duplicate unit names found Se ha encontrado un nombre de unidad duplicado unitgroup Circular unit definition Definición de unidad circular Invalid conversion for "%s" Conversión no válida para "%s" Cannot combine non-linear units No pueden combinarse unidades no lineares Bad equation for %s Ecuación equivocada para "%s" Invalid conversion for "{0}" Conversión no válida para "{0}" Bad equation for {0} Ecuación equivocada para "{0}" unitlistview Unit Name Nombre de la unidad Unit Type Tipo de unidad Comments Comentarios ConvertAll/translations/convertall_es.qm0000644000175000017500000002403512573413601017533 0ustar dougdougEnter from unit -> cmdlineZIngresar nmero, [n]uevo, [i]nverso o [s]alir,Enter number, [n]ew, [r]everse or [q]uit -> cmdline:Ingresar unidad de destino ->Enter to unit -> cmdlineOpciones:Options:cmdlinenUnidades con espacios deben encerrarse entre "comillas""Units with spaces must be "quoted"cmdline^Las unidades no son compatibles ({0} vs. {1})$Units {0} and {1} are not compatiblecmdlineUso:Usage:cmdline:convertir sin ms interaccinconvert without further promptscmdline8mostrar este mensaje y salirdisplay this message and exitcmdlinedesde_unidad from_unitcmdlinefmodo interactivo en lnea de comandos (no interfaz)'interactive command line mode (non-GUI)cmdlinenmnumcmdline nmeronumbercmdlineopcionesoptionscmdlineopciones-qt qt-optionscmdlineVseleccione el nmero de decimales a mostrarset number of decimals to showcmdlineRmostrar resultados en notacin cientfica#show results in scientific notationcmdlinemostrar el nmero seleccionado de decimales, incluso si son ceros*show set number of decimals, even if zeroscmdlinea_unidadto_unitcmdline6{0} no es una unidad vlida{0} is not a valid unitcmdline&Acerca de... &About... convertdlg&Cerrar&Close convertdlgA&yuda...&Help... convertdlg&Aceptar&OK convertdlg&Opciones... &Options... convertdlg0B&uscador de unidades...&Unit Finder... convertdlg<p>La fuerza de ConvertAll es la capacidad de combinar unidades:</p><ul><li>introduzca "m / s" para obtener metros por segundo</li<li>Enter "ft * lbf" para obtener libras-pie (par)</li><li>Enter "in ^ 2" para pulgadas cuadradas</li><li>Enter "m ^ 3 "para obtener metros cbicos</li<li>o cualquier otra combinacin que se pueda imaginar</li></ul>*

ConvertAll's strength is the ability to combine units:

  • Enter "m/s" to get meters per second
  • Enter "ft*lbf" to get foot-pounds (torque)
  • Enter "in^2" to get square inches
  • Enter "m^3" to get cubic meters
  • or any other combinations you can imagine
 convertdlgLimpiar unidad Clear Unit convertdlgColoresColors convertdlg4La combinacin de UnidadesCombining Units convertdlg6Archivo LAME de ConvertAllConvertAll README File convertdlgBVersin de ConvertAll {0} por {1}ConvertAll Version {0} by {1} convertdlgConvertAllConvertall - Tip convertdlg"Lugares decimalesDecimal places convertdlgPError en los datos de las unidades - {0}Error in unit data - {0} convertdlgDesde unidad From Unit convertdlgLCargue ltimas unidades en el arranqueLoad last units at startup convertdlg6Ninguna unidad seleccionada No Unit Set convertdlgNmero salvado Number saved convertdlg:Archivo "lame" no encontradoRead Me file not found convertdlgUnidad reciente Recent Unit convertdlg$Unidades recientes Recent Units convertdlg,Pantalla de resultadosResult Display convertdlg:Seleccionar el color de fondoSet background color convertdlg<Seleccionar el color del textoSet text color convertdlg(Seleccionar unidades Set units convertdlgLMostrar los botones con los operadoresShow operator buttons convertdlg8Mostrar toque en el arranqueShow this tip at startup convertdlg8Mostrar toque en el arranqueShow tip at startup convertdlgHacia unidadTo Unit convertdlgJUsar colores definidos por el sistemaUse default system colors convertdlgHUtilizar un nmero fijo de decimalesUse fixed decimal places convertdlg8Utilizar notacin cientficaUse scientific notation convertdlg&Interfaz de usuarioUser Interface convertdlg&{0} unidades ledas{0} units loaded convertdlg&Cerrar&Closefinddlg8&Filtro de tipos de unidades&Filter Unit Typesfinddlg&Insertar&Insertfinddlg&Reemplazar&ReplacefinddlgBu&scar cadena&Search Stringfinddlg&LimpiarC&learfinddlgComentariosCommentsfinddlgDesde unidad From UnitfinddlgInser&tarInser&tfinddlgRe&emplazarReplac&efinddlgA unidadTo Unitfinddlg(Buscador de unidades Unit Finderfinddlg&Nombre de la unidad Unit NamefinddlgTipo de unidad Unit Typefinddlg [Todo][All]finddlg&Retroceder&Backhelpview&Avanzar&Forwardhelpview&Inicio&Homehelpview BuscarFindhelpview"Buscar &siguiente Find &Nexthelpview &Buscar anteriorFind &PrevioushelpviewFCadena de texto que no se encuentraText string not foundhelpviewConvirtiendo... Converting...numeditPError en los datos de las unidades - {0}Error in unit data - {0}numedit6Ninguna unidad seleccionada No Unit Setnumedit(Seleccionar unidades Set unitsnumedit^Las unidades no son compatibles ({0} vs. {1})(Units are not compatible ({0} vs. {1})numedit&Cancelar&Cancel optiondlg&Aceptar&OK optiondlgPreferencias Preferences optiondlg<Ecuacin equivocada para "{0}"Bad equation for "{0}"unitatomNNo se puede leer el archivo "units.dat"Can not read "units.dat" fileunitdata\Se ha encontrado un nombre de unidad duplicadoDuplicate unit names foundunitdata<Ecuacin equivocada para "{0}"Bad equation for {0} unitgroupRNo pueden combinarse unidades no linearesCannot combine non-linear units unitgroup:Definicin de unidad circularCircular unit definition unitgroup>Conversin no vlida para "{0}"Invalid conversion for "{0}" unitgroupComentariosComments unitlistview&Nombre de la unidad Unit Name unitlistviewTipo de unidad Unit Type unitlistviewConvertAll/translations/convertall_de.qm0000644000175000017500000002364112573413601017516 0ustar dougdougH Rmt88 %tR1~`8N xss966Yp; x bhx%A]+6-!5 #P(#_S!I=Q[SLSLy}/z / 7 b#G/6WCC#{#|)s|)s}$MCdh\8ZaI` A'acc%%[ l[~ yL4 9 ^S  u " I V & Tm T Vt 2 W ” [w rpE Js   G"* i$: m~ ' R ^3ui$"oder (nicht GUI):-or- (non-GUI):cmdline6Ausgangseinheit angeben -> Enter from unit -> cmdlinefZahl eingeben, [n]eu, umgekeh[r]t, [q]uittieren -> ,Enter number, [n]ew, [r]everse or [q]uit -> cmdline.Zieleinheit angeben -> Enter to unit -> cmdlineOptionen:Options:cmdlinedEinheiten mit Leerzeichen mssen "gequotet" werden"Units with spaces must be "quoted"cmdline\Einheiten sind nicht kompatibel ({0} bzw. {1})$Units {0} and {1} are not compatiblecmdlineAufruf:Usage:cmdlineDOhne weitere Eingaben konvertierenconvert without further promptscmdline@Diesen Text anzeigen und beendendisplay this message and exitcmdlineAusgangseinheit from_unitcmdlineVInteraktiver Kommandozeilenmodus (ohne GUI)'interactive command line mode (non-GUI)cmdlinezahlnumcmdlineZahlnumbercmdlineOptionenoptionscmdlineQt-Optionen qt-optionscmdlineJAnzahl der Nachkommastellen festlegenset number of decimals to showcmdlinehErgebnis in wissenschaftlicher Schreibweise anzeigen#show results in scientific notationcmdlinevDie angegebene Anzahl Dezimalstellen auch fr Null anzeigen*show set number of decimals, even if zeroscmdlineZieleinheitto_unitcmdline:{0} ist keine gltige Einheit{0} is not a valid unitcmdline&ber... &About... convertdlgS&chlieen&Close convertdlg&Hilfe...&Help... convertdlg&OK&OK convertdlg&Optionen... &Options... convertdlg$Einheit s&uchen...&Unit Finder... convertdlg2<p>Die Strke von ConvertAll ist die Fhigkeit, Einheiten zu kombinieren:</p><ul><li>Geben Sie "m / s" ein, um Meter pro Sekunde zu bekommen</li><li>Geben Sie "ft lbf" ein, um Fu-Pfund (Drehmoment) zu bekommen<li><li>Geben Sie "in ^ 2" ein, um Quadratzoll zu bekommen</li><li>Geben Sie "m ^ 3 " ein, um Kubikmeter zu bekommen</li><li>oder jede andere Kombinationen, die Sie sich vorstellen knnen</li></ul>*

ConvertAll's strength is the ability to combine units:

  • Enter "m/s" to get meters per second
  • Enter "ft*lbf" to get foot-pounds (torque)
  • Enter "in^2" to get square inches
  • Enter "m^3" to get cubic meters
  • or any other combinations you can imagine
 convertdlgEinheit lschen Clear Unit convertdlg FarbenColors convertdlg:Die Kombination von EinheitenCombining Units convertdlg.ConvertAll-README-DateiConvertAll README File convertdlg<ConvertAll Version {0} von {1}ConvertAll Version {0} by {1} convertdlg(Convertall - HinweisConvertall - Tip convertdlgDezimalstellenDecimal places convertdlg<Fehler in Einheitendaten - {0}Error in unit data - {0} convertdlgAusgangseinheit From Unit convertdlgLLaden der letzten Einheiten beim StartLoad last units at startup convertdlg.Keine Einheit angegeben No Unit Set convertdlg&Gespeicherte Anzahl Number saved convertdlg6README-Datei nicht gefundenRead Me file not found convertdlg0Zuletzt benutzte Einheit Recent Unit convertdlg4Zuletzt benutzte Einheiten Recent Units convertdlg Ergebnis-AusgabeResult Display convertdlg.Hintergrundfarbe setzenSet background color convertdlg Textfarbe setzenSet text color convertdlgEinheit angeben Set units convertdlgXSchaltflchen fr Rechenoperationen anzeigenShow operator buttons convertdlg>Zeige diesen Hinweis beim StartShow this tip at startup convertdlg2Zeige Hinweise beim StartShow tip at startup convertdlgZieleinheitTo Unit convertdlg&Systemfarben nutzenUse default system colors convertdlg6Festkommadarstellung nutzenUse fixed decimal places convertdlgHWissenschaftliche Darstellung nutzenUse scientific notation convertdlgUser InterfaceUser Interface convertdlg*{0} Einheiten geladen{0} units loaded convertdlgS&chlieen&Closefinddlg.Einheitentypen &filtern&Filter Unit TypesfinddlgE&infgen&Insertfinddlg&Ersetzen&Replacefinddlg&Suchtext&Search Stringfinddlg&LschenC&learfinddlgKommentareCommentsfinddlgAusgangseinheit From UnitfinddlgEin&fgenInser&tfinddlgE&rsetzenReplac&efinddlgZieleinheitTo UnitfinddlgEinheitensuche Unit FinderfinddlgEinheitenname Unit NamefinddlgEinheitentyp Unit Typefinddlg [Alle][All]finddlg&Zurck&Backhelpview&Weiter&ForwardhelpviewZum &Anfang&Homehelpview SuchenFindhelpview &Vorwrts Suchen Find &Nexthelpview"&Rckwrts SuchenFind &Previoushelpview*String nicht gefundenText string not foundhelpviewKonvertiere... Converting...numedit<Fehler in Einheitendaten - {0}Error in unit data - {0}numedit.Keine Einheit angegeben No Unit Setnumedit"Einheiten angeben Set unitsnumedit\Einheiten sind nicht kompatibel ({0} bzw. {1})(Units are not compatible ({0} vs. {1})numedit&Abbrechen&Cancel optiondlg&OK&OK optiondlg Voreinstellungen Preferences optiondlg:Ungltige Gleichung fr "{0}"Bad equation for "{0}"unitatomDKann Datei "units.dat" nicht lesenCan not read "units.dat" fileunitdataBEinheitennamen mehrfach vorhandenDuplicate unit names foundunitdata6Ungltige Gleichung fr {0}Bad equation for {0} unitgroup\Kann keine nichtlinearen Einheiten kombinierenCannot combine non-linear units unitgroupNEinheitendefinition enthlt SelbstbezugCircular unit definition unitgroup<Ungltige Umwandlung fr "{0}"Invalid conversion for "{0}" unitgroupKommentareComments unitlistviewEinheitenname Unit Name unitlistviewEinheitentyp Unit Type unitlistviewConvertAll/translations/convertall_ru.ts0000600000175000017500000005703412573702215017562 0ustar dougdoug cmdline Usage: Использование: qt-options qt-параметры -or- (non-GUI): -или- (без-GUI): options параметры number число from_unit из_величины to_unit в_величину Units with spaces must be "quoted" Величину с пробелами необходимо взять в «кавычки» Options: Параметры: num число set number of decimals to show задайте количество знаков после запятой для отображения show set number of decimals, even if zeros показывать заданное количество знаков после запятой, даже если нули display this message and exit показать это сообщение и выйти interactive command line mode (non-GUI) режим интерактивной командной строки (без-GUI) convert without further prompts конвертировать без дальнейших запросов show results in scientific notation Показывать результат в научном представлении Enter from unit -> Введите единицу измерения из которой конвертировать -> Enter to unit -> Введите единицу измерения в которую конвертировать -> Enter number, [n]ew, [r]everse or [q]uit -> Введите значение для конвертиции, [n]-новый, [r]-перевернуть или [q]-выход -> show results in engineering notation Показывать результат в инженерном представлении Units {0} and {1} are not compatible Величина {0} и {1} несовместимы {0} is not a valid unit {0} не верная величина convertdlg %d units loaded %d величин загружено Error in unit data - %s Ошибка в данных величины- %s From Unit Из величины To Unit В величину Set units Задайте величины No Unit Set Величина не установлена &Close &Закрыть &Unit Finder... &Поиск величины... &Options... &Настройки... &Help... &Справка... &About... &О себе... Clear Unit Очистить величину Result Display Отображение результата Result Precision Представление результата Decimal places Знаков после запятой Use short representation Короткое представление Use scientific notation Научное представление Use fixed decimal places Фиксированное количество знаков Use engineering notation Инженерное представление Load last units at startup Загружать последюю использованную величну при запуcке User Interface Пользовательский интерфейс Buttons Кнопки Show operator buttons Показывать кнопки операторов (Х, /, ^2, ^3) Show tip at startup Показывать советы при запуске Colors Цвета Use default system colors Использовать системные цвета по умолчанию Set background color Установить цвет фона Set text color Установить цвет текста Read Me file not found Файл README не найден ConvertAll README File ConvertAll README файл ConvertAll Version %s by %s ConvertAll версия %s от %s Recent Unit Недавняя величина Recent Units Недавнии величины Number saved Количество сохраненных Error in unit data - {0} Ошибка в данных величины - {0} {0} units loaded {0} величины загружены ConvertAll Version {0} by {1} ConvertAll версия {0} от {1} Convertall - Tip Convertall - Совет Combining Units Комбинирование величин <p>ConvertAll's strength is the ability to combine units:</p><ul><li>Enter "m/s" to get meters per second</li><li>Enter "ft*lbf" to get foot-pounds (torque)</li><li>Enter "in^2" to get square inches</li><li>Enter "m^3" to get cubic meters</li><li>or any other combinations you can imagine</li></ul> <p>Настоящая сила ConvertAll заключается в возможности комбинирования нескольких величин:</p><ul><li>Введите "m/s", чтобы получить метры в секунду</li><li>Введите "ft*lbf", чтобы получить foot-pounds (torque)</li><li>Введите "in^2", чтобы получить дюймы в квадрате</li><li>Введите "m^3", чтобы получить метры в кубе</li><li>или любую другую комбинацию которую можете придумать</li></ul> Show this tip at startup Показывать советы при запуске &OK &Да finddlg Unit Finder Поиск величины &Filter Unit Types &Фильтр по типу величины &Search String &Строка поиска C&lear &Очистить From Unit Из величины &Replace За&менить &Insert &Вставить To Unit В величину Replac&e Замен&ить Inser&t Вставит&ь &Close &Закрыть Unit Name Имя величины Unit Type Тип величины Comments Комментарии [All] [Все] helpview &Back &Назад &Forward &Вперёд &Home &Домой Find Найти Find &Previous Найти &Предыдущий Find &Next Найти &Следующий Text string not found Текстовая строка не найдена numedit Error in unit data - %s Ошибка в данных величины- %s Converting... Конвертирование... Units are not compatible (%s vs. %s) Величины несовместимы (%s и %s) Set units Задайте величины No Unit Set Величина не установлена Error in unit data - {0} Ошибка в данных величины - {0} Units are not compatible ({0} vs. {1}) Величины несовместимы ({0} и. {1}) optiondlg &OK &Да &Cancel О&тмена Preferences Настройки unitatom Bad equation for "%s" Неверное выражение для «%s» Bad equation for "{0}" Неверное выражение для «{0}» unitdata Can not read "units.dat" file Не могу прочитать файл «units.dat» Duplicate unit names found Найдено дублирование имён величин unitgroup Circular unit definition Цикличное определение величины Invalid conversion for "%s" Неверная конвертация для «%s» Cannot combine non-linear units Невозможно комбинировать нелинейные величины Bad equation for %s Неверное выражение для %s Invalid conversion for "{0}" Неверная конвертация для «{0}» Bad equation for {0} Неверное выражение для {0} unitlistview Unit Name Имя величины Unit Type Тип величины Comments Комментарии ConvertAll/translations/qt_fr.qm0000644000175000017500000010026312271615643016011 0ustar dougdouglD J$P$ `( ^ ֈ7! n!,! !&;y!,!T!&H!/!IxS!YM!YM"h^"Mi"cssc"w"##Mۊ#SN#g]#sI#I#I#I#I$I$EI$iI$I$n$I$Y$i%y%%8%R%l%%%I%%&&"&<&VuD&puD&o&,&,&,'%,'K,'l'ɘe'5$'fR'N'( c(,(^(Pq(V)*)>)b) )))%C)?")KN)M)R*]*]*/k*5y^*M{y*S*}G%*ǥ**+*t*t+{y+2r+\++%+C-+5+ƨ+ƨ,˾,2ҝz,8է?,^f,~b,o- !-N+3-T/-Z6 -G-LAU-U-U.$Z.BZ.ZZ.rZ.]k*.^n.e/i/Fi/krg/y;/}u/}w/}w/00dt0t0.0.0P0D1+t1t1t2_ 27F2Qʢ2Wʢ2ld2rd2d2d2592֣22U3 B35w3a 3g23m63D3K4U|4Aar4Gp4Mt4s}wZ4}$4}$4Z5K<55"5J 5P/5zE5@55u6T6Vi~6~65kE7XU 7FbD7pgA7i$7x1 7z*27d7U858z8"҉8Dm8Jn8v8O~8C8ʴ58Ԅ8D9Nd9F5:>Y:DI:JAs: : }$: qe: ڤ: E;6 E;M Ac;S Ac; 35; K!?<( bb<. b`<~ i3< la=D |=f t= t= > ># > > >? ? ?- ?D K?J ?P %'? ? @ @ )@ */@ 7u@ =@ BA( T^Ax ]A `A `A c(A dA eB eBD f1Bh gB gnB k,CB rD"Cf xC ~C C 9D8 IDZ ID} ;D D D JD %pD ,E ,E3 EM ˔Ea PEy E E 68E :FD f FX f F 4F sF sF AAG Gd m,Gj #-tG 0NH E9H E9H LH Mc\I SI3 VI9 ]$I f)I f)I io>J m`Jj wJp 5TJ HJ HJ $J .@J K iKM Ku K K JL JL3 t.LK kLQ ӇLW L] ̺Lw -DL kL U)L <L 0M  M  M6 MX xHM^ .M 7FM >M >N >NG >N~ >N >N DTO IOP RVOV RVOj S.O~ SO YO [O j7oP pPt .P BP P TP TQ TQ TQ0 Q6 Q< QB )dQ Q .R< .RQ .Rh .R aR yR R R tR :bS+ ʜSo DSu  rS{ +>T' 0ETI ;ɾT PtT ^+dT feU? gUa iFCU iU uU wV wV2 w}VR w}V V V ^W RW oWB XWH DW| t5W W )X XNTXTgTXZpSX*X/EXI_XXRuY.[ Yza.YvɅYy$Z~Z2ZSZBZ[[Nݖ[[y[ [ \"#\;$U\A%4\-v\0i)\0\1c\2wT])D]IH]Jd^L$.^Ia^c5_UyC_w{~a_```;`vN`kya>JafPat2aabb,ib2*+AMOK Q3TabDialogOK QAxSelectOK QColorDialogOKQDialogButtonBoxOK QMessageBoxOK QPrintDialogOKPMNon QShortcutNonHautampm%1 %&OK Q3FileDialog&OK&Non Q3FileDialog&NonAltF%1 SupprDossierFin chap InserTabEn hautXIMOui QShortcutOuiErreur fatale:&Oui Q3FileDialog&Oui,Prcdent (historique) Q3FileDialog,Prcdent (historique) QFileDialog,Prcdent (historique)AppelerCo&uper Q3TextEditCo&uper QLineEditCo&uperDateCtrlBasFichier Q3FileDialogFichier QFileDialogFichierRetournerAide Q3TabDialogAideQDialogButtonBoxAide QMessageBoxAide Dbut GaucheMenuMtaNomPPDOptionsModelNom Q3FileDialogNom Ouvrir Q3FileDialog Ouvrir QComboBox OuvrirQDialogButtonBox Ouvrir QFileDialog OuvrirQMenu Ouvrir QPushButton OuvrirPage prc QUndoGroupEnregistrerQDialogButtonBoxEnregistrer QFileDialogEnregistrer Taille Q3FileDialog TailleTri Q3FileDialogTriStopVrai Q3DataTableVraiType QUndoGroup"A6 (105 x 148 mm)Cop&ier Q3TextEditCop&ier QLineEditCop&ier&Police &Aide&Dplacer&Ouvrir Q3FileDialog&Ouvrir&Rouge : A&nnuler Annuler Q3TextEdit A&nnuler Annuler QLineEdit A&nnuler Annuler&Saturation :&Enregistrer Q3FileDialog&Enregistrer&Taille QFontDialog&Redimensionner&Annuler Q3TextEdit&Annuler QLineEdit&Annuler&Valeur :JLegal (8.5 x 14 pouces, 216 x 356 mm)AbandonnerAppliquer Q3TabDialogAppliquer QCheckBoxEffacer Fermer Q3TitleBar FermerQDialogButtonBox FermerQMenu Fermer Unit EntreFaux Q3DataTableFaux Erreur&Teinte :Rduire Q3TitleBarRduire,Impossible d'ouvrir %1Imprimer tout Ouvrir Q3FileDialog Ouvrir PauseImpr cran QPrintDialogImpr cranRessayer DroiteMaj Espace6L'opration rseau a expirFL'hte distant a ferm la connexion*Qu'est-ce que c'est ?QDialog*Qu'est-ce que c'est ?pLe protocole `%1' ne permet pas de recevoir des fichiers@chec du listage du dossier : %1`Impossible de supprimer le fichier ou dossier %1criture : %1"Mdia enregistrer"B6 (125 x 176 mm) QDB2Driver QIBaseDriver QIBaseResult QMYSQLDriver QODBCDriverQSQLite2Driver Hte introuvableQAbstractSocket Hte introuvable<Descripteur de socket invalideNDfinir des &couleurs personnalises >>$Source du papier :B8 (62 x 88 mm)fappel d'entit non parse dans un contexte invalideA8 (52 x 74 mm)B9 (44 x 62 mm)"Protocol non grA9 (37 x 52 mm)"Trier par ta&ille Q3FileDialog"Trier par ta&ille&B0 (1000 x 1414 mm)Trier par &date Q3FileDialogTrier par &dateTrier par &nom Q3FileDialogTrier par &nomLchec de la cration d'un dossier : %1BImpossible de crer le dossier %1"Nouveau dossier 1RActive la fentre principale du programme"A5 (148 x 210 mm).Tablode (279 x 432 mm)HRLE Start of right-to-left embedding.&Rester au premier plan>&Afficher ce message de nouveau>syntaxe invalide pour lookaheadzappel d'entit externe parse gnrale non permis dans la DTD B10 (31 x 44 mm)0Mthode d'entre WindowsRvaleur invalide pour dclaration autonome&DiminuerNon connectAigus bas0Connexion donne refuse(Mthode d'entre XIMdclaration d'encodage ou dclaration autonome attendue dans la dclaration XML"B2 (500 x 707 mm)le dossier QDB2Result$&Type de fichier :"&Nom de fichier :DAucun fichier ou dossier de ce nom&Fermer$chec du login: %1Co&ller Q3TextEditCo&ller QLineEditCo&ller&Dfiler vers le bas"Dfiler jusqu'ici,Dfiler vers la gaucheSupprimer %1Nchec du tlchargement du fichier : %1"A3 (297 x 420 mm) QDB2Result QMYSQLResult QOCIResult QODBCResultQSQLite2Result%1 - [%2]"Connect l'hteQFtp"Connect l'hteAligner Q3MainWindowAligner*ZWSP Zero width spaceVolume basVolume muetTentative d'utiliser un socket IPv6 sur une plateforme qui ne supporte pas IPv6"B4 (250 x 353 mm)JCette plateforme ne supporte pas IPv6Mdia prcdent>aucune erreur ne s'est produiteQRegExp>aucune erreur ne s'est produitevune erreur s'est produite lors de l'analyse d'une rfrence Format du papierVolume haut jdclaration autonome attendue dans la dclaration XML"A1 (594 x 841 mm).Slection d'une couleurH&Ajouter aux couleurs personnalises(Connect l'hte %1QFtp(Connect l'hte %1Reste...Le protocole `%1' ne permet pas de renommer des fichiers ou des dossiersBchec de la connexion l'hte %1Ble&u :LTR En basAnnuler Q3FileDialogAnnulerQ3ProgressDialogAnnuler Q3TabDialogAnnuler QColorDialogAnnulerQDialogButtonBoxAnnuler QFileDialogAnnuler QPrintDialogAnnulerQProgressDialogAnnulerLancer (6)Lancer (7)Lancer (8)Lancer (9)Lancer (2)Lancer (3)Lancer (4)Lancer (5)Lancer (0)Lancer (1)Lancer (F)Lancer (B)Lancer (C)Lancer (D)Lancer (E)Lancer (A)&Hte %1 introuvableQFtp&Hte %1 introuvableSupprimer Q3DataTableSupprimer QLineEditSupprimer QShortcutSupprimerQSqlSupprimerPaysagechapementR&echargerNouveau dossierRaccrocherDossier parentLe protocole `%1' ne permet pas de lister les fichiers d'un dossier$B1 (707 x 1000 mm)<chec du tldchargement : %1IgnorerInsrer Q3DataTableInsrer QShortcutInsrer(Folio (210 x 330 mm)(inconnu)Graves fort QIBaseDriverPage suiv$DLE (110 x 220 mm) RetourExemple&EnroulerRechercheSlectionner&Non tri Q3FileDialog&Non tri$C5E (163 x 229 mm)"B5 (176 x 250 mm)Syst4dlmiteur gauche manquantVerr numActualiser Q3DataTableActualiser Chercher &dans :<Supprimer cet enregistrement ?BImpossible de recevoir un messageMon ordinateur>Contenu du fichier prvisualis*Imprimer la slectionArrt dfilFchec du changement de dossier : %1Accs refus QIODeviceAccs refusContexte1Contexte2Contexte3Contexte4Chercher dans :Pnom d'instruction de traitement invalide$Nouveau dossier %1Hte trouvQFtpHte trouv$Nombre de copies :Page prcdente QScrollBarPage prcdenteJerreur dclenche par le consommateur2Mthode d'entre Mac OS XPortrait QScrollBarRsyntaxe invalide pour classe de caractrepune erreur s'est produite lors de l'analyse d'un lment"Connexion refuseQAbstractSocket"Connexion refuseQHttp"Connexion refuseOuvrir URL QDB2Result QDB2Result QMYSQLResult QOCIResult>Enregistrer les modifications ?&Impossible d'crire&caractre impromptu(Message de dbogage:Rchec de la suppression d'un dossier : %1"balise dbalance Lecture-criture Nom de fichier :Lecture seuleDimensions :Page suivante QScrollBarPage suivanteNon to&ut"option dsactive$A0 (841 x 1189 mm)0chec de la requte HTTP St&yle de police>Imprimer en couleur si possible6Copie ou dplace un fichier"connect en local`<qt>Voulez-vous vraiment supprimer %1 "%2"?</qt>*Ledger (432 x 279 mm),valeur octale invalide$Fichiers de type :Systme@Impossible de lire le dossier %1Verr majTab arrGraves hautAvertissement:&&Systme d'criture Personnaliser...Rafrachir&Restaurerlune erreur s'est produise lors de l'analyse du contenuxune erreur s'est produise lors de l'analyse d'un commentairelappel d'entit interne gnrale non permis dans la DTD0Chercher dans le dossierAttributs.Adresse de type inconnuXUn autre socket coute dj sur le mme port QMYSQLResult:Afficher les fic&hiers cachs Q3FileDialog:Afficher les fic&hiers cachs>Impossible d'envoyer un messageJInsrer caractre de contrle Unicode(Dfiler vers le hautLe protocole `%1' ne permet pas de supprimer des fichiers ou des dossiers propos de Qt@L'adresse lie est dj en usage Enregistrer sous Q3FileDialog Enregistrer sousAlias : %1%1 Dossier introuvable. Veuillez vrifier que le nom du dossier est correct."Connexion expireErreur rseauInaccessible QIBaseResultFLRO Start of left-to-right overrideHLRE Start of left-to-right embedding%1 Impossible de trouver le fichier. Vrifier le chemin et le nom du fichier.Lancer courrierEffacement$entits rcursives$Choisir une policeJUS Common #10 Envelope (105 x 241 mm)Graves bas<Opration socket non supporte QIBaseDriverConfirmerAffichage liste Q3FileDialogAffichage liste:Connexion l'hte %1 refuse<Operation socket non supporteRplus d'une dfinition de type de documentFichier spcialNOpration interrompue par l'utilisateurlLe protocole `%1' ne permet pas d'envoyer des fichierscriture seule&AnnulerQ3Wizard&Annuler$le lien symbolique QMYSQLResultAttente&AugmenterSuppri&mer Q3FileDialogSuppri&merActiver&Soulign&Terminer,Connexion %1 arrteQFtp,Connexion %1 arrte@syntaxe invalide pour rptition&Vert :*Tous les fichiers (*) Q3FileDialog*Tous les fichiers (*)Dossiers Q3FileDialogDossiersRchec de la suppression d'un fichier : %1NLien symbolique vers un fichier spcialXImpossible d'initialiser le socket broadcastbL'excutable '%1' requiert Qt %2 (Qt %3 prsent)..Slectionner un dossier Q3FileDialog.Slectionner un dossier&Suivant >Oui &toutVAucun espace disponible sur le priphrique.Tous les fichiers (*.*) Q3FileDialog.Tous les fichiers (*.*)Pversion attendue dans la dclaration XMLLecture : %1&Recharger&Renommer Q3FileDialog&RenommerAigus haut>Impossible de renommer %1 en %2"A4 (210 x 297 mm)"Tout slectionner Q3TextEdit"Tout slectionner QLineEdit"Tout slectionnerDossier : Q3FileDialogDossier :Par dfaut Effets &Barr,Dfiler vers la droite,Fragment HTTP invalideHte %1 trouvQFtpHte %1 trouv8Longueur du contenu invalide"Couleurs de &baselettre attendueErreur inconnueQFtpErreur inconnue QHostInfoErreur inconnueQHostInfoAgentErreur inconnueQHttpErreur inconnue QIODeviceErreur inconnueHLa squence %1, %2 n'est pas dfinieInconnuinconnu6Annuler vos modifications ?&Drouler,RLM Right-to-left markdLe fichier %1 existe dj. Voulez-vous l'craser ?0&Couleurs personnalises2fin de fichier impromptue QDB2Driver QMYSQLDriver QODBCDriverRExecutive (7,5 x 10 pouces, 191 x 254 mm)ZImpossible d'initialiser le socket asynchrone<PDF Pop directional formatting QDB2Driver QIBaseDriver QMYSQLDriver,L'adresse est protge,Impossible d'crire %10rencontr limite interne>Entte de rponse HTTP invalideErreur d'expiration socks5 lors de l'tablissement d'une connexion au serveur socksCanal a&lpha :appel d'entit externe parse non permis dans la valeur d'un attributRd&uireBImprimer d'abord la dernire pageExtrme gaucheLLetter (8,5 x 11 pouces, 216 x 279 mm)Prfrs.Successeur (historique)Page suivante QScrollBarPage suivantePage prcdente QScrollBarPage prcdente"Connexion arrteQFtp"Connexion arrte4ZWNJ Zero width non-joiner.Aller au dossier parentHInformations du fichier prvisualisMa&ximiser Restaurer en bas>Squence ambigu %1 non traite0Opration socket expireType< &Prcdent:Rseau impossible rejoindre,Aucun serveur spcifiFRLO Start of right-to-left overrideperreur dans la dclaration de texte d'une entit externele fichierfin impromptueHConnexion interrompue par le serveurLTrop de fichiers ouverts simultanment@Le protocole '%1' n'est pas gr*ZWJ Zero width joiner<L'adresse n'est pas disponible"B3 (353 x 500 mm)0Crer un nouveau dossier Q3FileDialog0Crer un nouveau dossier>Lien symbolique vers un fichier,LRM Left-to-right markMdia dmarrerMdia arrt(Manque de ressourcesMdia suivantLe protocole `%1' ne permet pas de copier ou de dplacer des fichiers>Lien symbolique vers un dossier&Requte interrompueune erreur s'est produite lors de l'analyse d'une dfinition de type de document`<p>Ce programme utilise la version %1 de Qt.</p>Extrme droitezLe protocole `%1' ne permet pas de crer de nouveaux dossiersLancer mdia A7 (74 x 105 mm)$Affichage dtaill Q3FileDialog$Affichage dtaill%1 Fichier introuvable. Veuillez vrifier que le nom du fichier est correct."A2 (420 x 594 mm)Orientation : B7 (88 x 125 mm)JErreur : bibliothque Qt incompatible QMYSQLDriverQSQLite2Driver/z "(/8=CFKR\ahu{ $,9AHORenw '-39@ QProgressBarQDialog QDB2Driver QCheckBox QUndoStackQXml Q3TitleBar QMYSQLResultQDialogButtonBoxQ3Accel Q3TextEditQFtpQLibrary QFontDialogQMultiInputContextQRegExp QODBCResultQMultiInputContextPlugin QDB2Result QODBCDriver QDirModel QTcpServer QTDSDriver Q3FileDialog QSQLiteResultQSQLite2Result QToolButton QScrollBarQNativeSocketEngine Q3LocalFsQSlider QTextControl QPSQLDriver QColorDialog QIODevice QMYSQLDriver QAxSelect QWorkspace QApplication QOCIResult QShortcutQAbstractSpinBox QErrorMessage QSQLiteDriverQHostInfoAgent QUdpSocket QRadioButton QDateTimeEdit QMessageBox Q3TabDialogQSqlQTabBar QFileDialogQ3ProgressDialogQProgressDialogPPDOptionsModelQ3NetworkProtocolQMenu Q3MainWindowQWhatsThisAction QPrintDialogQUnicodeControlCharacterMenuQSQLite2DriverQObjectQPrintPropertiesDialog QComboBoxQ3Wizard Q3UrlOperator QInputContextQHttp QIBaseDriver Q3ToolBar QHostInfo QIBaseResultQWidget QLineEdit Q3DataTableQAbstractSocket QPSQLResultQSocks5SocketEngine QUndoModel QOCIDriver QUndoGroup QPushButtonQSpinBoxConvertAll/translations/convertall_de.ts0000600000175000017500000005500512573413453017523 0ustar dougdoug cmdline Usage: Aufruf: qt-options Qt-Optionen -or- (non-GUI): oder (nicht GUI): options Optionen number Zahl from_unit Ausgangseinheit to_unit Zieleinheit Units with spaces must be "quoted" Einheiten mit Leerzeichen müssen "gequotet" werden Options: Optionen: num zahl set number of decimals to show Anzahl der Nachkommastellen festlegen show set number of decimals, even if zeros Die angegebene Anzahl Dezimalstellen auch für Null anzeigen display this message and exit Diesen Text anzeigen und beenden interactive command line mode (non-GUI) Interaktiver Kommandozeilenmodus (ohne GUI) convert without further prompts Ohne weitere Eingaben konvertieren show results in scientific notation Ergebnis in wissenschaftlicher Schreibweise anzeigen Enter from unit -> Ausgangseinheit angeben -> Enter to unit -> Zieleinheit angeben -> Enter number, [n]ew, [r]everse or [q]uit -> Zahl eingeben, [n]eu, umgekeh[r]t, [q]uittieren -> Units {0} and {1} are not compatible Einheiten sind nicht kompatibel ({0} bzw. {1}) {0} is not a valid unit {0} ist keine gültige Einheit show results in engineering notation convertdlg %d units loaded %d Einheiten geladen Error in unit data - %s Fehler in Einheitendaten - %s From Unit Ausgangseinheit To Unit Zieleinheit Set units Einheit angeben No Unit Set Keine Einheit angegeben &Close S&chließen &Unit Finder... Einheit s&uchen... &Options... &Optionen... &Help... &Hilfe... &About... &Über... Clear Unit Einheit löschen Result Display Ergebnis-Ausgabe Decimal places Dezimalstellen Use scientific notation Wissenschaftliche Darstellung nutzen Use fixed decimal places Festkommadarstellung nutzen Buttons Schaltflächen Show operator buttons Schaltflächen für Rechenoperationen anzeigen Colors Farben Use default system colors Systemfarben nutzen Set background color Hintergrundfarbe setzen Set text color Textfarbe setzen Read Me file not found README-Datei nicht gefunden ConvertAll README File ConvertAll-README-Datei ConvertAll Version %s by %s ConvertAll Version %s von %s Recent Unit Zuletzt benutzte Einheit Recent Units Zuletzt benutzte Einheiten Number saved Gespeicherte Anzahl Error in unit data - {0} Fehler in Einheitendaten - {0} {0} units loaded {0} Einheiten geladen Load last units at startup Laden der letzten Einheiten beim Start User Interface User Interface Show tip at startup Zeige Hinweise beim Start ConvertAll Version {0} by {1} ConvertAll Version {0} von {1} Convertall - Tip Convertall - Hinweis &OK &OK Combining Units Die Kombination von Einheiten <p>ConvertAll's strength is the ability to combine units:</p><ul><li>Enter "m/s" to get meters per second</li><li>Enter "ft*lbf" to get foot-pounds (torque)</li><li>Enter "in^2" to get square inches</li><li>Enter "m^3" to get cubic meters</li><li>or any other combinations you can imagine</li> <p>ConvertAll Stärke ist die Fähigkeit, Geräte zu kombinieren:</p><ul><li>Geben Sie "m / s" in Meter pro Sekunde zu bekommen</li><li>geben Sie "ft · lbf", um Fuß-Pfund (Drehmoment) zu erhalten<li><li>Enter "in ^ 2" auf Platz Zoll zu bekommen</li><li>geben Sie "m ^ 3 ", um Kubikmeter</li<li>oder andere Kombinationen, die Sie sich vorstellen können zu</li></ul> Show this tip at startup Zeige diesen Hinweis beim Start <p>ConvertAll's strength is the ability to combine units:</p><ul><li>Enter "m/s" to get meters per second</li><li>Enter "ft*lbf" to get foot-pounds (torque)</li><li>Enter "in^2" to get square inches</li><li>Enter "m^3" to get cubic meters</li><li>or any other combinations you can imagine</li></ul> <p>Die Stärke von ConvertAll ist die Fähigkeit, Einheiten zu kombinieren:</p><ul><li>Geben Sie "m / s" ein, um Meter pro Sekunde zu bekommen</li><li>Geben Sie "ft · lbf" ein, um Fuß-Pfund (Drehmoment) zu bekommen<li><li>Geben Sie "in ^ 2" ein, um Quadratzoll zu bekommen</li><li>Geben Sie "m ^ 3 " ein, um Kubikmeter zu bekommen</li><li>oder jede andere Kombinationen, die Sie sich vorstellen können</li></ul> Result Precision Use short representation Use engineering notation finddlg Unit Finder Einheitensuche &Filter Unit Types Einheitentypen &filtern &Search String &Suchtext C&lear &Löschen From Unit Ausgangseinheit &Replace &Ersetzen &Insert E&infügen To Unit Zieleinheit Replac&e E&rsetzen Inser&t Ein&fügen &Close S&chließen Unit Name Einheitenname Unit Type Einheitentyp Comments Kommentare [All] [Alle] helpview &Back &Zurück &Forward &Weiter &Home Zum &Anfang Find Suchen Find &Previous &Rückwärts Suchen Find &Next &Vorwärts Suchen Text string not found String nicht gefunden numedit Error in unit data - %s Fehler in Einheitendaten - %s Converting... Konvertiere... Units are not compatible (%s vs. %s) Einheiten sind nicht kompatibel (%s bzw. %s) Set units Einheiten angeben No Unit Set Keine Einheit angegeben Error in unit data - {0} Fehler in Einheitendaten - {0} Units are not compatible ({0} vs. {1}) Einheiten sind nicht kompatibel ({0} bzw. {1}) optiondlg &OK &OK &Cancel &Abbrechen Preferences Voreinstellungen unitatom Bad equation for "%s" Ungültige Gleichung für "%s" Bad equation for "{0}" Ungültige Gleichung für "{0}" unitdata Can not read "units.dat" file Kann Datei "units.dat" nicht lesen Duplicate unit names found Einheitennamen mehrfach vorhanden unitgroup Circular unit definition Einheitendefinition enthält Selbstbezug Invalid conversion for "%s" Ungültige Umwandlung für "%s" Cannot combine non-linear units Kann keine nichtlinearen Einheiten kombinieren Bad equation for %s Ungültige Gleichung für %s Invalid conversion for "{0}" Ungültige Umwandlung für "{0}" Bad equation for {0} Ungültige Gleichung für {0} unitlistview Unit Name Einheitenname Unit Type Einheitentyp Comments Kommentare ConvertAll/translations/qt_de.qm0000644000175000017500000006560312271615643016002 0ustar dougdougʴ5>4 Ac>} K!?> bb?( b`? la@ la@8 lf@n t@ @ A ˰BU B %'C- C )D */D9 =Dr BD T^EU c(E eE JE %pF ,Fa F ˔F :G f GO sG G 0NH E9H Mc\I* f)Ir I 5TKa HK $K .@L iLO L L JMF ̺M -DM kN 0NZ N .N RVOC RVO| SO YO [P j7oP pQ\ Q R R %S( Si +>S ;ɾS PtT ^+dTK feT gT iFCU iU uU wV1 w}V ^V RW t5W WpSX XRuXGa.XYY>ݖY[yZ  Z`%4Z-vZ0i)[[0[2wT[a\c5\{~a\`]5]N]ky^J_0P_t2_i`J**QWidget++ QShortcutAMAM QDateTimeEditOKOK QColorDialogOKOKQDialogButtonBoxOKOK QMessageBoxOKOK QPrintDialogOKOKQPrintPropertiesDialogPMPM QDateTimeEditNeinNo QShortcutHochUp QShortcutamam QDateTimeEditpmpm QDateTimeEditto QPrintDialog&OK&OK QErrorMessage N&ein&NoQDialogButtonBoxAltAlt QShortcutF%1F%1 QShortcutEntfDel QShortcutEndeEnd QShortcutEscEsc QShortcut EinfgIns QShortcutTabTab QShortcut AnfangTop QScrollBarXIMXIM QInputContextJaYes QShortcutFehler: Fatal Error: QErrorMessage&Ja&YesQDialogButtonBox ZurckBack QFileDialog ZurckBack QShortcut AnrufCall QShortcut&AusschneidenCu&t QLineEdit&AusschneidenCu&t QTextControlStrgCtrl QShortcut RunterDown QShortcutBeendenExitQMenuBar DateiFile QFileDialog DateiFile QPrintDialogUmdrehenFlip QShortcut HilfeHelpQDialogButtonBox HilfeHelp QMessageBox HilfeHelp QShortcutPos1HomeQObjectPos1Home QShortcutKind QDirModel LinksLeft QShortcutMenMenu QShortcutMetaMeta QShortcutNameNamePPDOptionsModelNameName QDirModel ffnenOpenQDialogButtonBox ffnenOpen QFileDialogBild aufwrtsPgUp QShortcut WiederherstellenRedo QUndoGroup WiederherstellenRedo QUndoStackBeendenQuitQMenuBarSpeichernSaveQDialogButtonBoxSpeichernSaveQPrintPropertiesDialog GreSize QDirModelSortierenSort QFileDialogAbbrechenStop QShortcutWahrTrueQObjectRckgngigUndo QUndoGroupRckgngigUndo QUndoStack"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialog&Kopieren&Copy QLineEdit&Kopieren&Copy QTextControl&Schriftart&Font QFontDialogVer&schieben&Move QWorkspace&ffnen&Open QFileDialog &Rot:&Red: QColorDialog"Wieder&herstellen&Redo QLineEdit"Wieder&herstellen&Redo QTextControl &Sat:&Sat: QColorDialogS&peichern&Save QFileDialog &Gre&Size QFontDialog&Gre ndern&Size QWorkspace&Rckgngig&Undo QLineEdit&Rckgngig&Undo QTextControl &Val:&Val: QColorDialogFLegal (8,5 x 14 Zoll, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialogAbbrechenAbortQDialogButtonBoxberAboutQMenuBarAnwendenApplyQDialogButtonBoxSchlieenCloseQDialogButtonBoxSchlieenClose QWorkspaceLaufwerkDrive QFileDialog EnterEnter QShortcut FalschFalseQObjectFarb&ton:Hu&e: QColorDialogMinimierenMinimize QWorkspaceAlles drucken Print all QPrintDialog ffnenOpen  QFileDialog PausePause QShortcutSonstigesOther QPrintDialog DruckPrint QPrintDialog DruckPrint QShortcutResetQDialogButtonBoxWiederholenRetryQDialogButtonBox RechtsRight QShortcutEinrichtenSetupQMenuBarUmschaltShift QShortcutSize: QPrintDialogLeertasteSpace QShortcutValuePPDOptionsModelDirekthilfe What's This?QDialogDirekthilfe What's This?QWhatsThisAction

About Qt

%1

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.

Qt is a Trolltech product. See www.trolltech.com/qt/ for more information.

 QMessageBoxRestore DefaultsQDialogButtonBoxAufzeichnen Media Record QShortcut"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialog$Bildschirm drucken Print Screen QShortcut8Eigene Farben &definieren >>&Define Custom Colors >> QColorDialogPapierquelle: Paper source: QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialog*Nach &Gre sortieren Sort by &Size QFileDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialog*Nach &Datum sortieren Sort by &Date QFileDialog(Nach &Name sortieren Sort by &Name QFileDialog9'%1' is write protected. Do you want to delete it anyway? QFileDialogDAktiviert das Programmhauptfenster#Activates the program's main window QApplicationShow Details... QMessageBox"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialog,Tabloid (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogHRLE Start of right-to-left embedding$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu.Im &Vordergrund bleiben Stay on &Top QWorkspaceJDiese Meldungen noch einmal an&zeigen&Show this message again QErrorMessage B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialog,Windows-EingabemethodeWindows input method QInputContext&Dekrementieren Step &downQAbstractSpinBoxHhen - Treble Down QShortcut$XIM-EingabemethodeXIM input method QInputContext"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogSchl&ieen&Close QWorkspacePPD PropertiesQPrintPropertiesDialogEinf&gen&Paste QLineEditEinf&gen&Paste QTextControl Selection QPrintDialog*Rollen-Feststelltaste Scroll Lock QShortcut&Nach unten scrollen Scroll down QScrollBarHier scrollen Scroll here QScrollBar&Nach links scrollen Scroll left QScrollBar QUndoModel"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialog*Die Selektion DruckenPrint selection QPrintDialog%1 - [%2] %1 - [%2] QWorkspace*ZWSP Zero width spaceZWSP Zero width spaceQUnicodeControlCharacterMenuLautstrke - Volume Down QShortcutTon aus Volume Mute QShortcut"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogVorherigerMedia Previous QShortcut Home Page QShortcutPapierformat Paper format QPrintDialogLautstrke + Volume Up QShortcut Print dialog QPrintDialog/%1 already exists. Do you want to overwrite it? QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogFarbauswahl Select color QColorDialog Printer info: QPrintDialogRZu benutzerdefinierten Farben &hinzufgen&Add to Custom Colors QColorDialog Bla&u:Bl&ue: QColorDialogLTRQT_LAYOUT_DIRECTION QApplicationEndeBottom QScrollBarAbbrechenCancel QColorDialogAbbrechenCancelQDialogButtonBoxAbbrechenCancel QPrintDialogAbbrechenCancelQProgressDialogBrowse QPrintDialogStart (6) Launch (6) QShortcutStart (7) Launch (7) QShortcutStart (8) Launch (8) QShortcutStart (9) Launch (9) QShortcutStart (2) Launch (2) QShortcutStart (3) Launch (3) QShortcutStart (4) Launch (4) QShortcutStart (5) Launch (5) QShortcutStart (0) Launch (0) QShortcutStart (1) Launch (1) QShortcutStart (F) Launch (F) QShortcutStart (B) Launch (B) QShortcutStart (C) Launch (C) QShortcutStart (D) Launch (D) QShortcutStart (E) Launch (E) QShortcutStart (A) Launch (A) QShortcutKonfigurationConfigQMenuBarCopies QPrintDialogLschenDelete QLineEditLschenDelete QShortcutLschenDelete QTextControlQuerformat Landscape QPrintDialog EscapeEscape QShortcutAuflegenHangup QShortcut"ElternverzeichnisParent Directory QFileDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialog> File not found. Please verify the correct file name was given QFileDialogIgnorierenIgnoreQDialogButtonBoxEinfgenInsert QShortcut(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialogBass Boost Bass Boost QShortcutBild abwrtsPgDown QShortcut$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialog ReturnReturn QShortcutBeispielSample QFontDialog&AufrollenSh&ade QWorkspace SuchenSearch QShortcutAuswhlenSelect QShortcut&Unsortiert &Unsorted QFileDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog"B5 (176 x 250 mm)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialog SysReqSysReq QShortcut*Zahlen-FeststelltasteNumLock QShortcutMein Computer My Computer QFileDialogBereich drucken Print range QPrintDialog*Rollen-Feststelltaste ScrollLock QShortcutClose without SavingQDialogButtonBoxKontext1Context1 QShortcutKontext2Context2 QShortcutKontext3Context3 QShortcutKontext4Context4 QShortcutSuchen in:Look in: QFileDialog$Anzahl der Kopien:Number of copies: QPrintDialogOptionenOptionsQMenuBarBild aufwrtsPage Up QShortcut(Eine Seite nach obenPage up QScrollBar File exists QPrintDialog.Mac OS X-EingabemethodeMac OS X input method QInputContextHochformatPortrait QPrintDialogffne URLOpen URL QShortcut Properties QPrintDialogDebug Ausgabe:Debug Message: QErrorMessageFeststelltaste Caps Lock QShortcutDateiname: File name: QFileDialogSeitengre: Page size: QPrintDialog,Eine Seite nach rechts Page right QScrollBarDruckerPrinter QPrintDialogN&ein zu allem N&o to AllQDialogButtonBoxDouble side printing QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogSchrifts&til Font st&yle QFontDialog8Farbig drucken falls mglichPrint in color if available QPrintDialog direkt verbundenlocally connected QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog"Dateien des Typs:Files of type: QFileDialogSystem RequestSystem Request QShortcutFeststelltasteCapsLock QShortcutRck-TabBacktab QShortcut Bass +Bass Up QShortcutWarnung:Warning: QErrorMessage&SchriftsystemWr&iting System QFontDialogAktualisierenRefresh QShortcutQuit %1QMenuBarSave AllQDialogButtonBox"Wieder&herstellen&Restore QWorkspace8&Versteckte Dateien anzeigenShow &hidden files QFileDialog!Are sure you want to delete '%1'? QFileDialog@Unicode-Kontrollzeichen einfgen Insert Unicode control characterQUnicodeControlCharacterMenu$Nach oben scrollen Scroll up QScrollBarber QtAbout QtQMenuBarber QtAbout Qt QMessageBoxAbout %1QMenuBarSpeichern unterSave As QFileDialogAlias: %1 Aliases: %1 QPrintDialog%1 Das Verzeichnis konnte nicht gefunden werden. Stellen Sie sicher, dass der Verzeichnisname richtig ist.K%1 Directory not found. Please verify the correct directory name was given. QFileDialogEinstellungenSettingQMenuBarFLRO Start of left-to-right override#LRO Start of left-to-right overrideQUnicodeControlCharacterMenuHLRE Start of left-to-right embedding$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuStart Mail Launch Mail QShortcutPrint To File ... QPrintDialogRcktaste Backspace QShortcut(Schriftart auswhlen Select Font QFontDialogJUS Common #10 Envelope (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog Bass - Bass Down QShortcutCollate QPrintDialog Liste List View QFileDialogStandbyStandby QShortcut&Inkrementieren&Step upQAbstractSpinBox&Lschen&Delete QFileDialogAktivierenActivate QApplication&Unterstrichen &Underline QFontDialog &Grn:&Green: QColorDialog Alle Dateien (*) All Files (*) QFileDialogVerzeichnisse Directories QFileDialogDiscardQDialogButtonBoxjApplikation '%1' bentigt Qt %2, aber Qt %3 gefunden.,Executable '%1' requires Qt %2, found Qt %3. QApplication4Whlen Sie ein VerzeichnisSelect a Directory QFileDialogJa zu &allem Yes to &AllQDialogButtonBox$Alle Dateien (*.*)All Files (*.*) QFileDialog|

This program uses Qt Open Source Edition version %1.

Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.

Please see www.trolltech.com/company/model/ for an overview of Qt licensing.

 QMessageBoxErne&ut laden&Reload QFileDialog&Umbenennen&Rename QFileDialogCould not delete directory. QFileDialogHhen + Treble Up QShortcut"A4 (210 x 297 mm)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogAlles auswhlen Select All QLineEditAlles auswhlen Select All QTextControlVerzeichnis: Directory: QFileDialogEffekteEffects QFontDialog Durch&gestrichen Stri&keout QFontDialog(Nach rechts scrollen Scroll right QScrollBar*Zahlen-FeststelltasteNum Lock QShortcut*Zahlen-Feststelltaste Number Lock QShortcutGrundfar&ben &Basic colors QColorDialogUnbekanntUnknown QFileDialogunbekanntunknown QPrintDialog Pages from QPrintDialog&Herabrollen&Unshade QWorkspace,RLM Right-to-left markRLM Right-to-left markQUnicodeControlCharacterMenu|Die Datei %1 existiert bereits. Soll sie berschreiben werden?-%1 already exists. Do you want to replace it? QFileDialog4&Benutzerdefinierte Farben&Custom colors QColorDialog%Do you want to overwrite it? QPrintDialogNExecutive (7,5 x 10 Zoll, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialog<PDF Pop directional formattingPDF Pop directional formattingQUnicodeControlCharacterMenuEinstellungen PreferenceQMenuBar PreferencesQMenuBarA&lphakanal:A&lpha channel: QColorDialogCopy &Link Location QTextControlM&inimieren Mi&nimize QWorkspace6Letzte Seite zuerst druckenPrint last page first QPrintDialogLinke Seite Left edge QScrollBarHLetter (8,5 x 11 Zoll, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogFavoriten Favorites QShortcutVorwrtsForward QShortcutBild abwrts Page Down QShortcut*Eine Seite nach unten Page down QScrollBar*Eine Seite nach links Page left QScrollBarHide Details... QMessageBox4ZWNJ Zero width non-joinerZWNJ Zero width non-joinerQUnicodeControlCharacterMenuMa&ximieren Ma&ximize QWorkspace Wiederherstellen Restore Down QWorkspaceTypAll other platformsType QDirModelFRLO Start of right-to-left override#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu Don't SaveQDialogButtonBox Print to file QPrintDialog*ZWJ Zero width joinerZWJ Zero width joinerQUnicodeControlCharacterMenu=File %1 is not writable. Please choose a different file name. QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialog,Neuen Ordner erstellenCreate New Folder QFileDialog Date Modified QDirModel,LRM Left-to-right markLRM Left-to-right markQUnicodeControlCharacterMenuWiedergabe Media Play QShortcut Stopp Media Stop QShortcutNchster Media Next QShortcut^<p>Dieses Programm verwendet Qt Version %1.</p>'

This program uses Qt version %1.

 QMessageBoxRechte Seite Right edge QScrollBar$Start Media Player Launch Media QShortcut A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogDetails Detail View QFileDialog%1 Die Datei konnte nicht gefunden werden. Stellen Sie sicher, dass der Dateiname richtig ist.A%1 File not found. Please verify the correct file name was given. QFileDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialog"Druckausrichtung: Orientation: QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialog<Qt Bibliothek ist inkompatibelIncompatible Qt Library Error QApplicationConvertAll/translations/qt_es.qm0000644000175000017500000010245512271615643016016 0ustar dougdoug;`;;;;M OO-7}ImS](5c+;o+;+O+OH4HJKLDLPSZr+[`7\O_[_s1}-,CUx%%%%90M0m005 D+,Y RZ ^Zg d\]4 x\ |^ vv@`f߮IA[Iyɵnɵnɵnɵn3ɵnJɵn`ɵny B1 YMqH<po5#Q%UT*42C'CdCCeCeD"!D"^D1MaR?4fP:l^oRdw^|{yW2j. d0yi6ur< B"lH)-/=N1$5~ < d?NNkyT]|``) 6s^= &,fE{8AA [ynL ME*E_ww!e)*/e52;8ByOZf` Bcփ Hu( jl p v$ |$ !!(!^!ֈ7"n n"t,"z";y"""&H"/"IxS"YM#>YM#yh^#i#ssc$=w$C$I$ۊ$N$]$I$I$I%%I%KI%rI%I%I%I&n&*I&0Y&Ji&dy&~&&&&''I'4'N'h'''uD'uD( o(A,(G,(i,(,(,((ɘe(5$(fR)N)6)Nc)z*^*,Pq*2V*~*** **+&%C+,?"+LKN+RM+XR+]+]+k+y^+{y++G%+ǥ,,++,At,]t,{y,r,-(-:%-@C--F5-ƨ-ƨ-˾-ҝz-է?.f.6~b.to.!.+3./.6 /G/4LAU/~U/U/Z/Z/Z0Z0&]k*0>^n0Xe0i0i1rg19y;1a}u1g}w1}w122@t2zt2.2.2P2D3 t3t3t3_ 4%F4=ʢ4Cʢ4Xd4^d4sd4d4594֣44U4B5w5E 5K25Q65D5K6U|6/ar6_p6et6}wZ6}$6}$7Z7LK<7R7l7 7/7E8,@58du8T8i~99h5kE9XU 9bD9gA:i$:nx1 :tz*2:d:U:5:z:҉;m;n;8;\O~;vC;|ʴ5;Ԅ;D<d<F5="Y=(I=.As=b =z }$= qe= ڤ= E>. E>E Ac>K Ac> 35> K!?? bb? b`?l i3? la@ |@6 t@ t@ @ @ A A >A A A B KB B %'Bb B C> C^ )Cd */Cj 7uC| =C BC T^D2 ]DX `D `D c(D dD eD eE f1E& gEj gnE k,F rD"F( xFp ~Fv F| 9F IF IG! ;G9 Ge G| JG %pG ,G ,G G ˔G PH H+ Hd 68H :H f H f I5 4Ig sIm sI AAI J m,J #-tJX 0NJ E9K& E9Ko LK Mc\K SK VK ]$L/ f)L5 f)L| io>L m`M wM 5TM< HMT HM $M .@M M iN Na N N JN JO t.O9 kO? ӇOE OK ̺Ow -DO kO U)O <P 0P  P-  Pd P xHP .P 7FQ >QP >Q >Q >Q >R$ >RZ DTR IR RVR RVR S.S SSN YST [Sv j7oS pT .T< BTB TH TT TT TT TT T T T )dU0 U .U .U .U .V aV yVW V] Vc tV :bV ʜW+ DW1  rW7 +>W 0EW ;ɾX PtX ^+dX feY- gYQ iFCY iY uY wY wZ8 w}Zj w}Z Z [ ^[> R[D o[~ X[ D[ t5\ \( )\L \T\gT\pS\*\/E\I_]$XRu][ ]a.^PvɅ^Vy$^p~^^S^B_V__ݖ`[y`  `H `"#`$U`%4a-va 0i)a?0ak1ca2wTaDaHbqJdbL$.bacc5cyCd{~ad`ddeNe(kyeJePft2f.fvffif*+AMAceptar Q3TabDialogAceptar QAxSelectAceptar QColorDialogAceptarQDialogButtonBoxAceptar QMessageBoxAceptar QPrintDialogAceptarPMNo QShortcutNo Arribaampm%1%&Aceptar Q3FileDialog&Aceptar&No Q3FileDialog&NoAltF%1SuprDirFinEscInsTabPrincipioXIMS QShortcutSError fatal:&S Q3FileDialog&S,Precedente (histrico) Q3FileDialogAnterior QFileDialogAnterior LlamarCor&tar Q3TextEditCor&tar QLineEditCor&tar FechaCtrl AbajoFichero Q3FileDialogFichero QFileDialogFicheroVoltear Ayuda Q3TabDialog AyudaQDialogButtonBox Ayuda QMessageBox Ayuda InicioIzquierdaMenMeta NombrePPDOptionsModel Nombre Q3FileDialog Nombre Abrir Q3FileDialog Abrir QComboBox AbrirQDialogButtonBox Abrir QFileDialog AbrirQMenu Abrir QPushButton Abrir Re Pg QUndoGroupGuardarQDialogButtonBoxGuardar QFileDialogGuardar Tamao Q3FileDialog TamaoOrdenar Q3FileDialogOrdenarDetenerVerdadero Q3DataTableVerdaderoTipo QUndoGroup"A6 (105 x 148 mm)&Copiar Q3TextEdit&Copiar QLineEdit&Copiar&Tipo de letra &Ayuda &Mover &Abrir Q3FileDialog &Abrir &Rojo:&Rehacer Q3TextEdit&Rehacer QLineEdit&Rehacer&Saturacin:&Guardar Q3FileDialog&Guardar&Tamao QFontDialog&Tamao&Deshacer Q3TextEdit&Deshacer QLineEdit&Deshacer&Brillo:NLegal (8,5 x 14 pulgadas, 216 x 356 mm)InterrumpirAplicar Q3TabDialogAplicar QCheckBoxLimpiar Cerrar Q3TitleBar CerrarQDialogButtonBox CerrarQMenu Cerrar Unidad Intro Falso Q3DataTable Falso Error &Tono:Minimizar Q3TitleBarMinimizar0No se ha podido abrir %1Imprimir todo Abrir  Q3FileDialog Abrir  PausaImpr Pant QPrintDialogImpr PantReintentarDerechaMayEspacio>La operacin de red ha expiradoLEl equpo remoto ha cerrado la conexinQu es esto?QDialogQu es esto?ZEl protocolo %1 no permite recibir ficherosPEl listado del directorio ha fallado: %1bNo se ha podido borrar el fichero o directorio %1Escritura: %1Grabar medio"B6 (125 x 176 mm) QDB2Driver QIBaseDriver QIBaseResult QMYSQLDriver QODBCDriverQSQLite2Driver(Equipo no encontradoQAbstractSocket(Equipo no encontrado<Descriptor de socket no vlido"Imprimir pantallaD&Definir colores personalizados >>"Fuente del papel:B8 (62 x 88 mm)treferencia a entidad no analizada en un contexto no vlidoA8 (52 x 74 mm)B9 (44 x 62 mm):Tipo de protocolo no admitidoA9 (37 x 52 mm)&Ordenar por &tamao Q3FileDialog&Ordenar por &tamao&B0 (1000 x 1414 mm)$Ordenar por &fecha Q3FileDialog$Ordenar por &fecha&Ordenar por &nombre Q3FileDialog&Ordenar por &nombreRFallo de la creacin de un directorio: %1LNo se ha podido crear el directorio %1Nueva carpeta 1PActiva la ventana principal del programa"A5 (148 x 210 mm).Tabloide (279 x 432 mm)HRLE Start of right-to-left embedding6Permanecer en &primer plano<Mo&strar este mensaje de nuevoBsintaxis no vlida para lookaheadno se permiten referencias a entidades externas generales ya analizadas en la DTD B10 (31 x 44 mm)2Mtodo de entrada Windows^valor errneo para la declaracin independienteRe&ducirNo conectado Bajar los agudosRConexin para conexin de datos rechazada*Mtodo de entrada XIMse esperaba una declaracin de codificacin o declaracin autnoma al leer la declaracin XML"B2 (500 x 707 mm)el directorio QDB2Result"&Tipo de fichero:&&Nombre de fichero:bNo hay ningn fichero o directorio con ese nombre&Cerrar4Identificacin fallida: %1 &Pegar Q3TextEdit &Pegar QLineEdit &Pegar4Bloqueo del desplazamiento*Desplazar hacia abajo(Desplazar hasta aqu8Desplazar hacia la izquierdaBorrar %1HFallo de la descarga del fichero: %1"A3 (297 x 420 mm) QDB2Result QMYSQLResult QOCIResult QODBCResultQSQLite2Result%1 - [%2]&Conectado al equipoQFtp&Conectado al equipoAlinear Q3MainWindowAlinear*ZWSP Zero width space Bajar el volumenSilenciarIntento de usar un socket IPv6 sobre una plataforma que no contempla IPv6"B4 (250 x 353 mm)>La plataforma no contempla IPv6Medio anterior>no se ha producido ningn errorQRegExp>no se ha producido ningn error|se ha producido un error durante el anlisis de una referencia"Formato del papel Subir el volumense esperaba una declaracin independiente al leer la declaracin XML"A1 (594 x 841 mm)*Seleccin de un colorH&Aadir a los colores personalizados,Conectado al equipo %1QFtp,Conectado al equipo %1 Ms...zEl protocolo %1 no permite renombrar ficheros o directoriosPLa conexin con el equipo ha fallado: %1 Az&ul:LTR FinalCancelar Q3FileDialogCancelarQ3ProgressDialogCancelar Q3TabDialogCancelar QColorDialogCancelarQDialogButtonBoxCancelar QFileDialogCancelar QPrintDialogCancelarQProgressDialogCancelarLanzar (6)Lanzar (7)Lanzar (8)Lanzar (9)Lanzar (2)Lanzar (3)Lanzar (4)Lanzar (5)Lanzar (0)Lanzar (1)Lanzar (F)Lanzar (B)Lanzar (C)Lanzar (D)Lanzar (E)Lanzar (A).Equipo %1 no encontradoQFtp.Equipo %1 no encontrado Borrar Q3DataTable Borrar QLineEdit Borrar QShortcut BorrarQSql BorrarApaisado EscapeR&ecargarNueva carpetaDescolgar&Directorio superiorEl protocolo %1 no permite listar los ficheros de un directorio$B1 (707 x 1000 mm)FEl envo del fichero ha fallado: %1IgnorarInsertar Q3DataTableInsertar QShortcutInsertar(Folio (210 x 330 mm)(desconocido)(Potenciar los graves QIBaseDriver Av Pg$DLE (110 x 220 mm)RetornoMuestraSombre&arBsquedaSeleccionar&Sin ordenar Q3FileDialog&Sin ordenar$C5E (163 x 229 mm)NB5 (176 x 250 mm, 6,93 x 9,84 pulgadas) PetSis<falta el delimitador izquierdoBloq NumActualizar Q3DataTableActualizarBuscar &en:,Borrar este registro?8Imposible recibir un mensajeMi computadoraHContenido del fichero previsualizado$Imprimir intervaloBloq DesplDFallo del cambio de directorio: %1 Permiso denegado QIODevice Permiso denegadoContexto1Contexto2Contexto3Contexto4Buscar en:\nombre de instruccin de tratamiento no vlido Nueva carpeta %1"Equipo encontradoQFtp"Equipo encontrado"Nmero de copias:"Retroceder pgina.Una pgina hacia arriba QScrollBar.Una pgina hacia arriba4error debido al consumidor4Mtodo de entrada Mac OS XVertical QScrollBarVsintaxis no vlida para clase de caracteresvse ha producido un error durante el anlisis de un elemento$Conexin rechazadaQAbstractSocket$Conexin rechazadaQHttp$Conexin rechazadaAbrir URL QDB2Result QDB2Result QMYSQLResult QOCIResult8Guardar las modificaciones?$Imposible escribir&carcter inesperado,Mensaje de depuracin:JEliminacin de directorio fallida: %1.etiqueta desequilibrada"Lectura-escritura*Bloqueo de maysculas$Nombre de fichero:Slo lectura"Tamao de pgina:.Una pgina a la derecha QScrollBar.Una pgina a la derechaN&o a todoXse ha usado una caracterstica no habilitada$A0 (841 x 1189 mm),Solicitud HTTP fallida2&Estilo del tipo de letra>Imprimir en color si es posible2Copiar o mover un fichero(conectado localmenteT<qt>Seguro que desea borrar %1 %2?</qt>*Ledger (432 x 279 mm)*valor octal no vlido"Ficheros de tipo:(Peticin del sistemaJNo se ha podido leer el directorio %1Bloq Mays*Tabulador hacia atrs Subir los graves Aviso:*Sistema de escr&ituraPersonalizar...Actualizar&Restaurartse ha producido un error durante el anlisis del contenidozse ha producido un error durante el anlisis de un comentariono se permiten referencias a entidades internas generales en la DTD.Buscar en el directorioAtributos:Direccin de tipo desconocidobYa hay otro socket escuchando por el mismo puerto QMYSQLResult:Mostrar los ficheros &ocultos Q3FileDialog:Mostrar los ficheros &ocultos6Imposible enviar un mensajeHInsertar carcter de control Unicode,Desplazar hacia arribatEl protocolo %1 no permite borrar ficheros o directoriosAcerca de QtHLa direccin enlazada ya est en usoGuardar como Q3FileDialogGuardar comoAlias: %1%1 Directorio no encontrado. Verique que el nombre del directorio es correcto."Conexin expiradaError de redInaccesible QIBaseResultFLRO Start of left-to-right overrideHLRE Start of left-to-right embedding%1 Fichero no encontrado. Compruebe la ruta y el nombre del fichero.Lanzar correo Borrar(entidades recursivas8Seleccionar un tipo de letraDSobre US Common #10 (105 x 241 mm) Bajar los graves8Operacin socker no admitida QIBaseDriverConfirmarVista de lista Q3FileDialogVista de lista>Conexin rechazada al equipo %18Operacin socket no admitidaTms de una definicin de tipo de documento Fichero especialBOperacin detenida por el usuarioXEl protocolo %1 no permite enviar ficherosSlo escritura&CancelarQ3Wizard&Cancelar&el enlace simblico QMYSQLResult Reposo&Aumentar&Borrar Q3FileDialog&BorrarActivarS&ubrayado&Terminar*Conexin a %1 cerradaQFtp*Conexin a %1 cerradaDsintaxis no vlida para repeticin&Verde:,Todos los ficheros (*) Q3FileDialog,Todos los ficheros (*)Directorios Q3FileDialogDirectoriosDEliminacin de fichero fallida: %1LEnlace simblico a un fichero especialVImposible inicializar el socket de difusinlEl ejecutable %1 requiere Qt %2 (se encontr Qt %3).2Seleccionar un directorio Q3FileDialog2Seleccionar un directorioSiguie&nte >S a &todoDNo queda espacio en el dispositivo0Todos los ficheros (*.*) Q3FileDialog0Todos los ficheros (*.*)bse esperaba la versin al leer la declaracin XMLLectura: %1&Recargar&Renombrar Q3FileDialog&Renombrar Subir los agudosBNo se ha podido renombrar %1 a %2NA4 (210 x 297 mm, 8,26 x 11,7 pulgadas) Seleccionar todo Q3TextEdit Seleccionar todo QLineEdit Seleccionar todoDirectorio: Q3FileDialogDirectorio:&Valores por omisinEfectos&Tachado4Desplazar hacia la derecha0Fragmento HTTP no vlidoBloq num(Equipo %1 encontradoQFtp(Equipo %1 encontrado Bloqueo numrico<Longitud del contenido errnea Colores &bsicos*se esperaba una letra"Error desconocidoQFtp"Error desconocido QHostInfo"Error desconocidoQHostInfoAgent"Error desconocidoQHttp"Error desconocido QIODevice"Error desconocidoHLa secuencia %1, %2 no est definidaDesconocidodesconocido:Cancelar sus modificaciones?Q&uitar sombra,RLM Right-to-left markZEl fichero %1 ya existe. Desea reemplazarlo?.Colores &personalizados2fin de fichero inesperado QDB2Driver QMYSQLDriver QODBCDriverVEjecutivo (7,5 x 10 pulgadas, 191 x 254 mm)ZImposible inicializar el socket no bloqueante<PDF Pop directional formatting QDB2Driver QIBaseDriver QMYSQLDriver6La direccin est protegida6No se ha podido escribir %18se alcanz el lmite internoHCabecera de respuesta HTTP no vlidaError de expiracioD socks5 mientras se estableca una conexin al servidor socksCanal a&lfa:no se permiten referencias a entidades externas generales ya analizadas en el valor de un atributoMi&nimizarBImprimir primero la ltima pginaBorde izquierdoNCarta (8,5 x 11 pulgadas, 216 x 279 mm)FavoritosSiguienteAvanzar pgina,Una pgina hacia abajo QScrollBar,Una pgina hacia abajo2Una pgina a la izquierda QScrollBar2Una pgina a la izquierda Conexin cerradaQFtp Conexin cerrada4ZWNJ Zero width non-joiner2Ir al directorio superiorLInformacin del fichero previsualizadoMa&ximizarRestaurar abajo>Secuencia ambigua %1 no tratada2Operacin socket expiradaTipo< &Anterior Red inalcanzablefNo se ha indicado ningn servidor al que conectarseFRLO Start of right-to-left overridenerror en la declaracin de texto de una entidad externael ficherofin inesperadoZEl servidor cerr la conexin inesperadamenteXDemasiados ficheros abiertos simultneamenteJEl protocolo %1 no est contemplado*ZWJ Zero width joiner>La direccin no est disponible"B3 (353 x 500 mm).Crear una nueva carpeta Q3FileDialog.Crear una nueva carpeta:Enlace simblico a un fichero,LRM Left-to-right mark&Reproducir el medio Detener el medio,Insuficientes recursosSiguiente medioEl protocolo %1 no permite copiar o mover ficheros o directorios@Enlace simblico a un directorio,Solicitud interrumpidase ha producido un error durante el anlisis de la definicin de tipo de documentob<p>Este programa utiliza la versin %1 de Qt.</p>Borde derechojEl protocolo %1 no permite crear nuevos directoriosLanzar medio A7 (74 x 105 mm)Vista detallada Q3FileDialogVista detallada%1 Fichero no encontrado. Verifique que el nombre del fichero es correcto."A2 (420 x 594 mm)Orientacin: B7 (88 x 125 mm)BError: biblioteca Qt incompatible QMYSQLDriverQSQLite2Driver/z "(/8=CFKR\ahu{ $,9AHORenw '-39@ QProgressBarQDialog QDB2Driver QCheckBox QUndoStackQXml Q3TitleBar QMYSQLResultQDialogButtonBoxQ3Accel Q3TextEditQFtpQLibrary QFontDialogQMultiInputContextQRegExp QODBCResultQMultiInputContextPlugin QDB2Result QODBCDriver QDirModel QTcpServer QTDSDriver Q3FileDialog QSQLiteResultQSQLite2Result QToolButton QScrollBarQNativeSocketEngine Q3LocalFsQSlider QTextControl QPSQLDriver QColorDialog QIODevice QMYSQLDriver QAxSelect QWorkspace QApplication QOCIResult QShortcutQAbstractSpinBox QErrorMessage QSQLiteDriverQHostInfoAgent QUdpSocket QRadioButton QDateTimeEdit QMessageBox Q3TabDialogQSqlQTabBar QFileDialogQ3ProgressDialogQProgressDialogPPDOptionsModelQ3NetworkProtocolQMenu Q3MainWindowQWhatsThisAction QPrintDialogQUnicodeControlCharacterMenuQSQLite2DriverQObjectQPrintPropertiesDialog QComboBoxQ3Wizard Q3UrlOperator QInputContextQHttp QIBaseDriver Q3ToolBar QHostInfo QIBaseResultQWidget QLineEdit Q3DataTableQAbstractSocket QPSQLResultQSocks5SocketEngine QUndoModel QOCIDriver QUndoGroup QPushButtonQSpinBoxConvertAll/translations/qt_ru.qm0000644000175000017500000045525112573376275016054 0ustar dougdoug55 W> D'2 DP+--|!RT,M~.!KxExy{+=rAa7L'jVB#F0|nsm2M6ec^q:Te |z!e&#\(9)*(L*(]*(*(*(*(Y*(*(*(*(U*(*(*/eK*ASf+ %+,N*;)=-?4@N9FoDKibO\c `cփd|f$~jCN mtէp/TB qtuu(Z}ka^.X,[Q_~, 0_[ G$2$9t$;SugS0(r^֊U nQ,sAю <3. n=&Hr+ ./rS=BZ?5)@`gCrIxSL6R>)YM]Yu,_oMubUC+c{Cc{DNc{E~dn_eskD>+n v'4O^IpBxQgۊEN]v)II3I-I G(FIYSiy KIc[!uDa}uDid?ݾ D uL o',,EC,v,P,]]l46f! ~2 ɘefRJ#*Gn9N-JTTP TQ >TR TS TT TU 1TV aTW TX TY \SW PqdVfR?BC+ UhQyp=?e l7$&~U)2@.yX58 8>1?"QF(KN L;MJN2'O{@V|Wj]4,]p|]ve4 e6; Cg^|knMrHwy}~1Z 5tFK>'WG%\dصٵ+ `Yzg;Y>JMczxAZ9\YqsYY% rn C-9 5C^i˾wRiZ>'i}%z9zߺt6䏥 f7tӒ롥EF3g!-d/ $~bI~bPM*Q!uT%?)ɯ+y+&Q+3o,$`/+0jIKh4~ҡ6 8- v<h<nTA'D^G]hGbOL|LAU{LOrPѧeUR iRCSfgLSnYU{*U;UToqV(c!YĻZ4l[ ]k*I^o2F^~͝^n_P_p&`74fgkQ)Mn$4̣oN"p4(pq"{ {*B}u}ww}!&>:r{  B\ v.OtNt#^38(P5<>|w bWWDfYtAtht _ @a25uFʢ$ʢIƴd%nd'dޣdGd59tz2э/)j[+kNSWD`}㵾;1rB>ktȗayU0R^dBhpAw$KBD,% t0bˌ25p6b:3>*K?;CUDJ0 LXLU|]\"aroldn8\sFY_Vu[7|#}wZ}$w^?Gϗ.Z.ZDjʆ$ZG[` ezdZk< K<3| +·z·6a׳*8QKТ~HCfC}r؞ etE\#b9%5PQw>-bD`F#%"'̌+i+)[.%4>P5kE7= =>1. ??@JCtISEfZF)NP~V%eV%gXU GC^MT^M_R`|bDbGb^hIUGi$ܢm5x1 z*2~OdUz6c.j4N3Fbm]l%BE/CbsiRaCUʴ5ʶ+ϡ$^ mԄ[۔#$Dd6AՆF5YDple1&DsIG=W $ }$ qeg[ ڤ ڥ)k d( E E AcL t "knv. 35ƴ R b, bb b`y gU hiF la la7 lfG qz s-3 tNי xq | J- tKr  .! y`  9D r x n . $|1 Űe Y+ ˰!   Y : 팤` 팤Ծ E %'{  L| Cy qX  D1z 5 } 9M o7K  1 !E '( '(b )f ) */ *ŎH .> 2* 7u ; =\ H  J" Q Rۮh Ty ` T^ Uj4 YHY \t ] ^& `p `l `o b c('! cE dht, eI e{ f1_ f*(/ g5U" gyX gn t xp ~vb $& [ Id m4 O  t f? j =)U| JN 3T $ ${ %p ,?W >r[ E! `j  4 B' T  v +  l2 ˔[ P L W,E 685 X I : F A f A~ u 4s .Zh "ú sE AAck 9  9 !i r %j #-t ' +i6 0N u =@! @ Aϥ CU[ F)3 LNc L Mc\ Su Vz> Zj ]qt0 ]$" c3 f= io>4 l# sk: spk wq= yCB ] H@  $D. .@}     zd; 5~ ~J b JE ? t. k=  : N>q /a ̷ ̺[ -D\ .; %o G ۷# 6 ky^  )yY }o  9 0N $r  5  I < ITk V %Z L  (G  c e  $ ! 5A "N%Ǒ .M 5! 7Fm :9J >c >f >g >{ >} > > >Ǎ > >3 > @ӊ A Ef K K) K Mbg Ođ RVL RVg SGͶ S+, WoŦ Y [ ^UT' hۮS j7o> p >r  Bx? _S & T! T Tߗ T) ys $ V T T t c S )dŏ T  ." .q . .~ . .n .qW   a eu( sh e %n ҂ K > Y  |} t8 aҦ  9 8< ? $a z ${v #=/ (I$ +> 0EZ 4~; 64~4 8 :n! ;ɾ Fg: K9 Pt| S, fev iFC~ iH iD jӮ} m9He n% u u * u$ v& ww w}w\ |[, u ^ hu <76 Jm ^ KI Y Rh %7% ˤ " U & bv YH &+ x׏ J +E t5 4 HՎ/w2TBH4=jgTF #* *\+.t /E]/E3~72898N޵mOOV5lXRu0[ V[d~`a.gcnyG*y$9y?. %+_%fn4sv;;j !ڕ(>d6S{w'¨²@CN^:n(,`$'rݖ rTcE n6RzrFCN7:5 Q  DlD1K2 ""#r!%4&%4P,--v0i)R01c1hw2wT=|s=e>k7F74MKL$.[m4 jb4rc5x;g3"]iCiTKl?pz3{`f{~a&}&?DhÓH$t[$0Oͣͣ#EwyN=m 8Szt-7ě45UȌ)Ȭ)mg rrܴ-1UC$B(~M6qt2 ,MOm*pfHi,0:@KBL 2:;04:C Close Tab CloseButton ?@>3@0<<5 %1About %1MAC_APPLICATION_MENU!:@KBL %1Hide %1MAC_APPLICATION_MENU!:@KBL 4@C385 Hide OthersMAC_APPLICATION_MENU0AB@>9:8...Preferences...MAC_APPLICATION_MENU025@H8BL %1Quit %1MAC_APPLICATION_MENU !;C61KServicesMAC_APPLICATION_MENU>:070BL 2AQShow AllMAC_APPLICATION_MENU*B:070=> 2 A>548=5=88Connection refusedQAbstractSocket6@5<O =0 A>548=5=85 8AB5:;>Connection timed outQAbstractSocket#75; =5 =0945=Host not foundQAbstractSocket!5BL =54>ABC?=0Network unreachableQAbstractSocketH?5@0F8O A A>:5B>< =5 ?>445@68205BAO$Operation on socket is not supportedQAbstractSocket$!>:5B =5 ?>4:;NGQ=Socket is not connectedQAbstractSocket,@5<O >?5@0F88 8AB5:;>Socket operation timed outQAbstractSocketR>?KB:0 ?>4:;NG8BLAO 2> 2@5<O ?>4:;NG5=8O1Trying to connect while connection is in progressQAbstractSocket&K45;8BL 2AQ &Select AllQAbstractSpinBox(03 22&5@E&Step upQAbstractSpinBox(03 2=&87 Step &downQAbstractSpinBox#<5=LH8BLDecreaseQAccessibleActionInterface$#<5=LH8BL 7=0G5=85Decrease the valueQAccessibleActionInterface#25;8G8BLIncreaseQAccessibleActionInterface$#25;8G8BL 7=0G5=85Increase the valueQAccessibleActionInterface 060BLPressQAccessibleActionInterface#AB0=>28BL$>:CASetFocusQAccessibleActionInterface #AB0=>28BL D>:CASets the focusQAccessibleActionInterface>:070BL5=NShowMenuQAccessibleActionInterface>:070BL <5=NShows the menuQAccessibleActionInterface!<5=8BLToggleQAccessibleActionInterface"!<5=8BL A>AB>O=85Toggles the stateQAccessibleActionInterface$K?>;=8BL 459AB285Triggers the actionQAccessibleActionInterface5BNoQAndroidPlatformTheme5B 4;O 2A5E No to AllQAndroidPlatformTheme0YesQAndroidPlatformTheme0 4;O 2A5E Yes to AllQAndroidPlatformThemej@>3@0<<5 %1 B@51C5BAO Qt %2, 0 8A?>;L7C5BAO Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplicationDH81:0 A>2<5AB8<>AB8 181;8>B5:8 QtIncompatible Qt Library Error QApplication ?@>3@0<<5AboutQCocoaMenuItem QtAbout QtQCocoaMenuItem>=D83C@ConfigQCocoaMenuItem>?8@>20BLCopyQCocoaMenuItemK@570BLCutQCocoaMenuItem KE>4ExitQCocoaMenuItem0@0<5B@KOptionsQCocoaMenuItemAB028BLPasteQCocoaMenuItem!2>9AB2 PreferenceQCocoaMenuItem 025@HQuitQCocoaMenuItemK45;8BL 2AQ Select AllQCocoaMenuItem0AB@>9:SettingQCocoaMenuItem 0AB@SetupQCocoaMenuItem&5 A>E@0=OBL Don't Save QCocoaThemeF&>1028BL : ?>;L7>20B5;LA:8< F25B0<&Add to Custom Colors QColorDialog&A=>2=K5 F25B0 &Basic colors QColorDialog.&>;L7>20B5;LA:85 F25B0&Custom colors QColorDialog&5;Q=K9:&Green: QColorDialog &HTML:&HTML: QColorDialog&@0A=K9:&Red: QColorDialog &0A:&Sat: QColorDialog &/@::&Val: QColorDialog&;LD0-:0=0;:A&lpha channel: QColorDialog!&8=89:Bl&ue: QColorDialog`C@A>@ 2 %1, %2, F25B: %3 06<8B5 ESC 4;O >B<5=K/Cursor at %1, %2, color: %3 Press ESC to cancel QColorDialog &">=:Hu&e: QColorDialog&7OBL F25B A M:@0=0Pick Screen Color QColorDialogK1>@ F25B0 Select Color QColorDialog5BFalse QComboBox2B:@KBL 2K?040NI89 A?8A>:"Open the combo box selection popup QComboBox0True QComboBox@3C<5=BK: Arguments:QCommandLineParser.B>1@078BL MBC A?@02:C.Displays this help.QCommandLineParser>B>1@078BL 8=D>@<0F8N > 25@A88.Displays version information.QCommandLineParser@BACBAB2C5B 7=0G5=85 ?>A;5 %1.Missing value after '%1'.QCommandLineParser0@0<5B@K:Options:QCommandLineParser@5>6840==>5 7=0G5=85 ?>A;5 %1.Unexpected value after '%1'.QCommandLineParser458725AB=K9 ?0@0<5B@ %1.Unknown option '%1'.QCommandLineParser458725AB=K5 ?0@0<5B@K: %1.Unknown options: %1.QCommandLineParser"A?>;L7>20=85: %1 Usage: %1QCommandLineParser[?0@0<5B@K] [options]QCommandLineParser%1: >H81:0 ftok%1: ftok failedQCoreApplication%1: ?CAB>9 :;NG%1: key is emptyQCoreApplication6%1: =52>7<>6=> A>740BL :;NG%1: unable to make keyQCoreApplicationLTRQT_LAYOUT_DIRECTIONQCoreApplication@8D Banner PagesQCupsJobWidget*;0BQ6=0O 8=D>@<0F8O:Billing information:QCupsJobWidget&3@0=8G5==K9 4>ABC? ClassifiedQCupsJobWidget!5:@5B=> ConfidentialQCupsJobWidget,=Q< (A 6:00 ?> 17:59)Day (06:00 to 17:59)QCupsJobWidget :>=F5:End:QCupsJobWidgetB;>68BLHold IndefinitelyQCupsJobWidget040=85JobQCupsJobWidget#?@02;5=85 Job ControlQCupsJobWidget@8>@8B5B: Job priority:QCupsJobWidget.>GLN (A 18:00 ?> 5:59)Night (18:00 to 05:59)QCupsJobWidget5BNoneQCupsJobWidget"0?5G0B0BL A59G0APrint ImmediatelyQCupsJobWidget$B;>65==0O ?5G0BL:Scheduled printing:QCupsJobWidgetD> 2B>@CN A<5=C (A 16:00 ?> 23:59)Second Shift (16:00 to 23:59)QCupsJobWidget&!>25@H5==> A5:@5B=>SecretQCupsJobWidget( >?@545;Q==>5 2@5<O Specific TimeQCupsJobWidget!B0=40@B=0OStandardQCupsJobWidget =0G0;5:Start:QCupsJobWidget> B@5BLN A<5=C (A 0:00 ?> 7:59)Third Shift (00:00 to 07:59)QCupsJobWidgetA>1>9 206=>AB8 Top SecretQCupsJobWidget&B:@KB0O 8=D>@<0F8O UnclassifiedQCupsJobWidgetD 2KE>4=K5 (AC11>B0 8 2>A:@5A5=L5)Weekend (Saturday to Sunday)QCupsJobWidget>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QDB2Driver,52>7<>6=> A>548=8BLAOUnable to connect QDB2Driver<52>7<>6=> >B:0B8BL B@0=70:F8NUnable to rollback transaction QDB2Driver^52>7<>6=> CAB0=>28BL 02B>7025@H5=85 B@0=70:F89Unable to set autocommit QDB2Driver:52>7<>6=> ?@82O70BL 7=0G5=85Unable to bind variable QDB2Result<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QDB2ResultB52>7<>6=> ?>;CG8BL ?5@2CN AB@>:CUnable to fetch first QDB2ResultH52>7<>6=> ?>;CG8BL A;54CNICN AB@>:CUnable to fetch next QDB2Result:52>7<>6=> ?>;CG8BL 70?8AL %1Unable to fetch record %1 QDB2Result@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit'B> MB>? What's This?QDialogOKOKQDialogButtonBox0B0 87<5=5=8O Date Modified QDirModel84Kind QDirModel<OName QDirModel  07<5@Size QDirModel"8?Type QDirModel"?5@0F8O >B<5=5=0Operation cancelled QDnsLookup@5 C40;>AL @0725@=CBL 8<O 4><5=0Could not expand domain nameQDnsLookupRunnable^4@5A0 IPv6 A5@25@>2 8<Q= 5IQ =5 ?>445@6820NBAO9IPv6 addresses for nameservers is currently not supportedQDnsLookupRunnable>5:>@@5:B=0O 70?8AL 04@5A0 IPv4Invalid IPv4 address recordQDnsLookupRunnable>5:>@@5:B=0O 70?8AL 04@5A0 IPv6Invalid IPv6 address recordQDnsLookupRunnableF5:>@@5:B=0O 70?8AL cannonical nameInvalid canonical name recordQDnsLookupRunnable.5:>@@5:B=>5 8<O 4><5=0Invalid domain nameQDnsLookupRunnable*5:>@@5:B=>5 8<O C7;0Invalid hostnameQDnsLookupRunnableB5:>@@5:B=0O 70?8AL mail exchangeInvalid mail exchange recordQDnsLookupRunnable>5:>@@5:B=0O 70?8AL name serverInvalid name server recordQDnsLookupRunnable65:>@@5:B=0O 70?8AL pointerInvalid pointer recordQDnsLookupRunnable4>;CG5= =5:>@@5:B=K9 >B25BInvalid reply receivedQDnsLookupRunnable65:>@@5:B=0O 70?8AL serviceInvalid service recordQDnsLookupRunnable05:>@@5:B=0O 70?8AL textInvalid text recordQDnsLookupRunnable&<O C7;0 =5 C:070=>No hostname givenQDnsLookupRunnable&><5= =5 ACI5AB2C5BNon existent domainQDnsLookupRunnableBIQ =5 ?>445@68205BAO ?>4 AndroidNot yet supported on AndroidQDnsLookupRunnableD$C=:F8O @07@5H5=8O 8<Q= =5 =0945=0Resolver functions not foundQDnsLookupRunnableV5 C40;>AL 8=8F80;878@>20BL @07@5H5=85 8<Q=Resolver initialization failedQDnsLookupRunnable5 C40;>AL 703@C78BL 181;8>B5:C 4;O @07@5H5=8O 8<Q=: 703@C7:0 181;8>B5: 2> 2@5<O @01>BK =5 ?>445@68205BAODResolver library can't be loaded: No runtime library loading supportQDnsLookupRunnable@!5@25@ =5 A<>3 >1@01>B0BL 70?@>AServer could not process queryQDnsLookupRunnableH81:0 A5@25@0Server failureQDnsLookupRunnable,!5@25@ >B:;>=8; 70?@>AServer refused to answerQDnsLookupRunnable0:@KBLClose QDockWidget 0:@K205B 28465BCloses the dock widget QDockWidget;020NI55Float QDockWidgetFBA>548=O5B 8 ?5@53@C??8@C5B 28465B'Undocks and re-attaches the dock widget QDockWidget&0:@KBL&OK QErrorMessageL&>:07K20BL MB> A>>1I5=85 2 40;L=59H5<&Show this message again QErrorMessage*B;04>G=>5 A>>1I5=85:Debug Message: QErrorMessage&@8B8G5A:0O >H81:0: Fatal Error: QErrorMessage@54C?@5645=85:Warning: QErrorMessage@52>7<>6=> A>740BL %1 4;O 2K2>40Cannot create %1 for outputQFile>52>7<>6=> >B:@KBL %1 4;O 22>40Cannot open %1 for inputQFile:52>7<>6=> >B:@KBL 4;O 2K2>40Cannot open for outputQFile@52>7<>6=> C40;8BL 8AE>4=K9 D09;Cannot remove source fileQFile$09; ACI5AB2C5BDestination file existsQFileR$09; =07=0G5=8O B0:>9 65, GB> 8 8AE>4=K9."Destination file is the same file.QFileF>7=8:;0 >H81:0 ?@8 ?5@58<5=>20=88.Error while renaming.QFile"!1>9 70?8A8 1;>:0Failure to write blockQFile4AE>4=K9 D09; >BACBAB2C5B.Source file does not exist.QFileB5 C40;>AL 2>AAB0=>28BL 87 %1: %2Unable to restore from %1: %2QFile>A;54>20B5;L=K9 D09; =5 1C45B ?5@58<5=>20= A 8A?>;L7>20=85< ?>1;>G=>3> :>?8@>20=8O0Will not rename sequential file using block copyQFilet5B D09;>2>3> 4286:0 8;8 >= =5 ?>445@68205B UnMapExtensionBNo file engine available or engine does not support UnMapExtension QFileDevice%1 0B0;>3 =5 =0945=. @>25@LB5 ?@028;L=>ABL C:070==>3> 8<5=8 :0B0;>30.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 $09; =5 =0945=. @>25@LB5 ?@028;L=>ABL C:070==>3> 8<5=8 D09;0.A%1 File not found. Please verify the correct file name was given. QFileDialog$09; %1%1 File QFileDialogN%1 C65 ACI5AB2C5B. %>B8B5 70<5=8BL 53>?-%1 already exists. Do you want to replace it? QFileDialog&K1@0BL&Choose QFileDialog&#40;8BL&Delete QFileDialog&>20O ?0?:0 &New Folder QFileDialog&B:@KBL&Open QFileDialog&5@58<5=>20BL&Rename QFileDialog&!>E@0=8BL&Save QFileDialogl%1 70I8IQ= >B 70?8A8. 59AB28B5;L=> 65;05B5 C40;8BL?9'%1' is write protected. Do you want to delete it anyway? QFileDialogA524>=8<Alias QFileDialogA5 D09;K (*) All Files (*) QFileDialogA5 D09;K (*) All files (*) QFileDialogAlt+LeftAlt+Left QFileDialogAlt+Right Alt+Right QFileDialog Alt+UpAlt+Up QFileDialog*5;05B5 C40;8BL %1?%Are you sure you want to delete '%1'? QFileDialog 0704Back QFileDialog:5@5:;NG8BL 2 ?>4@>1=K9 @568<Change to detail view mode QFileDialog45@5:;NG8BL 2 @568< A?8A:0Change to list view mode QFileDialog65 C40;>AL C40;8BL :0B0;>3.Could not delete directory. QFileDialog!>740BL ?0?:CCreate New Folder QFileDialog&!>740BL =>2CN ?0?:CCreate a New Folder QFileDialog#40;8BLDelete QFileDialog>4@>1=K9 284 Detail View QFileDialog0B0;>38 Directories QFileDialog0B0;>3: Directory: QFileDialog8A:Drive QFileDialog$09;File QFileDialog&<O D09;0: File &name: QFileDialog0?:0 A D09;0<8 File Folder QFileDialog $09;KFiles QFileDialog"8?K D09;>2:Files of type: QFileDialog09B8 :0B0;>3Find Directory QFileDialog 0?:0Folder QFileDialog ?5@Q4Forward QFileDialog 0704Go back QFileDialog ?5@Q4 Go forward QFileDialog<5@59B8 2 @>48B5;LA:89 :0B0;>3Go to the parent directory QFileDialog !?8A>: List View QFileDialog 5AB0 8 70:;04:8List of places and bookmarks QFileDialog5@59B8 ::Look in: QFileDialog>9 :><?LNB5@ My Computer QFileDialog>20O ?0?:0 New Folder QFileDialogB:@KBLOpen QFileDialog( >48B5;LA:89 :0B0;>3Parent Directory QFileDialog$5402=85 4>:C<5=BK Recent Places QFileDialog#40;8BLRemove QFileDialog!>E@0=8BL :0:Save As QFileDialog /@;K:Shortcut QFileDialog>:070BL Show  QFileDialog.>:070BL A:&@KBK5 D09;KShow &hidden files QFileDialog>:>20O ?0=5;LSidebar QFileDialog58725AB=K9Unknown QFileDialog %1 1%1 GBQFileSystemModel %1 1%1 KBQFileSystemModel %1 1%1 MBQFileSystemModel %1 "1%1 TBQFileSystemModel%1 109B %1 byte(s)QFileSystemModel%1 109B%1 bytesQFileSystemModel<b><O %1 =5 <>65B 1KBL 8A?>;L7>20=>.</b><p>>?@>1C9B5 8A?>;L7>20BL 8<O <5=LH59 4;8=K 8/8;8 157 A8<2>;>2 ?C=:BC0F88.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel><?LNB5@ComputerQFileSystemModel0B0 87<5=5=8O Date ModifiedQFileSystemModel,5:>@@5:B=>5 8<O D09;0Invalid filenameQFileSystemModel84KindQFileSystemModel>9 :><?LNB5@ My ComputerQFileSystemModel<ONameQFileSystemModel  07<5@SizeQFileSystemModel"8?TypeQFileSystemModel N10OAny QFontDatabase@01A:0OArabic QFontDatabase@<O=A:0OArmenian QFontDatabase5=30;LA:0OBengali QFontDatabase 'Q@=K9Black QFontDatabase 8@=K9Bold QFontDatabase8@8;;8F0Cyrillic QFontDatabase!@54=89Demi QFontDatabase>;C68@=K9 Demi Bold QFontDatabase520=038@8 Devanagari QFontDatabase@C78=A:0OGeorgian QFontDatabase@5G5A:0OGreek QFontDatabaseC460@0B8Gujarati QFontDatabaseC@<C:E8Gurmukhi QFontDatabase 2@8BHebrew QFontDatabase C@A82Italic QFontDatabase/?>=A:0OJapanese QFontDatabase0==040Kannada QFontDatabaseE<5@A:0OKhmer QFontDatabase>@59A:0OKorean QFontDatabase0>AA:0OLao QFontDatabase0B8=8F0Latin QFontDatabase!25B;K9Light QFontDatabase0;09O;0< Malayalam QFontDatabase LO=<0Myanmar QFontDatabase:>N'Ko QFontDatabase1KG=K9Normal QFontDatabase0:;>==K9Oblique QFontDatabase30<8G5A:0OOgham QFontDatabase@8OOriya QFontDatabase C=8G5A:0ORunic QFontDatabase(8B09A:0O C?@>IQ==0OSimplified Chinese QFontDatabase!8=30;LA:0OSinhala QFontDatabase!8<2>;L=0OSymbol QFontDatabase!8@89A:0OSyriac QFontDatabase"0<8;LA:0OTamil QFontDatabase "5;C3CTelugu QFontDatabase "00=0Thaana QFontDatabase"09A:0OThai QFontDatabase"815BA:0OTibetan QFontDatabase,8B09A:0O B@048F8>==0OTraditional Chinese QFontDatabaseL5B=0<A:0O Vietnamese QFontDatabase &(@8DB&Font QFontDialog& 07<5@&Size QFontDialog&>4GQ@:=CBK9 &Underline QFontDialog-DD5:BKEffects QFontDialog&0G5@B0=85 Font st&yle QFontDialog @8<5@Sample QFontDialogK1>@ H@8DB0 Select Font QFontDialog0GQ@&:=CBK9 Stri&keout QFontDialog&!8AB5<0 ?8AL<0Wr&iting System QFontDialog<5 C40;>AL A<5=8BL :0B0;>3: %1Changing directory failed: %1QFtpB#AB0=>2;5=> A>548=5=85 A C7;>< %1Connected to host %1QFtpD5 C40;>AL A>548=8BLAO A C7;><: %1Connecting to host failed: %1QFtp$!>548=5=85 70:@KB>Connection closedQFtp@ A>548=5=88 A C7;>< %1 >B:070=>Connection refused to host %1QFtpL@5<O =0 A>548=5=85 A C7;>< %1 8AB5:;>Connection timed out to host %1QFtp<5 C40;>AL A>740BL :0B0;>3: %1Creating directory failed: %1QFtpbB:;>=5=0 ?>?KB:0 ?>4:;NG5=8O 4;O ?5@540G8 40==KEData Connection refusedQFtp:5 C40;>AL 703@C78BL D09;: %1Downloading file failed: %1QFtp"#75; %1 =5 =0945=Host %1 not foundQFtp@5 C40;>AL ?@>G8B0BL :0B0;>3: %1Listing directory failed: %1QFtp:5 C40;>AL 02B>@87>20BLAO: %1Login failed: %1QFtp2!>548=5=85 =5 CAB0=>2;5=> Not connectedQFtp<5 C40;>AL C40;8BL :0B0;>3: %1Removing directory failed: %1QFtp65 C40;>AL C40;8BL D09;: %1Removing file failed: %1QFtp$58725AB=0O >H81:0 Unknown errorQFtp:5 C40;>AL >B3@C78BL D09;: %1Uploading file failed: %1QFtpB&<5=0&Cancel QGnomeTheme&0:@KBL&Close QGnomeTheme&OK&OK QGnomeTheme&!>E@0=8BL&Save QGnomeTheme,0:@KBL 157 A>E@0=5=8OClose without Saving QGnomeTheme$<O C7;0 =5 7040=>No host name given QHostInfo$58725AB=0O >H81:0 Unknown error QHostInfo#75; =5 =0945=Host not foundQHostInfoAgent*5:>@@5:B=>5 8<O C7;0Invalid hostnameQHostInfoAgent$<O C7;0 =5 7040=>No host name givenQHostInfoAgent,58725AB=K9 B8? 04@5A0Unknown address typeQHostInfoAgent$58725AB=0O >H81:0 Unknown errorQHostInfoAgent.58725AB=0O >H81:0 (%1)Unknown error (%1)QHostInfoAgent$!>548=5=85 70:@KB>Connection closedQHttp*B:070=> 2 A>548=5=88Connection refusedQHttp"0==K5 ?>2@5645=KData corruptedQHttp"#75; %1 =5 =0945=Host %1 not foundQHttp0#75; B@51C5B 02B>@870F8NHost requires authenticationQHttpF@5<O =0 >?5@0F8N A A>:5B>< 8AB5:;>Proxy requires authenticationQHttp628B8@>20=85 SSL =5 C40;>ALSSL handshake failedQHttp6#:070= =58725AB=K9 ?@>B>:>;Unknown protocol specifiedQHttp*"@51C5BAO 02B>@870F8OAuthentication requiredQHttpSocketEngineN5 ?>;CG5= HTTP->B25B >B ?@>:A8-A5@25@0(Did not receive HTTP response from proxyQHttpSocketEngineXH81:0 >1<5=0 40==K<8 A ?@>:A8-A5@25@>< HTTP#Error communicating with HTTP proxyQHttpSocketEnginehH81:0 @071>@0 70?@>A0 02B>@870F88 >B ?@>:A8-A5@25@0/Error parsing authentication request from proxyQHttpSocketEngine^!>548=5=85 A ?@>:A8-A5@25@>< =5>6840==> 70:@KB>#Proxy connection closed prematurelyQHttpSocketEngineJ A>548=5=88 ?@>:A8-A5@25@>< >B:070=>Proxy connection refusedQHttpSocketEngineB@>:A8-A5@25@ 70?@5B8; A>548=5=85Proxy denied connectionQHttpSocketEngineZ@5<O =0 A>548=5=85 A ?@>:A8-A5@25@>< 8AB5:;>!Proxy server connection timed outQHttpSocketEngine.@>:A8-A5@25@ =5 =0945=Proxy server not foundQHttpSocketEngine85 C40;>AL =0G0BL B@0=70:F8NCould not start transaction QIBaseDriver6H81:0 >B:@KB8O 107K 40==KEError opening database QIBaseDriver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QIBaseDriver<52>7<>6=> >B:0B8BL B@0=70:F8NUnable to rollback transaction QIBaseDriverd5 C40;>AL ?>;CG8BL @5AC@AK 4;O A>740=8O 2K@065=8OCould not allocate statement QIBaseResultJ5 C40;>AL >?8A0BL 2E>4OI55 2K@065=85"Could not describe input statement QIBaseResult85 C40;>AL >?8A0BL 2K@065=85Could not describe statement QIBaseResultJ5 C40;>AL ?>;CG8BL A;54CNI89 M;5<5=BCould not fetch next item QIBaseResult.5 C40;>AL =09B8 <0AA82Could not find array QIBaseResult>5 C40;>AL =09B8 40==K5 <0AA820Could not get array data QIBaseResultJ5 C40;>AL =09B8 8=D>@<0F8N > 70?@>A5Could not get query info QIBaseResultN5 C40;>AL =09B8 8=D>@<0F8N > 2K@065=88Could not get statement info QIBaseResult@5 C40;>AL ?>43>B>28BL 2K@065=85Could not prepare statement QIBaseResult85 C40;>AL =0G0BL B@0=70:F8NCould not start transaction QIBaseResult852>7<>6=> 70:@KBL 2K@065=85Unable to close statement QIBaseResult>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QIBaseResult.52>7<>6=> A>740BL BLOBUnable to create BLOB QIBaseResult652>7<>6=> 2K?>;=8BL 70?@>AUnable to execute query QIBaseResult.52>7<>6=> >B:@KBL BLOBUnable to open BLOB QIBaseResult252>7<>6=> ?@>G8B0BL BLOBUnable to read BLOB QIBaseResult052>7<>6=> 70?8A0BL BLOBUnable to write BLOB QIBaseResultD5B A2>1>4=>3> <5AB0 =0 CAB@>9AB25No space left on device QIODevice<$09; 8;8 :0B0;>3 =5 ACI5AB2C5BNo such file or directory QIODevice>ABC? 70?@5IQ=Permission denied QIODevice:!;8H:>< <=>3> >B:@KBKE D09;>2Too many open files QIODevice$58725AB=0O >H81:0 Unknown error QIODeviceF>B:@K205<K9 D09; O2;O5BAO :0B0;>3><file to open is a directory QIODevice$09; =5 =0945=File not found QImageReader.5:>@@5:B=>5 CAB@>9AB2>Invalid device QImageReaderN5 C40;>AL ?@>G8B0BL 40==K5 87>1@065=8OUnable to read image data QImageReader$58725AB=0O >H81:0 Unknown error QImageReaderF5?>445@68205<K9 D>@<0B 87>1@065=8OUnsupported image format QImageReader(#AB@>9AB2> =5 7040=>Device is not set QImageWriterB#AB@>9AB2> =5 ?>445@68205B 70?8ALDevice not writable QImageWriter$58725AB=0O >H81:0 Unknown error QImageWriterF5?>445@68205<K9 D>@<0B 87>1@065=8OUnsupported image format QImageWriter"#:068B5 7=0G5=85:Enter a value: QInputDialog.<CA>@ 2 :>=F5 4>:C<5=B0"garbage at the end of the documentQJsonParseError$=5:>@@5:B=>5 G8A;>illegal numberQJsonParseError*=54>?CAB8<>5 7=0G5=85 illegal valueQJsonParseErrorH=5:>@@5:B=0O ?>A;54>20B5;L=>ABL UTF8invalid UTF8 stringQJsonParseErrorF=5:>@@5:B=0O ESC-?>A;54>20B5;L=>ABLinvalid escape sequenceQJsonParseError<=5:>@@5:B=>5 7025@H5=85 G8A;><invalid termination by numberQJsonParseError8>BACBAB2C5B @0745;8B5;L 8<Q=missing name separatorQJsonParseError@>BACBAB2C5B @0745;8B5;L 7=0G5=89missing value separatorQJsonParseError$>H81:8 >BACBAB2CNBno error occurredQJsonParseError<>BACBAB2C5B >1J5:B ?>A;5 B>G:8object is missing after a commaQJsonParseErrorV4>:C<5=B 8<55B A;8H:>< 3;C1>:CN 2;>65==>ABLtoo deeply nested documentQJsonParseError0A;8H:>< 1>;LH>9 4>:C<5=Btoo large documentQJsonParseError(=57025@HQ==K9 <0AA82unterminated arrayQJsonParseError(57025@HQ==K9 >1J5:Bunterminated objectQJsonParseError(=57025@HQ==0O AB@>:0unterminated stringQJsonParseError%1, ...%1, ...QKeySequenceEdit006<8B5 A>G5B0=85 :;028HPress shortcutQKeySequenceEditX%1 O2;O5BAO =5:>@@5:B=K< >1J5:B>< ELF (%2)"'%1' is an invalid ELF object (%2)QLibrary"%1 =5 ?;038= Qt'%1' is not a Qt pluginQLibraryN%1 =525@=K9 18=0@=K9 D09; Mach-O (%2)&'%1' is not a valid Mach-O binary (%2)QLibrary:%1 =5 O2;O5BAO >1J5:B>< ELF'%1' is not an ELF objectQLibraryD%1 =5 O2;O5BAO >1J5:B>< ELF (%2)'%1' is not an ELF object (%2)QLibraryL52>7<>6=> 703@C78BL 181;8>B5:C %1: %2Cannot load library %1: %2QLibraryR52>7<>6=> @07@5H8BL A8<2>; %1 2 %2: %3$Cannot resolve symbol "%1" in %2: %3QLibraryL52>7<>6=> 2K3@C78BL 181;8>B5:C %1: %2Cannot unload library %1: %2QLibraryf@>25@>G=0O 8=D>@<0F8O 4;O <>4C;O %1 =5 A>2?0405B)Plugin verification data mismatch in '%1'QLibrary\$09; %1  =5 O2;O5BAO :>@@5:B=K< <>4C;5< Qt.'The file '%1' is not a valid Qt plugin.QLibrary>4C;L %1 8A?>;L7C5B =5A><5AB8<CN 181;8>B5:C Qt. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibrary>4C;L %1 8A?>;L7C5B =5A><5AB8<CN 181;8>B5:C Qt. (52>7<>6=> A>2<5AB8BL @5;87=K5 8 >B;04>G=K5 181;8>B5:8.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryF8=0<8G5A:0O 181;8>B5:0 =5 =0945=0.!The shared library was not found.QLibrary$58725AB=0O >H81:0 Unknown errorQLibraryD09; ?>2@564Q=file is corruptQLibrary D09; A;8H:>< <0;file too smallQLibrary2=525@=K9 845=B8D8:0B>@ %1invalid magic %1QLibraryD=5B ?>4E>4OI59 0@E8B5:BC@K 2 D09;5&no suitable architecture in fat binaryQLibrary4=5 48=0<8G5A:0O 181;8>B5:0not a dynamic libraryQLibrary(=525@=0O 0@E8B5:BC@0wrong architectureQLibrary&>?8@>20BL&Copy QLineEdit&AB028BL&Paste QLineEdit&&>2B>@8BL 459AB285&Redo QLineEdit$&B<5=8BL 459AB285&Undo QLineEdit&K@570BLCu&t QLineEdit#40;8BLDelete QLineEditK45;8BL 2AQ Select All QLineEdit,%1: 4@5A 8A?>;L7C5BAO%1: Address in use QLocalServer(%1: 5:>@@5:B=>5 8<O%1: Name error QLocalServer&%1: >ABC? 70?@5IQ=%1: Permission denied QLocalServer2%1: 58725AB=0O >H81:0 %2%1: Unknown error %2 QLocalServer&%1: >ABC? 70?@5IQ=%1: Access denied QLocalSocket*%1: H81:0 A>548=5=8O%1: Connection error QLocalSocket2%1: B:070=> 2 A>548=5=88%1: Connection refused QLocalSocket<%1: 0B03@0<<0 A;8H:>< 1>;LH0O%1: Datagram too large QLocalSocket(%1: 5:>@@5:B=>5 8<O%1: Invalid name QLocalSocketn%1: ?5@0F8O =5 @07@5H5=0, :>340 A>:5B 2 MB>< A>AB>O=888%1: Operation not permitted when socket is in this state QLocalSocket<%1: 0:@KB> C40;5==>9 AB>@>=>9%1: Remote closed QLocalSocket:%1: H81:0 >1@0I5=8O : A>:5BC%1: Socket access error QLocalSocketN%1: @5<O =0 >?5@0F8N A A>:5B>< 8AB5:;>%1: Socket operation timed out QLocalSocketH%1: H81:0 2K45;5=8O @5AC@A>2 A>:5B0%1: Socket resource error QLocalSocketP%1: ?5@0F8O A A>:5B>< =5 ?>445@68205BAO)%1: The socket operation is not supported QLocalSocket,%1: 58725AB=0O >H81:0%1: Unknown error QLocalSocket2%1: 58725AB=0O >H81:0 %2%1: Unknown error %2 QLocalSocketR>?KB:0 ?>4:;NG8BLAO 2> 2@5<O ?>4:;NG5=8O1Trying to connect while connection is in progress QLocalSocket852>7<>6=> =0G0BL B@0=70:F8NUnable to begin transaction QMYSQLDriver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QMYSQLDriver,52>7<>6=> A>548=8BLAOUnable to connect QMYSQLDriverF52>7<>6=> >B:@KBL 107C 40==KE %1Unable to open database '%1' QMYSQLDriver<52>7<>6=> >B:0B8BL B@0=70:F8NUnable to rollback transaction QMYSQLDriverX52>7<>6=> ?@82O70BL @57C;LB8@CNI85 7=0G5=8OUnable to bind outvalues QMYSQLResult:52>7<>6=> ?@82O70BL 7=0G5=85Unable to bind value QMYSQLResultJ52>7<>6=> 2K?>;=8BL A;54CNI89 70?@>AUnable to execute next query QMYSQLResult652>7<>6=> 2K?>;=8BL 70?@>AUnable to execute query QMYSQLResult<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QMYSQLResult452>7<>6=> ?>;CG8BL 40==K5Unable to fetch data QMYSQLResult@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QMYSQLResult:52>7<>6=> A1@>A8BL 2K@065=85Unable to reset statement QMYSQLResultP52>7<>6=> A>E@0=8BL A;54CNI89 @57C;LB0BUnable to store next result QMYSQLResult<52>7<>6=> A>E@0=8BL @57C;LB0BUnable to store result QMYSQLResulth52>7<>6=> A>E@0=8BL @57C;LB0BK 2K?>;=5=8O 2K@065=8O!Unable to store statement results QMYSQLResult(5>703;02;5=>) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow&0:@KBL&Close QMdiSubWindow&5@5<5AB8BL&Move QMdiSubWindow&>AAB0=>28BL&Restore QMdiSubWindow& 07<5@&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow0:@KBLClose QMdiSubWindow!?@02:0Help QMdiSubWindow &0A?0E=CBL Ma&ximize QMdiSubWindow 0A?0E=CBLMaximize QMdiSubWindow5=NMenu QMdiSubWindow&!25@=CBL Mi&nimize QMdiSubWindow!25@=CBLMinimize QMdiSubWindow>AAB0=>28BLRestore QMdiSubWindow>AAB0=>28BL Restore Down QMdiSubWindow(!25@=CBL 2 703>;>2>:Shade QMdiSubWindow$AB020BLAO &A25@EC Stay on &Top QMdiSubWindow2>AAB0=>28BL 87 703>;>2:0Unshade QMdiSubWindowz<h3> Qt</h3><p>0==0O ?@>3@0<<0 8A?>;L7C5B Qt 25@A88 %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox l<p>Qt  MB> 8=AB@C<5=B0@89 4;O @07@01>B:8 :@>AA?;0BD>@<5==KE ?@8;>65=89 =0 C++.</p><p>Qt ?@54>AB02;O5B A>2<5AB8<>ABL =0 C@>2=5 8AE>4=KE B5:AB>2 <564C 4;O 2A5E ?>?C;O@=KE =0AB>;L=KE >?5@0F8>==KE A8AB5<. "0:65 Qt 4>ABC?=0 4;O 2AB@08205<>3> Linux 8 4@C38E <>18;L=KE >?5@0F8>==KE A8AB5<.</p><p>Qt 4>ABC?=0 ?>4 B@5<O @07;8G=K<8 ;8F5=78O<8, @07@01>B0==K<8 4;O C4>2;5B2>@5=8O B@51>20=89 @07=KE ?>;L7>20B5;59.</p><p>Qt ?>4 =0H59 :><<5@G5A:>9 ;8F5=7859 ?@54=07=0G5=0 4;O @0728B8O ?@>?@85B0@=>3>/:><<5@G5A:>3> ?@>3@0<<=>3> >15A?5G5=8O, :>340 =5B 65;0=8O/ ?@54>AB02;OBL 8AE>4=K5 B5:ABK B@5BL8< ;8F0< 2 A;CG05 =52>7<>6=>AB8 ?@8=OB8O CA;>289 ;8F5=789 GNU LGPL 25@A88 3 8;8 GNU LGPL 25@A88 2.1.</p><p>Qt ?>4 ;8F5=7859 GNU LGPL 25@A88 3 ?@54=07=0G5=0 4;O @07@01>B:8 ?@>3@0<<=>3> >15A?5G5=8O C4>2;5B2>@ONI53> B@51>20=8O< ;8F5=788 GNU LGPL 25@A88 3.</p><p>Qt ?>4 ;8F5=7859 GNU LGPL 25@A88 2.1 ?@54=07=0G5=0 4;O @07@01>B:8 ?@>3@0<<=>3> >15A?5G5=8O C4>2;5B2>@ONI53> B@51>20=8O< ;8F5=788 GNU LGPL 25@A88 2.1.</p><p>>4@>1=55 A CA;>28O<8 ;8F5=78@>20=8O Qt <>6=> >7=0:><8BLAO =0 A09B5 <a href="http://%2/">%2</a>.</p><p>Copyright (C) %1 Digia Plc 8/8;8 5Q 4>G5@=85 ?>4@0745;5=8O 8 4@C385 CG0AB=8:8.</p><p>Qt, :0: >B:@KBK9 ?@>5:B, @07@010BK205BAO =0 <a href="http://qt-project.org/">qt-project.org</a>.</p><p>Qt  ?@>4C:B :><?0=88 Digia, @07@010BK205<K9 2 :0G5AB25 ?@>5:B0 A >B:@KBK<8 8AE>4=K<8 B5:AB0<8. >;55 ?>4@>1=CN 8=D>@<0F8N <>6=> =09B8 =0 A09B5 <a href="http://%3/">%3</a>.</p>c

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across all major desktop operating systems. It is also available for embedded Linux and other embedded and mobile operating systems.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 3 or GNU LGPL version 2.1.

Qt licensed under the GNU LGPL version 3 is appropriate for the development of Qt applications provided you can comply with the terms and conditions of the GNU LGPL version 3.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Please see %2 for an overview of Qt licensing.

Copyright (C) %1 Digia Plc and/or its subsidiary(-ies) and other contributors.

Qt and the Qt logo are trademarks of Digia Plc and/or its subsidiary(-ies).

Qt is a Digia product developed as an open source project. See %3 for more information.

 QMessageBox QtAbout Qt QMessageBox!?@02:0Help QMessageBox*!:@KBL ?>4@>1=>AB8...Hide Details... QMessageBox0:@KBLOK QMessageBox.>:070BL ?>4@>1=>AB8...Show Details... QMessageBoxN@C3>9 A>:5B C65 ?@>A;CH8205B MB>B ?>@B4Another socket is already listening on the same portQNativeSocketEngine|>?KB:0 8A?>;L7>20BL IPv6 =0 ?;0BD>@<5, =5 ?>445@6820NI59 IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine*B:070=> 2 A>548=5=88Connection refusedQNativeSocketEngine6@5<O =0 A>548=5=85 8AB5:;>Connection timed outQNativeSocketEngineN0B03@0<<0 A;8H:>< 1>;LH0O 4;O >B?@02:8Datagram was too large to sendQNativeSocketEngine#75; =54>ABC?5=Host unreachableQNativeSocketEngine<5:>@@5:B=K9 45A:@8?B>@ A>:5B0Invalid socket descriptorQNativeSocketEngineH81:0 A5B8 Network errorQNativeSocketEngineB@5<O =0 A5B52CN >?5@0F8N 8AB5:;>Network operation timed outQNativeSocketEngine!5BL =54>ABC?=0Network unreachableQNativeSocketEngine*?5@0F8O A =5-A>:5B><Operation on non-socketQNativeSocketEngine*54>AB0B>G=> @5AC@A>2Out of resourcesQNativeSocketEngine>ABC? 70?@5IQ=Permission deniedQNativeSocketEngine4@>B>:>; =5 ?>445@68205BAOProtocol type not supportedQNativeSocketEngine @5<5==0O >H81:0Temporary errorQNativeSocketEngine 4@5A =54>ABC?5=The address is not availableQNativeSocketEngine4@5A 70I8IQ=The address is protectedQNativeSocketEngine,4@5A C65 8A?>;L7C5BAO#The bound address is already in useQNativeSocketEnginef5:>@@5:B=K9 B8? ?@>:A8-A5@25@0 4;O 40==>9 >?5@0F88,The proxy type is invalid for this operationQNativeSocketEngine@#40;Q==K9 C75; 70:@K; A>548=5=85%The remote host closed the connectionQNativeSocketEnginef52>7<>6=> 8=8F80;878@>20BL H8@>:>25I0B5;L=K9 A>:5B%Unable to initialize broadcast socketQNativeSocketEngineX52>7<>6=> 8=8F80;878@>20BL =5-1;>G=K9 A>:5B(Unable to initialize non-blocking socketQNativeSocketEngine:52>7<>6=> ?>;CG8BL A>>1I5=85Unable to receive a messageQNativeSocketEngine<52>7<>6=> >B?@028BL A>>1I5=85Unable to send a messageQNativeSocketEngine&52>7<>6=> 70?8A0BLUnable to writeQNativeSocketEngine$58725AB=0O >H81:0 Unknown errorQNativeSocketEngineH?5@0F8O A A>:5B>< =5 ?>445@68205BAOUnsupported socket operationQNativeSocketEngine$H81:0 >B:@KB8O %1Error opening %1QNetworkAccessCacheBackend(5:>@@5:B=K9 URI: %1Invalid URI: %1QNetworkAccessDataBackendf#40;Q==K9 C75; =5>6840==> ?@5@20; A>548=5=85 4;O %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend.H8:0 A>:5B0 4;O %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackend,H81:0 70?8A8 2 %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackendZ52>7<>6=> >B:@KBL %1: #:070= ?CBL : :0B0;>3C#Cannot open %1: Path is a directoryQNetworkAccessFileBackend,H81:0 >B:@KB8O %1: %2Error opening %1: %2QNetworkAccessFileBackend.H81:0 GB5=8O 87 %1: %2Read error reading from %1: %2QNetworkAccessFileBackend`0?@>A =0 >B:@KB85 D09;0 2=5 D09;>2>9 A8AB5<K %1%Request for opening non-local file %1QNetworkAccessFileBackend,H81:0 70?8A8 2 %1: %2Write error writing to %1: %2QNetworkAccessFileBackendZ52>7<>6=> >B:@KBL %1: #:070= ?CBL : :0B0;>3CCannot open %1: is a directoryQNetworkAccessFtpBackendBH81:0 2 ?@>F5AA5 703@C7:8 %1: %2Error while downloading %1: %2QNetworkAccessFtpBackendBH81:0 2 ?@>F5AA5 >B3@C7:8 %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendb!>548=5=85 A %1 =5 C40;>AL: B@51C5BAO 02B>@870F8O0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendD>4E>4OI89 ?@>:A8-A5@25@ =5 =0945=No suitable proxy foundQNetworkAccessFtpBackend.>ABC? 2 A5BL >B:;NGQ=.Network access is disabled.QNetworkAccessManager8$>=>2K5 70?@>AK =54>?CAB8<K.Background request not allowed. QNetworkReplyLH81:0 703@C7:8 %1  >B25B A5@25@0: %2)Error downloading %1 - server replied: %2 QNetworkReply,H81:0 A5B52>9 A5AA88.Network session error. QNetworkReply258725AB=K9 ?@>B>:>; %1Protocol "%1" is unknown QNetworkReply,@5<5==0O >H81:0 A5B8.Temporary network failure. QNetworkReply0>H81:0 70?CA:0 4@0925@0.backend start error. QNetworkReplyD>4E>4OI89 ?@>:A8-A5@25@ =5 =0945=No suitable proxy foundQNetworkReplyHttpImpl"?5@0F8O >B<5=5=0Operation canceledQNetworkReplyHttpImpl"?5@0F8O >B<5=5=0Operation canceledQNetworkReplyImpl45:>@@5:B=0O :>=D83C@0F8O.Invalid configuration.QNetworkSession> >C<8=3 ?@5@20= 8;8 =52>7<>65=.'Roaming was aborted or is not possible.QNetworkSessionPrivateImpl\"@51C5<0O >?5@0F8O =5 ?>445@68205BAO A8AB5<>9.7The requested operation is not supported by the system.QNetworkSessionPrivateImpl`!5AA8O 1K;0 ?@5@20=0 ?>;L7>20B5;5< 8;8 A8AB5<>9..The session was aborted by the user or system.QNetworkSessionPrivateImpl^52>7<>6=> 8A?>;L7>20BL C:070==CN :>=D83C@0F8N.+The specified configuration cannot be used.QNetworkSessionPrivateImpl458725AB=0O >H81:0 A5AA88.Unknown session error.QNetworkSessionPrivateImpl852>7<>6=> =0G0BL B@0=70:F8NUnable to begin transaction QOCIDriver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QOCIDriver652>7<>6=> 8=8F80;878@>20BLUnable to initialize QOCIDriver252>7<>6=> 02B>@87>20BLAOUnable to logon QOCIDriver<52>7<>6=> >B:0B8BL B@0=70:F8NUnable to rollback transaction QOCIDriver852>7<>6=> A>740BL 2K@065=85Unable to alloc statement QOCIResultj52>7<>6=> ?@82O70BL AB>;15F 4;O ?0:5B=>3> 2K?>;=5=8O'Unable to bind column for batch execute QOCIResultX52>7<>6=> ?@82O70BL @57C;LB8@CNI85 7=0G5=8OUnable to bind value QOCIResultN52>7<>6=> 2K?>;=8BL ?0:5B=>5 2K@065=85!Unable to execute batch statement QOCIResult<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QOCIResultF52>7<>6=> >?@545;8BL B8? 2K@065=8OUnable to get statement type QOCIResultJ52>7<>6=> ?5@59B8 : A;54CNI59 AB@>:5Unable to goto next QOCIResult@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QOCIResult>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QODBCDriver,52>7<>6=> A>548=8BLAOUnable to connect QODBCDriver52>7<>6=> A>548=8BLAO  @0925@ =5 ?>445@68205B B@51C5<K9 DC=:F8>=0;EUnable to connect - Driver doesn't support all functionality required QODBCDriver\52>7<>6=> >B:;NG8BL 02B>7025@H5=85 B@0=70:F89Unable to disable autocommit QODBCDriverZ52>7<>6=> 2:;NG8BL 02B>7025@H5=85 B@0=70:F89Unable to enable autocommit QODBCDriver<52>7<>6=> >B:0B8BL B@0=70:F8NUnable to rollback transaction QODBCDriverQODBCResult::reset: 52>7<>6=> CAB0=>28BL SQL_CURSOR_STATIC 0B@81CB>< 2K@065=85. @>25@LB5 =0AB@>9:8 4@0925@0 ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult:52>7<>6=> ?@82O70BL 7=0G5=85Unable to bind variable QODBCResult<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QODBCResult452>7<>6=> ?>;CG8BL 40==K5Unable to fetch QODBCResultB52>7<>6=> ?>;CG8BL ?5@2CN AB@>:CUnable to fetch first QODBCResultH52>7<>6=> ?>;CG8BL ?>A;54=NN AB@>:CUnable to fetch last QODBCResultH52>7<>6=> ?>;CG8BL A;54CNICN AB@>:CUnable to fetch next QODBCResultJ52>7<>6=> ?>;CG8BL ?@54K4CICN AB@>:CUnable to fetch previous QODBCResult@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QODBCResult85 C40;>AL =0G0BL B@0=70:F8NCould not begin transaction QPSQLDriver>5 C40;>AL 7025@H8BL B@0=70:F8NCould not commit transaction QPSQLDriver<5 C40;>AL >B:0B8BL B@0=70:F8NCould not rollback transaction QPSQLDriver,52>7<>6=> A>548=8BLAOUnable to connect QPSQLDriver,52>7<>6=> ?>4?8A0BLAOUnable to subscribe QPSQLDriver*52>7<>6=> >B?8A0BLAOUnable to unsubscribe QPSQLDriver252>7<>6=> A>740BL 70?@>AUnable to create query QPSQLResult@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QPSQLResultCCCCQPageSetupWidget&8F5@> (CC) Cicero (CC)QPageSetupWidget A>1K9CustomQPageSetupWidgetDDDDQPageSetupWidget84> (DD) Didot (DD)QPageSetupWidget $>@<0FormQPageSetupWidgetKA>B0:Height:QPageSetupWidgetN9<K (4<) Inches (in)QPageSetupWidget;L1><=0O LandscapeQPageSetupWidget>;OMarginsQPageSetupWidget8;;8<5B@K (<<)Millimeters (mm)QPageSetupWidget@85=B0F8O OrientationQPageSetupWidget$ 07<5I5=85 AB@0=8F Page LayoutQPageSetupWidget >@O4>: AB@0=8F: Page order:QPageSetupWidget  07<5@ AB@0=8FK: Page size:QPageSetupWidget"!B@0=8F =0 ;8AB5:Pages per sheet:QPageSetupWidget C<030PaperQPageSetupWidget AB>G=8: 1C<038: Paper source:QPageSetupWidget8:0 (P8) Pica (P̸)QPageSetupWidget">G:8 (?B) Points (pt)QPageSetupWidget=86=0OPortraitQPageSetupWidgetP8P̸QPageSetupWidget,5@52Q@=CB0O 0;L1><=0OReverse landscapeQPageSetupWidget(5@52Q@=CB0O :=86=0OReverse portraitQPageSetupWidget(8@8=0:Width:QPageSetupWidget=86=55 ?>;5 bottom marginQPageSetupWidget4<inQPageSetupWidget;52>5 ?>;5 left marginQPageSetupWidget<<mmQPageSetupWidget?BptQPageSetupWidget?@02>5 ?>;5 right marginQPageSetupWidget25@E=55 ?>;5 top marginQPageSetupWidget%1 x %2 4< %1 x %2 in QPageSizeA0A0 QPageSizeA1A1 QPageSizeA10A10 QPageSizeA2A2 QPageSizeA3A3 QPageSizeA3 ExtraA3 Extra QPageSizeA4A4 QPageSizeA4 ExtraA4 Extra QPageSizeA4 PlusA4 Plus QPageSizeA4 SmallA4 Small QPageSizeA5A5 QPageSizeA5 ExtraA5 Extra QPageSizeA6A6 QPageSizeA7A7 QPageSizeA8A8 QPageSizeA9A9 QPageSize ANSI CANSI C QPageSize ANSI DANSI D QPageSize ANSI EANSI E QPageSizeArchitect A Architect A QPageSizeArchitect B Architect B QPageSizeArchitect C Architect C QPageSizeArchitect D Architect D QPageSizeArchitect E Architect E QPageSizeB0B0 QPageSizeB1B1 QPageSizeB10B10 QPageSizeB2B2 QPageSizeB3B3 QPageSizeB4B4 QPageSizeB5B5 QPageSizeB5 ExtraB5 Extra QPageSizeB6B6 QPageSizeB7B7 QPageSizeB8B8 QPageSizeB9B9 QPageSize A>1K9Custom QPageSize,A>1K9 (%1 CC x %2 CC)Custom (%1CC x %2CC) QPageSize,A>1K9 (%1 DD x %2 DD)Custom (%1DD x %2DD) QPageSize,A>1K9 (%1 4< x %2 4<)Custom (%1in x %2in) QPageSize,A>1K9 (%1 << x %2 <<)Custom (%1mm x %2mm) QPageSize,A>1K9 (%1 P8 x %2 P8)Custom (%1pc x %2pc) QPageSize,A>1K9 (%1 ?B x %2 ?B)Custom (%1pt x %2pt) QPageSizeDouble PostcardDouble Postcard QPageSizeEnvelope B4 Envelope B4 QPageSizeEnvelope B5 Envelope B5 QPageSizeEnvelope B6 Envelope B6 QPageSizeEnvelope C0 Envelope C0 QPageSizeEnvelope C1 Envelope C1 QPageSizeEnvelope C2 Envelope C2 QPageSizeEnvelope C3 Envelope C3 QPageSizeEnvelope C4 Envelope C4 QPageSizeEnvelope C5 Envelope C5 QPageSizeEnvelope C6 Envelope C6 QPageSizeEnvelope C65 Envelope C65 QPageSizeEnvelope C7 Envelope C7 QPageSizeEnvelope Chou 3Envelope Chou 3 QPageSizeEnvelope Chou 4Envelope Chou 4 QPageSizeEnvelope DL Envelope DL QPageSizeEnvelope InviteEnvelope Invite QPageSize Envelope ItalianEnvelope Italian QPageSizeEnvelope Kaku 2Envelope Kaku 2 QPageSizeEnvelope Kaku 3Envelope Kaku 3 QPageSize Envelope MonarchEnvelope Monarch QPageSizeEnvelope PRC 1Envelope PRC 1 QPageSizeEnvelope PRC 10Envelope PRC 10 QPageSizeEnvelope PRC 2Envelope PRC 2 QPageSizeEnvelope PRC 3Envelope PRC 3 QPageSizeEnvelope PRC 4Envelope PRC 4 QPageSizeEnvelope PRC 5Envelope PRC 5 QPageSizeEnvelope PRC 6Envelope PRC 6 QPageSizeEnvelope PRC 7Envelope PRC 7 QPageSizeEnvelope PRC 8Envelope PRC 8 QPageSizeEnvelope PRC 9Envelope PRC 9 QPageSize"Envelope PersonalEnvelope Personal QPageSizeEnvelope US 10Envelope US 10 QPageSizeEnvelope US 11Envelope US 11 QPageSizeEnvelope US 12Envelope US 12 QPageSizeEnvelope US 14Envelope US 14 QPageSizeEnvelope US 9 Envelope US 9 QPageSizeEnvelope You 4Envelope You 4 QPageSize4Executive (7.25 x 10.5 4<)Executive (7.25 x 10.5 in) QPageSize.Executive (7.5 x 10 4<)Executive (7.5 x 10 in) QPageSize:Fan-fold German (8.5 x 12 in)Fan-fold German (8.5 x 12 in) QPageSizeFFan-fold German Legal (8.5 x 13 in)#Fan-fold German Legal (8.5 x 13 in) QPageSize8Fan-fold US (14.875 x 11 in)Fan-fold US (14.875 x 11 in) QPageSize(Folio (8.27 x 13 4<)Folio (8.27 x 13 in) QPageSize JIS B0JIS B0 QPageSize JIS B1JIS B1 QPageSizeJIS B10JIS B10 QPageSize JIS B2JIS B2 QPageSize JIS B3JIS B3 QPageSize JIS B4JIS B4 QPageSize JIS B5JIS B5 QPageSize JIS B6JIS B6 QPageSize JIS B7JIS B7 QPageSize JIS B8JIS B8 QPageSize JIS B9JIS B9 QPageSizeLedger / ANSI BLedger / ANSI B QPageSize LegalLegal QPageSizeLegal Extra Legal Extra QPageSizeLetter / ANSI ALetter / ANSI A QPageSizeLetter Extra Letter Extra QPageSizeLetter Plus Letter Plus QPageSizeLetter Small Letter Small QPageSizeNoteNote QPageSizePRC 16KPRC 16K QPageSizePRC 32KPRC 32K QPageSizePRC 32K Big PRC 32K Big QPageSizePostcardPostcard QPageSize QuartoQuarto QPageSizeStatement Statement QPageSizeSuper ASuper A QPageSizeSuper BSuper B QPageSize Tabloid / ANSI BTabloid / ANSI B QPageSizeTabloid Extra Tabloid Extra QPageSize&5B&NoQPlatformTheme&0&YesQPlatformTheme@5@20BLAbortQPlatformTheme@8<5=8BLApplyQPlatformTheme B<5=0CancelQPlatformTheme0:@KBLCloseQPlatformThemeB:;>=8BLDiscardQPlatformTheme!?@02:0HelpQPlatformTheme@>?CAB8BLIgnoreQPlatformTheme&5B 4;O 2A5E N&o to AllQPlatformThemeOKOKQPlatformThemeB:@KBLOpenQPlatformTheme!1@>A8BLResetQPlatformTheme> C<>;G0=8NRestore DefaultsQPlatformTheme>2B>@8BLRetryQPlatformTheme!>E@0=8BLSaveQPlatformTheme!>E@0=8BL 2A5Save AllQPlatformTheme0 4;O &2A5E Yes to &AllQPlatformTheme.>4C;L =5 1K; 703@C65=.The plugin was not loaded. QPluginLoader$58725AB=0O >H81:0 Unknown error QPluginLoaderN%1 C65 ACI5AB2C5B. %>B8B5 70<5=8BL 53>?/%1 already exists. Do you want to overwrite it? QPrintDialogX%1  MB> :0B0;>3. K15@8B5 4@C3>5 8<O D09;0.7%1 is a directory. Please choose a different file name. QPrintDialog&0@0<5B@K << &Options << QPrintDialog&0@0<5B@K >> &Options >> QPrintDialog&5G0BL&Print QPrintDialog1 (1x1)1 (1x1) QPrintDialog16 (4x4)16 (4x4) QPrintDialog2 (2x1)2 (2x1) QPrintDialog4 (2x2)4 (2x2) QPrintDialog6 (2x3)6 (2x3) QPrintDialog9 (3x3)9 (3x3) QPrintDialogA5 AB@0=8FK All Pages QPrintDialog2B><0B8G5A:8 Automatic QPrintDialog4!=87C 225@E, A;520 =0?@02>Bottom to Top, Left to Right QPrintDialog4!=87C 225@E, A?@020 =0;52>Bottom to Top, Right to Left QPrintDialog 'QB=K5 Even Pages QPrintDialogh%1 =54>ABC?5= 4;O 70?8A8. K15@8B5 4@C3>5 8<O D09;0.=File %1 is not writable. Please choose a different file name. QPrintDialog4!;520 =0?@02>, A=87C 225@ELeft to Right, Bottom to Top QPrintDialog4!;520 =0?@02>, A25@EC 2=87Left to Right, Top to Bottom QPrintDialog>:0;L=K9 D09; Local file QPrintDialogOKOK QPrintDialog5GQB=K5 Odd Pages QPrintDialog0@0<5B@K !B@0=8F =0 ;8AB5 8 !?8A>: AB@0=8F =5 <>3CB 8A?>;L7>20BLAO >4=>2@5<5==>. K:;NG8B5 >48= 87 =8E.gOptions 'Pages Per Sheet' and 'Page Set' cannot be used together. Please turn one of those options off. QPrintDialog 5G0BLPrint QPrintDialog"5G0BL 2 D09; ...Print To File ... QPrintDialog&5G0BL 2 D09; (PDF)Print to File (PDF) QPrintDialog4!?@020 =0;52>, A=87C 225@ERight to Left, Bottom to Top QPrintDialog4!?@020 =0;52>, A25@EC 2=87Right to Left, Top to Bottom QPrintDialog`=0G5=85 A =5 <>65B 1KBL 1>;LH5 7=0G5=8O ?>.7The 'From' value cannot be greater than the 'To' value. QPrintDialog4!25@EC 2=87, A;520 =0?@02>Top to Bottom, Left to Right QPrintDialog4!25@EC 2=87, A?@020 =0;52>Top to Bottom, Right to Left QPrintDialog0?8AL D09; PDFWrite PDF file QPrintDialog%1%%1%QPrintPreviewDialog-:A?>@B 2 PDF Export to PDFQPrintPreviewDialog5@20O AB@0=8F0 First pageQPrintPreviewDialog0 2AN AB@0=8FCFit pageQPrintPreviewDialog> H8@8=5 Fit widthQPrintPreviewDialog;L1><=0O LandscapeQPrintPreviewDialog$>A;54=OO AB@0=8F0 Last pageQPrintPreviewDialog$!;54CNI0O AB@0=8F0 Next pageQPrintPreviewDialog$0@0<5B@K AB@0=8FK Page SetupQPrintPreviewDialog$0@0<5B@K AB@0=8FK Page setupQPrintPreviewDialog=86=0OPortraitQPrintPreviewDialog&@54K4CI0O AB@0=8F0 Previous pageQPrintPreviewDialog 5G0BLPrintQPrintPreviewDialog@>A<>B@ ?5G0B8 Print PreviewQPrintPreviewDialog6>:070BL B8BC;L=K5 AB@0=8FKShow facing pagesQPrintPreviewDialog6>:070BL >17>@ 2A5E AB@0=8FShow overview of all pagesQPrintPreviewDialog,>:070BL >4=C AB@0=8FCShow single pageQPrintPreviewDialog#25;8G8BLZoom inQPrintPreviewDialog#<5=LH8BLZoom outQPrintPreviewDialog"0@0<5B@K 7040=8O Job OptionsQPrintPropertiesDialog $>@<0FormQPrintPropertiesWidget!B@0=8F0PageQPrintPropertiesWidget& 07>1@0BL ?> :>?8O<CollateQPrintSettingsOutput&25BColorQPrintSettingsOutput 568< F25B0 Color ModeQPrintSettingsOutput >?88CopiesQPrintSettingsOutput">;8G5AB2> :>?89:Copies:QPrintSettingsOutput "5:CI0O AB@0=8F0 Current PageQPrintSettingsOutput&2CAB>@>==OO ?5G0BLDuplex PrintingQPrintSettingsOutput $>@<0FormQPrintSettingsOutputBB5=:8 A5@>3> GrayscaleQPrintSettingsOutput$> 4;8==>9 AB>@>=5 Long sideQPrintSettingsOutput5BNoneQPrintSettingsOutput0@0<5B@KOptionsQPrintSettingsOutput 0AB@>9:8 2K2>40Output SettingsQPrintSettingsOutput!?8A>: AB@0=8F: Page Set:QPrintSettingsOutput!B@0=8FK A Pages fromQPrintSettingsOutputA5 Print allQPrintSettingsOutput80?07>= ?5G0B8 Print rangeQPrintSettingsOutput 1@0B=K9 ?>@O4>:ReverseQPrintSettingsOutput&K45;5==K9 D@03<5=B SelectionQPrintSettingsOutput&> :>@>B:>9 AB>@>=5 Short sideQPrintSettingsOutput?>toQPrintSettingsOutput&0720=85:&Name: QPrintWidget...... QPrintWidget $>@<0Form QPrintWidget 0A?>;>65=85: Location: QPrintWidgetK2>4 2 &D09;: Output &file: QPrintWidget!&2>9AB20 P&roperties QPrintWidget@>A<>B@Preview QPrintWidget@8=B5@Printer QPrintWidget"8?:Type: QPrintWidgetf5 C40;>AL >B:@KBL ?5@5=0?@02;5=85 22>40 4;O GB5=8O,Could not open input redirection for readingQProcessh5 C40;>AL >B:@KBL ?5@5=0?@02;5=85 2K2>40 4;O 70?8A8-Could not open output redirection for writingQProcessFH81:0 ?>;CG5=8O 40==KE >B ?@>F5AA0Error reading from processQProcess>H81:0 >B?@02:8 40==KE ?@>F5AACError writing to processQProcess(@>3@0<<0 =5 C:070=0No program definedQProcess8@>F5AA 7025@H8;AO A >H81:>9Process crashedQProcess@5 C40;>AL 70?CAB8BL ?@>F5AA: %1Process failed to start: %1QProcessJ@5<O =0 >?5@0F8N A ?@>F5AA>< 8AB5:;>Process operation timed outQProcessRH81:0 2K45;5=8O @5AC@A>2 (A1>9 fork): %1!Resource error (fork failure): %1QProcessB<5=8BLCancelQProgressDialogA5 D09;K (*.*)All files (*.*)QQnxFileDialogHelper"",CANCELQQnxFileDialogHelperOKOKQQnxFileDialogHelperK1>@ D09;0 Pick a fileQQnxFilePickerL=5?@028;L=K9 A8=B0:A8A :;0AA0 A8<2>;>2bad char class syntaxQRegExp@=5?@028;L=K9 A8=B0:A8A lookaheadbad lookahead syntaxQRegExpB=5?@028;L=K9 A8=B0:A8A ?>2B>@5=8Obad repetition syntaxQRegExpL8A?>;L7>20=85 >B:;NGQ==KE 2>7<>6=>AB59disabled feature usedQRegExp,=5:>@@5:B=0O :0B53>@8Oinvalid categoryQRegExp*=5:>@@5:B=K9 8=B5@20;invalid intervalQRegExpD=5:>@@5:B=>5 2>AL<5@8G=>5 7=0G5=85invalid octal valueQRegExpXlookbehind =5 ?>445@68205BAO, A<. QTBUG-2371)lookbehinds not supported, see QTBUG-2371QRegExpB4>AB83=CB> 2=CB@5==55 >3@0=8G5=85met internal limitQRegExp:>BACBAB2C5B ;52K9 @0745;8B5;Lmissing left delimQRegExp$>H81:8 >BACBAB2CNBno error occurredQRegExp"=5>6840==K9 :>=5Funexpected endQRegExp:(*MARK) 4>;65= 8<5BL 0@3C<5=B(*MARK) must have an argumentQRegularExpression$(*VERB) =5 >?>7=0=(*VERB) not recognizedQRegularExpressionR70 (?R 8;8 (?[+-]F8D@K 4>;6=0 A;54>20BL ))(?R or (?[+-]digits must be followed by )QRegularExpressionP3@C??0 DEFINE A>45@68B 1>;55 >4=>9 25B:8*DEFINE group contains more than one branchQRegularExpressionZPCRE =5 ?>445@68205B \L, \l, \N{8<O}, \U 8 \u1PCRE does not support \L, \l, \N{name}, \U, or \uQRegularExpressionXPOSIX-A>@B8@>2:0 M;5<5=B>2 =5 ?>445@68205BAO*POSIX collating elements are not supportedQRegularExpression:;0AAK 8<5=>20==K5 2 AB8;5 POSIX ?>445@6820NBAO B>;L:> 2=CB@8 :;0AA05POSIX named classes are supported only within a classQRegularExpression"\ 2 :>=F5 H01;>=0\ at end of patternQRegularExpressionJ\C =5 4>?CAB8<0 2 ?@>25@:5 lookbehind&\C not allowed in lookbehind assertionQRegularExpression:\N =5 ?>445@68205BAO 2 :;0AA5\N is not supported in a classQRegularExpression$\c 2 :>=F5 H01;>=0\c at end of patternQRegularExpressionL?>A;5 \c 4>;65= A;54>20BL A8<2>; ASCII)\c must be followed by an ASCII characterQRegularExpression70 \g 4>;6=> A;54>20BL G8A;> 8;8 =0720=85/G8A;> 70:;NGQ==>5 2 D83C@=K5/C3;>2K5 A:>1:8 8;8 :02KG:8[\g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain numberQRegularExpression70 \k 4>;6=> A;54>20BL =0720=85 70:;NGQ==>5 2 D83C@=K5/C3;>2K5 A:>1:8 8;8 :02KG:8?\k is not followed by a braced, angle-bracketed, or quoted nameQRegularExpression] =54>?CAB8<K9 A8<2>; 40==KE 2 @568<5 A>2<5AB8<>AB8 A JavaScript?] is an invalid data character in JavaScript compatibility modeQRegularExpressionP=C<5@>20==0O AAK;:0 =5 4>;6=0 1KBL =C;Q<%a numbered reference must not be zeroQRegularExpressionr4;O (*ACCEPT), (*FAIL) 8 (*COMMIT) 0@3C<5=BK =5 4>?CAB8<K?an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)QRegularExpression8?>A;5 (?( B@51C5BAO ?@>25@:0assertion expected after (?(QRegularExpressiont7=0G5=85 A8<2>;0 2 ?>A;54>20B5;L=>AB8 \u... A;8H:>< 25;8:>/character value in \u.... sequence is too largeQRegularExpressionz7=0G5=85 A8<2>;0 2 ?>A;54>20B5;L=>AB8 \x{...} A;8H:>< 1>;LH>50character value in \x{...} sequence is too largeQRegularExpression>B@51C5BAO 70:@K20NI0O ) 4;O (?Cclosing ) for (?C expectedQRegularExpressionRCA;>2=0O 3@C??0 A>45@68B 1>;55 42CE 25B>:1conditional group contains more than two branchesQRegularExpressionv>B;8G=K5 8<5=0 4;O ?>4H01;>=>2 A >4=8< =><5@>< =5 4>?CAB8<KBdifferent names for subpatterns of the same number are not allowedQRegularExpression2?>A;5 (?+ B@51C5BAO F8D@0digit expected after (?+QRegularExpressionv=54>?CAB8<0O :>4>20O B>G:0 Unicode (>= 0xd800 && <= 0xdfff)6disallowed Unicode code point (>= 0xd800 && <= 0xdfff)QRegularExpressionB2 :0G5AB25 erroffset ?5@540= NULLerroffset passed as NULLQRegularExpression4=5 C40;>AL 2K45;8BL ?0<OBLfailed to get memoryQRegularExpressionL8<O 3@C??K 4>;6=> =0G8=0BLAO A =5F8D@K&group name must start with a non-digitQRegularExpression6=5A>2<5AB8<0O >?F8O NEWLINEinconsistent NEWLINE optionsQRegularExpressionH2=CB@5==OO >H81:0: ?5@5?>;=5=85 :>40internal error: code overflowQRegularExpressionl2=CB@5==OO >H81:0: 2KE>4 70 ?@545;K >1;0AB8 :><?8;OF88+internal error: overran compiling workspaceQRegularExpressionp2=CB@5==OO >H81:0: @0=55 ?@>25@5==K9 ?>4H01;>= =5 =0945=Binternal error: previously-checked referenced subpattern not foundQRegularExpressionJ2=CB@5==OO >H81:0: =5>6840==K9 ?>2B>@!internal error: unexpected repeatQRegularExpressionr2=CB@5==OO >H81:0: =58725AB=K9 >?:>4 2 find_fixedlength()4internal error: unknown opcode in find_fixedlength()QRegularExpression4=5:>@@5:B=0O AB@>:0 UTF-16invalid UTF-16 stringQRegularExpression4=5:>@@5:B=0O AB@>:0 UTF-32invalid UTF-32 stringQRegularExpression2=5:>@@5:B=0O AB@>:0 UTF-8invalid UTF-8 stringQRegularExpression4=5:>@@5:B=>5 CA;>285 (?(0)invalid condition (?(0)QRegularExpressionj=5:>@@5:B=0O ESC-?>A;54>20B5;L=>ABL 2 :;0AA5 A8<2>;>2*invalid escape sequence in character classQRegularExpressionN=54>?CAB8<K9 480?07>= 2 :;0AA5 A8<2>;>2 invalid range in character classQRegularExpression^?@>25@:0 lookbehind 8<55B =5D8:A8@>20==CN 4;8=C(lookbehind assertion is not fixed lengthQRegularExpressionj=5:>@@5:B=> AD>@<8@>20=0 ?>A;54>20B5;L=>ABL \P 8;8 \pmalformed \P or \p sequenceQRegularExpression`=5:>@@5:B=> AD>@<8@>20=> G8A;> 8;8 8<O ?>A;5 (?("malformed number or name after (?(QRegularExpression>BACBAB2C5B ) missing )QRegularExpression>>BACBAB2C5B ) ?>A;5 :><<5=B0@8Omissing ) after commentQRegularExpression`>BACBAB2C5B >B:@K20NI0O D83C@=0O A:>1:0 ?>A;5 \omissing opening brace after \oQRegularExpressionZ>BACBAB2C5B 7025@H0NI0O ] 4;O :;0AA0 A8<2>;>2)missing terminating ] for character classQRegularExpressionxA;8H:>< 4;8==>5 8<O 2 (*MARK), (*PRUNE), (*SKIP) 8;8 (*THEN):name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)QRegularExpression=5B >H81:8no errorQRegularExpression=5-H5AB=04F0B5@8G=K9 A8<2>; 2 \x {} (>BACBAB2C5B 70:@K20NI0O A:>1:0?)2non-hex character in \x{} (closing brace missing?)QRegularExpression=5-2>AL<5@8G=K9 A8<2>; 2 \o {} (>BACBAB2C5B 70:@K20NI0O A:>1:0?)4non-octal character in \o{} (closing brace missing?)QRegularExpression =5G53> ?>2B>@OBLnothing to repeatQRegularExpression4G8A;> ?>A;5 (?C 1>;LH5 255number after (?C is > 255QRegularExpression(G8A;> A;8H:>< 25;8:>number is too bigQRegularExpressionNG8A;> A;8H:>< 25;8:> 2 :20;8D8:0B>@5 {}number too big in {} quantifierQRegularExpressionJ=5:>@@5:B=K5 G8A;0 2 :20;8D8:0B>@5 {}%numbers out of order in {} quantifierQRegularExpressiond2>AL<8@8G=>5 G8A;> 1>;LH5 \377 (2 @568<5 =5 UTF-8)4octal value is greater than \377 (not in UTF-8 mode)QRegularExpression>A;8H:>< 1>;LH>5 2;>65=85 A:>1>:!parentheses are too deeply nestedQRegularExpression`A;8H:>< 1>;LH>5 2;>65=85 A:>1>: (:>=B@>;L AB5:0)/parentheses are too deeply nested (stack check)QRegularExpressionN=5:>@@5:B=K9 480?07>= 2 :;0AA5 A8<2>;>2%range out of order in character classQRegularExpressionV@5:C@A82=K9 2K7>2 <>65B 70F8:;8BLAO =025G=>&recursive call could loop indefinitelyQRegularExpressionDAAK;:0 =0 =5ACI5AB2CNI89 ?>4H01;>=$reference to non-existent subpatternQRegularExpressionF 53C;O@=>5 2K@065=85 A;8H:>< 25;8:>regular expression is too largeQRegularExpression@?>2B>@ 3@C??K DEFINE =5 4>?CAB8<'repeating a DEFINE group is not allowedQRegularExpressionF=0AB@>9:0 UTF >B:;NG5=0 ?@8;>65=85<*setting UTF is disabled by the applicationQRegularExpression0B@51C5BAO 8<O ?>4H01;>=0subpattern name expectedQRegularExpressionx=0720=85 ?>4H01;>=0 A;8H:>< 25;8:> (>3@0=8G5=> 2 32 A8<2>;0)3subpattern name is too long (maximum 32 characters)QRegularExpressionN?>445@6:0 \P, \p 8 \X =5 A:><?8;8@>20=00support for \P, \p, and \X has not been compiledQRegularExpressionA8=B0:A8G5A:0O >H81:0 2 8<5=8 ?>4H01;>=0 (>BACBAB2C5B ?@87=0: 7025@H5=8O)4syntax error in subpattern name (missing terminator)QRegularExpression\MB0 25@A8O PCRE A>1@0=0 157 ?>445@6:8 PCRE_UCP:this version of PCRE is not compiled with PCRE_UCP supportQRegularExpression^MB0 25@A8O PCRE A>1@0=0 157 ?>445@6:8 PCRE_UTF8;this version of PCRE is not compiled with PCRE_UTF8 supportQRegularExpression@A;8H:>< <=>3> >?5@560NI8E AAK;>:too many forward referencesQRegularExpressionnA;8H:>< <=>3> 8<5=>20=KE ?>4H01;>=>2 (>3@0=8G5=> 10000)*too many named subpatterns (maximum 10000)QRegularExpression^420 8<5=>20==KE ?>4H01;>=0 8<5NB >48=0:>2>5 8<O(two named subpatterns have the same nameQRegularExpression8=58725AB=>5 8<O POSIX :;0AA0unknown POSIX class nameQRegularExpression\=58725AB=K9 =01>@ D;03>2 @53C;O@=>3> 2K@065=8Ounknown option bit(s) setQRegularExpressionP=58725AB=>5 8<O A2>9AB20 ?>A;5 \P 8;8 \p$unknown property name after \P or \pQRegularExpression::@C3;K5 A:>1:8 =5 A>3;0A>20=Kunmatched parenthesesQRegularExpressionRA8<2>; A;54CNI89 70 (? 8;8 (?- =5 >?>7=0=&unrecognized character after (? or (?-QRegularExpression6A8<2>; ?>A;5 (?< =5 >?>7=0= unrecognized character after (?<QRegularExpression6A8<2>; ?>A;5 (?P =5 >?>7=0= unrecognized character after (?PQRegularExpression@A8<2>; A;54CNI89 70 \ =5 >?>7=0= unrecognized character follows \QRegularExpression6H81:0 >B:@KB8O 107K 40==KEError opening databaseQSQLite2Driver852>7<>6=> =0G0BL B@0=70:F8NUnable to begin transactionQSQLite2Driver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transactionQSQLite2Driver<52>7<>6=> >B:0B8BL B@0=70:F8NUnable to rollback transactionQSQLite2Driver<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statementQSQLite2Result<52>7<>6=> ?>;CG8BL @57C;LB0BKUnable to fetch resultsQSQLite2Result6H81:0 70:@KB8O 107K 40==KEError closing database QSQLiteDriver6H81:0 >B:@KB8O 107K 40==KEError opening database QSQLiteDriver852>7<>6=> =0G0BL B@0=70:F8NUnable to begin transaction QSQLiteDriver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QSQLiteDriver<52>7<>6=> >B:0B8BL B@0=70:F8NUnable to rollback transaction QSQLiteDriver$BACBAB2C5B 70?@>ANo query QSQLiteResultD>;8G5AB2> ?0@0<5B@>2 =5 A>2?0405BParameter count mismatch QSQLiteResult:52>7<>6=> ?@82O70BL ?0@0<5B@Unable to bind parameters QSQLiteResultl52>7<>6=> >4=>2@5<5==> 70?CAB8BL =5A:>;L:> >?5@0B>@>2/Unable to execute multiple statements at a time QSQLiteResult<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QSQLiteResult452>7<>6=> ?>;CG8BL AB@>:CUnable to fetch row QSQLiteResult:52>7<>6=> A1@>A8BL 2K@065=85Unable to reset statement QSQLiteResultP!CI5AB2CNI89 D09; %1 70I8IQ= >B 70?8A8 Existing file %1 is not writable QSaveFile<<O D09;0 AAK;05BAO =0 :0B0;>3Filename refers to a directory QSaveFile60?8AL ?@5@20=0 ?@8;>65=85<Writing canceled by application QSaveFile=87Bottom QScrollBar ;52>9 3@0=8F5 Left edge QScrollBar 0 AB@0=8FC 2=87 Page down QScrollBar"0 AB@0=8FC 2;52> Page left QScrollBar$0 AB@0=8FC 2?@02> Page right QScrollBar"0 AB@0=8FC 225@EPage up QScrollBar  ?@02>9 3@0=8F5 Right edge QScrollBar@>:@CB8BL 2=87 Scroll down QScrollBar@>:@CB8BL AN40 Scroll here QScrollBar @>:@CB8BL 2;52> Scroll left QScrollBar"@>:@CB8BL 2?@02> Scroll right QScrollBar @>:@CB8BL 225@E Scroll up QScrollBar 25@ETop QScrollBarR%1: A?5F8D8G5A:89 :;NG UNIX =5 ACI5AB2C5B%1: UNIX key file doesn't exist QSharedMemory$%1: C65 ACI5AB2C5B%1: already exists QSharedMemory,%1: @07<5@ <5=LH5 =C;O%1: create size is less then 0 QSharedMemory"%1: =5 ACI5AB2C5B%1: doesn't exist QSharedMemory%1: >H81:0 ftok%1: ftok failed QSharedMemory.%1: =54>?CAB8<K9 @07<5@%1: invalid size QSharedMemory %1: >H81:0 :;NG0 %1: key error QSharedMemory%1: ?CAB>9 :;NG%1: key is empty QSharedMemory$%1: =5 ?@8;>65==K9%1: not attached QSharedMemory2%1: =54>AB0B>G=> @5AC@A>2%1: out of resources QSharedMemory&%1: 4>ABC? 70?@5IQ=%1: permission denied QSharedMemory>%1: =5 C40;>AL 70?@>A8BL @07<5@%1: size query failed QSharedMemoryV%1: A8AB5<>9 =0;>65=K >3@0=8G5=8O =0 @07<5@$%1: system-imposed size restrictions QSharedMemory8%1: =52>7<>6=> 701;>:8@>20BL%1: unable to lock QSharedMemory6%1: =52>7<>6=> A>740BL :;NG%1: unable to make key QSharedMemoryR%1: =52>7<>6=> CAB0=>28BL :;NG 1;>:8@>2:8%1: unable to set key on lock QSharedMemory:%1: =52>7<>6=> @071;>:8@>20BL%1: unable to unlock QSharedMemory2%1: =58725AB=0O >H81:0 %2%1: unknown error %2 QSharedMemory++ QShortcut(>1028BL 2 871@0==>5 Add Favorite QShortcut"0AB@>9:0 O@:>AB8Adjust Brightness QShortcutAltAlt QShortcut"520O A>DB-:=>?:0Application Left QShortcut$@020O A>DB-:=>?:0Application Right QShortcutF0F8:;5==>5 2>A?@>872545=85 4>@>6:8Audio Cycle Track QShortcut2!;CG09=>5 2>A?@>872545=85Audio Random Play QShortcut0>A?@>872545=85 ?> :@C3C Audio Repeat QShortcut#HQ;Away QShortcut 0704Back QShortcut0704/2?5@Q4 Back Forward QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut#A8;5=85 10A>2 Bass Boost QShortcut0AK =865 Bass Down QShortcut0AK 2KH5Bass Up QShortcut0B0@5OBattery QShortcut>;C10OBlue QShortcutBluetooth Bluetooth QShortcut =830Book QShortcut1>7@520B5;LBrowser QShortcutCDCD QShortcut0;L:C;OB>@ Calculator QShortcut>72>=8BLCall QShortcut$$>:CA8@>2:0 :0<5@K Camera Focus QShortcut0B2>@ :0<5@KCamera Shutter QShortcut B<5=0Cancel QShortcut5@=89 @538AB@ Caps Lock QShortcutCapsLockCapsLock QShortcut0=0; 2=87 Channel Down QShortcut0=0; 225@E Channel Up QShortcutG8AB8BLClear QShortcutG8AB8BL 70E20B Clear Grab QShortcut0:@KBLClose QShortcut2>4 :>40 Code input QShortcut!>>1I5AB2> Community QShortcut>?8@>20BLCopy QShortcutCtrlCtrl QShortcutK@570BLCut QShortcutDOSDOS QShortcutDelDel QShortcut#40;8BLDelete QShortcutDisplayDisplay QShortcut>:C<5=BK Documents QShortcut=87Down QShortcut72;5GLEject QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutK?>;=8BLExecute QShortcut KE>4Exit QShortcutF%1F%1 QShortcut71@0==>5 Favorites QShortcut$8=0=AKFinance QShortcut 09B8Find QShortcut @KH:0Flip QShortcut ?5@Q4Forward QShortcut3@0Game QShortcut5@59B8Go QShortcut5;Q=0OGreen QShortcut ><>ILGuide QShortcut B1>9Hangup QShortcutHelpHelp QShortcut#AK?8BL Hibernate QShortcutAB>@8OHistory QShortcutHomeHome QShortcut><0H=89 >D8A Home Office QShortcut"><0H=OO AB@0=8F0 Home Page QShortcut>@OG85 AAK;:8 Hot Links QShortcut=D>@<0F8OInfo QShortcutInsIns QShortcutAB028BLInsert QShortcutL#<5=LH8BL O@:>ABL ?>4A25B:8 :;0280BC@KKeyboard Brightness Down QShortcutL#25;8G8BL O@:>ABL ?>4A25B:8 :;0280BC@KKeyboard Brightness Up QShortcut>:;./>B:;. ?>4A25B:C :;0280BC@KKeyboard Light On/Off QShortcut";0280BC@=>5 <5=N Keyboard Menu QShortcut>2B>@=K9 =01>@Last Number Redial QShortcut0?CAB8BL (0) Launch (0) QShortcut0?CAB8BL (1) Launch (1) QShortcut0?CAB8BL (2) Launch (2) QShortcut0?CAB8BL (3) Launch (3) QShortcut0?CAB8BL (4) Launch (4) QShortcut0?CAB8BL (5) Launch (5) QShortcut0?CAB8BL (6) Launch (6) QShortcut0?CAB8BL (7) Launch (7) QShortcut0?CAB8BL (8) Launch (8) QShortcut0?CAB8BL (9) Launch (9) QShortcut0?CAB8BL (A) Launch (A) QShortcut0?CAB8BL (B) Launch (B) QShortcut0?CAB8BL (C) Launch (C) QShortcut0?CAB8BL (D) Launch (D) QShortcut0?CAB8BL (E) Launch (E) QShortcut0?CAB8BL (F) Launch (F) QShortcut >GB0 Launch Mail QShortcut@>83@K20B5;L Launch Media QShortcut ;52>Left QShortcut0<?>G:0 LightBulb QShortcut K9B8 87 A8AB5<KLogoff QShortcut 5@5A;0BL ?8AL<> Mail Forward QShortcut  K=>:Market QShortcut.#A:>@5==>5 ?@>83@K20=85Media Fast Forward QShortcut.>A?@>8725AB8 A;54CNI55 Media Next QShortcut:@8>AB0=>28BL 2>A?@>872545=85 Media Pause QShortcut,0G0BL 2>A?@>872545=85 Media Play QShortcut0>A?@>8725AB8 ?@54K4CI55Media Previous QShortcut0G0BL 70?8AL Media Record QShortcut&5@5<>B0BL 2 =0G0;> Media Rewind QShortcut4AB0=>28BL 2>A?@>872545=85 Media Stop QShortcutAB@5G0Meeting QShortcutMenuMenu QShortcutJ;85=B >1<5=0 <3=>25==K<8 A>>1I5=8O<8 Messenger QShortcutMetaMeta QShortcut$K:;NG8BL <8:@>D>=Microphone Mute QShortcut:#<5=LH8BL 3@><:>ABL <8:@>D>=0Microphone Volume Down QShortcut:#25;8G8BL 3@><:>ABL <8:@>D>=0Microphone Volume Up QShortcut4#<5=LH8BL O@:>ABL <>=8B>@0Monitor Brightness Down QShortcut4#25;8G8BL O@:>ABL <>=8B>@0Monitor Brightness Up QShortcut&5A:>;L:> 20@80=B>2Multiple Candidate QShortcut C7K:0Music QShortcut>8 A09BKMy Sites QShortcut!>740BLNew QShortcut>2>AB8News QShortcut5BNo QShortcutNumNum QShortcut &8D@>2K5 :;028H8Num Lock QShortcutNumLockNumLock QShortcut &8D@>2K5 :;028H8 Number Lock QShortcutB:@KBLOpen QShortcutB:@KBL URLOpen URL QShortcut ?F8OOption QShortcut!B@0=8F0 2=87 Page Down QShortcut!B@0=8F0 225@EPage Up QShortcutAB028BLPaste QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut"5;5D>=Phone QShortcut7>1@065=8OPictures QShortcut>A?@>8725AB8Play QShortcutK:;NG8BL Power Down QShortcut$B:;NG5=85 ?8B0=8O Power Off QShortcut$@54K4CI89 20@80=BPrevious Candidate QShortcut PrintPrint QShortcut5G0BL M:@0=0 Print Screen QShortcut@8=B5@Printer QShortcut@0A=0ORed QShortcut$>2B>@8BL 459AB285Redo QShortcut1=>28BLRefresh QShortcut5@5703@C78BLReload QShortcutB25B8BLReply QShortcut ReturnReturn QShortcut ?@02>Right QShortcut>25@=CBL >:=0Rotate Windows QShortcut!>E@0=8BLSave QShortcut %@0=8B5;L M:@0=0 Screensaver QShortcut$$8:A0F8O ?@>:@CB:8 Scroll Lock QShortcutScrollLock ScrollLock QShortcut >8A:Search QShortcutK1@0BLSelect QShortcutB?@028BLSend QShortcut0AB@>9:8Settings QShortcut ShiftShift QShortcut03078=Shop QShortcut!?OI89 @568<Sleep QShortcut @>15;Space QShortcut&@>25@:0 >@D>3@0D88 Spellchecker QShortcut 0745;8BL M:@0= Split Screen QShortcut&-;5:B@>==0O B01;8FK Spreadsheet QShortcut 568< >6840=8OStandby QShortcutAB0=>28BLStop QShortcut!C1B8B@KSubtitle QShortcut>445@6:0Support QShortcut@8>AB0=>28BLSuspend QShortcut SysReqSysReq QShortcut !8AB5<=K9 70?@>ASystem Request QShortcutTabTab QShortcut0=5;L 7040G Task Panel QShortcut"5@<8=0;Terminal QShortcut @5<OTime QShortcut*!=OBL/?>;>68BL B@C1:CToggle Call/Hangup QShortcutP@8>AB0=>28BL/?@>4>;68BL 2>A?@>872545=85Toggle Media Play/Pause QShortcut=AB@C<5=BKTools QShortcut;02=>5 <5=NTop Menu QShortcutCB5H5AB285Travel QShortcut' =865 Treble Down QShortcut' 2KH5 Treble Up QShortcut2!25@EH8@>:>?>;>A=0O A2O7LUltra Wide Band QShortcut"B<5=8BL 459AB285Undo QShortcut 25@EUp QShortcut 845>Video QShortcut84View QShortcut>;>A>2>9 2K7>2 Voice Dial QShortcut"8H5 Volume Down QShortcutK:;NG8BL 72C: Volume Mute QShortcut @><G5 Volume Up QShortcutWWWWWW QShortcut@>1C645=85Wake Up QShortcutM1-:0<5@0WebCam QShortcut"5A?@>2>4=0O A5BLWireless QShortcut$"5:AB>2K9 @540:B>@Word Processor QShortcut Q;B0OYellow QShortcut0Yes QShortcut#25;8G8BLZoom QShortcut#25;8G8BLZoom In QShortcut#<5=LH8BLZoom Out QShortcut iTouchiTouch QShortcut8"8? 04@5A0 =5 ?>445@68205BAOAddress type not supportedQSocks5SocketEngineP!>548=5=85 =5 @07@5H5=> A5@25@>< SOCKSv5(Connection not allowed by SOCKSv5 serverQSocks5SocketEngine^!>548=5=85 A ?@>:A8-A5@25@>< =5>6840==> 70:@KB>&Connection to proxy closed prematurelyQSocks5SocketEngineN A>548=5=88 A ?@>:A8-A5@25@>< >B:070=>Connection to proxy refusedQSocks5SocketEngineZ@5<O =0 A>548=5=85 A ?@>:A8-A5@25@>< 8AB5:;>Connection to proxy timed outQSocks5SocketEngine,H81:0 A5@25@5 SOCKSv5General SOCKSv5 server failureQSocks5SocketEngineB@5<O =0 A5B52CN >?5@0F8N 8AB5:;>Network operation timed outQSocks5SocketEngineV5 C40;>AL 02B>@87>20BLAO =0 ?@>:A8-A5@25@5Proxy authentication failedQSocks5SocketEngine^5 C40;>AL 02B>@87>20BLAO =0 ?@>:A8-A5@25@5: %1Proxy authentication failed: %1QSocks5SocketEngine.@>:A8-A5@25@ =5 =0945=Proxy host not foundQSocks5SocketEngine0H81:0 ?@>B>:>;0 SOCKSv5SOCKS version 5 protocol errorQSocks5SocketEngineB><0=40 SOCKSv5 =5 ?>445@68205BAOSOCKSv5 command not supportedQSocks5SocketEngine!5BL =54>ABC?=0 TTL expiredQSocks5SocketEngineX58725AB=0O >H81:0 SOCKSv5 ?@>:A8 (:>4 0x%1)%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine0480;>3 A ?@54C?@5645=85< alert messageQSpiAccessibleBridge0=8<0F8O animationQSpiAccessibleBridge?@8;>65=85 applicationQSpiAccessibleBridge?><>I=8: assistantQSpiAccessibleBridge<5=N :=>?:8 button menuQSpiAccessibleBridge0:=>?:0 A 2K?040NI8< <5=Nbutton with drop downQSpiAccessibleBridge8:=>?:0 A 2K?040NI59 B01;8F59button with drop down gridQSpiAccessibleBridge E>;ABcanvasQSpiAccessibleBridge OG59:0cellQSpiAccessibleBridge4803@0<<0chartQSpiAccessibleBridge D;06>: check boxQSpiAccessibleBridgeG0AKclockQSpiAccessibleBridge2K1>@ F25B0 color chooserQSpiAccessibleBridge:>;>=:0columnQSpiAccessibleBridge =0720=85 :>;>=:8 column headerQSpiAccessibleBridge"2K?040NI89 A?8A>: combo boxQSpiAccessibleBridge24>?>;=8B5;L=0O 8=D>@<0F8Ocomplementary contentQSpiAccessibleBridge:C@A>@ <KH8cursorQSpiAccessibleBridge@53C;OB>@dialQSpiAccessibleBridge 480;>3dialogQSpiAccessibleBridge4>:C<5=BdocumentQSpiAccessibleBridgeC@02=5=85equationQSpiAccessibleBridge70?>;=8B5;LfillerQSpiAccessibleBridge"=86=89 :>;>=B8BC;footerQSpiAccessibleBridge D>@<0formQSpiAccessibleBridge @0<:0frameQSpiAccessibleBridge3@0D8:0graphicQSpiAccessibleBridge"@53C;OB>@ @07<5@0gripQSpiAccessibleBridge703>;>2>:headingQSpiAccessibleBridge*2A?;K20NI0O ?>4A:07:0 help balloonQSpiAccessibleBridge<?>;5 4;O 22>40 3>@OG59 :;028H8 hotkey fieldQSpiAccessibleBridge8=48:0B>@ indicatorQSpiAccessibleBridge"=5:>@@5:B=0O @>;L invalid roleQSpiAccessibleBridge=04?8ALlabelQSpiAccessibleBridge :0A:04=0O ?0=5;L layered paneQSpiAccessibleBridge AAK;:0linkQSpiAccessibleBridge A?8A>:listQSpiAccessibleBridgeM;5<5=B A?8A:0 list itemQSpiAccessibleBridgeAB@>:0 <5=Nmenu barQSpiAccessibleBridgeM;5<5=B <5=N menu itemQSpiAccessibleBridge70<5B:0noteQSpiAccessibleBridge 2:;04:0 AB@0=8FKpage tabQSpiAccessibleBridgeA?8A>: 2:;04>: page tab listQSpiAccessibleBridge ?0=5;LpanelQSpiAccessibleBridge?0@03@0D paragraphQSpiAccessibleBridge 2A?;K20NI55 <5=N popup menuQSpiAccessibleBridge(8=48:0B>@ 2K?>;=5=8O progress barQSpiAccessibleBridge AB@0=8F0 A2>9AB2 property pageQSpiAccessibleBridge :=>?:0 push buttonQSpiAccessibleBridge?5@5:;NG0B5;L radio buttonQSpiAccessibleBridge AB@>:0rowQSpiAccessibleBridge=0720=85 AB@>:8 row headerQSpiAccessibleBridge ?>;>A0 ?@>:@CB:8 scroll barQSpiAccessibleBridge A5:F8OsectionQSpiAccessibleBridge@0745;8B5;L separatorQSpiAccessibleBridge?>;7C=>:sliderQSpiAccessibleBridge72C:soundQSpiAccessibleBridge?CAB>5 <5AB>spaceQSpiAccessibleBridgeG8A;>2>5 ?>;5spin boxQSpiAccessibleBridge @0745;8B5;L >:>=splitterQSpiAccessibleBridge AB@>:0 A>AB>O=8O status barQSpiAccessibleBridgeB01;8F0tableQSpiAccessibleBridge B5:ABtextQSpiAccessibleBridge:C@A>@ 2 B5:AB5 text caretQSpiAccessibleBridge AB@>:0 703>;>2:0 title barQSpiAccessibleBridge&?0=5;L 8=AB@C<5=B>2tool barQSpiAccessibleBridge?>4A:07:0tool tipQSpiAccessibleBridge 45@52>treeQSpiAccessibleBridgeM;5<5=B 45@520 tree itemQSpiAccessibleBridge=58725AB=0OunknownQSpiAccessibleBridgeweb-4>:C<5=B web documentQSpiAccessibleBridge`52>7<>6=> ?@54>AB028BL A5@B8D8:0B 157 :;NG0, %1,Cannot provide a certificate with no key, %1 QSslSocketFH81:0 A>740=8O :>=B5:AB0 SSL: (%1)Error creating SSL context (%1) QSslSocket<H81:0 A>740=8O A5AA88 SSL, %1Error creating SSL session, %1 QSslSocket<H81:0 A>740=8O A5AA88 SSL: %1Error creating SSL session: %1 QSslSocket6H81:0 :28B8@>20=8O SSL: %1Error during SSL handshake: %1 QSslSocketTH81:0 703@C7:8 ;>:0;L=>3> A5@B8D8:0B0, %1#Error loading local certificate, %1 QSslSocketFH81:0 703@C7:8 70:@KB>3> :;NG0, %1Error loading private key, %1 QSslSocket"H81:0 GB5=8O: %1Error while reading: %1 QSslSocketT5:>@@5:B=K9 8;8 ?CAB>9 A?8A>: H8D@>2 (%1)!Invalid or empty cipher list (%1) QSslSocket@5 C40;>AL ?@>25@8BL A5@B8D8:0BK!No certificates could be verified QSslSocket5B >H81:8No error QSslSocketh48= 87 A5@B8D8:0B>2 F5=B@0 A5@B8D8:0F88 =5:>@@5:B5=%One of the CA certificates is invalid QSslSocketd0:@KBK9 :;NG =5 A>>B25BAB2C5B >B:@KB><C :;NGC, %1+Private key does not certify public key, %1 QSslSocket>!>548=5=85 TLS/SSL 1K;> 70:@KB>&The TLS/SSL connection has been closed QSslSocket@52KH5=> 7=0G5=85 ?0@0<5B@0 4;8=K ?CB8 ?>;O basicConstraints A5@B8D8:0B0!@>: 459AB28O A5@B8D8:0B0 8ABQ:The certificate has expired QSslSocketR!@>: 459AB28O A5@B8D8:0B0 5IQ =5 =0ABC?8; The certificate is not yet valid QSslSocketf!5@B8D8:0B A0<>?>4?8A0==K9 8 =5 O2;O5BAO 7025@5==K<-The certificate is self-signed, and untrusted QSslSocketV5 C40;>AL @0AH8D@>20BL ?>4?8AL A5@B8D8:0B00The certificate signature could not be decrypted QSslSocketj>;5 notAfter A5@B8D8:0B0 A>45@68B =5:>@@5:B=>5 2@5<O9The certificate's notAfter field contains an invalid time QSslSocketl>;5 notBefore A5@B8D8:0B0 A>45@68B =5:>@@5:B=>5 2@5<O:The certificate's notBefore field contains an invalid time QSslSocket "5:CI89 A5@B8D8:0B 8740B5;O 1K; >B:;>=Q=, B0: :0: =0720=85 8740B5;O 8 A5@89=K9 =><5@ =5 A>2?040NB A 845=B8D8:0B>@>< :;NG0 A5@B8D8:0B0The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate QSslSocket"5:CI89 A5@B8D8:0B 8740B5;O 1K; >B:;>=Q=, B0: :0: =0720=85 B5<K =5 A>2?0405B A =0720=85< 8740B5;O A5@B8D8:0B0The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate QSslSocket0720=85 C7;0 =5 A>2?0405B A 4>?CAB8<K<8 =0720=8O<8 C7;>2 A5@B8D8:0B0GThe host name did not match any of the valid hosts for this certificate QSslSocketH5 C40;>AL =09B8 A5@B8D8:0B 8740B5;O)The issuer certificate could not be found QSslSocketv5 C40;>AL =09B8 A5@B8D8:0B 8740B5;O ;>:0;L=>3> A5@B8D8:0B0LThe issuer certificate of a locally looked up certificate could not be found QSslSocket>!5@B8D8:0B C7;0 2 GQ@=>< A?8A:5#The peer certificate is blacklisted QSslSocket<!5@B8D8:0B =5 1K; ?@54>AB02;5=(The peer did not present any certificate QSslSocket\5 C40;>AL ?@>G8B0BL >B:@KBK9 :;NG A5@B8D8:0B03The public key in the certificate could not be read QSslSocket>@=52>9 A5@B8D8:0B F5=B@0 A5@B8D8:0F88 >B<5G5= =0 >B:;>=5=85 4;O 40==>9 F5;8AThe root CA certificate is marked to reject the specified purpose QSslSocket>@=52>9 A5@B8D8:0B F5=B@0 A5@B8D8:0F88 =5 O2;O5BAO 7025@5==K< 4;O 40==>9 F5;87The root CA certificate is not trusted for this purpose QSslSocket>@=52>9 A5@B8D8:0B F5?>G:8 A5@B8D8:0B>2 A0<>?>4?8A0==K9 8 =5 O2;O5BAO 7025@5==K<KThe root certificate of the certificate chain is self-signed, and untrusted QSslSocket@5:>@@5:B=0O ?>4?8AL A5@B8D8:0B0+The signature of the certificate is invalid QSslSocketh@54AB02;5==K9 A5@B8D8:0B =5?@83>45= 4;O 40==>9 F5;87The supplied certificate is unsuitable for this purpose QSslSocketD5 C40;>AL @0AH8D@>20BL 40==K5: %1Unable to decrypt data: %1 QSslSocketX5 C40;>AL 8=8F80;878@>20BL :>=B5:AB SSL: %1Unable to init SSL Context: %1 QSslSocket<5 C40;>AL 70?8A0BL 40==K5: %1Unable to write data: %1 QSslSocket$58725AB=0O >H81:0 Unknown error QSslSocket4?@>B>:>; =5 ?>445@68205BAOunsupported protocol QSslSocket"0==K5 ?@8;>65=89Application DataQStandardPaths@8;>65=8O ApplicationsQStandardPathsMHCacheQStandardPaths0AB@>9:8 ConfigurationQStandardPaths 01>G89 AB>;DesktopQStandardPaths>:C<5=BK DocumentsQStandardPaths03@C7:8DownloadQStandardPaths (@8DBKFontsQStandardPaths ><0H=89 :0B0;>3HomeQStandardPaths $8;L<KMoviesQStandardPaths C7K:0MusicQStandardPaths7>1@065=8OPicturesQStandardPaths"A?>;=O5<K5 D09;KRuntimeQStandardPaths1I89 :MH Shared CacheQStandardPaths$1I0O :>=D83C@0F8OShared ConfigurationQStandardPaths1I85 40==K5 Shared DataQStandardPaths"@5<5==K9 :0B0;>3Temporary DirectoryQStandardPathsBACBAB2C5B A>AB>O=85 ?> C<>;G0=8N 2 8AB>@8G5A:>< A>AB>O=88 %1+Missing default state in history state '%1' QStateMachinerBACBAB2C5B 8AE>4=>5 A>AB>O=85 2 A>AB02=>< A>AB>O=88 %1,Missing initial state in compound state '%1' QStateMachine~5B >1I53> ?@54:0 C 8AB>G=8:0 8 F5;8 ?5@5E>40 87 A>AB>O=8O %1GNo common ancestor for targets and source of transition from state '%1' QStateMachine$58725AB=0O >H81:0 Unknown error QStateMachine$%1: C65 ACI5AB2C5B%1: already existsQSystemSemaphore"%1: =5 ACI5AB2C5B%1: does not existQSystemSemaphore2%1: =54>AB0B>G=> @5AC@A>2%1: out of resourcesQSystemSemaphore&%1: 4>ABC? 70?@5IQ=%1: permission deniedQSystemSemaphore2%1: =58725AB=0O >H81:0 %2%1: unknown error %2QSystemSemaphore:52>7<>6=> >B:@KBL A>548=5=85Unable to open connection QTDSDriverF52>7<>6=> 8A?>;L7>20BL 107C 40==KEUnable to use database QTDSDriver @>:@CB8BL 2;52> Scroll LeftQTabBar"@>:@CB8BL 2?@02> Scroll RightQTabBarH?5@0F8O A A>:5B>< =5 ?>445@68205BAO$Operation on socket is not supported QTcpServerT5 C40;>AL ?@>G8B0BL >:>=G0=85 87>1@065=8OCould not read footerQTgaFileN5 C40;>AL ?@>G8B0BL 40==K5 87>1@065=8OCould not read image dataQTgaFileB5 C40;>AL ?5@5<5AB8BLAO : 40==K<Could not reset to read dataQTgaFileX5 C40;>AL ?5@5<5AB8BLAO : :>=FC 87>1@065=8O#Could not seek to image read footerQTgaFileL54>?CAB8<0O 3;C18=0 F25B0 87>1@065=8OImage depth not validQTgaFileT5 C40;>AL ?@>G8B0BL 703>;>2>: 87>1@065=8OImage header read failedQTgaFilef5?>445@68205<K9 B8? 87>1@065=8O: =5 TrueVision 2.0-Image type (non-TrueVision 2.0) not supportedQTgaFile@5?>445@68205<K9 B8? 87>1@065=8OImage type not supportedQTgaFile5 C40;>AL ?@>8725AB8 ?5@5<5I5=85 ?> D09;C/CAB@>9AB2C 4;O GB5=8O 87>1@065=8O&Seek file/device for image read failedQTgaFile'B5=85 87 ?>A;54>20B5;L=KE CAB@>9AB2 (=0?@8<5@, 87 A>:5B0) =5 ?>445@68205BAO:Sequential device (eg socket) for image read not supportedQTgaFile$>2B>@8BL 459AB285Redo QUndoGroup>2B>@8BL %1Redo %1 QUndoGroup"B<5=8BL 459AB285Undo QUndoGroupB<5=8BL %1Undo %1 QUndoGroup<?CAB>> QUndoModel$>2B>@8BL 459AB285Redo QUndoStack>2B>@8BL %1Redo %1 QUndoStack"B<5=8BL 459AB285Undo QUndoStackB<5=8BL %1Undo %1 QUndoStack6FSI 5@20O 6QAB:0O 87>;OF8OFSI First strong isolateQUnicodeControlCharacterMenuFAB028BL C?@02;ONI89 A8<2>; Unicode Insert Unicode control characterQUnicodeControlCharacterMenu\LRE 0G0;> 2AB@0820=8O =0?8A0=8O A;520 =0?@02>$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuVLRI 0G0;> 87>;OF88 =0?8A0=8O A;520 =0?@02>LRI Left-to-right isolateQUnicodeControlCharacterMenuFLRM @87=0: =0?8A0=8O A;520 =0?@02>LRM Left-to-right markQUnicodeControlCharacterMenuRLRO 0G0;> 70<5=K =0?8A0=8O A;520 =0?@02>#LRO Start of left-to-right overrideQUnicodeControlCharacterMenujPDF @87=0: >:>=G0=8O =0?8A0=8O A 4@C38< =0?@02;5=85<PDF Pop directional formattingQUnicodeControlCharacterMenuNPDI >AAB0=>2;5=85 87>;OF88 =0?@02;5=8OPDI Pop directional isolateQUnicodeControlCharacterMenu\LRE 0G0;> 2AB@0820=8O =0?8A0=8O A?@020 =0;52>$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenuVRLI 0G0;> 87>;OF88 =0?8A0=8O A?@020 =0;52>RLI Right-to-left isolateQUnicodeControlCharacterMenuFRLM @87=0: =0?8A0=8O A?@020 =0;52>RLM Right-to-left markQUnicodeControlCharacterMenuRRLO 0G0;> 70<5=K =0?8A0=8O A?@020 =0;52>#RLO Start of right-to-left overrideQUnicodeControlCharacterMenuLZWJ 1J548=ONI89 A8<2>; =C;52>9 H8@8=KZWJ Zero width joinerQUnicodeControlCharacterMenuRZWNJ 5>1J548=ONI89 A8<2>; =C;52>9 H8@8=KZWNJ Zero width non-joinerQUnicodeControlCharacterMenu4ZWSP @>15; =C;52>9 H8@8=KZWSP Zero width spaceQUnicodeControlCharacterMenu'B> MB>? What's This?QWhatsThisAction**QWidget&>?8@>20BL&CopyQWidgetTextControl&AB028BL&PasteQWidgetTextControl&&>2B>@8BL 459AB285&RedoQWidgetTextControl$&B<5=8BL 459AB285&UndoQWidgetTextControl2!:>?8@>20BL &04@5A AAK;:8Copy &Link LocationQWidgetTextControl&K@570BLCu&tQWidgetTextControl#40;8BLDeleteQWidgetTextControlK45;8BL 2AQ Select AllQWidgetTextControl\5 C40;>AL 703@C78BL <>4C;L ?;0BD>@<K direct2d$Cannot load direct2d platform pluginQWindowsDirect2DIntegrationQt =5 <>65B 703@C78BL <>4C;L ?;0BD>@<K direct2d, B0: :0: CAB0=>2;5==0O 25@A8O Direct2D A;8H:>< AB0@0O. 8=8<0;L=K5 B@51>20=8O MB>3> <>4C;O: Windows 7 SP1 A Platform Update. "@51C5BAO Direct2D 25@A88 =5 =865 %1.%2.%3.%4. 5@A8O >1=0@C65==>3> Direct2D: %5.%6.%7.%8.-Qt cannot load the direct2d platform plugin because the Direct2D version on this system is too old. The minimum system requirement for this platform plugin is Windows 7 SP1 with Platform Update. The minimum Direct2D version required is %1.%2.%3.%4. The Direct2D version on this system is %5.%6.%7.%8.QWindowsDirect2DIntegration&025@H8BL&FinishQWizard&!?@02:0&HelpQWizard &0;55&NextQWizard&0;55 >&Next >QWizard< &0704< &BackQWizard B<5=0CancelQWizard>4B25@48BLCommitQWizard@>4>;68BLContinueQWizard >B>2>DoneQWizard 0704Go BackQWizard!?@02:0HelpQWizardx2 >1JO2;5=88 XML B@51CNBAO ?0@0<5B@K encoding 8;8 standaloneYencoding declaration or standalone declaration expected while reading the XML declarationQXmlH>H81:0 2 >1JO2;5=88 2=5H=53> >1J5:B03error in the text declaration of an external entityQXml4>H81:0 @071>@0 :><<5=B0@8O$error occurred while parsing commentQXml0>H81:0 @071>@0 4>:C<5=B0$error occurred while parsing contentQXmlP>H81:0 @071>@0 >1JO2;5=8O B8?0 4>:C<5=B05error occurred while parsing document type definitionQXml.>H81:0 @071>@0 M;5<5=B0$error occurred while parsing elementQXml*>H81:0 @071>@0 AAK;:8&error occurred while parsing referenceQXml8>H81:0 2K720=0 ?>;L7>20B5;5<error triggered by consumerQXml`2=5H=OO AAK;:0 =0 >1I89 >1J5:B =54>?CAB8<0 2 DTD;external parsed general entity reference not allowed in DTDQXml|2=5H=OO AAK;:0 =0 >1I89 >1J5:B =54>?CAB8<0 2 7=0G5=88 0B@81CB0Gexternal parsed general entity reference not allowed in attribute valueQXmlf2=CB@5==OO AAK;:0 =0 >1I89 >1J5:B =54>?CAB8<0 2 DTD4internal general entity reference not allowed in DTDQXmlD=5:>@@5:B=>5 8<O 48@5:B82K @071>@0'invalid name for processing instructionQXmlB@51C5BAO 1C:20letter is expectedQXmlFC:070=> 1>;55 >4=>3> B8?0 4>:C<5=B0&more than one document type definitionQXml$>H81:8 >BACBAB2CNBno error occurredQXml&@5:C@A82=K5 >1J5:BKrecursive entitiesQXml\2 >1JO2;5=88 XML B@51C5BAO ?0@0<5B@ standaloneAstandalone declaration expected while reading the XML declarationQXml BM3 =5 A>2?0405B tag mismatchQXml$=5>6840==K9 A8<2>;unexpected characterQXml.=5>6840==K9 :>=5F D09;0unexpected end of fileQXmln=5@07>1@0==0O AAK;:0 =0 >1J5:B 2 =5?@028;L=>< :>=B5:AB5*unparsed entity reference in wrong contextQXmlV2 >1JO2;5=88 XML B@51C5BAO ?0@0<5B@ version2version expected while reading the XML declarationQXmlT=5:>@@5:B=>5 7=0G5=85 ?0@0<5B@0 standalone&wrong value for standalone declarationQXmlN%1  =5:>@@5:B=K9 845=B8D8:0B>@ PUBLIC.#%1 is an invalid PUBLIC identifier. QXmlStream`%1  =5 O2;O5BAO :>@@5:B=K< =0720=85< :>48@>2:8.%1 is an invalid encoding name. QXmlStream|%1 =5 O2;O5BAO :>@@5:B=K< =0720=85< >1@010BK205<>9 8=AB@C:F88.-%1 is an invalid processing instruction name. QXmlStream, ?>;CG8;8 ' , but got ' QXmlStream6B@81CB %1 ?5@5>?@545;Q=.Attribute '%1' redefined. QXmlStream<>48@>2:0 %1 =5 ?>445@68205BAOEncoding %1 is unsupported QXmlStreamb1=0@C65=> =5:>@@5:B=> 70:>48@>20==>5 A>45@68<>5.(Encountered incorrectly encoded content. QXmlStream01J5:B %1 =5 >1JO2;5=.Entity '%1' not declared. QXmlStream"@51C5BAO  Expected  QXmlStream8"@51CNBAO A8<2>;L=K5 40==K5.Expected character data. QXmlStream@8H=85 40==K5 2 :>=F5 4>:C<5=B0.!Extra content at end of document. QXmlStreamT5:>@@5:B=>5 >1JO2;5=85 ?@>AB@0=AB20 8<Q=.Illegal namespace declaration. QXmlStream05:>@@5:B=K9 A8<2>; XML.Invalid XML character. QXmlStream*5:>@@5:B=>5 8<O XML.Invalid XML name. QXmlStream>5:>@@5:B=0O AB@>:0 25@A88 XML.Invalid XML version string. QXmlStreamL5:>@@5:B=K9 0B@81CB 2 >1JO2;5=88 XML.%Invalid attribute in XML declaration. QXmlStream>5:>@@5:B=0O A8<2>;L=0O AAK;:0.Invalid character reference. QXmlStream,5:>@@5:B=K9 4>:C<5=B.Invalid document. QXmlStream<5:>@@5:B=>5 7=0G5=85 >1J5:B0.Invalid entity value. QXmlStream`5:>@@5:B=>5 =0720=85 >1@010BK205<>9 8=AB@C:F88.$Invalid processing instruction name. QXmlStream:NDATA 2 >1JO2;5=88 ?0@0<5B@0.&NDATA in parameter entity declaration. QXmlStreamT@5D8:A ?@>AB@0=AB20 8<Q= %1 =5 >1JO2;5="Namespace prefix '%1' not declared QXmlStreamVB:@K20NI89 BM3 =5 A>2?0405B A 70:@K20NI8<. Opening and ending tag mismatch. QXmlStream85>6840==K9 :>=5F 4>:C<5=B0.Premature end of document. QXmlStream:1=0@C65= @5:C@A82=K9 >1J5:B.Recursive entity detected. QXmlStreamd!AK;:0 =0 2=5H=89 >1J5:B %1 2 7=0G5=88 0B@81CB0.5Reference to external entity '%1' in attribute value. QXmlStreamJ!AK;:0 =0 =5>1@01>B0==K9 >1J5:B %1."Reference to unparsed entity '%1'. QXmlStreamd>A;54>20B5;L=>ABL ]]> =54>?CAB8<0 2 A>45@68<><.&Sequence ']]>' not allowed in content. QXmlStreamA524>0B@81CB standalone <>65B ?@8=8<0BL B>;L:> 7=0G5=8O yes 8;8 no."Standalone accepts only yes or no. QXmlStream4"@51C5BAO >B:@K20NI89 BM3.Start tag expected. QXmlStreamA524>0B@81CB standalone 4>;65= =0E>48BLAO ?>A;5 C:070=8O :>48@>2:8.?The standalone pseudo attribute must appear after the encoding. QXmlStream5>6840==>5 ' Unexpected ' QXmlStreamx5>6840==K9 A8<2>; %1 2 ;8B5@0;5 >B:@KB>3> 845=B8D8:0B>@0./Unexpected character '%1' in public id literal. QXmlStream85?>445@68205<0O 25@A8O XML.Unsupported XML version. QXmlStream^1JO2;5=85 XML =0E>48BAO =5 2 =0G0;5 4>:C<5=B0.)XML declaration not at start of document. QXmlStream ) , ConvertAll/translations/convertall_fr.ts0000644000175000017500000005270212573413453017553 0ustar dougdoug cmdline Usage: Usage : qt-options qt-options -or- (non-GUI): -ou- (non-GUI) : options options number nombre from_unit de l'unité to_unit vers l'unité Units with spaces must be "quoted" Les unités avec des espaces doivent être "entre guillemets" Options: Options : num nombre set number of decimals to show nombre de décimals à montrer show set number of decimals, even if zeros montrer le nombre de décimals, même si nul display this message and exit afficher ce message et quitter interactive command line mode (non-GUI) Mode de ligne de commande intéractif (sans-GUI) convert without further prompts convertir sans autres demandes show results in scientific notation afficher les résultats en notation scientifique Enter from unit -> Entrer à partir de l'unité -> Enter to unit -> Entrer l'unité -> Enter number, [n]ew, [r]everse or [q]uit -> Entre un nombre, [n]ouveau, [i]nverse ou [q]uitter -> Units {0} and {1} are not compatible Les unités ne sont pas compatibles ({0} vs. {1}) {0} is not a valid unit {0} n'est pas une unité valide show results in engineering notation convertdlg %d units loaded %d unités chargées Error in unit data - %s Erreur dans l'unité - %s From Unit De l'unité To Unit Vers l'unité Set units Choisir les unités No Unit Set Aucune unité choisie &Close &Fermer &Unit Finder... &Trouver l'unité... &Options... &Options... &Help... &Aide... &About... &à propos... Clear Unit Effacer l'unité Result Display Afficher le résultat Decimal places Décimal Use scientific notation Utiliser la notation scientifique Use fixed decimal places Utilisé des décimales fixes Buttons Bouttons Show operator buttons Montrer les bouttons de l'opérateur Colors Couleurs Use default system colors Utiliser les couleurs par défaut Set background color Choisir la couleur de fond Set text color Choisir la couleur du texte Read Me file not found Fichier Read Me non trouvé ConvertAll README File Fichier README de ConvertAll ConvertAll Version %s by %s ConvertAll version %s by %s Recent Unit Unité récente Recent Units Unités récentes Number saved Nombre sauvé Error in unit data - {0} Erreur dans l'unité - {0} {0} units loaded {0} unités chargées Load last units at startup Chargez dernières unités au démarrage User Interface Interface utilisateur Show tip at startup Afficher allusion au démarrage ConvertAll Version {0} by {1} ConvertAll version {0} by {1} Convertall - Tip ConvertAll &OK &Ok Combining Units La combinaison de unités Show this tip at startup Afficher allusion au démarrage <p>ConvertAll's strength is the ability to combine units:</p><ul><li>Enter "m/s" to get meters per second</li><li>Enter "ft*lbf" to get foot-pounds (torque)</li><li>Enter "in^2" to get square inches</li><li>Enter "m^3" to get cubic meters</li><li>or any other combinations you can imagine</li></ul> <p>La force de ConvertAll est la possibilité de combiner des unités:</p><ul><li>Entrez "m / s" pour obtenir mètres par seconde;</li><li>Entrez "ft * lbf" pour obtenir pieds-livres (couple);</li><li>Enter "in^ 2" pour obtenir pouces carrés;</li><li>Enter "m ^ 3 "pour obtenir de mètres cubes</li><li>ou toute autre combinaison que vous pouvez imaginer</li></ul> Result Precision Use short representation Use engineering notation finddlg Unit Finder Chercheur d'unité &Filter Unit Types &Filtrer les types d'unité &Search String &Recherche de caractère C&lear N&ettoyer From Unit de l'unité &Replace &Remplacer &Insert &Insérer To Unit Vers l'unité Replac&e Remplac&er Inser&t Insér&er &Close &Fermer Unit Name Nom de l'unité Unit Type Type d'unité Comments Commentaires [All] [Tout] helpview &Back &Retour &Forward &Avance &Home &Home Find Chercher Find &Previous Chercher &Précédent Find &Next Chercher &Suivant Text string not found Chaîne de caractères non trouvée numedit Error in unit data - %s Erreur dans l'unité - %s Converting... Conversion... Units are not compatible (%s vs. %s) Les unités ne sont pas compatibles (%s vs. %s) Set units Choisir les unités No Unit Set Aucune unité choisie Error in unit data - {0} Erreur dans l'unité - {0} Units are not compatible ({0} vs. {1}) Les unités ne sont pas compatibles ({0} vs. {1}) optiondlg &OK &Ok &Cancel &Annuler Preferences Préférences unitatom Bad equation for "%s" Mauvaise équation pour "%s" Bad equation for "{0}" Mauvaise équation pour "{0}" unitdata Can not read "units.dat" file Ne peut lire le fichier "units.dat" Duplicate unit names found Doublons dans les noms d'unités trouvés unitgroup Circular unit definition Définition d'unité circulaire Invalid conversion for "%s" Conversion invalide pour "%s" Cannot combine non-linear units On ne peut combiner des unités non linéaires Bad equation for %s Mauvaise équation pour %s Invalid conversion for "{0}" Conversion invalide pour "{0}" Bad equation for {0} Mauvaise équation pour {0} unitlistview Unit Name Nom de l'unité Unit Type Type d'unité Comments Commentaires ConvertAll/translations/qt_de.ts0000644000175000017500000072305612271615643016016 0ustar dougdoug @default OK OK Cancel Abbrechen PPDOptionsModel Name Name Value Q3Accel %1, %2 not defined %1, %2 nicht definiert Ambiguous %1 not handled Mehrdeutige %1 nicht gehandhabt Q3DataTable True Wahr False Falsch Insert Einfügen Update Aktualisieren Delete Löschen Q3FileDialog Copy or Move a File Datei kopieren oder verschieben Read: %1 Lesen: %1 Write: %1 Schreiben: %1 Cancel Abbrechen All Files (*) Alle Dateien (*) Name Name Size Größe Type Typ Date Datum Attributes Attribute &OK &OK Look &in: Su&chen in: File &name: Datei&name: File &type: Datei&typ: Back Zurück One directory up Ein Verzeichnis zurück Create New Folder Neuen Ordner erstellen List View Liste Detail View Ausführlich Preview File Info Voransicht der Datei-Info Preview File Contents Voransicht des Datei-Inhalts Read-write Lesen/Schreiben Read-only Nur Lesen Write-only Nur Schreiben Inaccessible Gesperrt Symlink to File Verknüpfung mit Datei Symlink to Directory Verknüpfung mit Verzeichnies Symlink to Special Verknüpfung mit Spezialdatei File Datei Dir Verzeichnis Special Spezialattribut Open Öffnen Save As Speichern unter &Open &Öffnen &Save S&peichern &Rename &Umbenennen &Delete &Löschen R&eload Erne&ut laden Sort by &Name Nach &Name sortieren Sort by &Size Nach &Größe sortieren Sort by &Date Nach &Datum sortieren &Unsorted &Unsortiert Sort Sortieren Show &hidden files &Versteckte Dateien anzeigen the file die Datei the directory das Verzeichnis the symlink die Verknüpfung Delete %1 %1 löschen <qt>Are you sure you wish to delete %1 "%2"?</qt> <qt>Sind Sie sicher, dass Sie %1 "%2" löschen möchten?</qt> &Yes &Ja &No N&ein New Folder 1 Neues Verzeichnis 1 New Folder Neues Verzeichnis New Folder %1 Neues Verzeichnis %1 Find Directory Verzeichnis suchen Directories Verzeichnisse Directory: Verzeichnis: Error Fehler %1 File not found. Check path and filename. %1 Datei konnte nicht gefunden werden. Überprüfen Sie Pfad und Dateinamen. All Files (*.*) Alle Dateien (*.*) Open Öffnen Select a Directory Wählen Sie ein Verzeichnis Q3Ftp Not connected Keine Verbindung Host %1 not found Rechner %1 nicht gefunden Connection refused to host %1 Verbindung mit %1 verweigert Connected to host %1 Verbunden mit Rechner %1 Connection refused for data connection Verbindung für die Daten Verbindung verweigert Unknown error Unbekannter Fehler Connecting to host failed: %1 Verbindung mit Rechner schlug fehl: %1 Login failed: %1 Anmeldung schlug fehl: %1 Listing directory failed: %1 Inhalt des Verzeichnises kann nicht angezeigt werden: %1 Changing directory failed: %1 Ändern des Verzeichnises schlug fehl: %1 Downloading file failed: %1 Herunterladen der Datei schlug fehl: %1 Uploading file failed: %1 Hochladen der Datei schlug fehl: %1 Removing file failed: %1 Löschen der Datei schlug fehl: %1 Creating directory failed: %1 Erstellen des Verzeichnises schlug fehl: %1 Removing directory failed: %1 Löschen des Verzeichnises schlug fehl: %1 Connection closed Verbindung beendet Host %1 found Rechner %1 gefunden Connection to %1 closed Verbindung mit %1 beendet Host found Rechner gefunden Connected to host Verbindung mit Rechner besteht Q3Http Unknown error Unbekannter Fehler Request aborted Anfrage wurde abgebrochen No server set to connect to Kein Rechner gesetzt für die Verbindung Wrong content length Falsche Content-Length Server closed connection unexpectedly Server hat die Verbindung unerwartet geschlossen Connection refused Verbindung verweigert Host %1 not found Rechner %1 nicht gefunden HTTP request failed HTTP Anfrage schlug fehl Invalid HTTP response header Ungültiger HTTP Antwort-Header Invalid HTTP chunked body Ungültiger HTTP Chunked-Body Host %1 found Rechner %1 gefunden Connected to host %1 Verbunden mit Rechner %1 Connection to %1 closed Verbindung mit %1 beendet Host found Rechner gefunden Connected to host Verbindung mit Rechner besteht Connection closed Verbindung beendet Q3LocalFs Could not read directory %1 Konnte Verzeichnis nicht lesen %1 Could not create directory %1 Konnte Verzeichnis nicht erstellen %1 Could not remove file or directory %1 Konnte Datei oder Verzeichnis nicht löschen %1 Could not rename %1 to %2 Konnte nicht umbenannt werden: %1 nach %2 Could not open %1 Konnte nicht geöffnet werden: %1 Could not write %1 Konnte nicht geschrieben werden: %1 Q3MainWindow Line up Ausrichten Customize... Anpassen... Q3NetworkProtocol Operation stopped by the user Operation von Benutzer angehalten Q3ProgressDialog Cancel Abbrechen Q3TabDialog OK OK Apply Anwenden Help Hilfe Defaults Defaults Cancel Abbrechen Q3TextEdit &Undo &Rückgängig &Redo Wieder&herstellen Cu&t &Ausschneiden &Copy &Kopieren &Paste Einf&ügen Clear Löschen Select All Alles auswählen Q3TitleBar System Restore up Minimize Minimieren Restore down Maximize Maximieren Close Schließen Contains commands to manipulate the window Puts a minimized back to normal Moves the window out of the way Puts a maximized window back to normal Makes the window full screen Closes the window Displays the name of the window and contains controls to manipulate it Q3ToolBar More... Mehr... Q3UrlOperator The protocol `%1' is not supported Das Protokoll `%1' wird nicht unterstützt The protocol `%1' does not support listing directories Das Protokoll `%1' unterstützt nicht das Auflisten von Verzeichnissen The protocol `%1' does not support creating new directories Das Protokoll `%1' unterstützt nicht das Anlegen neuer Verzeichnisse The protocol `%1' does not support removing files or directories Das Protokoll `%1' unterstützt nicht das Löschen von Dateien oder Verzeichnissen The protocol `%1' does not support renaming files or directories Das Protokoll `%1' unterstützt nicht das Umbenennen von Dateien oder Verzeichnissen The protocol `%1' does not support getting files Das Protokoll `%1' unterstützt nicht das Laden von Files The protocol `%1' does not support putting files Das Protokoll `%1' unterstützt nicht das Speichern von Files The protocol `%1' does not support copying or moving files or directories Das Protokoll `%1' unterstützt nicht das Kopieren oder Verschieben von Dateien oder Verzeichnissen (unknown) (unbekannt) Q3Wizard &Cancel &Abbrechen < &Back < &Zurück &Next > &Weiter > &Finish Ab&schließen &Help &Hilfe QAbstractSocket Host not found Rechner konnte nicht gefunden werden Connection refused Verbindung verweigert Socket operation timed out Das Zeitlimit für die Operation wurde überschritten Socket is not connected QAbstractSpinBox &Step up &Inkrementieren Step &down &Dekrementieren QAccel Space Leertaste Esc Esc Tab Tab Backtab Rück-Tab Backspace Rücktaste Return Return Enter Enter Ins Einfg Del Entf Pause Pause Print Druck SysReq SysReq Home Pos1 End Ende Left Links Up Hoch Right Rechts Down Runter PgUp Bild aufwärts PgDown Bild abwärts CapsLock Feststelltaste NumLock Zahlen-Feststelltaste ScrollLock Rollen-Feststelltaste Ctrl Strg + + Alt Alt Shift Umschalt F%1 F%1 Menu Menü Help Hilfe Back Zurück Forward Vorwärts Stop Abbrechen Refresh Aktualisieren Volume Down Lautstärke - Volume Mute Ton aus Volume Up Lautstärke + Bass Boost Bass Boost Bass Up Bass + Bass Down Bass - Treble Up Höhen + Treble Down Höhen - Media Play Wiedergabe Media Stop Stopp Media Previous Vorheriger Media Next Nächster Media Record Aufzeichnen Favorites Favoriten Search Suchen Standby Standby Open URL Öffne URL Launch Mail Start Mail Launch Media Start Media Player Launch (0) Start (0) Launch (1) Start (1) Launch (2) Start (2) Launch (3) Start (3) Launch (4) Start (4) Launch (5) Start (5) Launch (6) Start (6) Launch (7) Start (7) Launch (8) Start (8) Launch (9) Start (9) Launch (A) Start (A) Launch (B) Start (B) Launch (C) Start (C) Launch (D) Start (D) Launch (E) Start (E) Launch (F) Start (F) Meta Meta QApplication QT_LAYOUT_DIRECTION Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout. LTR Executable '%1' requires Qt %2, found Qt %3. Applikation '%1' benötigt Qt %2, aber Qt %3 gefunden. Incompatible Qt Library Error Qt Bibliothek ist inkompatibel Activate Aktivieren Activates the program's main window Aktiviert das Programmhauptfenster QAquaStyle OK OK Cancel Abbrechen QAxSelect Select ActiveX Control OK OK &Cancel &Abbrechen COM &Object: QAxServerBase &Help &Hilfe QCheckBox Uncheck Check Toggle QColorDialog Hu&e: Farb&ton: &Sat: &Sat: &Val: &Val: &Red: &Rot: &Green: &Grün: Bl&ue: Bla&u: A&lpha channel: A&lphakanal: &Basic colors Grundfar&ben &Custom colors &Benutzerdefinierte Farben &Define Custom Colors >> Eigene Farben &definieren >> OK OK Cancel Abbrechen &Add to Custom Colors Zu benutzerdefinierten Farben &hinzufügen Select color Farbauswahl QComboBox Open Öffnen QDB2Driver Unable to connect Unable to commit transaction Unable to rollback transaction Unable to set autocommit QDB2Result Unable to execute statement Unable to prepare statement Unable to bind variable Unable to fetch record %1 Unable to fetch next Unable to fetch first QDataManager Delete this record? Diesen Datensatz löschen? Yes Ja No Nein Save edits? Änderungen speichern? Cancel Abbrechen Confirm Bestätigen Cancel your edits? Änderungen verwerfen? QDataTable True Wahr False Falsch Insert Einfügen Update Aktualisieren Delete Löschen QDateTimeEdit AM AM am am PM PM pm pm QDialog What's This? Direkthilfe Help Hilfe QDialogButtonBox OK OK Save Speichern Open Öffnen Cancel Abbrechen Close Schließen Apply Anwenden Reset Help Hilfe Don't Save Discard &Yes &Ja Yes to &All Ja zu &allem &No N&ein N&o to All N&ein zu allem Save All Abort Abbrechen Retry Wiederholen Ignore Ignorieren Restore Defaults Close without Saving QDialogButtons Yes to All Ja zu allem OK to All OK zu allem No to All Nein zu allem Cancel All Alle abbrechen Yes Ja OK OK No Nein Cancel Abbrechen Apply Anwenden Ignore Ignorieren Retry Wiederholen Abort Abbrechen Help Hilfe %1 to All %1 zu allem QDirModel Name Name Size Größe Type Typ Modified Geändert Kind Match OS X Finder Type All other platforms Typ Date Modified QErrorMessage &Show this message again Diese Meldungen noch einmal an&zeigen &OK &OK Debug Message: Debug Ausgabe: Warning: Warnung: Fatal Error: Fehler: QFileDialog Copy or Move a File Datei kopieren oder verschieben Read: %1 Lesen: %1 Write: %1 Schreiben: %1 Cancel Abbrechen All Files (*) Alle Dateien (*) Name Name Size Größe Type Typ Date Datum Attributes Attribute OK OK Look &in: Su&chen in: File &name: Datei&name: File &type: Datei&typ: Back Zurück One directory up Ein Verzeichnis zurück Create New Folder Neuen Ordner erstellen List View Liste Detail View Details Preview File Info Voransicht der Datei-Info Preview File Contents Voransicht des Datei-Inhalts Read-write Lesen/Schreiben Read-only Nur Lesen Write-only Nur Schreiben Inaccessible Gesperrt Symlink to File Link auf Datei Symlink to Directory Link auf Verzeichnies Symlink to Special Link auf Spezialdatei File Datei Dir Verzeichnis Special Spezialattribut Open Öffnen Save As Speichern unter &Open &Öffnen &Save S&peichern &Rename &Umbenennen &Delete &Löschen R&eload Erne&ut laden Sort by &Name Nach &Name sortieren Sort by &Size Nach &Größe sortieren Sort by &Date Nach &Datum sortieren &Unsorted &Unsortiert Sort Sortieren Show &hidden files &Versteckte Dateien anzeigen the file die Datei the directory das Verzeichnis the symlink den symbolischen Link Delete %1 %1 löschen <qt>Are you sure you wish to delete %1 "%2"?</qt> <qt>Sind Sie sicher, dass Sie %1 "%2" löschen möchten?</qt> &Yes &Ja &No N&ein New Folder 1 Neues Verzeichnis 1 New Folder Neues Verzeichnis New Folder %1 Neues Verzeichnis %1 Find Directory Verzeichnis suchen Directories Verzeichnisse Save Speichern Error Fehler %1 File not found. Check path and filename. %1 Datei wurde nicht gefunden. Überprüfen Sie Pfad und Dateinamen. All Files (*.*) Alle Dateien (*.*) Open Öffnen Select a Directory Wählen Sie ein Verzeichnis Directory: Verzeichnis: %1 already exists. Do you want to replace it? Die Datei %1 existiert bereits. Soll sie überschreiben werden? %1 File not found. Please verify the correct file name was given. %1 Die Datei konnte nicht gefunden werden. Stellen Sie sicher, dass der Dateiname richtig ist. My Computer Mein Computer &Reload Erne&ut laden Parent Directory Elternverzeichnis Look in: Suchen in: File name: Dateiname: Files of type: Dateien des Typs: File not found. Please verify the correct file name was given %1 Directory not found. Please verify the correct directory name was given. %1 Das Verzeichnis konnte nicht gefunden werden. Stellen Sie sicher, dass der Verzeichnisname richtig ist. '%1' is write protected. Do you want to delete it anyway? Are sure you want to delete '%1'? Could not delete directory. Drive Laufwerk Unknown Unbekannt QFileDialogPrivate Sort Sortieren &Open &Öffnen &Rename &Umbenennen &Delete &Löschen Sort by &Name Nach &Name sortieren Sort by &Size Nach &Größe sortieren Sort by &Date Nach &Datum sortieren &Unsorted &Unsortiert Show &hidden files &Versteckte Dateien anzeigen Back Zurück Create New Folder Neuen Ordner erstellen List View Liste Detail View Ausführlich Open Öffnen Cancel Abbrechen %1 Directory not found. Please verify the correct directory name was given. %1 Das Verzeichnis konnte nicht gefunden werden. Stellen Sie sicher, dass der Verzeichnisname richtig ist. QFont Latin Latein Greek Griechisch Cyrillic Kyrillisch Armenian Armenisch Georgian Georgisch Runic Runen Ogham Ogham Hebrew Hebräisch Arabic Arabisch Syriac Syrisch Thaana Thaana Devanagari Devanagari Bengali Bengalisch Gurmukhi Gurmukhi Gujarati Gujarati Oriya Oriya Tamil Tamilisch Telugu Telugu Kannada Kannada Malayalam Malayalam Sinhala Sinhala Thai Thailändisch Lao Lao Tibetan Tibetisch Myanmar Myanmar Khmer Khmer Han Han Hiragana Hiragana Katakana Katakana Hangul Hangul Bopomofo Bopomofo Yi Yi Ethiopic Äthiopisch Cherokee Skripte der Cherokee Indianer Canadian Aboriginal Skripte der kanadischen Ureinwohner Mongolian Mongolisch Currency Symbols Währungssymbole Letterlike Symbols Buchstabenartige Symbole Number Forms Ziffernformen Mathematical Operators Mathematische Operatoren Technical Symbols Technische Symbole Geometric Symbols Geometrische Symbole Miscellaneous Symbols Verschiedene Symbole Enclosed and Square Eingeschlossene Symbole Braille Blindenschrift Unicode Unicode Reverse Oblique Umgekehrtes Schräg Reverse Italic Umgekehrtes Kursiv Other Sonstiges Oblique Schräg Italic Kursiv Normal Normal QFontDialog &Font &Schriftart Font st&yle Schrifts&til &Size &Größe Effects Effekte Stri&keout Durch&gestrichen &Underline &Unterstrichen &Color &Farbe Sample Beispiel Scr&ipt Schr&iftsystem OK OK Apply Anwenden Cancel Abbrechen Close Schließen Select Font Schriftart auswählen Wr&iting System &Schriftsystem QFtp Host %1 found Rechner %1 gefunden Host found Rechner gefunden Connected to host %1 Verbunden mit Rechner %1 Connected to host Verbindung mit Rechner besteht Connection to %1 closed Verbindung mit %1 beendet Connection closed Verbindung beendet Login Incorrect Ungültige Anmeldung Host %1 not found Rechner %1 konnte nicht gefunden werden Connection refused to host %1 Verbindung mit %1 verweigert Unknown error Unbekannter Fehler Connecting to host failed: %1 Verbindung mit Rechner schlug fehl: %1 Login failed: %1 Anmeldung schlug fehl: %1 Listing directory failed: %1 Inhalt des Verzeichnises kann nicht angezeigt werden: %1 Changing directory failed: %1 Ändern des Verzeichnises schlug fehl: %1 Downloading file failed: %1 Herunterladen der Datei schlug fehl: %1 Uploading file failed: %1 Hochladen der Datei schlug fehl: %1 Removing file failed: %1 Löschen der Datei schlug fehl: %1 Creating directory failed: %1 Erstellen des Verzeichnises schlug fehl: %1 Removing directory failed: %1 Löschen des Verzeichnises schlug fehl: %1 Not connected Keine Verbindung Connection refused for data connection Verbindung für die Daten Verbindung verweigert QFtpPI Host %1 not found Rechner %1 nicht gefunden Connection refused to host %1 Verbindung mit %1 verweigert Connected to host %1 Verbunden mit Rechner %1 QHeader %1 %1 QHostInfo Unknown error Unbekannter Fehler QHostInfoAgent Host not found Rechner konnte nicht gefunden werden Unknown address type Unbekannter Adresstyp Unknown error Unbekannter Fehler QHttp Connection refused Verbindung verweigert Host %1 not found Rechner %1 konnte nicht gefunden werden Connection closed by %1 %1 hat Verbindung beendet Invalid HTTP reply header Ungültiger HTTP Reply-Header Wrong content length Falsche Content-Length HTTP request failed HTTP Anfrage schlug fehl Host %1 found Rechner %1 gefunden Host found Rechner gefunden Connected to host %1 Verbunden mit Rechner %1 Connected to host Verbindung mit Rechner besteht Connection to %1 closed Verbindung mit %1 beendet Connection closed Verbindung beendet Unknown error Unbekannter Fehler Request aborted Anfrage wurde abgebrochen No server set to connect to Kein Rechner gesetzt für die Verbindung Server closed connection unexpectedly Server hat die Verbindung unerwartet geschlossen Invalid HTTP response header Ungültiger HTTP Antwort-Header Invalid HTTP chunked body Ungültiger HTTP Chunked-Body QIBaseDriver Error opening database Could not start transaction Unable to commit transaction Unable to rollback transaction QIBaseResult Unable to create BLOB Unable to write BLOB Unable to open BLOB Unable to read BLOB Could not find array Could not get array data Could not get query info Could not start transaction Unable to commit transaction Could not allocate statement Could not prepare statement Could not describe input statement Could not describe statement Unable to close statement Unable to execute query Could not fetch next item Could not get statement info QIODevice Permission denied Zugriff verweigert Too many open files Zu viele Dateien geöffnet No such file or directory Die Datei oder das Verzeichnis konnte nicht gefunden werden No space left on device Kein freier Speicherplatz auf dem Gerät vorhanden Unknown error Unbekannter Fehler QInputContext XIM XIM XIM input method XIM-Eingabemethode Windows input method Windows-Eingabemethode Mac OS X input method Mac OS X-Eingabemethode QInputDialog OK OK Cancel Abbrechen QLibrary QLibrary::load_sys: Cannot load %1 (%2) QLibrary::unload_sys: Cannot unload %1 (%2) QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3) Could not mmap '%1': %2 Plugin verification data mismatch in '%1' Could not unmap '%1': %2 The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" Unknown error Unbekannter Fehler QLineEdit Clear Löschen Select All Alles auswählen &Undo &Rückgängig &Redo Wieder&herstellen Cu&t &Ausschneiden &Copy &Kopieren &Paste Einf&ügen Delete Löschen QLineEditPrivate &Undo &Rückgängig &Redo Wieder&herstellen Cu&t &Ausschneiden &Copy &Kopieren &Paste Einf&ügen Delete Löschen Select All Alles auswählen QLocalFs Could not rename %1 to %2 Konnte nicht umbenannt werden: %1 nach %2 Could not open %1 Konnte nicht geöffnet werden: %1 Could not write %1 Konnte nicht geschrieben werden: %1 Could not read directory %1 Konnte Verzeichnis nicht lesen %1 Could not create directory %1 Konnte Verzeichnis nicht erstellen %1 Could not remove file or directory %1 Konnte Datei oder Verzeichnis nicht löschen %1 QMYSQLDriver Unable to open database ' Unable to connect Unable to begin transaction Unable to commit transaction Unable to rollback transaction QMYSQLResult Unable to fetch data Unable to execute query Unable to store result Unable to prepare statement Unable to reset statement Unable to bind value Unable to execute statement Unable to bind outvalues Unable to store statement results QMainWindow Line up Ausrichten Customize... Anpassen... QMenu Close Schließen Open Öffnen Execute QMenuBar About Info Config Konfiguration Preference Einstellungen Options Optionen Setting Einstellungen Setup Einrichten Quit Beenden Exit Beenden About %1 About Qt Über Qt Preferences Quit %1 QMessageBox OK OK Cancel Abbrechen &Yes &Ja &No N&ein &Abort &Abbrechen &Retry &Wiederholen &Ignore &Ignorieren <h3>About Qt</h3><p>This application was created with Qt version %1.</p> <h3>Über Qt</h3><p>Dieses Programm wurde mit der Qt Version %1 erstellt.</p> <p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for cross-platform GUI &amp; application development.</p><p>Qt provides single-source portability across Windows 95/98/NT4/ME/2000, Mac&nbsp;OS&nbsp;X, Linux, Solaris, HP-UX and many other versions of Unix with X11.<br>Qt is also available for embedded devices.</p><p>Qt is a Trolltech product. See <tt>http://www.trolltech.com/qt/</tt> for more information.</p> <p>Dieses Programm verwendet Qt Version %1</p><p>Qt ist ein multi-platform Framework zum Erstellen von GUI-Programmen in C++.</p><p>Qt bietet Portierungsmöglichkeiten mit nur einer Quellcode-Basis auf Windows 95/98/NT/ME/2000, Mac&nbsp;OS&nbsp;X, Linux, Solaris, HP-UX und vielen anderen Unix-Versionen, die X11 verwenden.<br>Qt ist auch für eingebettete Systeme erhältlich.</p><p>Qt ist ein Produkt von Trolltech. Weitere Informationen finden Sie unter <tt>http://www.trolltech.com/qt/</tt>.</p> <h3>About Qt</h3><p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for cross-platform GUI &amp; application development.</p><p>Qt provides single-source portability across Windows 95/98/NT4/ME/2000, Mac&nbsp;OS&nbsp;X, Linux, Solaris, HP-UX and many other versions of Unix with X11.<br>Qt is also available for embedded devices.</p><p>Qt is a Trolltech product. See <tt>http://www.trolltech.com/qt/</tt> for more information.</p> <h3>Über Qt</h3><p>Dieses Programm verwendet Qt Version %1</p><p>Qt ist ein multi-platform Framework zum Erstellen von GUI-Programmen in C++.</p><p>Qt bietet Portierungsmöglichkeiten mit nur einer Quellcode-Basis auf Windows 95/98/NT/ME/2000, Mac&nbsp;OS&nbsp;X, Linux, Solaris, HP-UX und vielen anderen Unix-Versionen, die X11 verwenden.<br>Qt ist auch für eingebettete Systeme erhältlich.</p><p>Qt ist ein Produkt von Trolltech. Weitere Informationen finden Sie unter <tt>http://www.trolltech.com/qt/</tt>.</p> <h3>About Qt</h3><p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for multiplatform GUI &amp; application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants.<br>Qt is also available for embedded devices.</p><p>Qt is a Trolltech product. See <tt>http://www.trolltech.com/qt/</tt> for more information.</p> <h3>Über Qt</h3><p>Dieses Programm verwendet Qt Version %1</p><p>Qt ist ein multi-platform Framework zum Erstellen von GUI-Programmen in C++.</p><p>Qt bietet Portierungsmöglichkeiten mit nur einer Quellcode-Basis auf MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux und allen anderen großen kommerziellen Unix-Versionen.<br>Qt ist auch für eingebettete Systeme erhältlich.</p><p>Qt ist ein Produkt von Trolltech. Weitere Informationen finden Sie unter <tt>http://www.trolltech.com/qt/</tt>.</p> Yes to &All Ja zu &allem N&o to All N&ein zu allem About Qt Über Qt Help Hilfe <h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <tt>http://www.trolltech.com/qt/</tt> for more information.</p> <h3>Über Qt</h3>%1<p>Qt ist ein plattformübergreifendes C++-Framework zum Erstellen von Programmen.</p><p>Qt macht es möglich mit nur einer einzigen Quellcode-Basis Programme für verschiedene Plattformen wie MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux und alle wichtigen Unix-Versionen zu erstellen. Mit Qtopia Core ist Qt auch für eingebettete Systeme erhältlich.</p><p>Qt ist ein Produkt von Trolltech. Weitere Informationen finden Sie unter <tt>http://www.trolltech.com/qt/</tt>.</p> <p>This program uses Qt version %1.</p> <p>Dieses Programm verwendet Qt Version %1.</p> <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <tt>http://www.trolltech.com/company/model.html</tt> for an overview of Qt licensing.</p> <p>Dieses Programm verwendet Qt Open Source Edition Version %1.</p><p>Die Qt Open Source Edition ist bestimmt für die Entwicklung von Open-Source-Programmen. Wenn Sie proprietäre (Closed Source) Software entwickeln brauchen Sie eine komerzielle Qt-Lizenz.</p><p>Um mehr über das Lizenzsystem von Qt zu erfahren besuchen Sie die Seite <tt>http://www.trolltech.com/company/model.html</tt>.</p> <h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <a href="http://www.trolltech.com/qt/">www.trolltech.com/qt/</a> for more information.</p> Show Details... Hide Details... <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a> for an overview of Qt licensing.</p> QMultiInputContext Select IM QMultiInputContextPlugin Multiple input method switcher Multiple input method switcher that uses the context menu of the text widgets QNativeSocketEngine The remote host closed the connection Der entfernte Rechner schloss die Verbindung Network operation timed out Das Zeitlimit für die Operation wurde überschritten Out of resources Keine Resourcen verfügbar Unsupported socket operation Nichtunterstütztes Socket-Kommando Protocol type not supported Das Protokoll wird nicht unterstützt Invalid socket descriptor Ungültiger Socket-Deskriptor Network unreachable Das Netzwerk ist nicht erreichbar Permission denied Zugriff verweigert Connection timed out Das Zeitlimit für die Verbindung wurde überschritten Connection refused Verbindung verweigert The bound address is already in use Die angegebene Adresse ist bereits in Gebrauch The address is not available Die Adresse ist nicht verfügbar The address is protected Die Adresse ist geschützt Datagram was to large to send Das Datagramm war zu groß um gesendet zu werden Unable to send a message Die Nachricht konnte nicht gesendet werden Unable to receive a message Die Nachricht konnte nicht empfangen werden Unable to write Der Schreibvorgang konnte nicht ausgeführt werden Network error Netzwerkfehler Another socket is already listening on the same port Ein anderer Socket hört bereits auf denselben Port Unable to initialize non-blocking socket Der nichtblockierende Socket konnte nicht initialisiert werden Unable to initialize broadcast socket Der Broadcast-Socket konnte nicht initialisiert werden Attempt to use IPv6 socket on a platform with no IPv6 support Es wurde versucht einen IPv6-Socket auf einem System ohne IPv6-Unterstützung zu verwenden Host unreachable Datagram was too large to send Operation on non-socket Unknown error Unbekannter Fehler QNetworkProtocol Operation stopped by the user Operation von Benutzer angehalten QOCIDriver Unable to logon Unable to initialize QOCIDriver QOCIResult Unable to bind column for batch execute Unable to execute batch statement Unable to goto next Unable to alloc statement Unable to prepare statement Unable to bind value Unable to execute select statement Unable to execute statement QODBCDriver Unable to connect Unable to connect - Driver doesn't support all needed functionality Unable to disable autocommit Unable to commit transaction Unable to rollback transaction Unable to enable autocommit QODBCResult QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration Unable to execute statement Unable to fetch next Unable to prepare statement Unable to bind variable QObject All Files (*) Alle Dateien (*) All Files (*.*) Alle Dateien (*.*) Open Öffnen Save As Speichern unter Open Öffnen Select a Directory Wählen Sie ein Verzeichnis Drive Laufwerk File Datei Directory Verzeichnis Symbolic Link Verknüpfung Unknown Unbekannt False Falsch True Wahr Home Pos1 QPSQLDriver Unable to connect Could not begin transaction Could not commit transaction Could not rollback transaction QPSQLResult Unable to create query QPageSetupDialog OK OK Cancel Abbrechen Portrait Hochformat Landscape Querformat QPluginLoader Unknown error Unbekannter Fehler QPrintDialog locally connected direkt verbunden Aliases: %1 Alias: %1 unknown unbekannt Unknown Location Unbekannte Adresse OK OK Cancel Abbrechen Printer settings Drucker-Einstellungen Print in color if available Farbig drucken falls möglich Print in grayscale Als Graustufen drucken Print destination Drucker Print to printer: Auf Drucker drucken: Printer Drucker Host Rechner Comment Kommentar Print to file: Drucken in Datei: Browse... Durchsuchen... Options Optionen Print all Alles drucken Print range Bereich drucken From page: Von Seite: To page: Bis Seite: Print first page first Erste Seite zuerst drucken Print last page first Letzte Seite zuerst drucken Number of copies: Anzahl der Kopien: Paper format Papierformat Portrait Hochformat Landscape Querformat A0 (841 x 1189 mm) A0 (841 x 1189 mm) A1 (594 x 841 mm) A1 (594 x 841 mm) A2 (420 x 594 mm) A2 (420 x 594 mm) A3 (297 x 420 mm) A3 (297 x 420 mm) A4 (210x297 mm, 8.26x11.7 inches) A4 (210 x 297 mm, 8,26 x 11,7 Zoll) A5 (148 x 210 mm) A5 (148 x 210 mm) A6 (105 x 148 mm) A6 (105 x 148 mm) A7 (74 x 105 mm) A7 (74 x 105 mm) A8 (52 x 74 mm) A8 (52 x 74 mm) A9 (37 x 52 mm) A9 (37 x 52 mm) B0 (1000 x 1414 mm) B0 (1000 x 1414 mm) B1 (707 x 1000 mm) B1 (707 x 1000 mm) B2 (500 x 707 mm) B2 (500 x 707 mm) B3 (353 x 500 mm) B3 (353 x 500 mm) B4 (250 x 353 mm) B4 (250 x 353 mm) B5 (176 x 250 mm, 6.93x9.84 inches) B5 (176 x 250 mm, 6.93 x 9.84 Zoll) B6 (125 x 176 mm) B6 (125 x 176 mm) B7 (88 x 125 mm) B7 (88 x 125 mm) B8 (62 x 88 mm) B8 (62 x 88 mm) B9 (44 x 62 mm) B9 (44 x 62 mm) B10 (31 x 44 mm) B10 (31 x 44 mm) C5E (163 x 229 mm) C5E (163 x 229 mm) DLE (110 x 220 mm) DLE (110 x 220 mm) Executive (7.5x10 inches, 191x254 mm) Executive (7,5 x 10 Zoll, 191 x 254 mm) Folio (210 x 330 mm) Folio (210 x 330 mm) Ledger (432 x 279 mm) Ledger (432 x 279 mm) Legal (8.5x14 inches, 216x356 mm) Legal (8,5 x 14 Zoll, 216 x 356 mm) Letter (8.5x11 inches, 216x279 mm) Letter (8,5 x 11 Zoll, 216 x 279 mm) Tabloid (279 x 432 mm) Tabloid (279 x 432 mm) US Common #10 Envelope (105 x 241 mm) US Common #10 Envelope (105 x 241 mm) Setup Printer Drucker-Einstellungen PostScript Files (*.ps);;All Files (*) PostScript-Dateien (*.ps);;Alle Dateien (*) A4 (210 x 297 mm, 8.26 x 11.7 inches) A4 (210 x 297 mm) B5 (176 x 250 mm, 6.93 x 9.84 inches) B5 (176 x 250 mm) Executive (7.5 x 10 inches, 191 x 254 mm) Executive (7,5 x 10 Zoll, 191 x 254 mm) Legal (8.5 x 14 inches, 216 x 356 mm) Legal (8,5 x 14 Zoll, 216 x 356 mm) Letter (8.5 x 11 inches, 216 x 279 mm) Letter (8,5 x 11 Zoll, 216 x 279 mm) Print selection Die Selektion Drucken Page size: Seitengröße: Orientation: Druckausrichtung: Paper source: Papierquelle: Print Druck File Datei Print To File ... Print dialog Size: Properties Printer info: Browse Print to file Pages from to Selection Copies Collate Other Sonstiges Double side printing File %1 is not writable. Please choose a different file name. %1 already exists. Do you want to overwrite it? File exists <qt>Do you want to overwrite it?</qt> QPrintDialogPrivate Printer settings Drucker-Einstellungen Print in color if available Farbig drucken falls möglich Print in grayscale Als Graustufen drucken Print destination Drucker Print to printer: Auf Drucker drucken: Print to file: Drucken in Datei: Browse... Durchsuchen... Options Optionen Print all Alles drucken Print range Bereich drucken From page: Von Seite: To page: Bis Seite: Print first page first Erste Seite zuerst drucken Print last page first Letzte Seite zuerst drucken Number of copies: Anzahl der Kopien: Paper format Papierformat Portrait Hochformat Landscape Querformat PostScript Files (*.ps);;All Files (*) PostScript-Dateien (*.ps);;Alle Dateien (*) OK OK Cancel Abbrechen QPrintPropertiesDialog PPD Properties Save Speichern OK OK QProcess Unknown error Unbekannter Fehler QProgressBar %1% %1 % QProgressDialog Cancel Abbrechen QPushButton Open Öffnen QRadioButton Check QRegExp no error occurred kein Fehler disabled feature used nicht aktivierte Eigenschaft wurde benutzt bad char class syntax falsche Syntax für Zeichen Klasse bad lookahead syntax falsche Syntax für Lookahead bad repetition syntax falsche Syntax für Wiederholungen invalid octal value ungültiger Oktal-Wert missing left delim fehlende linke Begrenzung unexpected end unerwartetes Ende met internal limit internes Limit erreicht QSQLite2Driver Error to open database Unable to begin transaction Unable to commit transaction Unable to rollback Transaction QSQLite2Result Unable to fetch results Unable to execute statement QSQLiteDriver Error opening database Error closing database Unable to begin transaction Unable to commit transaction Unable to roll back transaction QSQLiteResult Unable to fetch row Unable to execute statement Unable to reset statement Unable to bind parameters Parameter count mismatch QScrollBar Scroll here Hier scrollen Left edge Linke Seite Top Anfang Right edge Rechte Seite Bottom Ende Page left Eine Seite nach links Page up Eine Seite nach oben Page right Eine Seite nach rechts Page down Eine Seite nach unten Scroll left Nach links scrollen Scroll up Nach oben scrollen Scroll right Nach rechts scrollen Scroll down Nach unten scrollen Line up Ausrichten Position Line down QShortcut Space Leertaste Esc Esc Tab Tab Backtab Rück-Tab Backspace Rücktaste Return Return Enter Enter Ins Einfg Del Entf Pause Pause Print Druck SysReq SysReq Home Pos1 End Ende Left Links Up Hoch Right Rechts Down Runter PgUp Bild aufwärts PgDown Bild abwärts CapsLock Feststelltaste NumLock Zahlen-Feststelltaste ScrollLock Rollen-Feststelltaste Menu Menü Help Hilfe Back Zurück Forward Vorwärts Stop Abbrechen Refresh Aktualisieren Volume Down Lautstärke - Volume Mute Ton aus Volume Up Lautstärke + Bass Boost Bass Boost Bass Up Bass + Bass Down Bass - Treble Up Höhen + Treble Down Höhen - Media Play Wiedergabe Media Stop Stopp Media Previous Vorheriger Media Next Nächster Media Record Aufzeichnen Favorites Favoriten Search Suchen Standby Standby Open URL Öffne URL Launch Mail Start Mail Launch Media Start Media Player Launch (0) Start (0) Launch (1) Start (1) Launch (2) Start (2) Launch (3) Start (3) Launch (4) Start (4) Launch (5) Start (5) Launch (6) Start (6) Launch (7) Start (7) Launch (8) Start (8) Launch (9) Start (9) Launch (A) Start (A) Launch (B) Start (B) Launch (C) Start (C) Launch (D) Start (D) Launch (E) Start (E) Launch (F) Start (F) Print Screen Bildschirm drucken Page Up Bild aufwärts Page Down Bild abwärts Caps Lock Feststelltaste Num Lock Zahlen-Feststelltaste Number Lock Zahlen-Feststelltaste Scroll Lock Rollen-Feststelltaste Insert Einfügen Delete Löschen Escape Escape System Request System Request Select Auswählen Yes Ja No Nein Context1 Kontext1 Context2 Kontext2 Context3 Kontext3 Context4 Kontext4 Call Anruf Hangup Auflegen Flip Umdrehen Ctrl Strg Shift Umschalt Alt Alt Meta Meta + + F%1 F%1 Home Page QSlider Page left Eine Seite nach links Page up Eine Seite nach oben Position Page right Eine Seite nach rechts Page down Eine Seite nach unten QSocks5SocketEngine Socks5 timeout error connecting to socks server Die Socks5-Verbindung zu einen Socks-Server hat das Zeitlimit überschritten QSpinBox More Less QSql Delete Löschen Delete this record? Diesen Datensatz löschen? Yes Ja No Nein Insert Einfügen Update Aktualisieren Save edits? Änderungen speichern? Cancel Abbrechen Confirm Bestätigen Cancel your edits? Änderungen verwerfen? QTDSDriver Unable to open connection Unable to use database QTabBar Scroll Left Scroll Right QTabDialog OK OK Apply Anwenden Help Hilfe Defaults Defaults Cancel Abbrechen QTcpServer Socket operation unsupported Nichtunterstütztes Socket-Kommando QTextControl &Undo &Rückgängig &Redo Wieder&herstellen Cu&t &Ausschneiden &Copy &Kopieren Copy &Link Location &Paste Einf&ügen Delete Löschen Select All Alles auswählen QTextEdit Clear Löschen Select All Alles auswählen &Undo &Rückgängig &Redo Wieder&herstellen Cu&t &Ausschneiden &Copy &Kopieren &Paste Einf&ügen Delete Löschen QTitleBar System Menu System-Menü Shade Aufrollen Unshade Herabrollen Normalize Wiederherstellen Minimize Minimieren Maximize Maximieren Close Schließen QToolBar More... Mehr... QToolButton Press Open Öffnen QUdpSocket This platform does not support IPv6 Diese Plattform unterstützt kein IPv6 QUndoGroup Undo Rückgängig Redo Wiederherstellen QUndoModel <empty> QUndoStack Undo Rückgängig Redo Wiederherstellen QUnicodeControlCharacterMenu LRM Left-to-right mark LRM Left-to-right mark RLM Right-to-left mark RLM Right-to-left mark ZWJ Zero width joiner ZWJ Zero width joiner ZWNJ Zero width non-joiner ZWNJ Zero width non-joiner ZWSP Zero width space ZWSP Zero width space LRE Start of left-to-right embedding LRE Start of left-to-right embedding RLE Start of right-to-left embedding RLE Start of right-to-left embedding LRO Start of left-to-right override LRO Start of left-to-right override RLO Start of right-to-left override RLO Start of right-to-left override PDF Pop directional formatting PDF Pop directional formatting Insert Unicode control character Unicode-Kontrollzeichen einfügen QUrlOperator The protocol `%1' is not supported Das Protokoll `%1' wird nicht unterstützt The protocol `%1' does not support listing directories Das Protokoll "%1" wird nicht unterstützt oder es "%2" unterstützt nicht die Auflistung von Verzeichnissen The protocol `%1' does not support creating new directories Das Protokoll `%1' unterstützt nicht das Anlegen neuer Verzeichnisse The protocol `%1' does not support removing files or directories Das Protokoll `%1' untersützt nicht das Löschen von Dateien oder Verzeichnissen The protocol `%1' does not support renaming files or directories Das Protokoll `%1' untersützt nicht das Umbenennen von Dateien oder Verzeichnissen The protocol `%1' does not support getting files Das Protokoll `%1' untersützt nicht das Laden von Files The protocol `%1' does not support putting files Das Protokoll `%1' untersützt nicht das Speichern von Files The protocol `%1' does not support copying or moving files or directories Das Protokoll `%1' untersützt nicht das Kopieren oder Verschieben von Dateien oder Verzeichnissen (unknown) (unbekannt) QWSDecoration &Restore Wieder&herstellen &Move Ver&schieben &Size &Größe Mi&nimize M&inimieren Ma&ximize Ma&ximieren Close Schließen Windows Windows KDE KDE KDE2 KDE2 Hydro Hydro Default Standard BeOS BeOS QWSManager Style Stil QWhatsThisAction What's This? Direkthilfe QWhatsThisButton What's this? Direkthilfe QWidget * * QWizard Cancel Abbrechen < Back < Zurück Next > Weiter > Finish Abschließen Help Hilfe &Cancel &Abbrechen < &Back < &Zurück &Next > &Weiter > &Finish Ab&schließen &Help &Hilfe QWorkspace &Restore Wieder&herstellen &Move Ver&schieben &Size &Größe ändern Mi&nimize M&inimieren Ma&ximize Ma&ximieren &Close Schl&ießen Stay on &Top Im &Vordergrund bleiben Minimize Minimieren Restore Down Wiederherstellen Close Schließen Sh&ade &Aufrollen %1 - [%2] %1 - [%2] &Unshade &Herabrollen QWorkspacePrivate &Restore Wieder&herstellen &Move Ver&schieben Mi&nimize M&inimieren Ma&ximize Ma&ximieren &Close Schl&ießen Stay on &Top Im &Vordergrund bleiben Sh&ade &Aufrollen %1 - [%2] %1 - [%2] Minimize Minimieren Restore Down Wiederherstellen Close Schließen &Unshade &Herabrollen QXml no error occurred kein Fehler error triggered by consumer Konsument löste Fehler aus unexpected end of file unerwartetes Ende der Datei more than one document type definition mehr als eine Dokumenttypdefinition error occurred while parsing element Fehler beim Parsen eines Elements tag mismatch Element-Tags sind nicht richtig geschachtelt error occurred while parsing content Fehler beim Parsen des Inhalts eines Elements unexpected character unerwartetes Zeichen invalid name for processing instruction ungültiger Namer für eine Processing-Instruktion version expected while reading the XML declaration fehlende Version beim Parsen der XML-Deklaration wrong value for standalone declaration falscher Wert für die Standalone-Deklaration error occurred while parsing document type definition Fehler beim Parsen der Dokumenttypdefinition letter is expected ein Buchstabe ist an dieser Stelle erforderlich error occurred while parsing comment Fehler beim Parsen eines Kommentars error occurred while parsing reference Fehler beim Parsen einer Referenz internal general entity reference not allowed in DTD interne allgeimeine Entity-Referenz ist nicht erlaubt in der DTD external parsed general entity reference not allowed in attribute value externe Entity-Referenz is nicht erlaubt in einem Attribut-Wert external parsed general entity reference not allowed in DTD externe Entity-Referenz ist nicht erlaubt in der DTD unparsed entity reference in wrong context nicht-analysierte Entity-Referenz im falschen Kontext verwendet recursive entities rekursive Enitity error in the text declaration of an external entity Fehler in der Text-Deklaration einer externen Entity encoding declaration or standalone declaration expected while reading the XML declaration fehlende Encoding-Deklaration oder Standalone-Deklaration beim Parsen der XML-Deklaration standalone declaration expected while reading the XML declaration fehlende Standalone-Deklaration beim Parsen der XML Deklaration QtMultiLineEdit Undo Rückgängig Redo Wiederherstellen Cut Ausschneiden Copy Kopieren Paste Einfügen Paste special... Einfügen spezial... Clear Löschen Select All Alles auswählen ConvertAll/translations/qt_fr.ts0000644000175000017500000051643512271615643016036 0ustar dougdoug PPDOptionsModel Name Nom Value Q3Accel %1, %2 not defined La séquence %1, %2 n'est pas définie Ambiguous %1 not handled Séquence ambiguë %1 non traitée Q3DataTable True Vrai False Faux Insert Insérer Update Actualiser Delete Supprimer Q3FileDialog Copy or Move a File Copie ou déplace un fichier Read: %1 Lecture : %1 Write: %1 Écriture : %1 Cancel Annuler All Files (*) Tous les fichiers (*) Name Nom Size Taille Type Type Date Date Attributes Attributs &OK &OK Look &in: Chercher &dans : File &name: &Nom de fichier : File &type: &Type de fichier : Back Précédent (historique) One directory up Aller au dossier parent Create New Folder Créer un nouveau dossier List View Affichage liste Detail View Affichage détaillé Preview File Info Informations du fichier prévisualisé Preview File Contents Contenu du fichier prévisualisé Read-write Lecture-écriture Read-only Lecture seule Write-only Écriture seule Inaccessible Inaccessible Symlink to File Lien symbolique vers un fichier Symlink to Directory Lien symbolique vers un dossier Symlink to Special Lien symbolique vers un fichier spécial File Fichier Dir Dossier Special Fichier spécial Open Ouvrir Save As Enregistrer sous &Open &Ouvrir &Save &Enregistrer &Rename &Renommer &Delete Suppri&mer R&eload R&echarger Sort by &Name Trier par &nom Sort by &Size Trier par ta&ille Sort by &Date Trier par &date &Unsorted &Non trié Sort Tri Show &hidden files Afficher les fic&hiers cachés the file le fichier the directory le dossier the symlink le lien symbolique Delete %1 Supprimer %1 <qt>Are you sure you wish to delete %1 "%2"?</qt> <qt>Voulez-vous vraiment supprimer %1 "%2"?</qt> &Yes &Oui &No &Non New Folder 1 Nouveau dossier 1 New Folder Nouveau dossier New Folder %1 Nouveau dossier %1 Find Directory Chercher dans le dossier Directories Dossiers Directory: Dossier : Error Erreur %1 File not found. Check path and filename. %1 Impossible de trouver le fichier. Vérifier le chemin et le nom du fichier. All Files (*.*) Tous les fichiers (*.*) Open Ouvrir Select a Directory Sélectionner un dossier Q3LocalFs Could not read directory %1 Impossible de lire le dossier %1 Could not create directory %1 Impossible de créer le dossier %1 Could not remove file or directory %1 Impossible de supprimer le fichier ou dossier %1 Could not rename %1 to %2 Impossible de renommer %1 en %2 Could not open %1 Impossible d'ouvrir %1 Could not write %1 Impossible d'écrire %1 Q3MainWindow Line up Aligner Customize... Personnaliser... Q3NetworkProtocol Operation stopped by the user Opération interrompue par l'utilisateur Q3ProgressDialog Cancel Annuler Q3TabDialog OK OK Apply Appliquer Help Aide Defaults Par défaut Cancel Annuler Q3TextEdit &Undo &Annuler &Redo A&nnuler Annuler Cu&t Co&uper &Copy Cop&ier &Paste Co&ller Clear Effacer Select All Tout sélectionner Q3TitleBar System Restore up Minimize Réduire Restore down Maximize Close Fermer Contains commands to manipulate the window Puts a minimized back to normal Moves the window out of the way Puts a maximized window back to normal Makes the window full screen Closes the window Displays the name of the window and contains controls to manipulate it Q3ToolBar More... Reste... Q3UrlOperator The protocol `%1' is not supported Le protocole '%1' n'est pas géré The protocol `%1' does not support listing directories Le protocole `%1' ne permet pas de lister les fichiers d'un dossier The protocol `%1' does not support creating new directories Le protocole `%1' ne permet pas de créer de nouveaux dossiers The protocol `%1' does not support removing files or directories Le protocole `%1' ne permet pas de supprimer des fichiers ou des dossiers The protocol `%1' does not support renaming files or directories Le protocole `%1' ne permet pas de renommer des fichiers ou des dossiers The protocol `%1' does not support getting files Le protocole `%1' ne permet pas de recevoir des fichiers The protocol `%1' does not support putting files Le protocole `%1' ne permet pas d'envoyer des fichiers The protocol `%1' does not support copying or moving files or directories Le protocole `%1' ne permet pas de copier ou de déplacer des fichiers (unknown) (inconnu) Q3Wizard &Cancel &Annuler < &Back < &Précédent &Next > &Suivant > &Finish &Terminer &Help &Aide QAbstractSocket Host not found Hôte introuvable Connection refused Connexion refusée Socket operation timed out Opération socket expirée Socket is not connected QAbstractSpinBox &Step up &Augmenter Step &down &Diminuer QApplication QT_LAYOUT_DIRECTION Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout. LTR Executable '%1' requires Qt %2, found Qt %3. L'exécutable '%1' requiert Qt %2 (Qt %3 présent). Incompatible Qt Library Error Erreur : bibliothèque Qt incompatible Activate Activer Activates the program's main window Active la fenêtre principale du programme QAxSelect Select ActiveX Control OK OK &Cancel &Annuler COM &Object: QCheckBox Uncheck Check Toggle QColorDialog Hu&e: &Teinte : &Sat: &Saturation : &Val: &Valeur : &Red: &Rouge : &Green: &Vert : Bl&ue: Ble&u : A&lpha channel: Canal a&lpha : &Basic colors Couleurs de &base &Custom colors &Couleurs personnalisées &Define Custom Colors >> Définir des &couleurs personnalisées >> OK OK Cancel Annuler &Add to Custom Colors &Ajouter aux couleurs personnalisées Select color Sélection d'une couleur QComboBox Open Ouvrir QDB2Driver Unable to connect Unable to commit transaction Unable to rollback transaction Unable to set autocommit QDB2Result Unable to execute statement Unable to prepare statement Unable to bind variable Unable to fetch record %1 Unable to fetch next Unable to fetch first QDateTimeEdit AM AM am am PM PM pm pm QDialog What's This? Qu'est-ce que c'est ? QDialogButtonBox OK OK Save Enregistrer Open Ouvrir Cancel Annuler Close Fermer Apply Appliquer Reset Help Aide Don't Save Discard &Yes &Oui Yes to &All Oui à &tout &No &Non N&o to All Non à to&ut Save All Abort Abandonner Retry Réessayer Ignore Ignorer Restore Defaults Close without Saving QDialogButtons Yes to All Oui à tout OK to All OK à tout No to All Non à tout Cancel All Tout annuler Yes Oui OK OK No Non Cancel Annuler Apply Appliquer Ignore Ignorer Retry Réessayer Abort Abandonner Help Aide %1 to All %1 à tout QDirModel Name Nom Size Taille Type Type Modified Modifié Kind Match OS X Finder Type All other platforms Type Date Modified QErrorMessage &Show this message again &Afficher ce message de nouveau &OK &OK Debug Message: Message de débogage: Warning: Avertissement: Fatal Error: Erreur fatale: QFileDialog Cancel Annuler Back Précédent (historique) Create New Folder Créer un nouveau dossier List View Affichage liste Detail View Affichage détaillé Open Ouvrir &Open &Ouvrir &Save &Enregistrer &Rename &Renommer &Delete Suppri&mer Sort by &Name Trier par &nom Sort by &Size Trier par ta&ille Sort by &Date Trier par &date &Unsorted &Non trié Sort Tri Show &hidden files Afficher les fic&hiers cachés Directories Dossiers Save Enregistrer All Files (*) Tous les fichiers (*) %1 already exists. Do you want to replace it? Le fichier %1 existe déjà. Voulez-vous l'écraser ? %1 File not found. Please verify the correct file name was given. %1 Fichier introuvable. Veuillez vérifier que le nom du fichier est correct. My Computer Mon ordinateur &Reload &Recharger Parent Directory Dossier parent Look in: Chercher dans : File name: Nom de fichier : Files of type: Fichiers de type : Directory: Dossier : File not found. Please verify the correct file name was given %1 Directory not found. Please verify the correct directory name was given. %1 Dossier introuvable. Veuillez vérifier que le nom du dossier est correct. '%1' is write protected. Do you want to delete it anyway? Are sure you want to delete '%1'? Could not delete directory. All Files (*.*) Tous les fichiers (*.*) Save As Enregistrer sous Open Ouvrir Select a Directory Sélectionner un dossier Drive Unité File Fichier Unknown Inconnu QFileDialogPrivate %1 Directory not found. Please verify the correct directory name was given. %1 Dossier introuvable. Veuillez vérifier que le nom du dossier est correct. QFontDialog &Font &Police Font st&yle St&yle de police &Size &Taille Effects Effets Stri&keout &Barré &Underline &Souligné Sample Exemple OK OK Apply Appliquer Cancel Annuler Close Fermer Select Font Choisir une police Wr&iting System &Système d'écriture QFtp Host %1 found Hôte %1 trouvé Host found Hôte trouvé Connected to host %1 Connecté à l'hôte %1 Connected to host Connecté à l'hôte Connection to %1 closed Connexion à %1 arrêtée Connection closed Connexion arrêtée Host %1 not found Hôte %1 introuvable Connection refused to host %1 Connexion à l'hôte %1 refusée Unknown error Erreur inconnue Connecting to host failed: %1 Échec de la connexion à l'hôte %1 Login failed: %1 Échec du login: %1 Listing directory failed: %1 Échec du listage du dossier : %1 Changing directory failed: %1 Échec du changement de dossier : %1 Downloading file failed: %1 Échec du téléchargement du fichier : %1 Uploading file failed: %1 Échec du télédéchargement : %1 Removing file failed: %1 Échec de la suppression d'un fichier : %1 Creating directory failed: %1 Échec de la création d'un dossier : %1 Removing directory failed: %1 Échec de la suppression d'un dossier : %1 Not connected Non connecté Connection refused for data connection Connexion donnée refusée QHostInfo Unknown error Erreur inconnue QHostInfoAgent Host not found Hôte introuvable Unknown address type Adresse de type inconnu Unknown error Erreur inconnue QHttp Connection refused Connexion refusée Host %1 not found Hôte %1 introuvable Wrong content length Longueur du contenu invalide HTTP request failed Échec de la requête HTTP Host %1 found Hôte %1 trouvé Host found Hôte trouvé Connected to host %1 Connecté à l'hôte %1 Connected to host Connecté à l'hôte Connection to %1 closed Connexion à %1 arrêtée Connection closed Connexion arrêtée Unknown error Erreur inconnue Request aborted Requête interrompue No server set to connect to Aucun serveur spécifié Server closed connection unexpectedly Connexion interrompue par le serveur Invalid HTTP response header Entête de réponse HTTP invalide Invalid HTTP chunked body Fragment HTTP invalide QIBaseDriver Error opening database Could not start transaction Unable to commit transaction Unable to rollback transaction QIBaseResult Unable to create BLOB Unable to write BLOB Unable to open BLOB Unable to read BLOB Could not find array Could not get array data Could not get query info Could not start transaction Unable to commit transaction Could not allocate statement Could not prepare statement Could not describe input statement Could not describe statement Unable to close statement Unable to execute query Could not fetch next item Could not get statement info QIODevice Permission denied Accès refusé Too many open files Trop de fichiers ouverts simultanément No such file or directory Aucun fichier ou dossier de ce nom No space left on device Aucun espace disponible sur le périphérique Unknown error Erreur inconnue QInputContext XIM XIM XIM input method Méthode d'entrée XIM Windows input method Méthode d'entrée Windows Mac OS X input method Méthode d'entrée Mac OS X QInputDialog OK OK Cancel Annuler QLibrary QLibrary::load_sys: Cannot load %1 (%2) QLibrary::unload_sys: Cannot unload %1 (%2) QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3) Could not mmap '%1': %2 Plugin verification data mismatch in '%1' Could not unmap '%1': %2 The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" Unknown error Erreur inconnue QLineEdit Select All Tout sélectionner &Undo &Annuler &Redo A&nnuler Annuler Cu&t Co&uper &Copy Cop&ier &Paste Co&ller Delete Supprimer QMYSQLDriver Unable to open database ' Unable to connect Unable to begin transaction Unable to commit transaction Unable to rollback transaction QMYSQLResult Unable to fetch data Unable to execute query Unable to store result Unable to prepare statement Unable to reset statement Unable to bind value Unable to execute statement Unable to bind outvalues Unable to store statement results QMenu Close Fermer Open Ouvrir Execute QMenuBar About Config Preference Options Options Setting Setup Quit Exit About %1 About Qt À propos de Qt Preferences Quit %1 QMessageBox OK OK Cancel Annuler &Yes &Oui &No &Non &Abort &Abandonner &Retry &Réessayer &Ignore &Ignorer Yes to &All Oui à &tout N&o to All Non à to&ut About Qt À propos de Qt Help Aide <h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <tt>http://www.trolltech.com/qt/</tt> for more information.</p> <h3>À propos de Qt</h3>%1<p>Qt est une boîte à outils C++ pour le développement multi-plateforme d'applications graphiques.</p><p>Qt permet de porter un même source code sur MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux ainsi que les principales versions Unix commerciales. Qt est aussi disponible pour les systèmes embarqués sous le nom de Qtopia Core.</p><p>Qt est un produit de Trolltech. Consultez <tt>http://www.trolltech.com/qt/</tt> pour de plus amples renseignements.</p> <p>This program uses Qt version %1.</p> <p>Ce programme utilise la version %1 de Qt.</p> <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <tt>http://www.trolltech.com/company/model.html</tt> for an overview of Qt licensing.</p> <p>Ce programme utilise l'édition Open Source de Qt version %1.</p><p>L'édition Open Source de Qt est destinée au développement de programmes Open Source. Si vous désirez écrire des applications commerciales (code source fermé), vous devez posséder une licence Qt commerciale.</p><p>Veuillez consulter <tt>http://www.trolltech.com/company/model.html</tt> pour un aperçu des licences applicables à Qt.</p> <h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <a href="http://www.trolltech.com/qt/">www.trolltech.com/qt/</a> for more information.</p> Show Details... Hide Details... <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a> for an overview of Qt licensing.</p> QMultiInputContext Select IM QMultiInputContextPlugin Multiple input method switcher Multiple input method switcher that uses the context menu of the text widgets QNativeSocketEngine The remote host closed the connection L'hôte distant a fermé la connexion Network operation timed out L'opération réseau a expiré Out of resources Manque de ressources Unsupported socket operation Opération socket non supportée Protocol type not supported Protocol non géré Invalid socket descriptor Descripteur de socket invalide Network unreachable Réseau impossible à rejoindre Permission denied Accès refusé Connection timed out Connexion expirée Connection refused Connexion refusée The bound address is already in use L'adresse liée est déjà en usage The address is not available L'adresse n'est pas disponible The address is protected L'adresse est protégée Datagram was to large to send Le datagramme est trop gros pour pouvoir être envoyé Unable to send a message Impossible d'envoyer un message Unable to receive a message Impossible de recevoir un message Unable to write Impossible d'écrire Network error Erreur réseau Another socket is already listening on the same port Un autre socket écoute déjà sur le même port Unable to initialize non-blocking socket Impossible d'initialiser le socket asynchrone Unable to initialize broadcast socket Impossible d'initialiser le socket broadcast Attempt to use IPv6 socket on a platform with no IPv6 support Tentative d'utiliser un socket IPv6 sur une plateforme qui ne supporte pas IPv6 Host unreachable Datagram was too large to send Operation on non-socket Unknown error Erreur inconnue QOCIDriver Unable to logon Unable to initialize QOCIDriver QOCIResult Unable to bind column for batch execute Unable to execute batch statement Unable to goto next Unable to alloc statement Unable to prepare statement Unable to bind value Unable to execute select statement Unable to execute statement QODBCDriver Unable to connect Unable to connect - Driver doesn't support all needed functionality Unable to disable autocommit Unable to commit transaction Unable to rollback transaction Unable to enable autocommit QODBCResult QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration Unable to execute statement Unable to fetch next Unable to prepare statement Unable to bind variable QObject All Files (*) Tous les fichiers (*) All Files (*.*) Tous les fichiers (*.*) Open Ouvrir Save As Enregistrer sous Open Ouvrir Select a Directory Sélectionner un dossier Drive Unité File Fichier Directory Dossier Symbolic Link Lien symbolique Unknown Inconnu False Faux True Vrai Home Début QPSQLDriver Unable to connect Could not begin transaction Could not commit transaction Could not rollback transaction QPSQLResult Unable to create query QPluginLoader Unknown error Erreur inconnue QPrintDialog locally connected connecté en local unknown inconnu Unknown Location Emplacement inconnu OK OK Cancel Annuler Printer settings Configuration de l'impression Print in color if available Imprimer en couleur si possible Print in grayscale Imprimer en niveaux de gris Print destination Type d'impression Print to printer: Imprimer avec l'imprimante : Print to file: Imprimer dans un fichier : Browse... Parcourir... Options Options Print all Imprimer tout Print range Imprimer la sélection From page: De la page : To page: À la page : Print first page first Imprimer d'abord la première page Print last page first Imprimer d'abord la dernière page Number of copies: Nombre de copies : Paper format Format du papier Portrait Portrait Landscape Paysage A0 (841 x 1189 mm) A0 (841 x 1189 mm) A1 (594 x 841 mm) A1 (594 x 841 mm) A2 (420 x 594 mm) A2 (420 x 594 mm) A3 (297 x 420 mm) A3 (297 x 420 mm) A5 (148 x 210 mm) A5 (148 x 210 mm) A6 (105 x 148 mm) A6 (105 x 148 mm) A7 (74 x 105 mm) A7 (74 x 105 mm) A8 (52 x 74 mm) A8 (52 x 74 mm) A9 (37 x 52 mm) A9 (37 x 52 mm) B0 (1000 x 1414 mm) B0 (1000 x 1414 mm) B1 (707 x 1000 mm) B1 (707 x 1000 mm) B2 (500 x 707 mm) B2 (500 x 707 mm) B3 (353 x 500 mm) B3 (353 x 500 mm) B4 (250 x 353 mm) B4 (250 x 353 mm) B6 (125 x 176 mm) B6 (125 x 176 mm) B7 (88 x 125 mm) B7 (88 x 125 mm) B8 (62 x 88 mm) B8 (62 x 88 mm) B9 (44 x 62 mm) B9 (44 x 62 mm) B10 (31 x 44 mm) B10 (31 x 44 mm) C5E (163 x 229 mm) C5E (163 x 229 mm) DLE (110 x 220 mm) DLE (110 x 220 mm) Folio (210 x 330 mm) Folio (210 x 330 mm) Ledger (432 x 279 mm) Ledger (432 x 279 mm) Tabloid (279 x 432 mm) Tabloïde (279 x 432 mm) US Common #10 Envelope (105 x 241 mm) US Common #10 Envelope (105 x 241 mm) Aliases: %1 Alias : %1 PostScript Files (*.ps);;All Files (*) Fichiers PostScript (*.ps);;Tous les fichiers (*) A4 (210 x 297 mm, 8.26 x 11.7 inches) A4 (210 x 297 mm) B5 (176 x 250 mm, 6.93 x 9.84 inches) B5 (176 x 250 mm) Executive (7.5 x 10 inches, 191 x 254 mm) Executive (7,5 x 10 pouces, 191 x 254 mm) Legal (8.5 x 14 inches, 216 x 356 mm) Legal (8.5 x 14 pouces, 216 x 356 mm) Letter (8.5 x 11 inches, 216 x 279 mm) Letter (8,5 x 11 pouces, 216 x 279 mm) Print selection Imprimer la sélection Page size: Dimensions : Orientation: Orientation : Paper source: Source du papier : Print Impr écran File Fichier Printer Print To File ... Print dialog Size: Properties Printer info: Browse Print to file Pages from to Selection Copies Collate Other Double side printing File %1 is not writable. Please choose a different file name. %1 already exists. Do you want to overwrite it? File exists <qt>Do you want to overwrite it?</qt> QPrintPropertiesDialog PPD Properties Save Enregistrer OK OK QProcess Unknown error Erreur inconnue QProgressBar %1% %1 % QProgressDialog Cancel Annuler QPushButton Open Ouvrir QRadioButton Check QRegExp no error occurred aucune erreur ne s'est produite disabled feature used option désactivée bad char class syntax syntaxe invalide pour classe de caractère bad lookahead syntax syntaxe invalide pour lookahead bad repetition syntax syntaxe invalide pour répétition invalid octal value valeur octale invalide missing left delim délémiteur gauche manquant unexpected end fin impromptue met internal limit rencontré limite interne QSQLite2Driver Error to open database Unable to begin transaction Unable to commit transaction Unable to rollback Transaction QSQLite2Result Unable to fetch results Unable to execute statement QSQLiteDriver Error opening database Error closing database Unable to begin transaction Unable to commit transaction Unable to roll back transaction QSQLiteResult Unable to fetch row Unable to execute statement Unable to reset statement Unable to bind parameters Parameter count mismatch QScrollBar Scroll here Défiler jusqu'ici Left edge Extrême gauche Top En haut Right edge Extrême droite Bottom En bas Page left Page précédente Page up Page précédente Page right Page suivante Page down Page suivante Scroll left Défiler vers la gauche Scroll up Défiler vers le haut Scroll right Défiler vers la droite Scroll down Défiler vers le bas Line up Aligner Position Line down QShortcut Space Espace Esc Échap Tab Tab Backtab Tab arr Backspace Effacement Return Retour Enter Entrée Ins Inser Del Suppr Pause Pause Print Impr écran SysReq Syst Home Début End Fin Left Gauche Up Haut Right Droite Down Bas PgUp Page préc PgDown Page suiv CapsLock Verr maj NumLock Verr num ScrollLock Arrêt défil Menu Menu Help Aide Back Précédent (historique) Forward Successeur (historique) Stop Stop Refresh Rafraîchir Volume Down Volume bas Volume Mute Volume muet Volume Up Volume haut Bass Boost Graves fort Bass Up Graves haut Bass Down Graves bas Treble Up Aigus haut Treble Down Aigus bas Media Play Média démarrer Media Stop Média arrêt Media Previous Média précédent Media Next Média suivant Media Record Média enregistrer Favorites Préférés Search Recherche Standby Attente Open URL Ouvrir URL Launch Mail Lancer courrier Launch Media Lancer média Launch (0) Lancer (0) Launch (1) Lancer (1) Launch (2) Lancer (2) Launch (3) Lancer (3) Launch (4) Lancer (4) Launch (5) Lancer (5) Launch (6) Lancer (6) Launch (7) Lancer (7) Launch (8) Lancer (8) Launch (9) Lancer (9) Launch (A) Lancer (A) Launch (B) Lancer (B) Launch (C) Lancer (C) Launch (D) Lancer (D) Launch (E) Lancer (E) Launch (F) Lancer (F) Print Screen Page Up Page Down Caps Lock Num Lock Number Lock Scroll Lock Insert Insérer Delete Supprimer Escape Échapement System Request Système Select Sélectionner Yes Oui No Non Context1 Contexte1 Context2 Contexte2 Context3 Contexte3 Context4 Contexte4 Call Appeler Hangup Raccrocher Flip Retourner Ctrl Ctrl Shift Maj Alt Alt Meta Méta + + F%1 F%1 Home Page QSlider Page left Page précédente Page up Page précédente Position Page right Page suivante Page down Page suivante QSocks5SocketEngine Socks5 timeout error connecting to socks server Erreur d'expiration socks5 lors de l'établissement d'une connexion au serveur socks QSpinBox More Less QSql Delete Supprimer Delete this record? Supprimer cet enregistrement ? Yes Oui No Non Insert Insérer Update Actualiser Save edits? Enregistrer les modifications ? Cancel Annuler Confirm Confirmer Cancel your edits? Annuler vos modifications ? QTDSDriver Unable to open connection Unable to use database QTabBar Scroll Left Scroll Right QTcpServer Socket operation unsupported Operation socket non supportée QTextControl &Undo &Annuler &Redo A&nnuler Annuler Cu&t Co&uper &Copy Cop&ier Copy &Link Location &Paste Co&ller Delete Supprimer Select All Tout sélectionner QTextEdit Select All Tout sélectionner &Undo &Annuler &Redo A&nnuler Annuler Cu&t Co&uper &Copy Cop&ier &Paste Co&ller Delete Supprimer QToolButton Press Open Ouvrir QUdpSocket This platform does not support IPv6 Cette plateforme ne supporte pas IPv6 QUndoGroup Undo Redo QUndoModel <empty> QUndoStack Undo Redo QUnicodeControlCharacterMenu LRM Left-to-right mark LRM Left-to-right mark RLM Right-to-left mark RLM Right-to-left mark ZWJ Zero width joiner ZWJ Zero width joiner ZWNJ Zero width non-joiner ZWNJ Zero width non-joiner ZWSP Zero width space ZWSP Zero width space LRE Start of left-to-right embedding LRE Start of left-to-right embedding RLE Start of right-to-left embedding RLE Start of right-to-left embedding LRO Start of left-to-right override LRO Start of left-to-right override RLO Start of right-to-left override RLO Start of right-to-left override PDF Pop directional formatting PDF Pop directional formatting Insert Unicode control character Insérer caractère de contrôle Unicode QWhatsThisAction What's This? Qu'est-ce que c'est ? QWidget * * QWorkspace &Restore &Restaurer &Move &Déplacer &Size &Redimensionner Mi&nimize Réd&uire Ma&ximize Ma&ximiser &Close &Fermer Stay on &Top &Rester au premier plan Minimize Réduire Restore Down Restaurer en bas Close Fermer Sh&ade &Enrouler %1 - [%2] %1 - [%2] &Unshade &Dérouler QXml no error occurred aucune erreur ne s'est produite error triggered by consumer erreur déclenchée par le consommateur unexpected end of file fin de fichier impromptue more than one document type definition plus d'une définition de type de document error occurred while parsing element une erreur s'est produite lors de l'analyse d'un élément tag mismatch balise débalancée error occurred while parsing content une erreur s'est produise lors de l'analyse du contenu unexpected character caractère impromptu invalid name for processing instruction nom d'instruction de traitement invalide version expected while reading the XML declaration version attendue dans la déclaration XML wrong value for standalone declaration valeur invalide pour déclaration autonome error occurred while parsing document type definition une erreur s'est produite lors de l'analyse d'une définition de type de document letter is expected lettre attendue error occurred while parsing comment une erreur s'est produise lors de l'analyse d'un commentaire error occurred while parsing reference une erreur s'est produite lors de l'analyse d'une référence internal general entity reference not allowed in DTD appel d'entité interne générale non permis dans la DTD external parsed general entity reference not allowed in attribute value appel d'entité externe parsée non permis dans la valeur d'un attribut external parsed general entity reference not allowed in DTD appel d'entité externe parsée générale non permis dans la DTD unparsed entity reference in wrong context appel d'entité non parsée dans un contexte invalide recursive entities entités récursives error in the text declaration of an external entity erreur dans la déclaration de texte d'une entité externe encoding declaration or standalone declaration expected while reading the XML declaration déclaration d'encodage ou déclaration autonome attendue dans la déclaration XML standalone declaration expected while reading the XML declaration déclaration autonome attendue dans la déclaration XML ConvertAll/translations/convertall_ru.qm0000644000175000017500000002472112573703114017555 0ustar dougdougB>@>9 :>=25@B8@>20BL -> Enter from unit -> cmdline2548B5 7=0G5=85 4;O :>=25@B8F88, [n]-=>2K9, [r]-?5@525@=CBL 8;8 [q]-2KE>4 -> ,Enter number, [n]ew, [r]everse or [q]uit -> cmdlinel2548B5 548=8FC 87<5@5=8O 2 :>B>@CN :>=25@B8@>20BL -> Enter to unit -> cmdline0@0<5B@K:Options:cmdlineb5;8G8=C A ?@>15;0<8 =5>1E>48<> 27OBL 2 :02KG:8"Units with spaces must be "quoted"cmdline>5;8G8=0 {0} 8 {1} =5A>2<5AB8<K$Units {0} and {1} are not compatiblecmdlineA?>;L7>20=85:Usage:cmdlineL:>=25@B8@>20BL 157 40;L=59H8E 70?@>A>2convert without further promptscmdline<?>:070BL MB> A>>1I5=85 8 2K9B8display this message and exitcmdline87_25;8G8=K from_unitcmdline\@568< 8=B5@0:B82=>9 :><0=4=>9 AB@>:8 (157-GUI)'interactive command line mode (non-GUI)cmdline G8A;>numcmdline G8A;>numbercmdline?0@0<5B@Koptionscmdlineqt-?0@0<5B@K qt-optionscmdlinen70409B5 :>;8G5AB2> 7=0:>2 ?>A;5 70?OB>9 4;O >B>1@065=8Oset number of decimals to showcmdline^>:07K20BL @57C;LB0B 2 8=65=5@=>< ?@54AB02;5=88$show results in engineering notationcmdlineX>:07K20BL @57C;LB0B 2 =0CG=>< ?@54AB02;5=88#show results in scientific notationcmdline?>:07K20BL 7040==>5 :>;8G5AB2> 7=0:>2 ?>A;5 70?OB>9, 4065 5A;8 =C;8*show set number of decimals, even if zeroscmdline2_25;8G8=Cto_unitcmdline,{0} =5 25@=0O 25;8G8=0{0} is not a valid unitcmdline& A515... &About... convertdlg&0:@KBL&Close convertdlg&!?@02:0...&Help... convertdlg&0&OK convertdlg&0AB@>9:8... &Options... convertdlg$&>8A: 25;8G8=K...&Unit Finder... convertdlg<p>0AB>OI0O A8;0 ConvertAll 70:;NG05BAO 2 2>7<>6=>AB8 :><18=8@>20=8O =5A:>;L:8E 25;8G8=:</p><ul><li>2548B5 "m/s", GB>1K ?>;CG8BL <5B@K 2 A5:C=4C</li><li>2548B5 "ft*lbf", GB>1K ?>;CG8BL foot-pounds (torque)</li><li>2548B5 "in^2", GB>1K ?>;CG8BL 4N9<K 2 :204@0B5</li><li>2548B5 "m^3", GB>1K ?>;CG8BL <5B@K 2 :C15</li><li>8;8 ;N1CN 4@C3CN :><18=0F8N :>B>@CN <>65B5 ?@84C<0BL</li></ul>*

ConvertAll's strength is the ability to combine units:

  • Enter "m/s" to get meters per second
  • Enter "ft*lbf" to get foot-pounds (torque)
  • Enter "in^2" to get square inches
  • Enter "m^3" to get cubic meters
  • or any other combinations you can imagine
 convertdlg"G8AB8BL 25;8G8=C Clear Unit convertdlg &25B0Colors convertdlg,><18=8@>20=85 25;8G8=Combining Units convertdlg,ConvertAll README D09;ConvertAll README File convertdlg8ConvertAll 25@A8O {0} >B {1}ConvertAll Version {0} by {1} convertdlg$Convertall - !>25BConvertall - Tip convertdlg(=0:>2 ?>A;5 70?OB>9Decimal places convertdlgError in unit data - {0} convertdlg7 25;8G8=K From Unit convertdlgj03@C60BL ?>A;54NN 8A?>;L7>20==CN 25;8G=C ?@8 70?Cc:5Load last units at startup convertdlg.5;8G8=0 =5 CAB0=>2;5=0 No Unit Set convertdlg,>;8G5AB2> A>E@0=5==KE Number saved convertdlg*$09; README =5 =0945=Read Me file not found convertdlg"5402=OO 25;8G8=0 Recent Unit convertdlg"5402=88 25;8G8=K Recent Units convertdlg,B>1@065=85 @57C;LB0B0Result Display convertdlg0@54AB02;5=85 @57C;LB0B0Result Precision convertdlg(#AB0=>28BL F25B D>=0Set background color convertdlg,#AB0=>28BL F25B B5:AB0Set text color convertdlg 0409B5 25;8G8=K Set units convertdlgV>:07K20BL :=>?:8 >?5@0B>@>2 (%, /, ^2, ^3)Show operator buttons convertdlg:>:07K20BL A>25BK ?@8 70?CA:5Show this tip at startup convertdlg:>:07K20BL A>25BK ?@8 70?CA:5Show tip at startup convertdlg 25;8G8=CTo Unit convertdlgRA?>;L7>20BL A8AB5<=K5 F25B0 ?> C<>;G0=8NUse default system colors convertdlg0=65=5@=>5 ?@54AB02;5=85Use engineering notation convertdlg>$8:A8@>20==>5 :>;8G5AB2> 7=0:>2Use fixed decimal places convertdlg*0CG=>5 ?@54AB02;5=85Use scientific notation convertdlg,>@>B:>5 ?@54AB02;5=85Use short representation convertdlg4>;L7>20B5;LA:89 8=B5@D59AUser Interface convertdlg,{0} 25;8G8=K 703@C65=K{0} units loaded convertdlg&0:@KBL&Closefinddlg0&$8;LB@ ?> B8?C 25;8G8=K&Filter Unit Typesfinddlg&AB028BL&Insertfinddlg0&<5=8BL&Replacefinddlg&!B@>:0 ?>8A:0&Search Stringfinddlg&G8AB8BLC&learfinddlg><<5=B0@88Commentsfinddlg7 25;8G8=K From UnitfinddlgAB028B&LInser&tfinddlg0<5=&8BLReplac&efinddlg 25;8G8=CTo Unitfinddlg>8A: 25;8G8=K Unit Finderfinddlg<O 25;8G8=K Unit Namefinddlg"8? 25;8G8=K Unit Typefinddlg [A5][All]finddlg &0704&Backhelpview&?5@Q4&Forwardhelpview &><>9&Homehelpview 09B8Findhelpview 09B8 &!;54CNI89 Find &Nexthelpview"09B8 &@54K4CI89Find &Previoushelpview6"5:AB>20O AB@>:0 =5 =0945=0Text string not foundhelpview$>=25@B8@>20=85... Converting...numedit<H81:0 2 40==KE 25;8G8=K - {0}Error in unit data - {0}numedit.5;8G8=0 =5 CAB0=>2;5=0 No Unit Setnumedit 0409B5 25;8G8=K Set unitsnumeditJ5;8G8=K =5A>2<5AB8<K ({0} 8. {1})(Units are not compatible ({0} vs. {1})numedit&B<5=0&Cancel optiondlg&0&OK optiondlg0AB@>9:8 Preferences optiondlg8525@=>5 2K@065=85 4;O {0}Bad equation for "{0}"unitatomD5 <>3C ?@>G8B0BL D09; units.datCan not read "units.dat" fileunitdataB0945=> 4C1;8@>20=85 8<Q= 25;8G8=Duplicate unit names foundunitdata4525@=>5 2K@065=85 4;O {0}Bad equation for {0} unitgroupX52>7<>6=> :><18=8@>20BL =5;8=59=K5 25;8G8=KCannot combine non-linear units unitgroup<&8:;8G=>5 >?@545;5=85 25;8G8=KCircular unit definition unitgroup<525@=0O :>=25@B0F8O 4;O {0}Invalid conversion for "{0}" unitgroup><<5=B0@88Comments unitlistview<O 25;8G8=K Unit Name unitlistview"8? 25;8G8=K Unit Type unitlistview ) , ConvertAll/translations/convertall_fr.qm0000644000175000017500000002336712573413601017542 0ustar dougdoug Enter from unit -> cmdlinelEntre un nombre, [n]ouveau, [i]nverse ou [q]uitter -> ,Enter number, [n]ew, [r]everse or [q]uit -> cmdline$Entrer l'unit -> Enter to unit -> cmdlineOptions :Options:cmdlinevLes units avec des espaces doivent tre "entre guillemets""Units with spaces must be "quoted"cmdlinedLes units ne sont pas compatibles ({0} vs. {1})$Units {0} and {1} are not compatiblecmdlineUsage :Usage:cmdline<convertir sans autres demandesconvert without further promptscmdline<afficher ce message et quitterdisplay this message and exitcmdlinede l'unit from_unitcmdline^Mode de ligne de commande intractif (sans-GUI)'interactive command line mode (non-GUI)cmdline nombrenumcmdline nombrenumbercmdlineoptionsoptionscmdlineqt-options qt-optionscmdline8nombre de dcimals montrerset number of decimals to showcmdline^afficher les rsultats en notation scientifique#show results in scientific notationcmdlineTmontrer le nombre de dcimals, mme si nul*show set number of decimals, even if zeroscmdlinevers l'unitto_unitcmdline<{0} n'est pas une unit valide{0} is not a valid unitcmdline& propos... &About... convertdlg&Fermer&Close convertdlg&Aide...&Help... convertdlg&Ok&OK convertdlg&Options... &Options... convertdlg&&Trouver l'unit...&Unit Finder... convertdlg<p>La force de ConvertAll est la possibilit de combiner des units:</p><ul><li>Entrez "m / s" pour obtenir mtres par seconde;</li><li>Entrez "ft * lbf" pour obtenir pieds-livres (couple);</li><li>Enter "in^ 2" pour obtenir pouces carrs;</li><li>Enter "m ^ 3 "pour obtenir de mtres cubes</li><li>ou toute autre combinaison que vous pouvez imaginer</li></ul>*

ConvertAll's strength is the ability to combine units:

  • Enter "m/s" to get meters per second
  • Enter "ft*lbf" to get foot-pounds (torque)
  • Enter "in^2" to get square inches
  • Enter "m^3" to get cubic meters
  • or any other combinations you can imagine
 convertdlgEffacer l'unit Clear Unit convertdlgCouleursColors convertdlg0La combinaison de unitsCombining Units convertdlg8Fichier README de ConvertAllConvertAll README File convertdlg:ConvertAll version {0} by {1}ConvertAll Version {0} by {1} convertdlgConvertAllConvertall - Tip convertdlgDcimalDecimal places convertdlg2Erreur dans l'unit - {0}Error in unit data - {0} convertdlgDe l'unit From Unit convertdlgJChargez dernires units au dmarrageLoad last units at startup convertdlg(Aucune unit choisie No Unit Set convertdlgNombre sauv Number saved convertdlg4Fichier Read Me non trouvRead Me file not found convertdlgUnit rcente Recent Unit convertdlgUnits rcentes Recent Units convertdlg(Afficher le rsultatResult Display convertdlg4Choisir la couleur de fondSet background color convertdlg6Choisir la couleur du texteSet text color convertdlg$Choisir les units Set units convertdlgFMontrer les bouttons de l'oprateurShow operator buttons convertdlg<Afficher allusion au dmarrageShow this tip at startup convertdlg<Afficher allusion au dmarrageShow tip at startup convertdlgVers l'unitTo Unit convertdlg@Utiliser les couleurs par dfautUse default system colors convertdlg6Utilis des dcimales fixesUse fixed decimal places convertdlgBUtiliser la notation scientifiqueUse scientific notation convertdlg*Interface utilisateurUser Interface convertdlg&{0} units charges{0} units loaded convertdlg&Fermer&Closefinddlg4&Filtrer les types d'unit&Filter Unit Typesfinddlg&Insrer&Insertfinddlg&Remplacer&Replacefinddlg.&Recherche de caractre&Search StringfinddlgN&ettoyerC&learfinddlgCommentairesCommentsfinddlgde l'unit From UnitfinddlgInsr&erInser&tfinddlgRemplac&erReplac&efinddlgVers l'unitTo Unitfinddlg"Chercheur d'unit Unit FinderfinddlgNom de l'unit Unit NamefinddlgType d'unit Unit Typefinddlg [Tout][All]finddlg&Retour&Backhelpview&Avance&Forwardhelpview &Home&HomehelpviewChercherFindhelpview"Chercher &Suivant Find &Nexthelpview&Chercher &PrcdentFind &PrevioushelpviewBChane de caractres non trouveText string not foundhelpviewConversion... Converting...numedit2Erreur dans l'unit - {0}Error in unit data - {0}numedit(Aucune unit choisie No Unit Setnumedit$Choisir les units Set unitsnumeditdLes units ne sont pas compatibles ({0} vs. {1})(Units are not compatible ({0} vs. {1})numedit&Annuler&Cancel optiondlg&Ok&OK optiondlgPrfrences Preferences optiondlg8Mauvaise quation pour "{0}"Bad equation for "{0}"unitatomHNe peut lire le fichier "units.dat" Can not read "units.dat" fileunitdataNDoublons dans les noms d'units trouvsDuplicate unit names foundunitdata4Mauvaise quation pour {0}Bad equation for {0} unitgroupXOn ne peut combiner des units non linairesCannot combine non-linear units unitgroup:Dfinition d'unit circulaireCircular unit definition unitgroup<Conversion invalide pour "{0}"Invalid conversion for "{0}" unitgroupCommentairesComments unitlistviewNom de l'unit Unit Name unitlistviewType d'unit Unit Type unitlistviewConvertAll/uninstall.py0000755000175000017500000000447512272602440014204 0ustar dougdoug#!/usr/bin/env python """ **************************************************************************** uninstall.py, Linux uninstall script for ConvertAll Copyright (C) 2013, Douglas W. Bell This is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, either Version 2 or any later version. This program is distributed in the hope that it will be useful, but WITTHOUT ANY WARRANTY. See the included LICENSE file for details. ***************************************************************************** """ import sys import os.path import getopt import shutil prefixDir = '/usr/local' progName = 'convertall' def usage(exitCode=2): """Display usage info and exit. Arguments: exitCode -- the code to retuen when exiting. """ global prefixDir print('Usage:') print(' python uninstall.py [-h] [-p dir]') print('where:') print(' -h display this help message') print(' -p dir install prefix [default: {0}]'.format(prefixDir)) sys.exit(exitCode) def removeAll(path): """Remove path, whether it is a file or a directory, print status""" print(' Removing {0}...'.format(path)) try: if os.path.isdir(path): shutil.rmtree(path) elif os.path.isfile(path): os.remove(path) else: print(' not found') return print(' done') except OSError as e: if str(e).find('Permission denied') >= 0: print('\nError - must be root to remove files') sys.exit(4) raise def main(): """Main uninstaller function. """ try: opts, args = getopt.getopt(sys.argv[1:], 'hp:') except getopt.GetoptError: usage(2) global prefixDir for opt, val in opts: if opt == '-h': usage(0) elif opt == '-p': prefixDir = val print('Removing files...') global progName removeAll(os.path.join(prefixDir, 'lib', progName)) removeAll(os.path.join(prefixDir, 'share', 'doc', progName)) removeAll(os.path.join(prefixDir, 'share', progName)) removeAll(os.path.join(prefixDir, 'share', 'icons', progName)) removeAll(os.path.join(prefixDir, 'bin', progName)) print('Uninstall complete.') if __name__ == '__main__': main() ConvertAll/icons/0000755000175000017500000000000012270342671012724 5ustar dougdougConvertAll/icons/helpnext.png0000644000175000017500000000413211655310542015257 0ustar dougdougPNG  IHDR szzgAMA a pHYs B(xIDATXåil\wy3{o8^}=Ϲ9~m4Y@'t`lǁwVqp;T$C`u\cXY9^һ>]1~{@:hmAru&Bgc cce&>±q\%ۮ@ۮfe  -7^̎)"Z  !T|xg,ϼ>{ ‘cP(|я'ж 4ӵ[yN.;/A&d<!^`L%ђ#qfKȾ{Ndϐ}v}H-ܹRفkxDVD R1L)/ok? ;sfZ< K;! C_V,Q2pʾe- K۟#Z@r@/pmW/91Ua!ΩamC]LqNC3doB`9J%[ ضwl ګ $aﷻ02%r~c)&ZeI+mq:m$?KG@<FK̖ E\r|]r֎츺Z+\"rKΫD͝F*vΩiR ,2Q805i̓PRe}N3+ τ.xwFhn}7us$obIX[FMR*$bq'+|pc3SŀB@bSŀ-!GP2|" Rj,b5bÙ29א_%Ko.!VfB<Ԫ]KPkB =Qp*WBOO)JT+݆0[,RJ֞VZ Kk6N}& 2$>,?\ՙ\X odug)fNI"Ra8YHD$Z Lj s$O :x>~BrWւcRjuTJA:C+A8zZ LTɄ!{z;vr罏 cΒ}];HR H~-3 1e<W*ijogS2 x,XD>O5+ZiYͧe67.-3ΟɵG~/y}' HD&#*KfI'|'&HD$^>G ~|cοD?oyD-Hūy z..WHJINMꢊH(ntR=VƧ&]~15Eh-$RT'`xo5合VQ߆Zx]'7Sί0jC3I0χftDkam1JcQZ#Ɔ()88\bmT08Z9@6$X>L)4FJ/eMijFsͤҜt!^FCkR~@5&jA&3=pjBmGږ_nP?'I55D9k(HM*QE,"K:13|7{Lcb"!#hBP"nsPU0$Y3+Uկja6<&C:G"GFK]#+ /!+J 1'}d;Y\ǩ'FQQKsoSw(lDXKf̓6JGTGGhxwojOX1w`Q*&pؿ>kQUHEG+:KUԆJl$%/(:Q7BOg@&Tafh|IENDB`ConvertAll/icons/convertall_lg.png0000644000175000017500000000707010744114224016264 0ustar dougdougPNG  IHDR@@iqsBIT|d pHYs}tEXtSoftwarewww.inkscape.org< IDATx՛ytTu?,if@ Xb$pkfq*qivkn1 Cr'KK RC{Xf fޯh̪7Z\=gw{UR _V f3fN!i%i8K8JTl`EbEbX ` I|~6&KDz~“% ]HtES$# Е`) )OMZN7v Pc݌j& 8udQA̤L$Mt b̪~l8QB3:Urzi2VT\g̣ b 줖|\g,GbB`8%q} 'i3Lptb8I~X@{̭Ls`cY\$6h2g?Gh bDڇ;Q.2U[ix88peۭc*Z8G0$? 7L16ooS<db ȵPms:uꆩ B R;t ؘeŔq3C;T,&VAl|S ʌ?N}yr+c(SkiA娱t IF?@~~@e :2y/sA I=¸RJD`Hbr"*K pVVSI^lEԽ~_2!lb!u<L^dࠉSz??#BZs:>W%{9㢯k:^ƴgq "DbGpm9LJ?j4\IW󙣍,Do?בf+,C68\nH\4iC[i$iLHBRm7@TIwb6N&hE ՋtQ$r :wPXLm7gf6s!Lg 1]bkIr)Lm*nPAFI hТz.VEW vw;Q F7YL-b8p$4(Iu[}Tݨ rf#tG 7s[;e)K p H5D8?B0[w,ki,2gGPC'$%DidJw 4G䲆RD #x* 2fætGo3Z:޹:ƭ+BtRLrBN2S\1;\":7jYvR` !!t0-{1T2p;735龞QsXᫍ^o_ęf+T7bMnҠhšǬ;y/W=[B@>r3BS3k-p1mli󝍫ڸi!4RhPV{0OL3]ˡKM42f7i' r sC/}Xϫl=\lY.@32DC'QaHpCuvV,m܎+v+]hZ Q$=fS#CSb=j؂ѺD9X㯖DA)̧#eɔf~&"'>&V"+e/#5wOX15Q8 (fO!BVC} N3NJ۞yyUsOV4Ŋ_׌t,@ i^yt#2re"yds*dTB7M_ '[L <0;W4^}ym#K8V. w$Q { ۗkM[F[_?yG0s'hơhԒl5 7q 0AZ 0\S#z 55g:}H @ Hb`(-)$[|~hǭ7"3Z3j-**|j}Hq߉ŖGGיjQ{2*H(D ɺb%-ČCvmP^Kl-&m c&Nbea݉anډ؈u"\;VaY%1MaóyI: uӈ sd&UY(܁KDߵˢMaL v:Ϝ\{ {ֆwhzK@˟;\"5i[f.KBSBĮaɣ(Q領TD 4o}i[ u_Q_$[NlH fh< :ii\f .[))lEhcHݗ^{~Y,5ȡ"ѵAUHW'l-"Ow^ooݶO>oOW2G1{^^'͕ySfoyǟ^yfaxc,O6{'+`*Y%cpH*p\>|P= Ӏ1͟՝:]RGo=xB\WݭZ;dIpw]U/#Q _?IENDB`ConvertAll/icons/helphome.png0000644000175000017500000000331010744141532015225 0ustar dougdougPNG  IHDR szzbKGD pHYs ,tIME  3VUIDATxŗo?sf粻wqbƉb'M=-Rڢ h6}X>BJxmQʦ6I|]ۻ33sNvCHR#}3].;!<3{i8JPr_p8d:V&>< < Lv@zz[>@o8w?N˻`x %LًiEYཅ^*ୂz/8{I6Z :ٵ=ı]oHNKɆ .aLrY4Ȼ6Q <#fUyT|s|thRb"N*M6s5ށɩ߶_Msb'}DRK2RBsh:%7#ޮh8WJvҿ@u!D4qo&& z 2҃;f lch> y'EݲDo zaԛLoivgJ6A NZ>tאOª67v@+Mª~ |ⵚתOE]\zI7|^}o|<_m +Mڏ{Ph2z҉rkPW  '40t4[s){>T/9_r@!N;p8 {v\<~2];g\1'08N8lN-R%_ w "-40}̥O lenV״cY>55%tG0/铖!7蠤7~a賶Vk/d0{ٱޚk~(lLB@jZ=<>5/Qbd0ON JїfSSSZ=āt1 yaz:񳄕,|dJVկԜ֭a-îωF0ݮ9/B6z:IENDB`ConvertAll/icons/helpprevious.png0000644000175000017500000000414511655310542016161 0ustar dougdougPNG  IHDR szzgAMA a pHYs B(xIDATXåyUg{̝; v6,K%.hj-SI($ ԥT@ 6bD*$2˝}st MG'?}{󼂥>4X <g|wb m7% T"s2{;=Jw_@O7 k;X,ƚ&" S5f*!ib  ntǀI`O_-g[HցZ!i^z(r9S<]~u nĞpcG ơ@I$IPo>z‹/ཌ~zwuMqh)(צ(bZIhrՈ?zG `ŌΞ\ s&na3Xrt)rh8ǪMw6Q)LW"B ВF8њxUT+D[ `*nR۱ r1[gD! S(iVw$H} g)ZIhAB=bZx(}庁ҁgN oH%c\Γ_XV)-~#K9\5⪁ mggkRD"N`ogflp3-t,b*<ʾetgt2XHn,R}Ӏbݠ-0Z؞=ͼ~.??x!X:U9/igU{Sy~E)gmMI(>K۴ ŭK;*b,D5n<֞XD~3RvēqusV OҖz{ïeZju5w1[G1U %z yhC -d7ܢ}m1]ȑi&fc' Ocy&TBK=xZ+I."0xot%=knFc`:-t$iѹ:gwFۺ`E!ZwCQ%_'sd QiUM4Ihgk(cKbk- /M1N 2sZ|@7 !IVPG"r _)GRJցTZyp2S .E*_7${߲ )YQ sX.dxt1Z),J))S0SH$Z uꆩRo( S\ԮJ`)b})Gd!`xJ)A\ϿHU)"Z bӧa\b1Ş[7EɏZd <$^PG ZR?KŐ"Dox`FIŽ15J%HP鵟8.4)ZLru lJQvphxEIwZ oN -I)w쾛E2 R1I& |Q~$9 /z8O 2J%D!ڛw/wI+nrcs>z2D(%N5bM&71T"{rǤn"庥'㑊S{&p#80(xi渤;Q frAj'wdѲKJaWRDBn?xp\W x55FQ.O!|NJysf)]?u#Ċ.2t=[ag)OG'C& gAl>k&jϿAY5y^̊eIx3f$t\I2^ȍ)O9u7< L7y[l-hfa(4R''D~ image/svg+xml ConvertAll/icons/helpback.png0000644000175000017500000000313110744141532015176 0ustar dougdougPNG  IHDR szzbKGD pHYs ,tIME *IMIDATxŗ][Gwڬ#.Iv6P%6{D " )/-m +CߪTBJ""%* UԈ .]lM^3<ڎl 33yhx.PGA(ٴAw|tZ},L$X@:8K&+9K?0vfx%!A"8;%>@فFj,e8O[Io%|?'EDۚR}[L'5鴿ur= yx`MFh;<[gLn.,_XWH]ɍ;vle}nvl}QZ0rh>5P!gYdT3o0ϜTU̕9u$;\Z>5s$ >v]sCӗ ~u$?]oMr(C,)<}4 ل6sZƵNG{/P(`gJfҶ[f,rP 4-^8TX:GK6a{ˀm}]abe?Z lٕWWJ咋BfF'k'Z  2H*Yb{Ӎ?/u%^XqpEjn1bfA`jM(>VOrkWWs#-h@D=@ܥ|O=ݢ<^&] "؍$ȧ"F2Ru܍9Q=FsJxnk( v CzJCz18kQuz.ς@yY@aAө>ޚCg]7hM/]ˢw%em8^.]t a 7yčv|'={-X<AVOH_(pOG_9T_(mlRT[d2f_+oO $Čvq׬D旦ow_]o\{S&Pl>] @v>G荺mF]bGv>W7t/z ɨϫ Ǘ5vE:Ϳ9*5>)Pu>>.Ĥ#DϢcQSɭ IueMx Uj_Cw 6]PD T>{M]G WK>۴X-߇m (tښk{1""{I /KP2a wjV9 az2`p6jN JWIENDB`ConvertAll/icons/convertall_med.png0000644000175000017500000000316110744114224016424 0ustar dougdougPNG  IHDR szzsBIT|d pHYsiZBtEXtSoftwarewww.inkscape.org<IDATX]lUU}~o_[mKhA $!D1h0<  3qQ'L?1Fg MdB$@)" -yhsoA]{:{}R.ƟXeTl,Kyď$t{׵>T$3ƫ)KX$`iKsɔb Xkَ4wEӪѹ5 st!-}I UhjXPtE*ќEk~F/=<"އ(mŷ;(lzZz}{PxV/MEV_"Ӽ:XJ=zOIBiQۣ+̰fig-]L|C">uXK'hajn4t aB?/:z#&yWiUĘ+ x+Lq{p1HCUY uxˉhUf%!I& 2v:f1|yhd #6\ig@_pboC6j=Te=U}+~D=uYQD#{7h7UoלLb8)qCL8K8*Me/BSxid=TIXMg4\D|y/:3@*PR!wmM#9_0H89F@) nb%[Fl&ABfFӱ.2Kӂ5HNXjE$]aBZ0.& lb`s>%߻7 m9T,d !6g}9YϜ]2p19HRlzgpH G8Cu(L1<6Lk6rxHLR@w_b:I rbo2cEzF*TC)PƋw]bBAǫձt+>DӖ KiG*KNpݝ! ʫ+:`np-1|k6^#g~ʺHl,!١$p"",$>L2i?$:f-!S$6*I @?̎oR$*pIENDB`ConvertAll/icons/helpforward.png0000644000175000017500000000315710744141532015752 0ustar dougdougPNG  IHDR szzbKGD pHYs ,tIME 3rIDATxŗ]lWckfi;V! T""J}iX`ɭPU$ @H< JWN BC !%J)Im)_κ;;3nkĕZ͞sϹg9K8ã;@1 !E;RL!'3H|8F@ ۸f_n+":^LdM?*پ)U8\$<:^sjttMavkK+ ֬^═=ȧ! pw+%ǒ˛ǒyCqnNԔ#=ǁ7E`x~1{o_[S&|ӯҕ\-Y3߫L],)M.;)bMZcIR?i(hP |i`?r%Xzc-g^m-|-# mhrd'Wj$_*Ͼ<=Zx藋-ޢ3}+ˆ, uCXmYT `b$*ޏ|YcI0L-i*/X4t编q8n5lѕ ^͚΢iP]@U\gu_.9Wg8smk?H+59e 8x  /d_g[1[ʿ%{33ŗ(`6Gj}ůqz̀wZ <|[}"^R^ρ|2gžO`hI~UE!syf$Jr~ڶ-Zz6+? z|@oah*{]wٖ:TA5e t:h,˒LNfB5P_ҟR0蚲 /8Rk S̅%'4=<0 U۶gB۶,+v3.PٶQUtuHy