Compare commits

...

7 Commits

Author SHA1 Message Date
494590475a release 2.3.2 2015-07-04 02:35:09 +03:00
27ab7d9cd7 fix cast int as float 2015-07-03 00:05:47 +03:00
1869a68122 fix bug with no actions
set network speed units as MB/s if the value more than 1k KB/s
2015-07-03 00:04:03 +03:00
aa0a4b417d improve battery support 2015-07-01 01:14:04 +03:00
41deb8ef72 fix plasma crash with extquotes
rewrite main widget to use signal-slot model
2015-06-30 07:13:58 +03:00
aa15e13713 update fr translations 2015-06-14 17:19:38 +03:00
ad63f78929 update links to opensuse packages 2015-06-12 15:05:56 +03:00
19 changed files with 262 additions and 214 deletions

View File

@ -1,3 +1,10 @@
Ver.2.3.2:
+ change network speed units from KB/s to MB/s if value is more than 1000 KB/s (metrics are the same)
- fix bug with no actions on link activation (thanks to infans)
* improve quotes support, e.g. fix plasma crash
* rewrite main widget to signal-slot update model
* improve battery calculation for system which has several batteries
Ver.2.3.1:
- fix bug with no updates from configuration UI
- fix invalid vertical tab parsing

View File

@ -1,3 +1,10 @@
Вер.2.3.2:
+ добавлено изменение скорости интернета с KB/s на MB/s, если величина более 1000 KB/s
- пофикшен баг с отсутствием действия при активации ссылки (спасибо infans)
* улучшена поддержка котировок, например пофикшен возможный сегфолт плазмы
* переписать основной виджет к модели сигнал-слот
* улучшена поддержка расчета заряда батареи для нескольких батарей
Вер.2.3.1:
- пофикшен баг с отсутствием обновлений значений из настроек
- убрана поддержка фильтра `\t`

View File

@ -72,4 +72,4 @@ Links
* Plasmoid on [kde-look](http://kde-look.org/content/show.php/Awesome+Widgets?content=157124)
* DataEngine on [kde-look](http://kde-look.org/content/show.php/Extended+Systemmonitor+DataEngine?content=158773)
* Archlinux [AUR](https://aur.archlinux.org/packages/plasma5-applet-awesome-widgets/) package
* [OpenSuse](http://software.opensuse.org/package/awesome-widgets) package
* [OpenSuse](http://software.opensuse.org/search?q=awesome-widgets) packages, [KF5 OpenSuse](http://software.opensuse.org/package/plasma5-awesome-widgets) package

View File

@ -2,7 +2,7 @@
pkgname=plasma5-applet-awesome-widgets
_pkgname=awesome-widgets
pkgver=2.3.1
pkgver=2.3.2
pkgrel=1
pkgdesc="Collection of minimalistic Plasmoids which look like Awesome WM widgets (ex-PyTextMonitor)"
arch=('i686' 'x86_64')
@ -17,7 +17,7 @@ optdepends=("catalyst: for GPU monitor"
makedepends=('cmake' 'extra-cmake-modules')
source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz)
install=${pkgname}.install
md5sums=('90e640b6679b4cf0f6f99cf6da2848f3')
md5sums=('8902769bcfd223c8c28fa6a9cf492b41')
backup=('etc/xdg/plasma-dataengine-extsysmon.conf')
prepare() {

View File

@ -11,7 +11,7 @@ set (PROJECT_CONTACT "esalexeev@gmail.com")
set (PROJECT_LICENSE "GPLv3")
set (PROJECT_VERSION_MAJOR 2)
set (PROJECT_VERSION_MINOR 3)
set (PROJECT_VERSION_PATCH 1)
set (PROJECT_VERSION_PATCH 2)
set (PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
string (TIMESTAMP CURRENT_DATE "%Y-%m-%d %H:%M" UTC)

View File

@ -65,6 +65,7 @@ Item {
horizontalAlignment: Text.AlignLeft
textFormat: Text.RichText
text: AWActions.getAboutText("links")
onLinkActivated: Qt.openUrlExternally(link);
}
QtControls.Label {
@ -97,6 +98,7 @@ Item {
verticalAlignment: Text.AlignTop
textFormat: Text.RichText
text: AWActions.getAboutText("3rdparty")
onLinkActivated: Qt.openUrlExternally(link);
}
}
}

View File

@ -58,6 +58,7 @@ Item {
"batInTooltipColor": plasmoid.configuration.batInTooltipColor
}
signal dropSource(string sourceName)
signal needUpdate
signal sizeUpdate
@ -85,7 +86,7 @@ Item {
// FIXME: ugly workaround to make some sources working
systemmonitorDE.interval = plasmoid.configuration.interval
if (AWKeys.setDataBySource(sourceName, data, settings)) disconnectSource(sourceName)
AWKeys.setDataBySource(sourceName, data, settings)
}
onSourceAdded: {
@ -106,7 +107,7 @@ Item {
// FIXME: ugly workaround to make some sources working
extsysmonDE.interval = plasmoid.configuration.interval
if (AWKeys.setDataBySource(sourceName, data, settings)) needUpdate()
AWKeys.setDataBySource(sourceName, data, settings)
}
}
@ -164,6 +165,16 @@ Item {
// plasmoid.setAction("report", i18n("Mail to developers"), "email")
// init submodule
Plasmoid.userConfiguringChanged(false)
// connect data
AWKeys.dropSourceFromDataengine.connect(dropSource)
AWKeys.needToBeUpdated.connect(needUpdate)
}
onDropSource: {
if (debug) console.log("[main::onDropSource]")
if (debug) console.log("[main::onDropSource] : Source " + sourceName)
systemmonitorDE.disconnectSource(sourceName)
}
onNeedUpdate: {

View File

@ -70,6 +70,7 @@ Item {
verticalAlignment: Text.AlignVCenter
wrapMode: Text.WordWrap
text: i18n("Detailed information may be found on <a href=\"http://arcanis.name/projects/awesome-widgets/\">project homepage</a>")
onLinkActivated: Qt.openUrlExternally(link);
}
Row {

View File

@ -20,7 +20,7 @@ X-Plasma-RemoteLocation=
X-KDE-PluginInfo-Author=Evgeniy Alekseev aka arcanis
X-KDE-PluginInfo-Email=esalexeev@gmail.com
X-KDE-PluginInfo-Name=org.kde.plasma.awesomewidget
X-KDE-PluginInfo-Version=2.3.0
X-KDE-PluginInfo-Version=2.3.2
X-KDE-PluginInfo-Website=http://arcanis.name/projects/awesome-widgets/
X-KDE-PluginInfo-Category=System Information
X-KDE-PluginInfo-Depends=

View File

@ -289,9 +289,10 @@ QStringList AWKeys::dictKeys(const bool sorted)
// battery
allKeys.append(QString("ac"));
QStringList allBatteryDevices = QDir(QString("/sys/class/power_supply"))
.entryList(QDir::Dirs | QDir::NoDotAndDotDot,
.entryList(QStringList() << QString("BAT*"),
QDir::Dirs | QDir::NoDotAndDotDot,
QDir::Name);
for (int i=allBatteryDevices.filter(QRegExp(QString("BAT.*"))).count()-1; i>=0; i--)
for (int i=allBatteryDevices.count()-1; i>=0; i--)
allKeys.append(QString("bat%1").arg(i));
allKeys.append(QString("bat"));
// player
@ -355,17 +356,20 @@ QStringList AWKeys::getHddDevices()
}
bool AWKeys::setDataBySource(const QString sourceName, const QVariantMap data,
void AWKeys::setDataBySource(const QString sourceName, const QVariantMap data,
const QVariantMap params)
{
if (debug) qDebug() << PDEBUG;
if (debug) qDebug() << PDEBUG << ":" << "Source" << sourceName;
if (sourceName == QString("update")) return true;
if (sourceName == QString("update")) {
emit(needToBeUpdated());
return;
}
// checking
if (!checkKeys(data)) return false;
if (keys.isEmpty()) return false;
if (!checkKeys(data)) return;
if (keys.isEmpty()) return;
// regular expressions
QRegExp cpuRegExp = QRegExp(QString("cpu/cpu.*/TotalLoad"));
@ -552,10 +556,14 @@ bool AWKeys::setDataBySource(const QString sourceName, const QVariantMap data,
QString device = sourceName;
device.remove(QString("network/interfaces/")).remove(QString("/receiver/data"));
QStringList allNetworkDevices = networkDevices;
for (int i=0; i<allNetworkDevices.count(); i++)
if (allNetworkDevices[i] == device) {
values[QString("down%1").arg(i)] = QString("%1").arg(data[QString("value")].toFloat(), 4, 'f', 0);
break;
for (int i=0; i<allNetworkDevices.count(); i++) {
if (allNetworkDevices[i] != device) continue;
float value = data[QString("value")].toFloat();
if (value > 1000.0)
values[QString("down%1").arg(i)] = QString("%1").arg(value / 1024.0, 4, 'f', 1);
else
values[QString("down%1").arg(i)] = QString("%1").arg(value, 4, 'f', 0);
break;
}
if (device == values[QString("netdev")]) {
values[QString("down")] = QString("%1").arg(data[QString("value")].toFloat(), 4, 'f', 0);
@ -566,10 +574,14 @@ bool AWKeys::setDataBySource(const QString sourceName, const QVariantMap data,
QString device = sourceName;
device.remove(QString("network/interfaces/")).remove(QString("/transmitter/data"));
QStringList allNetworkDevices = networkDevices;
for (int i=0; i<allNetworkDevices.count(); i++)
if (allNetworkDevices[i] == device) {
for (int i=0; i<allNetworkDevices.count(); i++) {
if (allNetworkDevices[i] != device) continue;
float value = data[QString("value")].toFloat();
if (value > 1000.0)
values[QString("up%1").arg(i)] = QString("%1").arg(data[QString("value")].toFloat() / 1024.0, 4, 'f', 1);
else
values[QString("up%1").arg(i)] = QString("%1").arg(data[QString("value")].toFloat(), 4, 'f', 0);
break;
break;
}
if (device == values[QString("netdev")]) {
values[QString("up")] = QString("%1").arg(data[QString("value")].toFloat(), 4, 'f', 0);
@ -653,11 +665,9 @@ bool AWKeys::setDataBySource(const QString sourceName, const QVariantMap data,
values[QString("cuptime")].replace(QString("$mm"), QString("%1").arg(minutes, 2, 10, QChar('0')));
values[QString("cuptime")].replace(QString("$m"), QString("%1").arg(minutes));
} else {
if (debug) qDebug() << PDEBUG << ":" << "Source not found";
return true;
if (debug) qDebug() << PDEBUG << ":" << "Source" << sourceName << "not found";
emit(dropSourceFromDataengine(sourceName));
}
return false;
}

View File

@ -63,7 +63,7 @@ public:
Q_INVOKABLE void addDevice(const QString source);
Q_INVOKABLE QStringList dictKeys(const bool sorted = false);
Q_INVOKABLE QStringList getHddDevices();
Q_INVOKABLE bool setDataBySource(const QString sourceName, const QVariantMap data,
Q_INVOKABLE void setDataBySource(const QString sourceName, const QVariantMap data,
const QVariantMap params);
// values
Q_INVOKABLE void graphicalValueByKey();
@ -72,6 +72,10 @@ public:
// configuration
Q_INVOKABLE void editItem(const QString type);
signals:
void dropSourceFromDataengine(const QString source);
void needToBeUpdated();
private slots:
void loadKeysFromCache();
void reinitKeys();

View File

@ -65,6 +65,7 @@ Item {
horizontalAlignment: Text.AlignLeft
textFormat: Text.RichText
text: DPAdds.getAboutText("links")
onLinkActivated: Qt.openUrlExternally(link);
}
QtControls.Label {
@ -97,6 +98,7 @@ Item {
verticalAlignment: Text.AlignTop
textFormat: Text.RichText
text: DPAdds.getAboutText("3rdparty")
onLinkActivated: Qt.openUrlExternally(link);
}
}
}

View File

@ -42,6 +42,7 @@ Item {
verticalAlignment: Text.AlignVCenter
wrapMode: Text.WordWrap
text: i18n("Detailed information may be found on <a href=\"http://arcanis.name/projects/awesome-widgets/\">project homepage</a>")
onLinkActivated: Qt.openUrlExternally(link);
}
Row {

View File

@ -20,7 +20,7 @@ X-Plasma-RemoteLocation=
X-KDE-PluginInfo-Author=Evgeniy Alekseev aka arcanis
X-KDE-PluginInfo-Email=esalexeev@gmail.com
X-KDE-PluginInfo-Name=org.kde.plasma.desktoppanel
X-KDE-PluginInfo-Version=2.3.0
X-KDE-PluginInfo-Version=2.3.2
X-KDE-PluginInfo-Website=http://arcanis.name/projects/awesome-widgets/
X-KDE-PluginInfo-Category=System Information
X-KDE-PluginInfo-Depends=

View File

@ -52,6 +52,9 @@ ExtQuotes::ExtQuotes(QWidget *parent, const QString quotesName, const QStringLis
values[QString("price")] = 0.0;
values[QString("pricechg")] = 0.0;
values[QString("percpricechg")] = 0.0;
manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply *)), this, SLOT(quotesReplyReceived(QNetworkReply *)));
}
@ -59,6 +62,9 @@ ExtQuotes::~ExtQuotes()
{
if (debug) qDebug() << PDEBUG;
disconnect(manager, SIGNAL(finished(QNetworkReply *)), this, SLOT(quotesReplyReceived(QNetworkReply *)));
delete manager;
delete ui;
}
@ -235,13 +241,11 @@ void ExtQuotes::readConfiguration()
QMap<QString, float> ExtQuotes::run()
{
if (debug) qDebug() << PDEBUG;
if (!m_active) return values;
if ((!m_active) || (isRunning)) return values;
if (times == 1) {
if (debug) qDebug() << PDEBUG << ":" << "Send request";
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply *)), this, SLOT(quotesReplyReceived(QNetworkReply *)));
isRunning = true;
QNetworkReply *reply = manager->get(QNetworkRequest(QUrl(url())));
new QReplyTimeout(reply, 1000);
}
@ -351,6 +355,8 @@ void ExtQuotes::quotesReplyReceived(QNetworkReply *reply)
values[QString("pricechg")] = values[QString("price")] == 0 ? 0.0 : value - values[QString("price")];
values[QString("percpricechg")] = 100 * values[QString("pricechg")] / values[QString("price")];
values[QString("price")] = value;
isRunning = false;
}

View File

@ -96,6 +96,8 @@ private:
QString m_fileName;
QStringList m_dirs;
bool debug;
QNetworkAccessManager *manager;
bool isRunning = false;
Ui::ExtQuotes *ui;
QString url();
// properties

View File

@ -311,34 +311,36 @@ QVariantMap ExtendedSysMon::getBattery(const QString acpiPath)
QVariantMap battery;
battery[QString("ac")] = false;
battery[QString("bat")] = 0;
QFile acFile(acpiPath + QString("/AC/online"));
// adaptor
QFile acFile(QString("%1/AC/online").arg(acpiPath));
if (acFile.open(QIODevice::ReadOnly)) {
if (QString(acFile.readLine()).trimmed().toInt() == 1)
battery[QString("ac")] = true;
}
acFile.close();
// batterites
QStringList allDevices = QDir(acpiPath).entryList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name);
QStringList batDevices;
QRegExp batRegexp = QRegExp(QString("BAT.*"));
for (int i=0; i<allDevices.count(); i++)
if (allDevices[i].contains(batRegexp))
batDevices.append(allDevices[i]);
float currentLevel = 0.0;
float fullLevel = 0.0;
QStringList batDevices = QDir(acpiPath).entryList(QStringList() << QString("BAT*"),
QDir::Dirs | QDir::NoDotAndDotDot,
QDir::Name);
for (int i=0; i<batDevices.count(); i++) {
QFile batFile(QString("%1/%2/capacity").arg(acpiPath).arg(batDevices[i]));
if (batFile.open(QIODevice::ReadOnly))
battery[QString("bat%1").arg(i)] = QString(batFile.readLine()).trimmed().toInt();
batFile.close();
QFile currentLevelFile(QString("%1/%2/energy_now").arg(acpiPath).arg(batDevices[i]));
QFile fullLevelFile(QString("%1/%2/energy_full").arg(acpiPath).arg(batDevices[i]));
if ((currentLevelFile.open(QIODevice::ReadOnly)) &&
(fullLevelFile.open(QIODevice::ReadOnly))) {
float batCurrent = QString(currentLevelFile.readLine()).trimmed().toFloat();
float batFull = QString(fullLevelFile.readLine()).trimmed().toFloat();
battery[QString("bat%1").arg(i)] = 100 * batCurrent / batFull;
currentLevel += batCurrent;
fullLevel += batFull;
}
currentLevelFile.close();
fullLevelFile.close();
}
float number = 0.0;
float average = 0.0;
for (int i=0; i<battery.keys().count(); i++) {
if (battery.keys()[i] == QString("ac")) continue;
if (battery.keys()[i] == QString("bat")) continue;
average += battery[battery.keys()[i]].toInt();
number++;
}
battery[QString("bat")] = int(average / number);
battery[QString("bat")] = 100 * currentLevel / fullLevel;
return battery;
}
@ -663,11 +665,8 @@ bool ExtendedSysMon::updateSourceEvent(const QString &source)
if (source == QString("battery")) {
QVariantMap battery = getBattery(configuration[QString("ACPIPATH")]);
setData(source, QString("ac"), battery[QString("ac")].toBool());
for (int i=0; i<battery.keys().count(); i++) {
if (battery.keys()[i] == QString("ac")) continue;
setData(source, battery.keys()[i], battery[battery.keys()[i]].toInt());
}
for (int i=0; i<battery.keys().count(); i++)
setData(source, battery.keys()[i], battery[battery.keys()[i]]);
} else if (source == QString("custom")) {
for (int i=0; i<externalScripts.count(); i++)
setData(source, externalScripts[i]->tag(), externalScripts[i]->run());

View File

@ -1,27 +1,27 @@
# Copyright (C) 2014
# This file is distributed under the same license as the PyTextMonitor package.
#
# Evgeniy Alekseev <esalexeev@gmail.com>, 2014.
# Mermouy <mermouy@gmail.com>, 2014.
# MerMouY <mermouy@openmailbox.org>, 2015.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2015-06-01 01:48+0300\n"
"PO-Revision-Date: 2014-09-05 11:20+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: French <kde-russian@lists.kde.ru>\n"
"PO-Revision-Date: 2015-06-04 13:15+0100\n"
"Last-Translator: MerMouY <mermouy@openmailbox.org>\n"
"Language-Team: French <kde-i18n-doc@kde.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 1.5\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 2.0\n"
"X-Language: fr-FR\n"
#: awesome-widget/package/contents/config/config.qml:25
msgid "Widget"
msgstr "Widget"
msgstr "Composant"
#: awesome-widget/package/contents/config/config.qml:31
msgid "Advanced"
@ -42,32 +42,31 @@ msgstr "Moteur de données"
#: awesome-widget/package/contents/config/config.qml:55
#: awesome-widget/package/contents/ui/about.qml:42
msgid "About"
msgstr ""
msgstr "À propos"
#: awesome-widget/package/contents/ui/about.qml:83
msgid "Acknowledgment"
msgstr ""
msgstr "À savoir"
#: awesome-widget/package/contents/ui/advanced.qml:56
#, fuzzy
msgid "Widget height, px"
msgstr "Paramètres de l'applet"
msgstr "Paramètres du composant"
#: awesome-widget/package/contents/ui/advanced.qml:76
msgid "Widget width, px"
msgstr ""
msgstr "Largeur de l'applet"
#: awesome-widget/package/contents/ui/advanced.qml:98
msgid "Enable notifications"
msgstr ""
msgstr "Activer les notifications"
#: awesome-widget/package/contents/ui/advanced.qml:112
msgid "Wrap new lines"
msgstr ""
msgstr "Couper les lignes supplémentaires"
#: awesome-widget/package/contents/ui/advanced.qml:126
msgid "Enable background"
msgstr ""
msgstr "Activer le fond"
#: awesome-widget/package/contents/ui/advanced.qml:138
msgid "Custom time format"
@ -83,39 +82,39 @@ msgstr "Unités de température"
#: awesome-widget/package/contents/ui/advanced.qml:180
msgid "Celsius"
msgstr ""
msgstr "Celsius"
#: awesome-widget/package/contents/ui/advanced.qml:184
msgid "Fahrenheit"
msgstr ""
msgstr "Fahrenheit"
#: awesome-widget/package/contents/ui/advanced.qml:188
msgid "Kelvin"
msgstr ""
msgstr "Kelvin"
#: awesome-widget/package/contents/ui/advanced.qml:192
msgid "Reaumur"
msgstr ""
msgstr "Reaumur"
#: awesome-widget/package/contents/ui/advanced.qml:196
msgid "cm^-1"
msgstr ""
msgstr "cm^-1"
#: awesome-widget/package/contents/ui/advanced.qml:200
msgid "kJ/mol"
msgstr ""
msgstr "kJ/mol"
#: awesome-widget/package/contents/ui/advanced.qml:204
msgid "kcal/mol"
msgstr ""
msgstr "kcal/mol"
#: awesome-widget/package/contents/ui/advanced.qml:227
msgid "AC online tag"
msgstr "Tag alimentation branchée"
msgstr "Étiquette alimentation branchée"
#: awesome-widget/package/contents/ui/advanced.qml:244
msgid "AC offline tag"
msgstr "Tag alimentation débranchée"
msgstr "Étiquette alimentation débranchée"
#: awesome-widget/package/contents/ui/appearance.qml:61
msgid "Time interval"
@ -136,24 +135,24 @@ msgstr "Épaisseur de la police"
#: awesome-widget/package/contents/ui/appearance.qml:127
msgid "light"
msgstr ""
msgstr "léger"
#: awesome-widget/package/contents/ui/appearance.qml:131
#: awesome-widget/package/contents/ui/appearance.qml:174
msgid "normal"
msgstr ""
msgstr "normal"
#: awesome-widget/package/contents/ui/appearance.qml:135
msgid "demi bold"
msgstr ""
msgstr "mi-gras"
#: awesome-widget/package/contents/ui/appearance.qml:139
msgid "bold"
msgstr ""
msgstr "gras"
#: awesome-widget/package/contents/ui/appearance.qml:143
msgid "black"
msgstr ""
msgstr "noir"
#: awesome-widget/package/contents/ui/appearance.qml:166
msgid "Font style"
@ -161,7 +160,7 @@ msgstr "Style de la police"
#: awesome-widget/package/contents/ui/appearance.qml:178
msgid "italic"
msgstr ""
msgstr "italique"
#: awesome-widget/package/contents/ui/appearance.qml:201
msgid "Font color"
@ -177,28 +176,24 @@ msgstr "Couleur de la police"
#: awesome-widget/package/contents/ui/tooltip.qml:421
#: awesome-widget/package/contents/ui/tooltip.qml:473
#: awesome-widget/package/contents/ui/tooltip.qml:503
#, fuzzy
msgid "Select a color"
msgstr "Couleur de la police"
msgstr "Sélectionner une couleur"
#: awesome-widget/package/contents/ui/appearance.qml:226
#, fuzzy
msgid "Select a font"
msgstr "Couleur de la police"
msgstr "Sélectionner une police"
#: awesome-widget/package/contents/ui/dataengine.qml:69
msgid "ACPI path"
msgstr ""
msgstr "chemin ACPI"
#: awesome-widget/package/contents/ui/dataengine.qml:85
#, fuzzy
msgid "Custom scripts"
msgstr "Personnalisé"
msgstr "Scripts personnalisés"
#: awesome-widget/package/contents/ui/dataengine.qml:89
#, fuzzy
msgid "Edit scripts"
msgstr "Personnalisé"
msgstr "Modifier les scripts"
#: awesome-widget/package/contents/ui/dataengine.qml:102
msgid "GPU device"
@ -210,7 +205,7 @@ msgstr "Disque dur"
#: awesome-widget/package/contents/ui/dataengine.qml:150
msgid "hddtemp cmd"
msgstr "Commande de température HDD"
msgstr "Cmd de température disques"
#: awesome-widget/package/contents/ui/dataengine.qml:166
msgid "MPD address"
@ -222,7 +217,7 @@ msgstr "Port MPD"
#: awesome-widget/package/contents/ui/dataengine.qml:201
msgid "MPRIS player name"
msgstr ""
msgstr "Nom du lecteur MPRIS"
#: awesome-widget/package/contents/ui/dataengine.qml:221
msgid "Music player"
@ -230,25 +225,23 @@ msgstr "Lecteur audio"
#: awesome-widget/package/contents/ui/dataengine.qml:245
msgid "Quotes monitor"
msgstr ""
msgstr "Moniteur de citations"
#: awesome-widget/package/contents/ui/dataengine.qml:249
#, fuzzy
msgid "Edit tickers"
msgstr "Modifiable"
msgstr "Modifier les tickers"
#: awesome-widget/package/contents/ui/dataengine.qml:262
msgid "Package manager"
msgstr "Gestionnaire de paquets"
#: awesome-widget/package/contents/ui/dataengine.qml:266
#, fuzzy
msgid "Edit command"
msgstr "Commande personnalisée"
msgstr "Modifier la commande"
#: awesome-widget/package/contents/ui/main.qml:161
msgid "Request key"
msgstr ""
msgstr "Demander une clé"
#: awesome-widget/package/contents/ui/main.qml:162
msgid "Show README"
@ -256,16 +249,16 @@ msgstr "Voir le README"
#: awesome-widget/package/contents/ui/main.qml:163
msgid "Check updates"
msgstr ""
msgstr "Vérifier les mises à jour"
#: awesome-widget/package/contents/ui/tooltip.qml:62
msgid ""
"CPU, CPU clock, memory, swap and network labels support graphical tooltip. "
"To enable them just make needed checkbox fully checked."
msgstr ""
"CPU, horloge du CPU, mémoire vive, mémoire swap et noms réseau supportent "
"les conseils visuels. Pour les activer cochez simplement les cases "
"correspondantes."
"CPU, horloge du CPU, mémoire vive, mémoire swap et noms réseau gèrent les "
"conseils visuels. "
"Pour les activer cochez simplement les cases correspondantes."
#: awesome-widget/package/contents/ui/tooltip.qml:73
msgid "Number of values for tooltips"
@ -273,7 +266,7 @@ msgstr "Nombre d'éléments pour les conseils"
#: awesome-widget/package/contents/ui/tooltip.qml:93
msgid "Background"
msgstr ""
msgstr "Fond"
#: awesome-widget/package/contents/ui/tooltip.qml:145
msgid "CPU color"
@ -301,12 +294,11 @@ msgstr "Couleur du téléversement"
#: awesome-widget/package/contents/ui/tooltip.qml:435
msgid "Battery active color"
msgstr ""
msgstr "Couleur active batterie"
#: awesome-widget/package/contents/ui/tooltip.qml:487
#, fuzzy
msgid "Battery inactive color"
msgstr "Batterie"
msgstr "Couleur batterie inactive"
#: awesome-widget/package/contents/ui/widget.qml:72
msgid ""
@ -322,201 +314,200 @@ msgstr "Ajouter"
#: awesome-widget/package/contents/ui/widget.qml:244
msgid "Show value"
msgstr ""
msgstr "Afficher la valeur"
#: awesome-widget/package/contents/ui/widget.qml:249
#: awesome-widget/plugin/awkeys.cpp:685 awesome-widget/plugin/awkeys.cpp:752
#: awesome-widget/plugin/awkeys.cpp:1052
msgid "Tag: %1"
msgstr ""
msgstr "Etiquette: %1"
#: awesome-widget/package/contents/ui/widget.qml:251
#: awesome-widget/plugin/awkeys.cpp:687
msgid "Value: %1"
msgstr ""
msgstr "Valeur: %1"
#: awesome-widget/package/contents/ui/widget.qml:253
msgid "Info: %1"
msgstr ""
msgstr "Info: %1"
#: awesome-widget/package/contents/ui/widget.qml:264
#, fuzzy
msgid "Edit bars"
msgstr "Modifiable"
msgstr "Modifier les barres"
#: awesome-widget/plugin/awactions.cpp:76
msgid "Run %1"
msgstr ""
msgstr "Éxecuter %1"
#: awesome-widget/plugin/awactions.cpp:105
msgid "Version %1 (build date %2)"
msgstr ""
msgstr "Version %1 (build date %2)"
#: awesome-widget/plugin/awactions.cpp:107
msgid "A set of minimalistic plasmoid widgets"
msgstr ""
msgstr "Un jeu de composants plasmoïds minimalistes"
#: awesome-widget/plugin/awactions.cpp:109
msgid "Links:"
msgstr ""
msgstr "Liens:"
#: awesome-widget/plugin/awactions.cpp:110
msgid "Homepage"
msgstr ""
msgstr "Page d'accueil"
#: awesome-widget/plugin/awactions.cpp:111
msgid "Repository"
msgstr ""
msgstr "Dépôt"
#: awesome-widget/plugin/awactions.cpp:112
msgid "Bugtracker"
msgstr ""
msgstr "Suivi des bugs"
#: awesome-widget/plugin/awactions.cpp:113
msgid "Translation issue"
msgstr ""
msgstr "Traductions"
#: awesome-widget/plugin/awactions.cpp:114
msgid "AUR packages"
msgstr ""
msgstr "Paquets depuis AUR"
#: awesome-widget/plugin/awactions.cpp:115
msgid "openSUSE packages"
msgstr ""
msgstr "Paquets openSUSE"
#: awesome-widget/plugin/awactions.cpp:118
msgid "This software is licensed under %1"
msgstr ""
msgstr "Ce programme est publié sous la licence %1"
#: awesome-widget/plugin/awactions.cpp:120
msgid "Translators: %1"
msgstr ""
msgstr "Traducteurs: %1"
#: awesome-widget/plugin/awactions.cpp:128
msgid "This software uses: %1"
msgstr ""
msgstr "Ce logiciel utilise: %1"
#: awesome-widget/plugin/awactions.cpp:143
msgid "Select font"
msgstr ""
msgstr "Sélectionner une couleur"
#: awesome-widget/plugin/awactions.cpp:214
msgid "Current version : %1"
msgstr ""
msgstr "Version actuelle"
#: awesome-widget/plugin/awactions.cpp:215
msgid "New version : %1"
msgstr ""
msgstr "Nouvelle version"
#: awesome-widget/plugin/awactions.cpp:216
msgid "Click \"Ok\" to download"
msgstr ""
msgstr "Cliquer sur \"Valider\" pour télécharger"
#: awesome-widget/plugin/awactions.cpp:218
msgid "There are updates"
msgstr ""
msgstr "Des mises à jour sont disponibles"
#: awesome-widget/plugin/awkeys.cpp:59
msgid "Copy"
msgstr ""
msgstr "Copier"
#: awesome-widget/plugin/awkeys.cpp:60
msgid "Create"
msgstr ""
msgstr "Créer"
#: awesome-widget/plugin/awkeys.cpp:61
msgid "Remove"
msgstr "Supprimer"
#: awesome-widget/plugin/awkeys.cpp:395
#, fuzzy
msgid "AC online"
msgstr "Tag alimentation branchée"
msgstr "Alimentation branchée"
#: awesome-widget/plugin/awkeys.cpp:397
#, fuzzy
msgid "AC offline"
msgstr "Tag alimentation débranchée"
msgstr "Alimentation débranchée"
#: awesome-widget/plugin/awkeys.cpp:415
msgid "High CPU load"
msgstr ""
msgstr "Haute charge CPU"
#: awesome-widget/plugin/awkeys.cpp:464
msgid "High GPU load"
msgstr ""
msgstr "Haute charge GPU"
#: awesome-widget/plugin/awkeys.cpp:478
msgid "Free space on %1 less than 10%"
msgstr ""
msgstr "Espace libre sur %1 inférieur à 10%"
#: awesome-widget/plugin/awkeys.cpp:543
msgid "High memory usage"
msgstr ""
msgstr "Haute utilisation mémoire"
#: awesome-widget/plugin/awkeys.cpp:551
msgid "Network device has been changed to %1"
msgstr ""
msgstr "L'interface réseau à été changée en %1"
#: awesome-widget/plugin/awkeys.cpp:621
msgid "Swap is used"
msgstr ""
msgstr "Fichier d'échange utilisé"
#: awesome-widget/plugin/awkeys.cpp:681
#, fuzzy
msgid "Select tag"
msgstr "Couleur de la police"
msgstr "Sélectionner l'étiquette"
#: awesome-widget/plugin/awkeys.cpp:681
msgid "Tag"
msgstr ""
msgstr "Étiquette"
#: awesome-widget/plugin/awkeys.cpp:753 awesome-widget/plugin/awkeys.cpp:763
#: awesome-widget/plugin/awkeys.cpp:774 awesome-widget/plugin/awkeys.cpp:785
#: awesome-widget/plugin/awkeys.cpp:1053 awesome-widget/plugin/awkeys.cpp:1108
#: awesome-widget/plugin/awkeys.cpp:1168 awesome-widget/plugin/awkeys.cpp:1225
msgid "Comment: %1"
msgstr ""
msgstr "Commentaire: %1"
#: awesome-widget/plugin/awkeys.cpp:762 awesome-widget/plugin/awkeys.cpp:773
#: awesome-widget/plugin/awkeys.cpp:784 awesome-widget/plugin/awkeys.cpp:1107
#: awesome-widget/plugin/awkeys.cpp:1167 awesome-widget/plugin/awkeys.cpp:1224
msgid "Name: %1"
msgstr ""
msgstr "Nom: %1"
#: awesome-widget/plugin/awkeys.cpp:764 awesome-widget/plugin/awkeys.cpp:1109
msgid "Ticker: %1"
msgstr ""
msgstr "Ticker: %1"
#: awesome-widget/plugin/awkeys.cpp:775 awesome-widget/plugin/awkeys.cpp:786
#: awesome-widget/plugin/awkeys.cpp:1169 awesome-widget/plugin/awkeys.cpp:1226
msgid "Exec: %1"
msgstr ""
msgstr "Exec: %1"
#: awesome-widget/plugin/awkeys.cpp:1012 awesome-widget/plugin/awkeys.cpp:1077
#: awesome-widget/plugin/awkeys.cpp:1134 awesome-widget/plugin/awkeys.cpp:1193
msgid "Enter file name"
msgstr ""
msgstr "Entrer le nom du fichier"
#: awesome-widget/plugin/awkeys.cpp:1013 awesome-widget/plugin/awkeys.cpp:1078
#: awesome-widget/plugin/awkeys.cpp:1135 awesome-widget/plugin/awkeys.cpp:1194
msgid "File name"
msgstr ""
msgstr "Nom du fichier"
#: awesome-widget/plugin/graphicalitem.cpp:497
#, fuzzy
msgid "Select color"
msgstr "Couleur de la police"
msgstr "Sélectionner la couleur"
#: translations/awesome-widget/rc.cpp:1 rc.cpp:1
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
msgstr "Evgeniy Alekseev"
msgstr ""
"Evgeniy Alekseev "
"MerMouY"
#: translations/awesome-widget/rc.cpp:2 rc.cpp:2
msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "esalexeev@gmail.com"
msgstr ""
"esalexeev@gmail.com "
"mermouy@gmail.com"
#~ msgid "Run ksysguard"
#~ msgstr "Lancer ksysguard"

View File

@ -1,23 +1,23 @@
# Copyright (C) 2014
# This file is distributed under the same license as the PyTextMonitor package.
#
# Evgeniy Alekseev <esalexeev@gmail.com>, 2014.
# Mermouy <mermouy@gmail.com>, 2014.
# MerMouY <mermouy@openmailbox.org>, 2015.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2015-05-22 00:05+0300\n"
"PO-Revision-Date: 2014-06-05 19:24+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: French <kde-french@lists.kde.ru>\n"
"PO-Revision-Date: 2015-06-04 13:18+0100\n"
"Last-Translator: MerMouY <mermouy@openmailbox.org>\n"
"Language-Team: French <kde-i18n-doc@kde.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 1.5\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 2.0\n"
"X-Language: fr-FR\n"
#: desktop-panel/package/contents/config/config.qml:25
msgid "Widget"
@ -25,24 +25,24 @@ msgstr "Widget"
#: desktop-panel/package/contents/config/config.qml:31
msgid "Advanced"
msgstr ""
msgstr "Avancé"
#: desktop-panel/package/contents/config/config.qml:37
msgid "Active desktop"
msgstr ""
msgstr "Bureau actif"
#: desktop-panel/package/contents/config/config.qml:43
msgid "Inactive desktop"
msgstr ""
msgstr "Bureau inactif"
#: desktop-panel/package/contents/config/config.qml:49
#: desktop-panel/package/contents/ui/about.qml:42
msgid "About"
msgstr ""
msgstr "À propos"
#: desktop-panel/package/contents/ui/about.qml:75
msgid "Acknowledgment"
msgstr ""
msgstr "À savoir"
#: desktop-panel/package/contents/ui/activeapp.qml:60
#: desktop-panel/package/contents/ui/inactiveapp.qml:60
@ -63,29 +63,29 @@ msgstr "Épaisseur de la police"
#: desktop-panel/package/contents/ui/activeapp.qml:106
#: desktop-panel/package/contents/ui/inactiveapp.qml:106
msgid "light"
msgstr ""
msgstr "léger"
#: desktop-panel/package/contents/ui/activeapp.qml:110
#: desktop-panel/package/contents/ui/activeapp.qml:153
#: desktop-panel/package/contents/ui/inactiveapp.qml:110
#: desktop-panel/package/contents/ui/inactiveapp.qml:153
msgid "normal"
msgstr ""
msgstr "normal"
#: desktop-panel/package/contents/ui/activeapp.qml:114
#: desktop-panel/package/contents/ui/inactiveapp.qml:114
msgid "demi bold"
msgstr ""
msgstr "semi-gras"
#: desktop-panel/package/contents/ui/activeapp.qml:118
#: desktop-panel/package/contents/ui/inactiveapp.qml:118
msgid "bold"
msgstr ""
msgstr "gras"
#: desktop-panel/package/contents/ui/activeapp.qml:122
#: desktop-panel/package/contents/ui/inactiveapp.qml:122
msgid "black"
msgstr ""
msgstr "noir"
#: desktop-panel/package/contents/ui/activeapp.qml:145
#: desktop-panel/package/contents/ui/inactiveapp.qml:145
@ -95,7 +95,7 @@ msgstr "Style de la police"
#: desktop-panel/package/contents/ui/activeapp.qml:157
#: desktop-panel/package/contents/ui/inactiveapp.qml:157
msgid "italic"
msgstr ""
msgstr "italique"
#: desktop-panel/package/contents/ui/activeapp.qml:180
#: desktop-panel/package/contents/ui/advanced.qml:163
@ -107,53 +107,54 @@ msgstr "Couleur de la police"
#: desktop-panel/package/contents/ui/advanced.qml:247
#: desktop-panel/package/contents/ui/inactiveapp.qml:198
msgid "Select a color"
msgstr ""
msgstr "Sélectionner une couleur"
#: desktop-panel/package/contents/ui/activeapp.qml:205
#: desktop-panel/package/contents/ui/inactiveapp.qml:205
msgid "Select a font"
msgstr ""
msgstr "Sélectionner une police"
#: desktop-panel/package/contents/ui/advanced.qml:56
msgid "Widget height, px"
msgstr ""
msgstr "Hauteur du gadget, px"
#: desktop-panel/package/contents/ui/advanced.qml:76
msgid "Widget width, px"
msgstr ""
msgstr "Largeur du gadget, px"
#: desktop-panel/package/contents/ui/advanced.qml:96
msgid "Tooltip type"
msgstr ""
msgstr "Type d'infobulle"
#: desktop-panel/package/contents/ui/advanced.qml:104
msgid "contours"
msgstr ""
msgstr "contours"
#: desktop-panel/package/contents/ui/advanced.qml:108
msgid "windows"
msgstr ""
msgstr "fenêtres"
#: desktop-panel/package/contents/ui/advanced.qml:112
msgid "clean desktop"
msgstr ""
msgstr "nettoyer le bureau"
#: desktop-panel/package/contents/ui/advanced.qml:116
#, fuzzy
msgid "names"
msgstr "Evgeniy Alekseev"
msgstr ""
"Evgeniy Alekseev\n"
"MerMouY"
#: desktop-panel/package/contents/ui/advanced.qml:120
msgid "none"
msgstr ""
msgstr "Aucun"
#: desktop-panel/package/contents/ui/advanced.qml:143
msgid "Tooltip width"
msgstr ""
msgstr "Largeur de l'infobulle"
#: desktop-panel/package/contents/ui/advanced.qml:188
msgid "Enable background"
msgstr ""
msgstr "Activer le fond"
#: desktop-panel/package/contents/ui/advanced.qml:202
msgid "Vertical layout"
@ -161,102 +162,106 @@ msgstr "Positionnement vertical"
#: desktop-panel/package/contents/ui/advanced.qml:214
msgid "Mark"
msgstr ""
msgstr "Marquer"
#: desktop-panel/package/contents/ui/widget.qml:44
msgid ""
"Detailed information may be found on <a href=\"http://arcanis.name/projects/"
"awesome-widgets/\">project homepage</a>"
msgstr ""
"Des informations détaillées se trouvent sur <a "
"href=\"http://arcanis.name/projects/awesome-widgets/\">la page du projet</a>."
#: desktop-panel/package/contents/ui/widget.qml:194
msgid "Add"
msgstr ""
msgstr "Ajouter"
#: desktop-panel/package/contents/ui/widget.qml:207
msgid "Show value"
msgstr ""
msgstr "Afficher la valeur"
#: desktop-panel/package/contents/ui/widget.qml:212
msgid "Tag: %1"
msgstr ""
msgstr "Étiquette: %1"
#: desktop-panel/package/contents/ui/widget.qml:214
msgid "Value: %1"
msgstr ""
msgstr "Valeur: %1"
#: desktop-panel/plugin/dpadds.cpp:314
msgid "A set of minimalistic plasmoid widgets"
msgstr ""
msgstr "Un ensemble de gadgets plasmoïd minimalistes"
#: desktop-panel/plugin/dpadds.cpp:316
msgid "Links:"
msgstr ""
msgstr "Liens:"
#: desktop-panel/plugin/dpadds.cpp:317
msgid "Homepage"
msgstr ""
msgstr "Page d'accueil"
#: desktop-panel/plugin/dpadds.cpp:318
msgid "Repository"
msgstr ""
msgstr "Dépôt"
#: desktop-panel/plugin/dpadds.cpp:319
msgid "Bugtracker"
msgstr ""
msgstr "Bugtracker"
#: desktop-panel/plugin/dpadds.cpp:320
msgid "Translation issue"
msgstr ""
msgstr "Problème de traduction"
#: desktop-panel/plugin/dpadds.cpp:321
msgid "AUR packages"
msgstr ""
msgstr "Paquetages AUR"
#: desktop-panel/plugin/dpadds.cpp:322
msgid "openSUSE packages"
msgstr ""
msgstr "Paquetages OpenSUSE"
#: desktop-panel/plugin/dpadds.cpp:325
msgid "This software is licensed under %1"
msgstr ""
msgstr "Ce logiciel est sous license %1"
#: desktop-panel/plugin/dpadds.cpp:327
msgid "Translators: %1"
msgstr ""
msgstr "Traducteurs: %1"
#: desktop-panel/plugin/dpadds.cpp:335
msgid "This software uses: %1"
msgstr ""
msgstr "Ce logiciel utilise: %1"
#: desktop-panel/plugin/dpadds.cpp:350
msgid "Select font"
msgstr ""
msgstr "Sélectionner une police"
#: desktop-panel/plugin/dpadds.cpp:475
msgid "Top Edge"
msgstr ""
msgstr "Bord du haut"
#: desktop-panel/plugin/dpadds.cpp:477
msgid "Bottom Edge"
msgstr ""
msgstr "Bord du bas"
#: desktop-panel/plugin/dpadds.cpp:479
msgid "Left Edge"
msgstr ""
msgstr "Bord gauche"
#: desktop-panel/plugin/dpadds.cpp:481
msgid "Right Edge"
msgstr ""
msgstr "Bord droit"
#: desktop-panel/plugin/dpadds.cpp:483
msgid "Unknown location (%1)"
msgstr ""
msgstr "Position inconnue (%1)"
#: translations/desktop-panel/rc.cpp:1 rc.cpp:1
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
msgstr "Evgeniy Alekseev"
msgstr ""
"Evgeniy Alekseev\n"
"MerMouY"
#: translations/desktop-panel/rc.cpp:2 rc.cpp:2
msgctxt "EMAIL OF TRANSLATORS"