Compare commits

...

23 Commits

Author SHA1 Message Date
d7e93e83a3 release 2.0.3 2014-09-21 21:23:26 +04:00
17c3383616 fix aw geometry 2014-09-21 20:43:27 +04:00
830bab7cb6 add support of several $bat tags. Update translations 2014-09-21 20:19:57 +04:00
0b3832cc32 some work 2014-09-18 21:57:59 +04:00
e64ca5ec08 update TODO 2014-09-16 08:54:08 +04:00
84b93098f2 release 2.0.2 2014-09-16 00:04:31 +04:00
17bef06c98 some fixes, prepare to release 2.0.2 2014-09-15 20:28:09 +04:00
db7573de80 update DP translations 2014-09-15 10:04:57 +04:00
4907496a2e fix text edit dp configuration interface 2014-09-14 00:01:23 +04:00
43daae5529 edit temp conversion 2014-09-13 03:06:00 +04:00
1d1fe469f8 rewrite DP configuration interface 2014-09-12 19:29:31 +04:00
99049164be fix cpu* tags
fix notifiations
2014-09-12 00:03:18 +04:00
f61948d9b3 fix (?) notifications 2014-09-11 00:00:08 +04:00
ea54c54d42 add fan tags 2014-09-10 23:51:14 +04:00
c843c5260d Merge pull request #23 from Lemueler/master
Add Chinese translation for awesome-widgets
2014-09-10 21:52:44 +04:00
a8912074dd Modify Chinese translations 2014-09-10 22:56:21 +08:00
2be0edcb40 Add Chinese translations 2014-09-10 22:40:32 +08:00
fcf7ca233f release 2.0.1 2014-09-10 11:18:36 +04:00
aa127574c4 fix label edge's shading 2014-09-09 03:12:20 +04:00
d72f827984 fix empty values 2014-09-09 02:29:59 +04:00
b7d607bfcc add support of custom interfaces 2014-09-09 02:09:58 +04:00
c727947557 update install script 2014-09-09 00:39:02 +04:00
6864e5bda0 update screenshots and link 2014-09-09 00:34:20 +04:00
54 changed files with 1953 additions and 2465 deletions

View File

@ -6,3 +6,4 @@ Translators:
Ernesto Avilés Vzqz (Spanish translation)
@underr (Brazillian Portuguese translation)
Виктор Слободян (Ukrainian translation)
Steve Lemuel (Chinese translation)

View File

@ -1,3 +1,21 @@
Ver.2.0.3:
+ add support of several $bat tags
* edit layout
Ver.2.0.2:
+ add $fan* tags
+ add Chinese translation (thanks to @Lemueler)
+ add net devices checking is it p2p device
- remove ps stats from notification
* yet another fix cpu* and cpucl*
* rewrite DP configuration interface
* fix non-standard temp units
Ver.2.0.1:
+ add support of custom interfaces
* fix label edge's shading
* fix cpu*, cpucl*, gpu*, ps* tags
Ver.2.0.0:
+ add new widget - awesome widget
+ add new tags $hddfreemb, $hddfreegb, $memusedmb, $memusedgb, $memfreemb $memfreegb, $swapfreemb, $swapfreegb

View File

@ -1,3 +1,21 @@
Вер.2.0.3:
+ добавлена поддержка нескольких тегов $bat
* отредактирована разметка
Вер.2.0.2:
+ добавлены теги $fan*
+ добавлен китайский перевод (спасибо @Lemueler)
+ добавлена проверка сетевых устройств на p2p
- удалено ps stats из уведомлений
* еще один фикс тегов cpu* и cpucl
* переписан конфигурационный интерфейс DP
* исправлены нестандартные единицы температуры
Вер.2.0.1:
+ добавлена поддержка кастомных интерфейсов
* фикс затенения краев поля
* фикс тегов cpu*, cpucl*, gpu*, ps*
Вер.2.0.0:
+ добавлен виджет awesome widget
+ новые теги $hddfreemb, $hddfreegb, $memusedmb, $memusedgb, $memfreemb $memfreegb, $swapfreemb, $swapfreegb

View File

@ -2,7 +2,7 @@
pkgname=kdeplasma-applets-awesome-widgets
_pkgname=awesome-widgets
pkgver=2.0.0
pkgver=2.0.3
pkgrel=1
pkgdesc="Collection of minimalistic Plasmoids which look like Awesome WM widgets (ex-PyTextMonitor)"
arch=('i686' 'x86_64')
@ -19,7 +19,7 @@ optdepends=("amarok: for music player monitor"
makedepends=('automoc4' 'cmake')
source=(https://github.com/arcan1s/awesome-widgets/releases/download/V.${pkgver}/${_pkgname}-${pkgver}-src.tar.xz)
install=${pkgname}.install
md5sums=('a09199150ec3c1e2303ebe5878ba1913')
md5sums=('238e8418672b92bca0ac8431c6f085fb')
backup=('usr/share/config/extsysmon.conf')
prepare() {

View File

@ -25,6 +25,7 @@ For edited output you must open Settings window and setup output format in lines
* tag `$cpucl` - average cpu clock, *MHz*
* tag `$cpuclN` - cpu clock for core N, *MHz*
* tag `$tempN` - temperature for device N. For example, `$temp0`
* tag `$fanN` - fan speed for device N. For example, `$fan0`
* tag `$gpu` - GPU usage, *%*. `aticonfig` or `nvidia-smi` must be installed
* tag `$gputemp` - GPU temperature. `aticonfig` or `nvidia-smi` must be installed
* tag `$mem` - usage memory, *%*
@ -56,7 +57,7 @@ For edited output you must open Settings window and setup output format in lines
* tag `$down` - download speed, *KB/s*
* tag `$up` - upload speed, *KB/s*
* tag `$netdev` - current network device
* tag `$bat` - battery charge, *%*
* tag `$batN` - battery N charge, *%*. `$bat0` is average value
* tag `$ac` - status AC device. Return (\*) if AC device is online or *( )* if offline
* tag `$album` - current song album. One of supported music players must be installed
* tag `$artist` - current song artist. One of supported music players must be installed
@ -158,13 +159,9 @@ Since version 1.7.0 CPU, CPU clock, memory, swap and network labels support grap
DataEngine settings
-------------------
**AC device**
**ACPI path**
File with AC information. File (`/sys/class/power_supply/AC/online` by default) must contain `1` if AC is online.
**Battery device**
File with battery information. File (`/sys/class/power_supply/BAT0/capacity` by default) should contain only battery charge in percent.
Path to APCI devices. Default is `/sys/class/power_supply/`.
**Custom command**
@ -294,10 +291,13 @@ Additional information
TODO (wish list)
----------------
* 3rdpatry modules support (C++, Python and Shell modules in the plan)
* graphical bars support
Links
-----
* [Homepage](http://arcanis.name/projects/awesome-widgets/)
* Plasmoid on [kde-look](http://kde-look.org/content/show.php/Py+Text+Monitor?content=157124)
* 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/kdeplasma-applets-awesome-widgets/) package

View File

@ -1,5 +1,9 @@
post_install() {
kbuildsycoca4 > /dev/null 2>&1
cat << __EOF
To migrate to version 2.* and newer see this article:
http://arcanis.name/en/2014/09/04/migration-to-v2/
__EOF
}
post_upgrade() {

View File

@ -1,313 +0,0 @@
pytextmonitor
=============
Information
-----------
PyTextMonitor is a minimalistic Plasmoid script written on Python2. It looks like widgets in awesome-wm.
**NOTE** [LOOKING FOR TRANSLATORS!](https://github.com/arcan1s/pytextmonitor/issues/14)
Configuration
-------------
For edited output you must open Settings window and setup output format in lines:
* tag `$time` - time in default format. For example, *fri Nov 6 04:48:01 2013*
* tag `$isotime` - time in iso format
* tag `$shorttime` - time in short locale format
* tag `$longtime` - time in long locale format
* tag `$custom` - custom time format
* tag `$uptime` - uptime, *---d--h--m*
* tag `$custom` - custom uptime format
* tag `$cpu` - total load cpu, *%*
* tag `$cpuN` - load CPU for core N, *%*
* tag `$cpucl` - average cpu clock, *MHz*
* tag `$cpuclN` - cpu clock for core N, *MHz*
* tag `$tempN` - temperature for device N. For example, `$temp0`
* tag `$gpu` - GPU usage, *%*. `aticonfig` or `nvidia-smi` must be installed
* tag `$gputemp` - GPU temperature. `aticonfig` or `nvidia-smi` must be installed
* tag `$mem` - usage memory, *%*
* tag `$memmb` - usage memory, *MB*
* tag `$memgb` - usage memory, *GB*
* tag `$memtotmb` - total RAM, *MB*
* tag `$memtotgb` - total RAM, *GB*
* tag `$swap` - swap, *%*
* tag `$swapmb` - swap, *MB*
* tag `$swapgb` - swap, *GB*
* tag `$swaptotmb` - total swap, *MB*
* tag `$swaptotgb` - total swap, *GB*
* tag `$hddN` - usage for mount point N, *%*. For example, `$hdd0`
* tag `$hddmbN` - usage for mount point N, *MB*. For example, `$hddmb0`
* tag `$hddgbN` - usage for mount point N, *GB*. For example, `$hddgb0`
* tag `$hddtotmbN` - total size of mount point N, *MB*. For example, `$hddtotmb0`
* tag `$hddtotgbN` - total size of mount point N, *GB*. For example, `$hddtotgb0`
* tag `$hddrN` - read speed of disk N, *KB/s*. For example, `$hddr0`
* tag `$hddwN` - write speed of disk N, *KB/s*. For example, `$hddw0`
* tag `$hddtempN` - temperature for HDD N. For example, `$hddtemp0`
* tag `$down` - download speed, *KB/s*
* tag `$up` - upload speed, *KB/s*
* tag `$netdev` - current network device
* tag `$bat` - battery charge, *%*
* tag `$ac` - status AC device. Return (\*) if AC device is online or *( )* if offline
* tag `$album` - current song album. One of supported music players must be installed
* tag `$artist` - current song artist. One of supported music players must be installed
* tag `$progress` - current song progress. One of supported music players must be installed
* tag `$time` - current song duration. One of supported music players must be installed
* tag `$title` - current song title. One of supported music players must be installed
* tag `$pscount` - number of running processes
* tag `$pstotal` - total number of processes
* tag `$ps` - list of running processes
* tag `$pkgcountN` - number of packages, which available to upgrade for command N. For example, `$pkgcount0`
* tag `$customN` - returns output for custom command N. For example, `$custom0`
* tag `$name` - name of the current desktop
* tag `$number` - number of the current desktop
* tag `$total` - total number of desktops
Label order will changed if you change slider position. HTML tags in label work normally.
**NOTE** you don't may set to show `$cpu` tag in swap label for example. **`$cpu` will work only in cpu label**.
Tips & tricks
-------------
You may use different colors for labels. Just put label text into html code. See [issue](https://github.com/arcan1s/pytextmonitor/issues/9) for more details.
Numbering of elements of temperature, HDD usage, HDD speed, HDD temperature refers to elements order from second tab (*Advanced settings*). You should add item to the required listWidget first. And the first element in the listWidget will be `$tag0`. See [issue](https://github.com/arcan1s/pytextmonitor/issues/17) for more details.
Advanced settings
-----------------
**Enable background**
Uncheck to disable default background and set transparent one.
**Vertical layout**
Use vertical layout instead of horizontal one.
**Enable popup**
Uncheck box if you do not use popup messages.
**Add stretch**
Add stretch (spacer) to the selected side of the widget.
**Custom time**
* tag `$dddd` - weekday in long format
* tag `$ddd` - weekday in short format
* tag `$dd` - day
* tag `$d` - day without zero
* tag `$MMMM` - month in long format
* tag `$MMM` - month in short format
* tag `$MM` - month
* tag `$M` - month without zero
* tag `$yyyy` - year
* tag `$yy` - year in short format
* tag `$hh` - hours
* tag `$h` - hours without zero
* tag `$mm` - minutes
* tag `$m` - minutes without zero
* tag `$ss` - seconds
* tag `$s` - seconds without zero
**Custom uptime**
* tag `$dd` - uptime days
* tag `$d` - uptime days without zero
* tag `$hh` - uptime hours
* tag `$h` - uptime hours without zero
* tag `$mm` - uptime minutes
* tag `$m` - uptime minutes without zero
**Temperature units**
Select units for temperature. Available units are Celsius, Farenheit and Kelvin.
**Temperature devices**
List of devices, which will be observed in temp label (combo box items come from `sensors`). List widget is editable, delete key will remove current item.
**Mount points**
List of mount points, which will be observed in hdd label (combo box items come from `mount`). List widget is editable, delete key will remove current item.
**HDD (speed)**
List of hard disk devices, which will be observed in hddspeed label (combo box items come from DataEngine). List widget is editable, delete key will remove current item.
**HDD (temperature)**
List of hard disk devices, which will be observed in hddtemp label (combo box items come from `find`). List widget is editable, delete key will remove current item.
**Network directory**
Path to directory, which contains network devices information. Default is `/sys/class/net`. Required for auto select network device.
**Network device**
Use specified device as active. Combo box items come from **network directory**. Will disable auto select network device.
**Battery device**
File with battery information. File (`/sys/class/power_supply/BAT0/capacity` by default) should contain only battery charge in percent.
**AC online tag**
Line which will be shown when AC is online.
**AC offline tag**
Line which will be shown when AC is offline.
**AC device**
File with AC information. File (`/sys/class/power_supply/AC/online` by default) must contain `1` if AC is online.
Tooltip settings
----------------
Since version 1.7.0 CPU, CPU clock, memory, swap and network labels support graphical tooltip. To enable them just make the needed checkboxes a fully checked. The number of stored values can be set in the tab. Colors of graphs are configurable too.
DataEngine settings
-------------------
**Custom command**
*NOTE* This can cause the computer freeze.
Commands, which will be run for custom label.
**Desktop cmd**
Type a command which will be run for desktop DataEngine. Default is `qdbus org.kde.kwin /KWin currentDesktop`.
**GPU device**
Select one of supported GPU devices. `auto` will enable auto selection, `disable` will disable definition of GPU states. Default is `auto`.
**HDD**
Select one of HDDs for HDD temperature monitor. `all` will enable monitor for all devices, `disable` will disable definition of HDD temperature. Default is `all`.
**hddtemp cmd**
Type a command which will be run for hddtemp DataEngine. Default is `sudo hddtemp`.
**MPD address**
Address of MPD server. Default is `localhost`.
**MPD port**
Port of MPD server. Default is `6600`.
**MPRIS player name**
MPRIS player name. The DBus interface of an music player should be enabled. Default is `auto`.
**Package manager**
List of commands, which will be run. Number of null lines is a number of unneeded lines. Defaults:
* *Arch*: `PKGCMD=pacman -Qu`, `PKGNULL=0`
* *Debian*: `PKGCMD=apt-show-versions -u -b`, `PKGNULL=0`
* *Ubuntu*: `PKGCMD=aptitude search '~U'`, `PKGNULL=0`
* *Fedora*: `PKGCMD=yum list updates`, `PKGNULL=3`
* *FreeBSD*: `PKGCMD=pkg_version -I -l '<'`, `PKGNULL=0`
* *Mandriva*: `PKGCMD=urpmq --auto-select`, `PKGNULL=0`
**Music player**
Select one of supported music playes for player label.
PTM desktop panel
=================
Since version 1.11.0 PyTextMonitor provides a minimalistic panel for monitoring on desktops written on `C++`. And yes, it looks like the same panel in Awesome.
Desktop panel configuration
---------------------------
**Enable background**
Uncheck to disable default background and set transparent one.
**Vertical layout**
Use vertical layout instead of horizontal one.
**Add stretch**
Add stretch (spacer) to the selected side of the widget.
**Mark**
Type symbol (or string) which will be shown if this desktop is active now.
**Pattern tags**
* tag `$mark` - show mark if this desktop is active
* tag `$name` - name of the current desktop
* tag `$number` - number of the current desktop
* tag `$total` - total number of desktops
**Command**
Type command which will be run on left click on the selected desktop. Available variables are same as for pattern. Default is `dbus org.kde.kwin /KWin setCurrentDesktop $number`.
Instruction
===========
Dependencies
------------
* kdebase-workspace
* kdebindings-python2
* lm_sensors (*for definition temperature device*)
Optional dependencies
---------------------
* sysstat (*for notification*)
* proprietary video driver
* hddtemp (make sure that it may be run with `sudo` without password. Just add following line to `/etc/sudoers`: `$USERNAME ALL=NOPASSWD: /usr/bin/hddtemp`)
* music player (amarok, clementine, mpd or qmmp)
Make dependencies
-----------------
* automoc4
* cmake
Installation
------------
* download sources
* install
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --localprefix` ../
make && make install
Also you may install it to `/`:
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ../
make && sudo make install
Additional information
======================
TODO (wish list)
----------------
Links
-----
* [Homepage](http://arcanis.name/projects/pytextmonitor/)
* Plasmoid on [kde-look](http://kde-look.org/content/show.php/Py+Text+Monitor?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/kdeplasma-applets-pytextmonitor/) package

View File

@ -1,245 +0,0 @@
pytextmonitor
=============
Información
-----------
PyTextMonitor es un plasmoide minimalista escrito en Python2. Luce como los componentes visuales de awesome-wm.
**NOTA** [¡Se buscan traductores!](https://github.com/arcan1s/pytextmonitor/issues/14)
Configuración
-------------
Para editar la visualización debes abrir la ventana de Ajustes y establecer el formato de visualización en líneas:
* etiqueta `$time` - hora en formato por defecto. Por ejemplo, *vie 06 Nov 04:48:01 2013*
* etiqueta `$isotime` - hora en formato ISO
* etiqueta `$shorttime` - hora en formato local corto
* etiqueta `$longtime` - hora en formato local largo
* etiqueta `$custom` - formato de hora personalizado
* etiqueta `$uptime` - tiempo de actividad del sistema, *---d--h--m*
* etiqueta `$custom` - formato personalizado del tiempo de actividad del sistema
* etiqueta `$cpu` - carga total de la CPU, *%*
* etiqueta `$cpuN` - carga de la CPU para el núcleo N, *%*
* etiqueta `$cpucl` - frecuencia promedio de la CPU, *MHz*
* etiqueta `$cpuclN` - frecuencia de la CPU para el núcleo N, *MHz*
* etiqueta `$tempN` - temperatura para el dispositivo N. Por ejemplo, `$temp0`
* etiqueta `$gpu` - uso de la GPU, *%*. Debe estar instalado `aticonfig` o `nvidia-smi`
* etiqueta `$gputemp` - temperatura de la GPU. Debe estar instalado `aticonfig` o `nvidia-smi`
* etiqueta `$mem` - uso de la memoria, *%*
* etiqueta `$memmb` - uso de la memoria, *MB*
* etiqueta `$memgb` - uso de la memoria, *GB*
* etiqueta `$memtotmb` - uso total de memoria, *MB*
* etiqueta `$memtotgb` - uso total de memoria, *GB*
* etiqueta `$swap` - swap, *%*
* etiqueta `$swapmb` - swap, *MB*
* etiqueta `$swapgb` - swap, *GB*
* etiqueta `$swaptotmb` - uso total de swap, *MB*
* etiqueta `$swaptotgb` - uso total de swap, *GB*
* etiqueta `$hddN` - uso para el punto de montaje N, *%*. Por ejemplo, `$hdd0`
* etiqueta `$hddmbN` - uso para el punto de montaje N, *MB*. Por ejemplo, `$hddmb0`
* etiqueta `$hddgbN` - uso para el punto de montaje N, *GB*. Por ejemplo, `$hddgb0`
* etiqueta `$hddtotmbN` - tamaño completo del punto de montaje N, *MB*. Por ejemplo, `$hddtotmb0`
* etiqueta `$hddtotgbN` - tamaño completo del punto de montaje N, *GB*. Por ejemplo, `$hddtotgb0`
* etiqueta `$hddrN` - leer la velocidad del disco N, *KB/s*. Por ejemplo, `$hddr0`
* etiqueta `$hddwN` - velocidad de escritura del disco N, *KB/s*. Por ejemplo: `$hddw0`
* etiqueta `$hddtempN` - temperatura para el disco duro N. Por ejemplo, `$hddtemp0`
**NOTA** no puedes establecer la etiqueta `$cpu` para que se muestre en la información de la swap, por citar un ejemplo. **`$cpu` solo funcionará en la etiqueta de la CPU**.
Trucos
------
Es posible usar diferentes colores para las etiquetas. Solo tienes que ponerles el texto en formato HTML. Para más detalles, ver [el tema](https://github.com/arcan1s/pytextmonitor/issues/9) relacionado.
La enumeración de los elementos de temperatura, uso del disco duro, velocidad del disco duro y la temperatura del disco duro, se refiere al orden de los elementos de la segunda pestaña (*Ajustes avanzados*). Primeramente deberías añadir el elemento a la lista requerida. El primer elemento de la lista será $tag0. Para más información, ver [el tema](https://github.com/arcan1s/pytextmonitor/issues/17) relacionado.
Ajustes avanzados
-----------------
**Orientación vertical**
Usar la orientación vertical en lugar de la horizontal.
**Habilitar ventanas emergentes**
Desmarcar esta caja si no deseas usar ventanas emergentes.
**Añadir extensión**
Añadir extensión (espaciador) al lado seleccionado del widget.
**Hora personalizada**
* etiqueta `$dddd` - día de la semana en foramto largo
* etiqueta `$ddd` - día de la semana en formato corto
* etiqueta `$dd` - día
* etiqueta `$d` - día sin ceros
* etiqueta `$MMMM` - mes en formato largo
* etiqueta `$MMM` - mes en formato corto
* etiqueta `$MM` - mes
* etiqueta `$M` - mes sin ceros
* etiqueta `$yyyy` - año
* etiqueta `$yy` - año en formato corto
* etiqueta `$hh` - horas
* etiqueta `$h` - horas sin ceros
* etiqueta `$mm` - minutos
* etiqueta `$m` - minutos sin ceros
* etiqueta `$ss` - segundos
* etiqueta `$s` - segundos sin ceros
**Tiempo de ejecución del sistema personalizado**
* etiqueta `$dd` - días
* etiqueta `$d` - días sin ceros
* etiqueta `$hh` - horas
* etiqueta `$h` - horas sin ceros
* etiqueta `$mm` - minutos
* etiqueta `$m` - minutos sin ceros
**Unidades de temperatura**
Elija las unidades de temperatura. Las unidades disponibles son: Celsius, Farenheit y Kelvin.
**Dispositivos de temperatura**
El listado de dispositivos, será observado en la etiqueta de temperatura (los elementos de la lista desplegable provienen de `sensors`). El listado es editable, la tecla Suprimir borrará el elemento activo.
**Puntos de montaje**
El listado de puntos de montaje, será observado en la etiqueta de disco duro (los elementos de la lista desplegable provienen de `mount`). El listado es editable, la tecla Suprimir borrará el elemento activo.
**Disco duro (velocidad)**
Listado de dispositivos de disco duro, será observado en la etiqueta hddspeed (los elementos de la lista desplegable provienen de DataEngine).
**Disco duro (temperatura)**
El listado de dispositivos de disco duro, será observado desde la etiqueta disco duro (los elementos de la lista desplegable provienen de `find`). El listado es editable, la tecla Suprimir borrará el elemento activo.
**Directorio de red**
Ruta hacia el directorio que contiene información de los dispositivos de red. Por defecto es `/sys/class/net`. Se requiere para la selección automática del dispositivo de red.
**Dispositivo de red**
Usar el dispositivo especificado como activo. Los elementos de la lista desplegable provienen del **directorio de red**. Esto inhabilitará la selección automática del dispositivo de red.
**Dispositivo de batería**
El archivo que contiene información de la batería. El archivo (`/sys/class/power_supply/BAT0/capacity` por defecto) solo debería contener la carga de la batería en por ciento.
**Etiqueta alimentación conectada**
Línea que será mostrada cuando la alimentación esté conectada.
**Etiqueta alimentación conectada**
Línea que será mostrada cuando la alimentación esté desconectada.
**Dispositivo de alimentación**
El archivo con información de la alimentación. El archivo (`/sys/class/power_supply/AC/online` por defecto) debe contener `1` si la alimentación está conectada.
Ajustes de las ventanas emergentes
----------------------------------
Desde la versión 1.7.0 las etiquetas CPU, frecuencia de la CPU, memoria, swap y red soportan ventanas emergentes. Para habilitarlas es necesario tener marcadas las casillas de verificación pertinentes. El número de valores almacenados puede ser establecido en la pestaña. También es posible configurar los colores de los gráficos.
Ajustes de DataEngine
---------------------
**Comando personalizado**
*NOTA* Esto puede causar congelamiento de la computadora.
**Dispositivo GPU**
Elegir uno de los dispositivos GPU soportados. `auto` habilitará la selección automática, `disable` inhabilitará la definición de los estados de la GPU. El valor por defecto es `auto`.
**Disco duro**
Elegir uno de los discos duros para el monitor de temperatura del disco. `all` habilitará el monitor para todos los dispositivos, `disable` inhabilitará la definición de la temperatura del disco. El valor por defecto es `all`.
**Comando hddtemp**
Escriba el comando que será ejecutado por el DataEngine hddtemp. El valor por defecto es `sudo hddtemp`.
**Dirección MPD**
Dirección del servidor MPD. El valor por defecto es `localhost`.
**Puerto MPD**
Puerto del servidor MPD. El valor por defecto es `6600`.
**Gestor de paquetes**
Listado de comandos que serán ejecutados. La cantidad de líneas nulas es el número de líneas innecesarias. Predeterminados:
* *Arch*: `PKGCMD=pacman -Qu`, `PKGNULL=0`
* *Debian*: `PKGCMD=apt-show-versions -u -b`, `PKGNULL=0`
* *Ubuntu*: `PKGCMD=aptitude search '~U'`, `PKGNULL=0`
* *Fedora*: `PKGCMD=yum list updates`, `PKGNULL=3`
* *FreeBSD*: `PKGCMD=pkg_version -I -l '<'`, `PKGNULL=0`
* *Mandriva*: `PKGCMD=urpmq --auto-select`, `PKGNULL=0`
**Reproductor de música**
Selecciona uno de los reproductores de música soportados para la etiqueta del reproductor.
Configuración de DataEngine
---------------------------
Se puede editar la configuración de DataEngine. Se encuentra en `/usr/share/config/extsysmon.conf` o `$HOME/share/config/extsysmon.conf` en dependencia del tipo de instalación. Quitar el comentario de la línea requerida y editarlo.
Instrucción
===========
Dependencias
------------
* kdebase-workspace
* kdebindings-python2
* lm_sensors (*para definir el dispositivo de temperatura*)
Dependencias opcionales
-----------------------
* sysstat (*para las notificaciones*)
* controlador propietario de video
* hddtemp (asegúrate de que puede ser ejecutado con `sudo` y sin contraseña. Solo hay que agregar la siguiente línea al archivo `/etc/sudoers`: `$USERNAME ALL=NOPASSWD: /usr/bin/hddtemp`)
* reproductor de música (amarok, clementine, mpd o qmmp)
Dependencias de construcción
----------------------------
* automoc4
* cmake
Instalación
-----------
* descargar fuentes
* instalar
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --localprefix` ../
make && make install
También es posible instalarlo en `/`:
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ../
make && sudo make install
Información adicional
=====================
TODO (funcionalidades solicitadas)
----------------------------------
Enlaces
-----
* [Sitio oficial](http://arcanis.name/projects/pytextmonitor/)
* Plasmoide en [kde-look](http://kde-look.org/content/show.php/Py+Text+Monitor?content=157124)
* DataEngine en [kde-look](http://kde-look.org/content/show.php/Extended+Systemmonitor+DataEngine?content=158773)
* Archlinux [AUR](https://aur.archlinux.org/packages/kdeplasma-applets-pytextmonitor/) package

View File

@ -1,268 +0,0 @@
pytextmonitor
=============
Informação
-----------
PyTextMonitor é um script Plasmoid escrito em Python2. Assemelha-se com widgets no awesome-wm.
**NOTA** [PROCURA_SE TRADUTORES!](https://github.com/arcan1s/pytextmonitou/issues/14)
Configuração
------------
Para editar o output, você deve abrir a janela de Configurações e configurar o formato de output na linhas:
* tag `$time` - hora no formato padrão. Por exemplo, *sex Nov 6 04:48:01 2013*
* tag `$isotime` - hora no formato ISO.
* tag `$shouttime` - hora em formato curto
* tag `$longtime` - hora em formato longo
* tag `$custom` - formato personalizado de houa
* tag `$uptime` - tempo em atividade, *---d--h--m*
* tag `$custom` - formato personalizado de tempo em atividade
* tag `$cpu` - carga total da CPU, *%*
* tag `$cpuN` - carga total da CPU no núcleo N, *%*
* tag `$cpucl` - frequência média da CPU, *MHz*
* tag `$cpuclN` - frequência do núcleo N da CPU, *MHz*
* tag `$tempN` - temperatura do dispositivo N. Por exemplo, `$temp0`
* tag `$gpu` - uso da GPU, *%*. `aticonfig` ou `nvidia-smi` devem estar instalados
* tag `$gputemp` - temperatura da GPU. `aticonfig` ou `nvidia-smi` devem estar instalados
* tag `$mem` - uso de memória, *%*
* tag `$memmb` - uso de memória, *MB*
* tag `$memgb` - uso de memória, *GB*
* tag `$memtotmb` - RAM total, *MB*
* tag `$memtotgb` - RAM total, *GB*
* tag `$swap` - swap, *%*
* tag `$swapmb` - swap, *MB*
* tag `$swapgb` - swap, *GB*
* tag `$swaptotmb` - swap total, *MB*
* tag `$swaptotgb` - swap total, *GB*
* tag `$hddN` - uso do ponto de montagem N, *%*. Pou exemplo, `$hdd0`
* tag `$hddmbN` - uso do ponto de montagem, *MB*. Por exemplo, `$hddmb0`
* tag `$hddgbN` - uso do ponto de montagem, *GB*. Por exemplo, `$hddgb0`
* tag `$hddtotmbN` - tamanho total do ponto de montagem N, *MB*. Por exemplo, `$hddtotmb0`
* tag `$hddtotgbN` - tamanho total do ponto de montagem N,, *GB*. Por exemplo, `$hddtotgb0`
* tag `$hddrN` - velocidade de leitura do disco N, *KB/s*. Por exemplo, `$hddr0`
* tag `$hddwN` - velocidade de escrita do disco N, *KB/s*. Por exemplo, `$hddw0`
* tag `$hddtempN` - temperatura do HDD N. Por exemplo, `$hddtemp0`
* tag `$down` - velocidade de download, *KB/s*
* tag `$up` - velocidade de upload, *KB/s*
* tag `$netdev` - dispositivo atual de rede
* tag `$bat` - carga da bateria, *%*
* tag `$ac` - status do dispositivo carregador. Retorna (\*) se o carregador estiver plugado ou *( )* se estiver desplugado
* tag `$album` - álbum da música atual . Um dos reprodutores de músicas suportados deve estar instalado
* tag `$artist` - artista da música atual. Um dos reprodutores de músicas suportados deve estar instalado
* tag `$progress` - progresso da música atual. Um dos reprodutores de músicas suportados deve estar instalado
* tag `$time` - tempo da música atual. Um dos reprodutores de músicas suportados deve estar instalado
* tag `$title` - título da música atual. Um dos reprodutores de músicas suportados deve estar instalado
* tag `$pscount` - número de processos rodando
* tag `$pstotal` - número total de processos
* tag `$ps` - lista de processos rodando
* tag `$pkgcountN` - número de pacotes disponíveis para atualizar pelo comando N available to upgrade. Por exemplo, `$pkgcount0`
* tag `$customN` - retorna o output do comando N. Por exemplo, `$custom0`
A ordem dos rótulos mudará se você mudar a posição do slider. Tags HTML funcionarão normalmente.
**NOTA** você não deve usar a tag `$cpu` no rótulo de swap, por exemplo. **`$cpu` somente funcionará no rótulo da cpu**.
Dicas & truques
---------------
Você pode usar cores diferentes para os rótulos. Só coloque o texto do rótulo em código HTML. Veja este [issue](https://github.com/arcan1s/pytextmonitor/issues/9) para mais detalhes.
A numeração dos elementos de temperatura, uso de HDD, velocidade do HDD, temperatura do HDD refere à ordem dos elementos da segunda aba (*Configurações Avançadas*). Você deve adicionar o item para a lista requerida listWidget primeiro. E o primeiro elemento na listWidget será `$tag0`. Veja este [issue](https://github.com/arcan1s/pytextmonitor/issues/17) para mais detalhes.
Configurações Avançadas
-----------------------
**Layout vertical**
Use o layout vertical ao invés do horizontal.
**Habilitar popup**
Desmarque esta caixa se não quiser usar mensagens popup
**Adicionar esticamento**
Adicionar esticamento (espaço) para o lado selecionado do widget.
**Hora customizada**
* tag `$dddd` - dia da semana em formato completo
* tag `$ddd` - dia da semana em format curto
* tag `$dd` - dia
* tag `$d` - dia sem zeros
* tag `$MMMM` - mês em formato completo
* tag `$MMM` - mês em formato curto
* tag `$MM` - mês
* tag `$M` - mês sem zeros
* tag `$yyyy` - ano
* tag `$yy` - ano em formato curto
* tag `$hh` - horas
* tag `$h` - horas sem zeros
* tag `$mm` - minutos
* tag `$m` - minutos sem zeros
* tag `$ss` - segundos
* tag `$s` - segundos sem zeros
**Tempo em Atividade personalizado**
* tag `$dd` - tempo em atividade em dias
* tag `$d` - tempo em atividade em dias sem zeros
* tag `$hh` - tempo em atividade em horas
* tag `$h` - tempo em atividade em horas sem zeros
* tag `$mm` - tempo em atividade em minutos
* tag `$m` - tempo em atividade em minutos sem zeros
**Unidades de Temperatura**
Seleciona as unidades de temperatura. Unidades disponíveis são Celsius, Farenheit e Kelvin.
**Dispositivos de Temperatura**
Lista de dispositovos, a serem observados no rótulo de temperatura (os itens de seleção vêm do `sensors`). A lista de widgets é editável, a tecla delete removerá o item selecionado.
**Pontos de Montagem**
Lista de pontos de montagem, a serem observados no rótulo de hdd (os itens de seleção vêm do `mount`). A lista de widgets é editável, a tecla delete removerá o item selecionado.
**HDD (velocidade)**
Lista de dispositivos HDD, a serem observados no rótulo de hddspeed (os itens de seleção vêm do DataEngine). A lista de widgets é editável, a tecla delete removerá o item selecionado.
**HDD (temperatura)**
Lista de dispositivos HDD, a serem observados no rótulo de hddtemp (os itens de seleção vêm do `find`). A lista de widgets é editável, a tecla delete removerá o item selecionado.
**Diretório de rede**
Caminho para o diretório, que contém a informação dos dispositivos de rede. O padrão é `/sys/class/net`. Requerido para seleção automática de dispositivo de rede.
**Dispositivo de rede**
Usa o dispositivo especificado como ativo. Os itens de seleção vêm do **diretório de rede**. Desativará a seleção automática do dispositivo de rede.
**Dispositivo de bateria**
Arquivo com informações da bateria. O arquivo (`/sys/class/power_supply/BAT0/capacity` por padrão) deve conter somente a carga da bateria em porcentagem.
**Tag do carregador plugado**
Linha a ser mostrada quando o carregador está plugado.
**Tag do carregador desplugado**
Linha a ser mostrada quando o carregador está desplugado.
**Dispositivo carregador**
Arquivo com informações do carregador. O arquivo (`/sys/class/power_supply/AC/online` por padrão) deve conter `1` se o carregador estiver plugado.
Configurações da dica de contexto
---------------------------------
Desde a versão 1.7.0, os rótulos de CPU, frequência da CPU, memória, swap e rede suportam dica de contexto gráfica. Para ativar, certifique-se de ter marcado as caixas necessárias. O número de valores armazenados pode ser configurado nesta aba. Cores de gráficos também são configuráveis.
Configurações de DataEngine
---------------------------
**Comando personalizado**
*NOTA* Isso pode travar o seu computador.
Comandos que serão executados para o rótulo personalizado.
**Dispositivo GPU**
Seleciona um dos dispositivos GPU sportador. `auto` ativará a seleção automática, `disable` desativará a definição dos estados de GPU. O padrão é `auto`.
**HDD**
Seleciona um dos HDDs para o monitor de temperatura do HDD. `all` ativará o monitoramento de todos dispositivos, `disable` desativará o monitoramento para todos dispositivos. O padrão é `all`.
**hddtemp cmd**
Digite um comando que será executado para o hddtemp DataEngine. O padrão é `sudo hddtemp`.
**Endereço MPD**
Endereço do servidor MPD. O padrão é `localhost`.
**Porta MPD**
Porta do servidor MPD. O padrão é `6600`.
**Gerenciador de pacotes**
Lista de comandos a serem executador. O número de linhas nulas é o número de linhas desnecessárias. Por padrão:
* *Arch*: `PKGCMD=pacman -Qu`, `PKGNULL=0`
* *Debian*: `PKGCMD=apt-show-versions -u -b`, `PKGNULL=0`
* *Ubuntu*: `PKGCMD=aptitude search '~U'`, `PKGNULL=0`
* *Fedora*: `PKGCMD=yum list updates`, `PKGNULL=3`
* *FreeBSD*: `PKGCMD=pkg_version -I -l '<'`, `PKGNULL=0`
* *Mandriva*: `PKGCMD=urpmq --auto-select`, `PKGNULL=0`
**Reprodutor de música**
Selecione um dos reprodutores de música suportados para o rótulo de música.
Configuração do DataEngine
--------------------------
Você pode editar a configuração do DataEngine. Ela está em `/usr/share/config/extsysmon.conf` ou `$HOME/share/config/extsysmon.conf` dependendo do tipo de instalação. Remova os comentários das linhas necessárias e edite-as.
Instruções
==========
Dependências
------------
* kdebase-workspace
* kdebindings-python2
* lm_sensors (*para definir a temperatura dos dispositivos*)
Dependências opcionais
----------------------
* sysstat (*para notificações*)
* driver de vídeo proprietário
* hddtemp (certifique-se de que pode ser executado com `sudo` sem senha. Para isso, adicione a seguinte linha ao arquivo `/etc/sudoers`: `$USERNAME ALL=NOPASSWD: /usr/bin/hddtemp`)
* music player (amarok, clementine, mpd or qmmp)
Dependências para compilar
--------------------------
* automoc4
* cmake
Instalação
----------
* baixe o código-fonte
* instale
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --localprefix` ../
make && make install
Caso queira instalar na `/`:
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ../
make && sudo make install
Informações adicionais
======================
TODO (lista de desejos)
-----------------------
Links
-----
* [Homepage](http://arcanis.name/projects/pytextmonitor/)
* Plasmoid na [kde-look](http://kde-look.org/content/show.php/Py+Text+Monitor?content=157124)
* DataEngine na [kde-look](http://kde-look.org/content/show.php/Extended+Systemmonitor+DataEngine?content=158773)
* Pacote para ArchLinux no [AUR](https://aur.archlinux.org/packages/kdeplasma-applets-pytextmonitor/)

View File

@ -1,313 +0,0 @@
pytextmonitor
=============
Информация
----------
PyTextMonitor - минималистичный плазмоид, написанный на Python2. Он выглядит как виджеты в Awesome WM.
**ВНИМАНИЕ** [НУЖНЫ ПЕРЕВОДЧИКИ!](https://github.com/arcan1s/pytextmonitor/issues/14)
Настройка
---------
Для редактирования внешнего вида, откройте окно настроек и установите требуемый формат в поля:
* тег `$time` - время в стандартном формате. Например, *fri Nov 6 04:48:01 2013*
* тег `$isotime` - время в ISO формате
* тег `$shorttime` - время в коротком формате
* тег `$longtime` - время в длинном формате
* тег `$custom` - свой формат времени
* тег `$uptime` - время работы, *---d--h--m*
* тег `$custom` - свой формат аптайма
* тег `$cpu` - общая загрузка CPU, *%*
* тег `$cpuN` - загрузка CPU для ядра N, *%*
* тег `$cpucl` - средняя частота CPU, *MHz*
* тег `$cpuclN` - частота CPU для ядра N, *MHz
* тег `$tempN` - температура для устройства N. Например, `$temp0`
* тег `$gpu` - использование GPU, *%*. `aticonfig` или `nvidia-smi` должны быть установлены
* тег `$gputemp` - температура GPU. `aticonfig` или `nvidia-smi` должны быть установлены
* тег `$mem` - использование RAM, *%*
* тег `$memmb` - использование RAM, *MB*
* тег `$memgb` - использование RAM, *GB*
* тег `$memtotmb` - RAM, *MB*
* тег `$memtotgb` - RAM, *GB*
* тег `$swap` - swap, *%*
* тег `$swapmb` - swap, *MB*
* тег `$swapgb` - swap, *GB*
* тег `$swaptotmb` - размер swap, *MB*
* тег `$swaptotgb` - размер swap, *GB*
* тег `$hddN` - использование точки монтирования N, *%*. Например, `$hdd0`
* тег `$hddmbN` - использование точки монтирования N, *MB*. Например, `$hddmb0`
* тег `$hddgbN` - использование точки монтирования N, *GB*. Например, `$hddgb0`
* тег `$hddtotmbN` - размер точки монтирования N, *MB*. Например, `$hddtotmb0`
* тег `$hddtotgbN` - размер точки монтирования N, *GB*. Например, `$hddtotgb0`
* тег `$hddrN` - скорость записи на диск N, *KB/s*. Например, `$hddr0`
* тег `$hddwN` - скорость чтения с диска N, *KB/s*. Например, `$hddw0`
* тег `$hddtempN` - температура HDD N. Например, `$hddtemp0`
* тег `$down` - скорость загрузки, *KB/s*
* тег `$up` - скорость отдачи, *KB/s*
* тег `$netdev` - текущий сетевой интерфейс
* тег `$bat` - заряд батареи, *%*
* тег `$ac` - статус адаптера питания. Возвращает (\*), если AC подключен или *( )*, если нет
* тег `$album` - альбом. Один из поддерживаемых плееров должен быть установлен
* тег `$artist` - исполнитель. Один из поддерживаемых плееров должен быть установлен
* тег `$progress` - прогресс. Один из поддерживаемых плееров должен быть установлен
* тег `$time` - длительность. Один из поддерживаемых плееров должен быть установлен
* тег `$title` - название. Один из поддерживаемых плееров должен быть установлен
* тег `$pscount` - число запущенных процессов
* тег `$pstotal` - общее число процессов
* тег `$ps` - список процессов
* тег `$pkgcountN` - число пакетов, которые могут быть обновлены, для команды N. Например, `$pkgcount0`
* тег `$customN` - возвращает результат своей команды N. Например, `$custom0`
* тег `$name` - имя текущего рабочего стола
* тег `$number` - номер текущего рабочего стола
* тег `$total` - общее число рабочих столов
Порядок полей изменится, если вы измените позицию слайдеров. HTML теги в полях работают корректно.
**ЗАМЕЧАНИЕ** вы не можете установить тег `$cpu`, например, в поле swap. **`$cpu` будет работать только в поле CPU**.
Советы и хитрости
-----------------
Вы можете использовать различные цвета в полях. Просто вставьте нужный текст в html код. Смотри [вопрос](https://github.com/arcan1s/pytextmonitor/issues/9) для более подробной информации.
Нумерация элементов в полях "Температура", "Использование HDD", "Скорость HDD", "Температура HDD" ссылается на порядок элементов во второй вкладке (*Расширенные настройки*). Вы должны сначала добавить требуемые элементы в нужный listWidget. И первый элемент в listWdiget будет связан c `$tag0`. Смотри [вопрос](https://github.com/arcan1s/pytextmonitor/issues/17) для более подробной информации.
Расширенные настройки
---------------------
**Включить фон**
Снимите галочку, чтобы отключить стандартный фон виджета и установить прозрачный.
**Вертикальная разметка**
Использовать вертикальную разметку вместо горизонтальной.
**Включить всплывающие сообщения**
Нажмите на чекбокс, если вы не используете всплывающие сообщения.
**Добавить пустое пространство**
Добавить пустое пространство в указанное место виджета.
**Свой формат времени**
* тег `$dddd` - день недели в длинном формате
* тег `$ddd` - день недели в коротком формате
* тег `$dd` - день
* тег `$d` - день без нуля
* тег `$MMMM` - месяц в длинном формате
* тег `$MMM` - месяц в коротком формате
* тег `$MM` - месяц
* тег `$M` - месяц без нуля
* тег `$yyyy` - год
* тег `$yy` - год в коротком формате
* тег `$hh` - часы
* тег `$h` - часы без нуля
* тег `$mm` - минуты
* тег `$m` - минуты без нуля
* тег `$ss` - секунды
* тег `$s` - секунды без нуля
**Свой формат аптайма**
* тег `$dd` - дни аптайма
* тег `$d` - дни аптайма без нуля
* тег `$hh` - часы аптайма
* тег `$h` - часы аптайма без нуля
* тег `$mm` - минуты аптайма
* тег `$m` - минуты аптайма без нуля
**Температурные единицы**
Выберите единицы температуры. Доступные единицы следующие: Цельсий, Фаренгейт и Кельвин.
**Датчики температуры**
Список датчиков, которые будут наблюдаться в поле temo (содержимое комбо бокса берется из `sensors`). Виджет редактируем, клавиша delete удалит текущую строку.
**Точки монтирования**
Список точек монтирования, которые будут наблюдаться в поле hdd (содержимое комбо бокса берется из `mount`). Виджет редактируем, клавиша delete удалит текущую строку.
**HDD (скорость)**
Список HDD, которые будут наблюдаться в поле hddspeed (содержимое комбо бокса берется из DataEngine). Виджет редактируем, клавиша delete удалит текущую строку.
**HDD (температура)**
Список HDD, которые будут наблюдаться в поле hddtemp (содержимое комбо бокса берется из `find`). Виджет редактируем, клавиша delete удалит текущую строку.
**Директория с сетевыми интерфейсами**
Путь к директории, которая содержит информацию о сетевых интерфейсах. По умолчанию `/sys/class/net`. Требуется для определения сетевого устройства.
**Сетевое устройство**
Использовать указанный интерфейс, как активный. Содержимое комбо бокса берется из **директории с сетевыми интерфейсами**. Эта опция отключит автоопределение интерфейса.
**Устройство батареи**
Файл с информацией о батарее. Данный файл (`/sys/class/power_supply/BAT0/capacity` по умолчанию) должен содержать только заряд батареи в процентах.
**AC online тег**
Строка, которая будет показана, когда AC онлайн.
**AC offline тег**
Строка, которая будет показана, когда AC оффлайн.
**Устройство AC**
Файл с информацией об адаптере питания. Данный файл (`/sys/class/power_supply/AC/online` по умолчанию) должен содержать `1`, если адаптер подключен.
Настройки тултипа
-----------------
Начиная с версии 1.7.0 поля "CPU", "Частота CPU", "Память", "Swap" и "Сеть" поддерживают графический тултип. Чтобы включить их, просто сделайте требуемые чекбоксы полностью чекнутыми. Число хранимых значений может быть выставленно в данной вкладке. Цвета графиков также настраиваются.
Настройки DataEngine
--------------------
**Своя команда**
*ЗАМЕЧАНИЕ* Может вызвать зависание компьютера.
Команды, которые будут запущены для соответствующего поля.
**Комадна для определения рабочего стола**
Введите команду, которая будет запущеная для desktop DataEngine. По умолчанию `qdbus org.kde.kwin /KWin currentDesktop`.
**Устройство GPU**
Выберите одно из поддерживаемых устройств GPU. `auto` включит автоматическое определение, `disable` отключит все мониторы GPU. По умолчанию `auto`.
**HDD**
Выберете один из HDD для монитора его температуры. `all` включит монитор для всех доступных устройств, `disable` отключит определение температуры HDD. По умолчанию `all`.
**Команда hddtemp**
Введите команду, которая будет запущена для hddtemp DataEngine. По умолчанию `sudo hddtemp`.
**Адрес MPD**
Адрес MPD сервера. По умолчанию `localhost`.
**Порт MPD**
Порт MPD сервера. По умолчанию `6600`.
**Имя плеера в MPRIS**
Имя плеера в MPRIS. DBus интерфейс плеера должен быть активирован. По умолчанию `auto`.
**Package manager**
Список команд, которые будут запущены. Число пустых строк - число ненужных для подсчета строк. Стандартные настройки:
* *Arch*: `PKGCMD=pacman -Qu`, `PKGNULL=0`
* *Debian*: `PKGCMD=apt-show-versions -u -b`, `PKGNULL=0`
* *Ubuntu*: `PKGCMD=aptitude search '~U'`, `PKGNULL=0`
* *Fedora*: `PKGCMD=yum list updates`, `PKGNULL=3`
* *FreeBSD*: `PKGCMD=pkg_version -I -l '<'`, `PKGNULL=0`
* *Mandriva*: `PKGCMD=urpmq --auto-select`, `PKGNULL=0`
**Музыкальный плеер**
Выберите один из поддерживаемых музыкальных плееров.
PTM desktop panel
=================
Начиная с версии 1.11.0 PyTextMonitor предоставляет минималистичную панель для мониторинга за рабочими столами, написанный на `C++`. И да, он выглядит, как аналогичная панель в Awesome.
Настройка Desktop panel
-----------------------
**Включить фон**
Снимите галочку, чтобы отключить стандартный фон виджета и установить прозрачный.
**Вертикальная разметка**
Использовать вертикальную разметку вместо горизонтальной.
**Добавить пустое пространство**
Добавить пустое пространство в указанное место виджета.
**Метка**
Введите символ (или строку), которая будет показана, если данный рабочий стол сейчас активен.
**Теги шаблона**
* тег `$mark` - показать метку, если данный рабочий стол активен
* тег `$name` - имя рабочего стола
* тег `$number` - номер рабочего стола
* тег `$total` - общее число рабочих столов
**Команда**
Введите команду, которая будет запущена по клику левой кнопкой мыши на выбранном рабочем столе. Доступны те же переменные, что и для шаблонов. По умолчанию `dbus org.kde.kwin /KWin setCurrentDesktop $number`.
Инструкция
==========
Зависимости
-----------
* kdebase-workspace
* kdebindings-python2
* lm_sensors (*для определения датчиков температуры*)
Опциональные зависимости
------------------------
* sysstat (*для уведомлений*)
* проприетарный видеодрайвер
* hddtemp (убедитесь, что может быть запущен с `sudo` без пароля. Просто добавьте следующую строку в `/etc/sudoers`: `$USERNAME ALL=NOPASSWD: /usr/bin/hddtemp`)
* музыкальный плеер (amarok, clementine, mpd или qmmp)
Зависимости сборки
------------------
* automoc4
* cmake
Установка
---------
* скачать исходный архив
* установить
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --localprefix` ../
make && make install
Для установки в `/`:
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ../
make && sudo make install
Дополнительная информация
=========================
TODO (wish list)
----------------
Ссылки
------
* [Домашняя страница](http://arcanis.name/projects/pytextmonitor/)
* Виджет на [kde-look](http://kde-look.org/content/show.php/Py+Text+Monitor?content=157124)
* DataEngine на [kde-look](http://kde-look.org/content/show.php/Extended+Systemmonitor+DataEngine?content=158773)
* Пакет для Archlinux в [AUR](https://aur.archlinux.org/packages/kdeplasma-applets-pytextmonitor/)

View File

@ -1,263 +0,0 @@
pytextmonitor
=============
Інформація
----------
PyTextMonitor - мінімалістичний плазмоїд, що написаний на Python2. Він виглядає як віджети в Awesome WM.
**УВАГА** [ПОТРІБНІ ПЕРЕКЛАДАЧІ!](https://github.com/arcan1s/pytextmonitor/issues/14)
Налаштування
------------
Для редагування зовнішного вигляду, відкрийте вікно налаштувань та встановіть потрібний формат в поля:
* тег `$time` - час у стандартному форматі. Наприклад, *fri Nov 6 04:48:01 2013*
* тег `$isotime` - час в ISO форматі
* тег `$shorttime` - час в короткому форматі
* тег `$longtime` - час у довгому форматі
* тег `$custom` - свій формат часу
* тег `$uptime` - час роботи, *---d--h--m*
* тег `$custom` - свій формат аптайму
* тег `$cpu` - загальне завантаження CPU, *%*
* тег `$cpuN` - завантаження CPU для ядра N, *%*
* тег `$cpucl` - середня частота CPU, *MHz*
* тег `$cpuclN` - частота CPU для ядра N, *MHz*
* тег `$tempN` - температура для пристрою N. Наприклад, `$temp0`
* тег `$gpu` - використання GPU, *%*. `aticonfig` або `nvidia-smi` мають бути встановлені
* тег `$gputemp` - температура GPU. `aticonfig` або `nvidia-smi` мають бути встановлені
* тег `$mem` - використання RAM, *%*
* тег `$memmb` - використання RAM, *MB*
* тег `$memgb` - використання RAM, *GB*
* тег `$swap` - swap, *%*
* тег `$swapmb` - swap, *MB*
* тег `$swapgb` - swap, *GB*
* тег `$swaptotmb` - розмір swap, *MB*
* тег `$swaptotgb` - розмір swap, *GB*
* тег `$hddN` - використання точки монтування N, *%*. Наприклад, `$hdd0`
* тег `$hddmbN` - використання точки монтування N, *MB*. Наприклад, `$hddmb0`
* тег `$hddgbN` - використання точки монтування N, *GB*. Наприклад, `$hddgb0`
* тег `$hddtotmbN` - розмір точки монтування N, *MB*. Наприклад, `$hddtotmb0`
* тег `$hddtotgbN` - розмір точки монтування N, *GB*. Наприклад, `$hddtotgb0`
* тег `$hddrN` - швидкість запису на диск N, *KB/s*. Наприклад, `$hddr0`
* тег `$hddwN` - швидкість читання з диска N, *KB/s*. Наприклад, `$hddw0`
* тег `$hddtempN` - температура HDD N. Наприклад, `$hddtemp0`
* тег `$down` - швидкість завантаження, *KB/s*
* тег `$up` - швидкість віддачі, *KB/s*
* тег `$netdev` - поточний мережний інтерфейс
* тег `$bat` - заряд батареї, *%*
* тег `$ac` - статус адаптера живлення. Повертає `(*)`, якщо AC підключений або `( )`, якщо ні
* тег `$album` - альбом. Один з підтримуваних плеєрів повинен бути встановлений
* тег `$artist` - виконавець. Один з підтримуваних плеєрів повинен бути встановлений
* тег `$progress` - прогрес. Один з підтримуваних плеєрів повинен бути встановлений
* тег `$time` - тривалість. Один з підтримуваних плеєрів повинен бути встановлений
* тег `$title` - назва. Один з підтримуваних плеєрів повинен бути встановлений
* тег `$pscount` - кількість запущених процесів
* тег `$pstotal` - загальна кількість процесів
* тег `$ps` - перелік процесів
* тег `$pkgcountN` - кількість пакетів, що можуть бути оновлені, для команди N. Наприклад, `$pkgcount0`
* тег `$customN` - повертає результат своєї команди N. Наприклад, `$custom0`
Порядок полів зміниться, якщо ви зміните позицію слайдерів. HTML теги в полях працюють коректно.
**ЗАУВАЖЕННЯ** ви не зможете встановити тег `$cpu`, наприклад, в полі swap. **`$cpu` буде працювати тільки в полі CPU**.
Поради та хитрощі
-----------------
Ви можете використовувати різні кольори в полях. Просто встановіть потрібний текст в html код. Дивись [питання](https://github.com/arcan1s/pytextmonitor/issues/9) для більш детальної інформації.
Нумерація элементів в полях температура, використання HDD, швидкість HDD, температура HDD посилається на порядок елементів у другій вкладці (*Розширені налаштування*). Ви повинні спочатку додати потрібні елементи в потрібний listWidget. Тоді перший елемент в listWdiget буде пов’язаний з `$tag0`. Дивись [питання](https://github.com/arcan1s/pytextmonitor/issues/17) для більш детальної інформації.
Розширені налаштування
----------------------
**Вертикальна розмітка**
Використовувати вертикальну розмітку замість горизонтальної.
**Включити спливаючі повідомлення**
Натисніть на чекбокс, якщо ви не користуєтесь спливаючими повідомленнями.
**Додати порожній простір**
Додати порожній простір у вказане місце віджета.
**Свій формат часу**
* тег `$dddd` - день тижня у довгому форматі
* тег `$ddd` - день тижня в короткому форматі
* тег `$dd` - день
* тег `$d` - день без нуля
* тег `$MMMM` - місяць у довгому форматі
* тег `$MMM` - місяць в короткому форматі
* тег `$MM` - місяць
* тег `$M` - місяця без нуля
* тег `$yyyy` - рік
* тег `$yy` - рік в короткому форматіе
* тег `$hh` - години
* тег `$h` - години без нуля
* тег `$mm` - хвилини
* тег `$m` - хвилини без нуля
* тег `$ss` - секунди
* тег `$s` - секунди без нуля
**Свій формат аптайму**
* тег `$dd` - дні аптайму
* тег `$d` - дні аптайму без нуля
* тег `$hh` - години аптайму
* тег `$h` - години аптайму без нуля
* тег `$mm` - хвилини аптайму
* тег `$m` - хвилини аптайму без нуля
**Одиниці виміру температури**
Оберіть одиниці виміру температур. Доступні такі одиниці: Цельсій, Фаренгейт та Кельвін.
**Датчики температури**
Перелік датчиків, що будуть спостерігатись в полі temo (вміст комбо боксу береться із `sensors`). Віджет можна редагувати, клавіша delete видаляє поточний рядок.
**Точки монтування**
Перелік точок монтування, які будуть спостерігатися в полі hdd (вміст комбо боксу береться із `mount`). Віджет можна редагувати, клавіша delete видаляє поточний рядок.
**HDD (швидкість)**
Перелік HDD, які будуть спостерігатися в полі hddspeed (вміст комбо боксу береться із DataEngine). Віджет можна редагувати, клавіша delete видаляє поточний рядок.
**HDD (температура)**
Перелік HDD, які будуть спостерігатися в полі hddtemp (вміст комбо боксу береться iз `find`). Віджет можна редагувати, клавіша delete видаляє поточний рядок.
**Директорія з мережевими інтерфейсами**
Шлях до директорії, яка містить інформацію про мережеві інтерфейси. За замовчуванням `/sys/class/net`. Потрібно для визначення мережевого пристрою.
**Мережевий пристрій**
Використовувати вказаний інтерфейс, як активний. Вміст комбо боксу береться із **директорії з мережевими інтерфейсами**. Ця опція вимкне автовизначення інтерфейсу.
**Пристрій батареї**
Файл з інформацією про батарею. Даний файл (`/sys/class/power_supply/BAT0/capacity` за замовчуванням) повинен містити тільки заряд батареї в процентах.
**AC online тег**
Рядок, що буде показаний, коли AC онлайн.
**AC offline тег**
Рядок, що буде показаний, коли AC оффлайн.
**Пристрій AC**
Файл з інформациею про адаптер живлення. Даний файл (`/sys/class/power_supply/AC/online` за замовчуванням) повинен містити `1`, якщо адаптер підключений.
Налаштування тултіпу
--------------------
Починаючи з версії 1.7.0 поля CPU, частота CPU, пам’ять, swap та мережа підтримують графічний тултіп. Щоб їх ввімкнути, просто зробіть необхідні чекбокси повністю чекнутими. Кількість зберігаємих значень може бути виставлена в даній вкладці. Кольори графіків також налаштовуються.
Налаштування DataEngine
-----------------------
**Своя команда**
*ЗАУВАЖЕННЯ* Може призвести до зависання комп’ютера.
Команда, що буде запущена для відповідного поля.
**Пристрій GPU**
Оберіть один з підтримуваних пристроїв GPU. `auto` ввімкне автоматичне визначення. За замовчуванням `auto`.
**HDD**
Оберіть один з HDD для контролю його температури. `all` ввімкне контроль для всих доступних пристроїв. За замовчуванням `all`.
**Команда hddtemp**
Оберіть команду, яка буде запущена для hddtemp DataEngine. За замовчуванням `sudo hddtemp`.
**Адреса MPD**
Адреса MPD серверу. За замовчуванням `localhost`.
**Порт MPD**
Порт MPD серверу. За замовчуванням `6600`.
**Package manager**
Перелік команд, які будуть запущені. Кількість пустих рядків - кількість непотрібних для підрахунку рядків. Стандартні налаштування:
* *Arch*: `PKGCMD=pacman -Qu`, `PKGNULL=0`
* *Debian*: `PKGCMD=apt-show-versions -u -b`, `PKGNULL=0`
* *Ubuntu*: `PKGCMD=aptitude search '~U'`, `PKGNULL=0`
* *Fedora*: `PKGCMD=yum list updates`, `PKGNULL=3`
* *FreeBSD*: `PKGCMD=pkg_version -I -l '<'`, `PKGNULL=0`
* *Mandriva*: `PKGCMD=urpmq --auto-select`, `PKGNULL=0`
**Музичний плеєр**
Виберіть один з підтримуваних музичних плеєрів.
Налаштування DataEngine
-----------------------
Ви можете відредагувати налаштування DataEngine вручну. Відкрийте файл `/usr/share/config/extsysmon.conf` або `$HOME/.kde4/share/config/extsysmon.conf`, в залежності від типу установки. Розкоментуйте потрібні рядки та відредагуйте їх.
Інструкція
==========
Залежності
----------
* kdebase-workspace
* kdebindings-python2
* lm_sensors (*для визначення датчиків температури*)
Опціональні залежності
----------------------
* sysstat (*для сповіщень*)
* проприєтарний відеодрайвер
* hddtemp (переконайтесь, що може бути запущений з `sudo` без пароля. Просто добавте наступний рядок в `/etc/sudoers`: `$USERNAME ALL=NOPASSWD: /usr/bin/hddtemp`)
* музичний плеєр (amarok, clementine, mpd или qmmp)
Залежності збирання
-------------------
* automoc4
* cmake
Установка
---------
* скачати вихідний архів
* встановити
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --localprefix` ../
make && make install
Для установки в `/`:
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ../
make && sudo make install
Додаткова інформація
====================
TODO (wish list)
----------------
Посилання
---------
* [Домашня сторінка](http://arcanis.name/projects/pytextmonitor/)
* Віджет на [kde-look](http://kde-look.org/content/show.php/Py+Text+Monitor?content=157124)
* DataEngine на [kde-look](http://kde-look.org/content/show.php/Extended+Systemmonitor+DataEngine?content=158773)
* Пакет для Archlinux в [AUR](https://aur.archlinux.org/packages/kdeplasma-applets-pytextmonitor/)

BIN
screenshots/config_01.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
screenshots/config_02.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

BIN
screenshots/config_03.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

BIN
screenshots/config_04.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

BIN
screenshots/config_05.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

View File

@ -8,7 +8,7 @@ cmake_policy (SET CMP0015 NEW)
project (awesome-widgets)
set (PROJECT_VERSION_MAJOR 2)
set (PROJECT_VERSION_MINOR 0)
set (PROJECT_VERSION_PATCH 0)
set (PROJECT_VERSION_PATCH 3)
set (PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
set (PROJECT_TRDPARTY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty)
@ -16,7 +16,7 @@ message (STATUS "Version: ${PROJECT_VERSION}")
# flags
if (CMAKE_COMPILER_IS_GNUCXX)
set (CMAKE_CXX_FLAGS "-Wall -std=c++11")
set (CMAKE_CXX_FLAGS "-Wall -Wno-cpp -std=c++11")
set (CMAKE_CXX_FLAGS_DEBUG "-g -O0")
set (CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
else ()

View File

@ -18,14 +18,13 @@ include_directories (${CMAKE_SOURCE_DIR}
${PROJECT_TRDPARTY_DIR})
# set sources
set (SUBPROJECT_MISC_DIR "contents/misc")
file (GLOB SUBPROJECT_DESKTOP_IN *.desktop)
file (RELATIVE_PATH SUBPROJECT_DESKTOP ${CMAKE_SOURCE_DIR} ${SUBPROJECT_DESKTOP_IN})
file (GLOB_RECURSE SUBPROJECT_SOURCE *.cpp ${PROJECT_TRDPARTY_DIR}/task/*.cpp
${PROJECT_TRDPARTY_DIR}/fontdialog/*.cpp)
set (TASK_HEADER ${PROJECT_TRDPARTY_DIR}/task/task.h)
file (GLOB SUBPROJECT_UI *.ui)
file (GLOB SUBPROJECT_NOTIFY ${SUBPROJECT_MISC_DIR}/*.notifyrc)
file (GLOB SUBPROJECT_NOTIFY *.notifyrc)
# prepare
configure_file (${SUBPROJECT_DESKTOP_IN} ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_DESKTOP})

View File

@ -43,7 +43,7 @@
<x>0</x>
<y>0</y>
<width>677</width>
<height>590</height>
<height>677</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_8">
@ -234,6 +234,30 @@ $m - uptime minutes without zero</string>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="layout_fanDevice">
<item>
<widget class="QLabel" name="label_fanDevice">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Fan devices</string>
</property>
</widget>
</item>
<item>
<widget class="QListWidget" name="listWidget_fanDevice">
<property name="toolTip">
<string>Editable</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="layout_mount">
<item>

View File

@ -22,6 +22,7 @@
#include <QDesktopServices>
#include <QDir>
#include <QGraphicsGridLayout>
#include <QGraphicsProxyWidget>
#include <QGraphicsScene>
#include <QGraphicsView>
#include <QNetworkInterface>
@ -48,6 +49,7 @@ AwesomeWidget::AwesomeWidget(QObject *parent, const QVariantList &args)
setBackgroundHints(DefaultBackground);
setAspectRatioMode(Plasma::IgnoreAspectRatio);
setHasConfigurationInterface(true);
setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding);
// text format init
formatLine.append(QString(""));
formatLine.append(QString(""));
@ -98,7 +100,8 @@ QString AwesomeWidget::getNetworkDevice()
QList<QNetworkInterface> rawInterfaceList = QNetworkInterface::allInterfaces();
for (int i=0; i<rawInterfaceList.count(); i++)
if ((rawInterfaceList[i].flags().testFlag(QNetworkInterface::IsUp)) &&
(!rawInterfaceList[i].flags().testFlag(QNetworkInterface::IsLoopBack)))
(!rawInterfaceList[i].flags().testFlag(QNetworkInterface::IsLoopBack)) &&
(!rawInterfaceList[i].flags().testFlag(QNetworkInterface::IsPointToPoint)))
device = rawInterfaceList[i].name();
}
@ -134,11 +137,11 @@ float AwesomeWidget::getTemp(const float temp)
else if (configuration[QString("tempUnits")] == QString("Reaumur"))
convertedTemp = temp * 0.8;
else if (configuration[QString("tempUnits")] == QString("cm^-1"))
convertedTemp = temp * 0.695;
convertedTemp = (temp + 273.15) * 0.695;
else if (configuration[QString("tempUnits")] == QString("kJ/mol"))
convertedTemp = temp * 8.31;
convertedTemp = (temp + 273.15) * 8.31;
else if (configuration[QString("tempUnits")] == QString("kcal/mol"))
convertedTemp = temp * 1.98;
convertedTemp = (temp + 273.15) * 1.98;
return convertedTemp;
}
@ -198,7 +201,13 @@ void AwesomeWidget::init()
mainLayout->setContentsMargins(1, 1, 1, 1);
setLayout(mainLayout);
textLabel = new CustomLabel(this, debug);
mainLayout->addItem(textLabel, 0, 0);
QGraphicsProxyWidget *pw = new QGraphicsProxyWidget(this);
pw->setAttribute(Qt::WA_TranslucentBackground, true);
pw->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
textLabel->setAttribute(Qt::WA_TranslucentBackground, true);
textLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
pw->setWidget(textLabel);
mainLayout->addItem(pw, 0, 0);
// read variables
configChanged();
@ -255,20 +264,22 @@ QStringList AwesomeWidget::getKeys()
allKeys.append(QString("uptime"));
allKeys.append(QString("cuptime"));
// cpuclock
allKeys.append(QString("cpucl"));
for (int i=counts[QString("cpu")]-1; i>=0; i--)
allKeys.append(QString("cpucl") + QString::number(i));
allKeys.append(QString("cpucl"));
// cpu
allKeys.append(QString("cpu"));
for (int i=counts[QString("cpu")]-1; i>=0; i--)
allKeys.append(QString("cpu") + QString::number(i));
allKeys.append(QString("cpu"));
// temperature
for (int i=counts[QString("temp")]-1; i>=0; i--)
allKeys.append(QString("temp") + QString::number(i));
// gpu
allKeys.append(QString("gpu"));
for (int i=counts[QString("fan")]-1; i>=0; i--)
allKeys.append(QString("fan") + QString::number(i));
// gputemp
allKeys.append(QString("gputemp"));
// gpu
allKeys.append(QString("gpu"));
// memory
allKeys.append(QString("memmb"));
allKeys.append(QString("memgb"));
@ -312,8 +323,10 @@ QStringList AwesomeWidget::getKeys()
allKeys.append(QString("up"));
allKeys.append(QString("netdev"));
// battery
allKeys.append(QString("bat"));
allKeys.append(QString("ac"));
allKeys.append(QString("bat0"));
for (int i=0; i<counts[QString("bat")]; i++)
allKeys.append(QString("bat") + QString::number(i+1));
// player
allKeys.append(QString("album"));
allKeys.append(QString("artist"));
@ -321,9 +334,9 @@ QStringList AwesomeWidget::getKeys()
allKeys.append(QString("progress"));
allKeys.append(QString("title"));
// ps
allKeys.append(QString("ps"));
allKeys.append(QString("pscount"));
allKeys.append(QString("pstotal"));
allKeys.append(QString("ps"));
// package manager
for (int i=counts[QString("pkg")]-1; i>=0; i--)
allKeys.append(QString("pkgcount") + QString::number(i));

View File

@ -76,6 +76,7 @@ private slots:
void addNewPkgCommand(QTableWidgetItem *item);
void contextMenuCustomCommand(const QPoint pos);
void contextMenuPkgCommand(const QPoint pos);
void editFanItem(QListWidgetItem *item);
void editHddItem(QListWidgetItem *item);
void editHddSpeedItem(QListWidgetItem *item);
void editMountItem(QListWidgetItem *item);

View File

@ -20,6 +20,7 @@
#include <KConfigDialog>
#include <KGlobal>
#include <KStandardDirs>
#include <QDir>
#include <QMenu>
#include <QNetworkInterface>
#include <QTextCodec>
@ -34,8 +35,7 @@ QMap<QString, QString> AwesomeWidget::readDataEngineConfiguration()
if (debug) qDebug() << PDEBUG;
QMap<QString, QString> rawConfig;
rawConfig[QString("AC")] = QString("/sys/class/power_supply/AC/online");
rawConfig[QString("BATTERY")] = QString("/sys/class/power_supply/BAT0/capacity");
rawConfig[QString("ACPIPATH")] = QString("/sys/class/power_supply/");
rawConfig[QString("CUSTOM")] = QString("wget -qO- http://ifconfig.me/ip");
rawConfig[QString("DESKTOPCMD")] = QString("qdbus org.kde.kwin /KWin currentDesktop");
rawConfig[QString("GPUDEV")] = QString("auto");
@ -171,19 +171,42 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
QString sensor = qoutput.split(QString("\n\n"))[i];
for (int j=0; j<sensor.split(QChar('\n')).count(); j++) {
QString device = sensor.split(QChar('\n'))[j];
if (device.indexOf(QChar(0260)) > -1) {
if (device.contains(QChar(0260))) {
QListWidgetItem *item = new QListWidgetItem(QString("lmsensors/") + sensor.split(QChar('\n'))[0] + QString("/") +
device.split(QChar(':'))[0].replace(QChar(' '), QChar('_')));
item->setCheckState(Qt::Unchecked);
uiAdvancedConfig.listWidget_tempDevice->addItem(item);
} else if (device.contains(QString("RPM"))) {
QListWidgetItem *item = new QListWidgetItem(QString("lmsensors/") + sensor.split(QChar('\n'))[0] + QString("/") +
device.split(QChar(':'))[0].replace(QChar(' '), QChar('_')));
item->setCheckState(Qt::Unchecked);
uiAdvancedConfig.listWidget_fanDevice->addItem(item);
}
}
}
for (int i=0; i<configuration[QString("tempDevice")].split(QString("@@")).count(); i++) {
QList<QListWidgetItem *> items = uiAdvancedConfig.listWidget_tempDevice
->findItems(configuration[QString("tempDevice")].split(QString("@@"))[i], Qt::MatchFixedString);
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
if ((items.isEmpty()) &&
(!configuration[QString("tempDevice")].split(QString("@@"))[i].isEmpty())) {
QListWidgetItem *item = new QListWidgetItem(configuration[QString("tempDevice")].split(QString("@@"))[i]);
item->setCheckState(Qt::Checked);
uiAdvancedConfig.listWidget_tempDevice->addItem(item);
} else
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
}
for (int i=0; i<configuration[QString("fanDevice")].split(QString("@@")).count(); i++) {
QList<QListWidgetItem *> items = uiAdvancedConfig.listWidget_fanDevice
->findItems(configuration[QString("fanDevice")].split(QString("@@"))[i], Qt::MatchFixedString);
if ((items.isEmpty()) &&
(!configuration[QString("fanDevice")].split(QString("@@"))[i].isEmpty())) {
QListWidgetItem *item = new QListWidgetItem(configuration[QString("fanDevice")].split(QString("@@"))[i]);
item->setCheckState(Qt::Checked);
uiAdvancedConfig.listWidget_fanDevice->addItem(item);
} else
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
}
cmd = QString("mount");
if (debug) qDebug() << PDEBUG << ":" << "cmd" << cmd;
@ -202,8 +225,14 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
for (int i=0; i<configuration[QString("mount")].split(QString("@@")).count(); i++) {
QList<QListWidgetItem *> items = uiAdvancedConfig.listWidget_mount
->findItems(configuration[QString("mount")].split(QString("@@"))[i], Qt::MatchFixedString);
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
if ((items.isEmpty()) &&
(!configuration[QString("mount")].split(QString("@@"))[i].isEmpty())) {
QListWidgetItem *item = new QListWidgetItem(configuration[QString("mount")].split(QString("@@"))[i]);
item->setCheckState(Qt::Checked);
uiAdvancedConfig.listWidget_mount->addItem(item);
} else
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
}
uiAdvancedConfig.listWidget_hddSpeedDevice->clear();
for (int i=0; i<diskDevices.count(); i++) {
@ -214,8 +243,14 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
for (int i=0; i<configuration[QString("disk")].split(QString("@@")).count(); i++) {
QList<QListWidgetItem *> items = uiAdvancedConfig.listWidget_hddSpeedDevice
->findItems(configuration[QString("disk")].split(QString("@@"))[i], Qt::MatchFixedString);
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
if ((items.isEmpty()) &&
(!configuration[QString("disk")].split(QString("@@"))[i].isEmpty())) {
QListWidgetItem *item = new QListWidgetItem(configuration[QString("disk")].split(QString("@@"))[i]);
item->setCheckState(Qt::Checked);
uiAdvancedConfig.listWidget_hddSpeedDevice->addItem(item);
} else
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
}
cmd = QString("find /dev -name [hms]d[a-z]");
if (debug) qDebug() << PDEBUG << ":" << "cmd" << cmd;
@ -233,8 +268,14 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
for (int i=0; i<configuration[QString("hdd")].split(QString("@@")).count(); i++) {
QList<QListWidgetItem *> items = uiAdvancedConfig.listWidget_hddDevice
->findItems(configuration[QString("hdd")].split(QString("@@"))[i], Qt::MatchFixedString);
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
if ((items.isEmpty()) &&
(!configuration[QString("hdd")].split(QString("@@"))[i].isEmpty())) {
QListWidgetItem *item = new QListWidgetItem(configuration[QString("hdd")].split(QString("@@"))[i]);
item->setCheckState(Qt::Checked);
uiAdvancedConfig.listWidget_hddDevice->addItem(item);
} else
for (int j=0; j<items.count(); j++)
items[j]->setCheckState(Qt::Checked);
}
if (configuration[QString("useCustomNetdev")].toInt() == 0)
uiAdvancedConfig.checkBox_netdev->setCheckState(Qt::Unchecked);
@ -244,6 +285,9 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
QStringList interfaceList;
for (int i=0; i<rawInterfaceList.count(); i++)
interfaceList.append(rawInterfaceList[i].name());
if ((!interfaceList.contains(configuration[QString("customNetdev")])) &&
(!configuration[QString("customNetdev")].isEmpty()))
interfaceList.append(configuration[QString("customNetdev")]);
uiAdvancedConfig.comboBox_netdev->clear();
uiAdvancedConfig.comboBox_netdev->addItems(interfaceList);
uiAdvancedConfig.comboBox_netdev->setCurrentIndex(
@ -311,8 +355,7 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
// dataengine
QMap<QString, QString> deSettings = readDataEngineConfiguration();
uiDEConfig.lineEdit_acdev->setText(deSettings[QString("AC")]);
uiDEConfig.lineEdit_batdev->setText(deSettings[QString("BATTERY")]);
uiDEConfig.lineEdit_acpi->setText(deSettings[QString("ACPIPATH")]);
uiDEConfig.tableWidget_customCommand->clear();
uiDEConfig.tableWidget_customCommand->setRowCount(deSettings[QString("CUSTOM")].split(QString("@@")).count() + 1);
headerList.clear();
@ -365,6 +408,8 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent)
parent->addPage(appWidget, i18n("Appearance"), QString("preferences-desktop-theme"));
parent->addPage(deConfigWidget, i18n("DataEngine"), QString("utilities-system-monitor"));
connect(uiAdvancedConfig.listWidget_fanDevice, SIGNAL(itemActivated(QListWidgetItem *)),
this, SLOT(editFanItem(QListWidgetItem *)));
connect(uiAdvancedConfig.listWidget_hddDevice, SIGNAL(itemActivated(QListWidgetItem *)),
this, SLOT(editHddItem(QListWidgetItem *)));
connect(uiAdvancedConfig.listWidget_hddSpeedDevice, SIGNAL(itemActivated(QListWidgetItem *)),
@ -421,6 +466,11 @@ void AwesomeWidget::configAccepted()
items.append(uiAdvancedConfig.listWidget_tempDevice->item(i)->text());
cg.writeEntry("tempDevice", items.join(QString("@@")));
items.clear();
for (int i=0; i<uiAdvancedConfig.listWidget_fanDevice->count(); i++)
if (uiAdvancedConfig.listWidget_fanDevice->item(i)->checkState() == Qt::Checked)
items.append(uiAdvancedConfig.listWidget_fanDevice->item(i)->text());
cg.writeEntry("fanDevice", items.join(QString("@@")));
items.clear();
for (int i=0; i<uiAdvancedConfig.listWidget_mount->count(); i++)
if (uiAdvancedConfig.listWidget_mount->item(i)->checkState() == Qt::Checked)
items.append(uiAdvancedConfig.listWidget_mount->item(i)->text());
@ -469,8 +519,7 @@ void AwesomeWidget::configAccepted()
// dataengine
QMap<QString, QString> deSettings;
deSettings[QString("AC")] = uiDEConfig.lineEdit_acdev->text();
deSettings[QString("BATTERY")] = uiDEConfig.lineEdit_batdev->text();
deSettings[QString("ACPIPATH")] = uiDEConfig.lineEdit_acpi->text();
items.clear();
for (int i=0; i<uiDEConfig.tableWidget_customCommand->rowCount(); i++)
if (uiDEConfig.tableWidget_customCommand->item(i, 0) != 0)
@ -514,6 +563,7 @@ void AwesomeWidget::configChanged()
configuration[QString("customUptime")] = cg.readEntry("customUptime", "$dd,$hh,$mm");
configuration[QString("tempUnits")] = cg.readEntry("tempUnits", "Celsius");
configuration[QString("tempDevice")] = cg.readEntry("tempDevice", "");
configuration[QString("fanDevice")] = cg.readEntry("fanDevice", "");
configuration[QString("mount")] = cg.readEntry("mount", "/");
configuration[QString("hdd")] = cg.readEntry("hdd", "/dev/sda");
configuration[QString("disk")] = cg.readEntry("disk", "disk/sda_(8:0)");
@ -591,9 +641,11 @@ void AwesomeWidget::configChanged()
// counts
QMap<QString, QString> deSettings = readDataEngineConfiguration();
counts[QString("bat")] = QDir(deSettings[QString("ACPIPATH")]).entryList(QDir::Dirs | QDir::NoDotAndDotDot).count();
counts[QString("cpu")] = getNumberCpus();
counts[QString("custom")] = deSettings[QString("CUSTOM")].split(QString("@@")).count();
counts[QString("disk")] = configuration[QString("disk")].split(QString("@@")).count();
counts[QString("fan")] = configuration[QString("fanDevice")].split(QString("@@")).count();
counts[QString("hddtemp")] = configuration[QString("hdd")].split(QString("@@")).count();
counts[QString("mount")] = configuration[QString("mount")].split(QString("@@")).count();
counts[QString("pkg")] = deSettings[QString("PKGCMD")].split(QChar(',')).count();
@ -664,6 +716,14 @@ void AwesomeWidget::contextMenuPkgCommand(const QPoint pos)
}
void AwesomeWidget::editFanItem(QListWidgetItem *item)
{
if (debug) qDebug() << PDEBUG;
uiAdvancedConfig.listWidget_fanDevice->openPersistentEditor(item);
}
void AwesomeWidget::editHddItem(QListWidgetItem *item)
{
if (debug) qDebug() << PDEBUG;
@ -707,9 +767,9 @@ void AwesomeWidget::setFontFormating()
false, false);
if (font != defaultFont) {
QString selectedText = uiWidConfig.textEdit_elements->textCursor().selectedText();
uiWidConfig.textEdit_elements->insertPlainText(QString("<font color=\"%1\" face=\"%2\" size=\"%3\">")
uiWidConfig.textEdit_elements->insertPlainText(QString("<span style=\"color:%1; font-family:'%2'; font-size:%3pt;\">")
.arg(font.color().name()).arg(font.family()).arg(font.pointSize()) +
selectedText + QString("</font>"));
selectedText + QString("</span>"));
}
}

View File

@ -26,7 +26,7 @@
CustomLabel::CustomLabel(AwesomeWidget *wid, const bool debugCmd)
: Plasma::Label(wid),
: QLabel(0),
widget(wid),
debug(debugCmd)
{
@ -49,7 +49,7 @@ void CustomLabel::setPopupEnabled(const bool state)
}
void CustomLabel::mousePressEvent(QGraphicsSceneMouseEvent *event)
void CustomLabel::mousePressEvent(QMouseEvent *event)
{
if (debug) qDebug() << PDEBUG;
if (debug) qDebug() << PDEBUG << ":" << "Get signal" << event->button();
@ -90,23 +90,8 @@ void CustomLabel::mousePressEvent(QGraphicsSceneMouseEvent *event)
if (process.exitCode != 0)
if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error;
text += QString("Uptime: %1\n").arg(QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed());
// ps stats
cmd = QString("ps --no-headers -o command");
if (debug) qDebug() << PDEBUG << ":" << "cmd" << cmd;
process = runTask(cmd);
if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << process.exitCode;
if (process.exitCode != 0)
if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error;
QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed();
QStringList processes;
for (int i=0; i<qoutput.split(QChar('\n')).count(); i++)
if (qoutput.split(QChar('\n'))[i] != QString("ps --no-headers -o command"))
processes.append(qoutput.split(QChar('\n'))[i]);
text += QString("ps stats: %1 | %2")
.arg(processes.count())
.arg(processes.join(QChar(',')));
widget->sendNotification(QString("system"), text);
}
emit(Plasma::Label::mousePressEvent(event));
emit(QLabel::mousePressEvent(event));
}

View File

@ -18,22 +18,22 @@
#ifndef CUSTOMLABEL_H
#define CUSTOMLABEL_H
#include <Plasma/Label>
#include <QLabel>
class AwesomeWidget;
class CustomLabel : public Plasma::Label
class CustomLabel : public QLabel
{
Q_OBJECT
public:
CustomLabel(AwesomeWidget *wid, const bool debugCmd);
CustomLabel(AwesomeWidget *wid, const bool debugCmd = false);
~CustomLabel();
void setPopupEnabled(const bool state);
protected:
void mousePressEvent(QGraphicsSceneMouseEvent *event);
void mousePressEvent(QMouseEvent *event);
private:
AwesomeWidget *widget;

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>700</width>
<height>594</height>
<height>592</height>
</rect>
</property>
<property name="sizePolicy">
@ -43,11 +43,11 @@
<x>0</x>
<y>0</y>
<width>684</width>
<height>578</height>
<height>576</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="5" column="0">
<item row="4" column="0">
<layout class="QHBoxLayout" name="layout_hdddev">
<item>
<widget class="QLabel" name="label_hdddev">
@ -80,7 +80,7 @@
</item>
</layout>
</item>
<item row="8" column="0">
<item row="7" column="0">
<layout class="QHBoxLayout" name="layout_mpdport">
<item>
<widget class="QLabel" name="label_mpdport">
@ -135,7 +135,7 @@
</item>
</layout>
</item>
<item row="4" column="0">
<item row="3" column="0">
<layout class="QHBoxLayout" name="layout_gpudev">
<item>
<widget class="QLabel" name="label_gpudev">
@ -188,7 +188,7 @@
</item>
</layout>
</item>
<item row="12" column="0">
<item row="11" column="0">
<spacer name="spacer_dataengine">
<property name="orientation">
<enum>Qt::Vertical</enum>
@ -201,7 +201,7 @@
</property>
</spacer>
</item>
<item row="6" column="0">
<item row="5" column="0">
<layout class="QHBoxLayout" name="layout_hddtempCmd">
<item>
<widget class="QLabel" name="label_hddtempCmd">
@ -225,7 +225,7 @@
</item>
</layout>
</item>
<item row="10" column="0">
<item row="9" column="0">
<layout class="QHBoxLayout" name="layout_playerSelect">
<item>
<widget class="QLabel" name="label_playerSelect">
@ -268,7 +268,7 @@
</item>
</layout>
</item>
<item row="7" column="0">
<item row="6" column="0">
<layout class="QHBoxLayout" name="layout_mpdaddress">
<item>
<widget class="QLabel" name="label_mpdaddress">
@ -292,7 +292,7 @@
</item>
</layout>
</item>
<item row="3" column="0">
<item row="2" column="0">
<layout class="QHBoxLayout" name="layout_desktopCmd">
<item>
<widget class="QLabel" name="label_desktopCmd">
@ -316,7 +316,7 @@
</item>
</layout>
</item>
<item row="9" column="0">
<item row="8" column="0">
<layout class="QVBoxLayout" name="layout_mpris">
<item>
<widget class="QLabel" name="label_mprisInfo">
@ -406,7 +406,7 @@
</item>
</layout>
</item>
<item row="11" column="0">
<item row="10" column="0">
<layout class="QVBoxLayout" name="layout_pkgCommand">
<item>
<widget class="QTableWidget" name="tableWidget_pkgCommand">
@ -440,7 +440,7 @@ del - remove item</string>
</item>
</layout>
</item>
<item row="2" column="0">
<item row="1" column="0">
<widget class="QTableWidget" name="tableWidget_customCommand">
<property name="contextMenuPolicy">
<enum>Qt::CustomContextMenu</enum>
@ -462,34 +462,10 @@ del - remove item</string>
</column>
</widget>
</item>
<item row="1" column="0">
<layout class="QHBoxLayout" name="layout_batdev">
<item>
<widget class="QLabel" name="label_batdev">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Battery device</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_batdev">
<property name="toolTip">
<string>&quot;/sys/class/power_supply/BAT0/capacity&quot; by default</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="0" column="0">
<layout class="QHBoxLayout" name="layout_acdev">
<layout class="QHBoxLayout" name="layout_acpi">
<item>
<widget class="QLabel" name="label_acdev">
<widget class="QLabel" name="label_acpi">
<property name="minimumSize">
<size>
<width>200</width>
@ -497,14 +473,14 @@ del - remove item</string>
</size>
</property>
<property name="text">
<string>AC device</string>
<string>ACPI path</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_acdev">
<widget class="QLineEdit" name="lineEdit_acpi">
<property name="toolTip">
<string>&quot;/sys/class/power_supply/AC/online&quot; by default</string>
<string>&quot;/sys/class/power_supply/&quot; by default</string>
</property>
</widget>
</item>

View File

@ -29,13 +29,13 @@ void AwesomeWidget::connectToEngine()
QRegExp regExp;
// battery
regExp = QRegExp(QString("(ac|bat)"));
regExp = QRegExp(QString("(ac|bat.*)"));
if ((foundKeys.indexOf(regExp) > -1) ||
(configuration[QString("batteryTooltip")].toInt() == 2))
extsysmonEngine->connectSource(QString("battery"),
this, configuration[QString("interval")].toInt());
// cpu
regExp = QRegExp(QString("cpu[0-9].*"));
regExp = QRegExp(QString("cpu(?!cl).*"));
if ((foundKeys.indexOf(regExp) > -1) ||
(configuration[QString("cpuTooltip")].toInt() == 2)) {
sysmonEngine->connectSource(QString("cpu/system/TotalLoad"),
@ -45,7 +45,7 @@ void AwesomeWidget::connectToEngine()
this, configuration[QString("interval")].toInt());
}
// cpuclock
regExp = QRegExp(QString("cpucl[0-9].*"));
regExp = QRegExp(QString("cpucl.*"));
if ((foundKeys.indexOf(regExp) > -1) ||
(configuration[QString("cpuclTooltip")].toInt() == 2)) {
sysmonEngine->connectSource(QString("cpu/system/AverageClock"),
@ -73,6 +73,12 @@ void AwesomeWidget::connectToEngine()
sysmonEngine->connectSource(configuration[QString("disk")].split(QString("@@"))[i] + QString("/Rate/wblk"),
this, configuration[QString("interval")].toInt());
}
// fan
regExp = QRegExp(QString("fan.*"));
if (foundKeys.indexOf(regExp) > -1)
for (int i=0; i<configuration[QString("fanDevice")].split(QString("@@")).count(); i++)
sysmonEngine->connectSource(configuration[QString("fanDevice")].split(QString("@@"))[i],
this, configuration[QString("interval")].toInt());
// gpu
regExp = QRegExp(QString("gpu"));
if (foundKeys.indexOf(regExp) > -1)
@ -182,19 +188,23 @@ void AwesomeWidget::dataUpdated(const QString &sourceName, const Plasma::DataEng
if (data.keys().isEmpty()) return;
if (sourceName == QString("battery")) {
if (data[QString("ac")].toBool())
values[QString("ac")] = configuration[QString("acOnline")];
else
values[QString("ac")] = configuration[QString("acOffline")];
values[QString("bat")] = QString("%1").arg(data[QString("bat")].toFloat(), 3, 'f', 0);
for (int i=0; i<data.keys().count(); i++) {
if (data.keys()[i] == QString("ac")) {
if (data[QString("ac")].toBool())
values[QString("ac")] = configuration[QString("acOnline")];
else
values[QString("ac")] = configuration[QString("acOffline")];
} else
values[data.keys()[i]] = QString("%1").arg(data[data.keys()[i]].toFloat(), 3, 'f', 0);
}
if ((configuration[QString("batteryTooltip")].toInt() == 2) &&
(!isnan(data[QString("bat")].toFloat()))) {
(!isnan(data[QString("bat0")].toFloat()))) {
if (tooltipValues[QString("bat")].count() > configuration[QString("tooltipNumber")].toInt())
tooltipValues[QString("bat")].takeFirst();
if (data[QString("ac")].toBool())
tooltipValues[QString("bat")].append(data[QString("bat")].toFloat());
tooltipValues[QString("bat0")].append(data[QString("bat0")].toFloat());
else
tooltipValues[QString("bat")].append(-data[QString("bat")].toFloat());
tooltipValues[QString("bat0")].append(-data[QString("bat0")].toFloat());
}
} else if (sourceName == QString("cpu/system/TotalLoad")) {
values[QString("cpu")] = QString("%1").arg(data[QString("value")].toFloat(), 5, 'f', 1);
@ -384,11 +394,19 @@ void AwesomeWidget::dataUpdated(const QString &sourceName, const Plasma::DataEng
tooltipValues[QString("swap")].append(values[QString("swap")].toFloat());
}
} else if (sourceName.indexOf(tempRegExp) > -1) {
for (int i=0; i<counts[QString("temp")]; i++)
if (sourceName == configuration[QString("tempDevice")].split(QString("@@"))[i]) {
values[QString("temp") + QString::number(i)] = QString("%1").arg(getTemp(data[QString("value")].toFloat()), 4, 'f', 1);
break;
}
if (data[QString("units")].toString() == QString("rpm")) {
for (int i=0; i<counts[QString("fan")]; i++)
if (sourceName == configuration[QString("fanDevice")].split(QString("@@"))[i]) {
values[QString("fan") + QString::number(i)] = QString("%1").arg(data[QString("value")].toFloat(), 4, 'f', 1);
break;
}
} else {
for (int i=0; i<counts[QString("temp")]; i++)
if (sourceName == configuration[QString("tempDevice")].split(QString("@@"))[i]) {
values[QString("temp") + QString::number(i)] = QString("%1").arg(getTemp(data[QString("value")].toFloat()), 4, 'f', 1);
break;
}
}
} else if (sourceName == QString("Local")) {
values[QString("time")] = data[QString("DateTime")].toDateTime().toString(Qt::TextDate);
values[QString("isotime")] = data[QString("DateTime")].toDateTime().toString(Qt::ISODate);
@ -428,7 +446,7 @@ void AwesomeWidget::disconnectFromEngine()
(configuration[QString("batteryTooltip")].toInt() == 2))
extsysmonEngine->disconnectSource(QString("battery"), this);
// cpu
regExp = QRegExp(QString("cpu.*"));
regExp = QRegExp(QString("cpu(?!cl).*"));
if ((foundKeys.indexOf(regExp) > -1) ||
(configuration[QString("cpuTooltip")].toInt() == 2)) {
sysmonEngine->disconnectSource(QString("cpu/system/TotalLoad"), this);
@ -458,6 +476,11 @@ void AwesomeWidget::disconnectFromEngine()
sysmonEngine->disconnectSource(configuration[QString("disk")].split(QString("@@"))[i] + QString("/Rate/rblk"), this);
sysmonEngine->disconnectSource(configuration[QString("disk")].split(QString("@@"))[i] + QString("/Rate/wblk"), this);
}
// fan
regExp = QRegExp(QString("fan.*"));
if (foundKeys.indexOf(regExp) > -1)
for (int i=0; i<configuration[QString("fanDevice")].split(QString("@@")).count(); i++)
sysmonEngine->disconnectSource(configuration[QString("fanDevice")].split(QString("@@"))[i], this);
// gpu
regExp = QRegExp(QString("gpu"));
if (foundKeys.indexOf(regExp) > -1)

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 01:52+0400\n"
"PO-Revision-Date: 2014-09-05 11:14+0400\n"
"POT-Creation-Date: 2014-09-21 20:18+0400\n"
"PO-Revision-Date: 2014-09-21 20:19+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: English <kde-russian@lists.kde.ru>\n"
"Language: ru\n"
@ -18,55 +18,55 @@ msgstr ""
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 1.5\n"
#: awesome-widget.cpp:77
#: awesome-widget.cpp:78
msgid "Run ksysguard"
msgstr "Run ksysguard"
#: awesome-widget.cpp:80
#: awesome-widget.cpp:81
msgid "Show README"
msgstr "Show README"
#: awesome-widget.cpp:83
#: awesome-widget.cpp:84
msgid "Update text"
msgstr "Update text"
#: configuration.cpp:319 po/rc.cpp:145 rc.cpp:145
#: configuration.cpp:362 po/rc.cpp:151 rc.cpp:151
msgid "Custom command"
msgstr "Custom command"
#: configuration.cpp:349 po/rc.cpp:135 rc.cpp:135
#: configuration.cpp:392 po/rc.cpp:141 rc.cpp:141
msgid "Package manager"
msgstr "Package manager"
#: configuration.cpp:350 po/rc.cpp:138 rc.cpp:138
#: configuration.cpp:393 po/rc.cpp:144 rc.cpp:144
msgid "Null lines"
msgstr "Null lines"
#: configuration.cpp:362
#: configuration.cpp:405
msgid "Widget"
msgstr "Widget"
#: configuration.cpp:363
#: configuration.cpp:406
msgid "Advanced"
msgstr "Advanced"
#: configuration.cpp:364
#: configuration.cpp:407
msgid "Tooltip"
msgstr "Tooltip"
#: configuration.cpp:365
#: configuration.cpp:408
msgid "Appearance"
msgstr "Appearance"
#: configuration.cpp:366
#: configuration.cpp:409
msgid "DataEngine"
msgstr "DataEngine"
#: configuration.cpp:645 configuration.cpp:659
#: configuration.cpp:697 configuration.cpp:711
msgid "Remove"
msgstr "Remove"
#: configuration.cpp:706
#: configuration.cpp:766
msgid "Select font"
msgstr "Select font"
@ -146,108 +146,112 @@ msgstr "Temperature units"
msgid "Temperature devices"
msgstr "Temperature devices"
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 rc.cpp:47 rc.cpp:53
#: rc.cpp:59 rc.cpp:65
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 po/rc.cpp:71 rc.cpp:47
#: rc.cpp:53 rc.cpp:59 rc.cpp:65 rc.cpp:71
msgid "Editable"
msgstr "Editable"
#: po/rc.cpp:50 rc.cpp:50
msgid "Fan devices"
msgstr "Fan devices"
#: po/rc.cpp:56 rc.cpp:56
msgid "Mount points"
msgstr "Mount points"
#: po/rc.cpp:56 rc.cpp:56
#: po/rc.cpp:62 rc.cpp:62
msgid "HDD devices (speed)"
msgstr "HDD (speed)"
#: po/rc.cpp:62 rc.cpp:62
#: po/rc.cpp:68 rc.cpp:68
msgid "HDD devices (temp)"
msgstr "HDD (temp)"
#: po/rc.cpp:68 rc.cpp:68
#: po/rc.cpp:74 rc.cpp:74
msgid "Disable auto select device and set specified device"
msgstr "Disable auto select device and set specified device"
#: po/rc.cpp:71 rc.cpp:71
#: po/rc.cpp:77 rc.cpp:77
msgid "Set network device"
msgstr "Set network device"
#: po/rc.cpp:74 rc.cpp:74
#: po/rc.cpp:80 rc.cpp:80
msgid "AC online tag"
msgstr "AC online tag"
#: po/rc.cpp:77 rc.cpp:77
#: po/rc.cpp:83 rc.cpp:83
msgid "Line, which returns when AC is online"
msgstr "Line, which returns when AC is online"
#: po/rc.cpp:80 rc.cpp:80
#: po/rc.cpp:86 rc.cpp:86
msgid "AC offline tag"
msgstr "AC offline tag"
#: po/rc.cpp:83 rc.cpp:83
#: po/rc.cpp:89 rc.cpp:89
msgid "Line, which returns when AC is offline"
msgstr "Line, which returns when AC is offline"
#: po/rc.cpp:86 rc.cpp:86
#: po/rc.cpp:92 rc.cpp:92
msgid "Time interval"
msgstr "Time interval"
#: po/rc.cpp:89 po/rc.cpp:196 rc.cpp:89 rc.cpp:196
#: po/rc.cpp:95 po/rc.cpp:196 rc.cpp:95 rc.cpp:196
msgid "Font"
msgstr "Font"
#: po/rc.cpp:92 rc.cpp:92
#: po/rc.cpp:98 rc.cpp:98
msgid "Font size"
msgstr "Font size"
#: po/rc.cpp:95 rc.cpp:95
#: po/rc.cpp:101 rc.cpp:101
msgid "Font color"
msgstr "Font color"
#: po/rc.cpp:98 rc.cpp:98
#: po/rc.cpp:104 rc.cpp:104
msgid "Font style"
msgstr "Font style"
#: po/rc.cpp:101 rc.cpp:101
#: po/rc.cpp:107 rc.cpp:107
msgid "Font weight"
msgstr "Font weight"
#: po/rc.cpp:104 rc.cpp:104
#: po/rc.cpp:110 rc.cpp:110
msgid "HDD"
msgstr "HDD"
#: po/rc.cpp:107 rc.cpp:107
#: po/rc.cpp:113 rc.cpp:113
msgid "MPD port"
msgstr "MPD port"
#: po/rc.cpp:110 rc.cpp:110
#: po/rc.cpp:116 rc.cpp:116
msgid "GPU device"
msgstr "GPU device"
#: po/rc.cpp:113 rc.cpp:113
#: po/rc.cpp:119 rc.cpp:119
msgid "hddtemp cmd"
msgstr "hddtemp cmd"
#: po/rc.cpp:116 rc.cpp:116
#: po/rc.cpp:122 rc.cpp:122
msgid "Music player"
msgstr "Music player"
#: po/rc.cpp:119 rc.cpp:119
#: po/rc.cpp:125 rc.cpp:125
msgid "MPD address"
msgstr "MPD address"
#: po/rc.cpp:122 rc.cpp:122
#: po/rc.cpp:128 rc.cpp:128
msgid "Desktop check cmd"
msgstr "Desktop check cmd"
#: po/rc.cpp:125 rc.cpp:125
#: po/rc.cpp:131 rc.cpp:131
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgstr "<b>NOTE:</b> Player DBus interface should be an active"
#: po/rc.cpp:128 rc.cpp:128
#: po/rc.cpp:134 rc.cpp:134
msgid "MPRIS player name"
msgstr "MPRIS player name"
#: po/rc.cpp:131 po/rc.cpp:141 rc.cpp:131 rc.cpp:141
#: po/rc.cpp:137 po/rc.cpp:147 rc.cpp:137 rc.cpp:147
msgid ""
"Editable\n"
"del - remove item"
@ -255,21 +259,13 @@ msgstr ""
"Editable\n"
"del - remove item"
#: po/rc.cpp:148 rc.cpp:148
msgid "Battery device"
msgstr "Battery device"
#: po/rc.cpp:151 rc.cpp:151
msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
msgstr "\"/sys/class/power_supply/BAT0/capacity\" by default"
#: po/rc.cpp:154 rc.cpp:154
msgid "AC device"
msgstr "AC device"
msgid "ACPI path"
msgstr "ACPI path"
#: po/rc.cpp:157 rc.cpp:157
msgid "\"/sys/class/power_supply/AC/online\" by default"
msgstr "\"/sys/class/power_supply/AC/online\" by default"
msgid "\"/sys/class/power_supply/\" by default"
msgstr "\"/sys/class/power_supply/\" by default"
#: po/rc.cpp:160 rc.cpp:160
msgid ""
@ -353,6 +349,12 @@ msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "esalexeev@gmail.com"
#~ msgid "Battery device"
#~ msgstr "Battery device"
#~ msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
#~ msgstr "\"/sys/class/power_supply/BAT0/capacity\" by default"
#~ msgid "Vertical layout"
#~ msgstr "Vertical layout"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 01:52+0400\n"
"POT-Creation-Date: 2014-09-21 20:18+0400\n"
"PO-Revision-Date: 2014-09-05 11:18+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: Spanish <kde-russian@lists.kde.ru>\n"
@ -18,55 +18,55 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Lokalize 1.5\n"
#: awesome-widget.cpp:77
#: awesome-widget.cpp:78
msgid "Run ksysguard"
msgstr "Ejecutar ksysguard"
#: awesome-widget.cpp:80
#: awesome-widget.cpp:81
msgid "Show README"
msgstr "Mostrar el README"
#: awesome-widget.cpp:83
#: awesome-widget.cpp:84
msgid "Update text"
msgstr "Actualizar texto"
#: configuration.cpp:319 po/rc.cpp:145 rc.cpp:145
#: configuration.cpp:362 po/rc.cpp:151 rc.cpp:151
msgid "Custom command"
msgstr "Comando personalizado"
#: configuration.cpp:349 po/rc.cpp:135 rc.cpp:135
#: configuration.cpp:392 po/rc.cpp:141 rc.cpp:141
msgid "Package manager"
msgstr "Gestor de paquetes"
#: configuration.cpp:350 po/rc.cpp:138 rc.cpp:138
#: configuration.cpp:393 po/rc.cpp:144 rc.cpp:144
msgid "Null lines"
msgstr "Número de líneas nulas"
#: configuration.cpp:362
#: configuration.cpp:405
msgid "Widget"
msgstr "Widget"
#: configuration.cpp:363
#: configuration.cpp:406
msgid "Advanced"
msgstr "Avanzado"
#: configuration.cpp:364
#: configuration.cpp:407
msgid "Tooltip"
msgstr "Ventana emergente"
#: configuration.cpp:365
#: configuration.cpp:408
msgid "Appearance"
msgstr "Apariencia"
#: configuration.cpp:366
#: configuration.cpp:409
msgid "DataEngine"
msgstr "DataEngine"
#: configuration.cpp:645 configuration.cpp:659
#: configuration.cpp:697 configuration.cpp:711
msgid "Remove"
msgstr "Eliminar"
#: configuration.cpp:706
#: configuration.cpp:766
msgid "Select font"
msgstr ""
@ -146,108 +146,113 @@ msgstr "Unidades de temperatura"
msgid "Temperature devices"
msgstr "Dispositivos de temperatura"
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 rc.cpp:47 rc.cpp:53
#: rc.cpp:59 rc.cpp:65
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 po/rc.cpp:71 rc.cpp:47
#: rc.cpp:53 rc.cpp:59 rc.cpp:65 rc.cpp:71
msgid "Editable"
msgstr "Editable"
#: po/rc.cpp:50 rc.cpp:50
#, fuzzy
msgid "Fan devices"
msgstr "Dispositivo de alimentación"
#: po/rc.cpp:56 rc.cpp:56
msgid "Mount points"
msgstr "Puntos de montaje"
#: po/rc.cpp:56 rc.cpp:56
#: po/rc.cpp:62 rc.cpp:62
msgid "HDD devices (speed)"
msgstr "Disco duro (velocidad)"
#: po/rc.cpp:62 rc.cpp:62
#: po/rc.cpp:68 rc.cpp:68
msgid "HDD devices (temp)"
msgstr "Disco duro (temperatura)"
#: po/rc.cpp:68 rc.cpp:68
#: po/rc.cpp:74 rc.cpp:74
msgid "Disable auto select device and set specified device"
msgstr "Inhabilitar selección automática del dispositivo y especificar uno"
#: po/rc.cpp:71 rc.cpp:71
#: po/rc.cpp:77 rc.cpp:77
msgid "Set network device"
msgstr "Establecer dispositivo de red"
#: po/rc.cpp:74 rc.cpp:74
#: po/rc.cpp:80 rc.cpp:80
msgid "AC online tag"
msgstr "Etiqueta para alimentación conectada"
#: po/rc.cpp:77 rc.cpp:77
#: po/rc.cpp:83 rc.cpp:83
msgid "Line, which returns when AC is online"
msgstr "Línea que devuelve si la alimentación está conectada"
#: po/rc.cpp:80 rc.cpp:80
#: po/rc.cpp:86 rc.cpp:86
msgid "AC offline tag"
msgstr "Etiqueta para la alimentación desconectada"
#: po/rc.cpp:83 rc.cpp:83
#: po/rc.cpp:89 rc.cpp:89
msgid "Line, which returns when AC is offline"
msgstr "Línea que devuelve si la alimentación está desconectada"
#: po/rc.cpp:86 rc.cpp:86
#: po/rc.cpp:92 rc.cpp:92
msgid "Time interval"
msgstr "Intervalo de tiempo"
#: po/rc.cpp:89 po/rc.cpp:196 rc.cpp:89 rc.cpp:196
#: po/rc.cpp:95 po/rc.cpp:196 rc.cpp:95 rc.cpp:196
msgid "Font"
msgstr "Fuente"
#: po/rc.cpp:92 rc.cpp:92
#: po/rc.cpp:98 rc.cpp:98
msgid "Font size"
msgstr "Tamaño de fuente"
#: po/rc.cpp:95 rc.cpp:95
#: po/rc.cpp:101 rc.cpp:101
msgid "Font color"
msgstr "Color de fuente"
#: po/rc.cpp:98 rc.cpp:98
#: po/rc.cpp:104 rc.cpp:104
msgid "Font style"
msgstr "Estilo de fuente"
#: po/rc.cpp:101 rc.cpp:101
#: po/rc.cpp:107 rc.cpp:107
msgid "Font weight"
msgstr "Grosor de la fuente"
#: po/rc.cpp:104 rc.cpp:104
#: po/rc.cpp:110 rc.cpp:110
msgid "HDD"
msgstr "Disco duro"
#: po/rc.cpp:107 rc.cpp:107
#: po/rc.cpp:113 rc.cpp:113
msgid "MPD port"
msgstr "Puerto de MPD"
#: po/rc.cpp:110 rc.cpp:110
#: po/rc.cpp:116 rc.cpp:116
msgid "GPU device"
msgstr "Dispositivo de GPU"
#: po/rc.cpp:113 rc.cpp:113
#: po/rc.cpp:119 rc.cpp:119
msgid "hddtemp cmd"
msgstr "Comando hddtemp"
#: po/rc.cpp:116 rc.cpp:116
#: po/rc.cpp:122 rc.cpp:122
msgid "Music player"
msgstr "Reproductor de música"
#: po/rc.cpp:119 rc.cpp:119
#: po/rc.cpp:125 rc.cpp:125
msgid "MPD address"
msgstr "Dirección de MPD"
#: po/rc.cpp:122 rc.cpp:122
#: po/rc.cpp:128 rc.cpp:128
msgid "Desktop check cmd"
msgstr ""
#: po/rc.cpp:125 rc.cpp:125
#: po/rc.cpp:131 rc.cpp:131
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgstr ""
#: po/rc.cpp:128 rc.cpp:128
#: po/rc.cpp:134 rc.cpp:134
msgid "MPRIS player name"
msgstr ""
#: po/rc.cpp:131 po/rc.cpp:141 rc.cpp:131 rc.cpp:141
#: po/rc.cpp:137 po/rc.cpp:147 rc.cpp:137 rc.cpp:147
msgid ""
"Editable\n"
"del - remove item"
@ -255,20 +260,13 @@ msgstr ""
"Editable\n"
"del - eliminar elemento"
#: po/rc.cpp:148 rc.cpp:148
msgid "Battery device"
msgstr "Dispositivo de batería"
#: po/rc.cpp:151 rc.cpp:151
msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
msgstr "\"/sys/class/power_supply/BAT0/capacity\" por defecto"
#: po/rc.cpp:154 rc.cpp:154
msgid "AC device"
msgstr "Dispositivo de alimentación"
msgid "ACPI path"
msgstr ""
#: po/rc.cpp:157 rc.cpp:157
msgid "\"/sys/class/power_supply/AC/online\" by default"
#, fuzzy
msgid "\"/sys/class/power_supply/\" by default"
msgstr "\"/sys/class/power_supply/AC/online\" por defecto"
#: po/rc.cpp:160 rc.cpp:160
@ -355,6 +353,12 @@ msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "Tus correos"
#~ msgid "Battery device"
#~ msgstr "Dispositivo de batería"
#~ msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
#~ msgstr "\"/sys/class/power_supply/BAT0/capacity\" por defecto"
#~ msgid "Vertical layout"
#~ msgstr "Orientación vertical"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 01:52+0400\n"
"POT-Creation-Date: 2014-09-21 20:18+0400\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"
@ -19,55 +19,55 @@ msgstr ""
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 1.5\n"
#: awesome-widget.cpp:77
#: awesome-widget.cpp:78
msgid "Run ksysguard"
msgstr "Lancer ksysguard"
#: awesome-widget.cpp:80
#: awesome-widget.cpp:81
msgid "Show README"
msgstr "Voir le README"
#: awesome-widget.cpp:83
#: awesome-widget.cpp:84
msgid "Update text"
msgstr "Mettre à jour le texte"
#: configuration.cpp:319 po/rc.cpp:145 rc.cpp:145
#: configuration.cpp:362 po/rc.cpp:151 rc.cpp:151
msgid "Custom command"
msgstr "Commande personnalisée"
#: configuration.cpp:349 po/rc.cpp:135 rc.cpp:135
#: configuration.cpp:392 po/rc.cpp:141 rc.cpp:141
msgid "Package manager"
msgstr "Gestionnaire de paquets"
#: configuration.cpp:350 po/rc.cpp:138 rc.cpp:138
#: configuration.cpp:393 po/rc.cpp:144 rc.cpp:144
msgid "Null lines"
msgstr "Nombre d'éléments pour les conseils"
#: configuration.cpp:362
#: configuration.cpp:405
msgid "Widget"
msgstr "Widget"
#: configuration.cpp:363
#: configuration.cpp:406
msgid "Advanced"
msgstr "Avancé"
#: configuration.cpp:364
#: configuration.cpp:407
msgid "Tooltip"
msgstr "Conseil"
#: configuration.cpp:365
#: configuration.cpp:408
msgid "Appearance"
msgstr "Apparence"
#: configuration.cpp:366
#: configuration.cpp:409
msgid "DataEngine"
msgstr "Moteur de données"
#: configuration.cpp:645 configuration.cpp:659
#: configuration.cpp:697 configuration.cpp:711
msgid "Remove"
msgstr "Supprimer"
#: configuration.cpp:706
#: configuration.cpp:766
msgid "Select font"
msgstr ""
@ -147,110 +147,115 @@ msgstr "Unités de température"
msgid "Temperature devices"
msgstr "Temperature des périphériques"
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 rc.cpp:47 rc.cpp:53
#: rc.cpp:59 rc.cpp:65
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 po/rc.cpp:71 rc.cpp:47
#: rc.cpp:53 rc.cpp:59 rc.cpp:65 rc.cpp:71
msgid "Editable"
msgstr "Modifiable"
#: po/rc.cpp:50 rc.cpp:50
#, fuzzy
msgid "Fan devices"
msgstr "Périphérique d'alimentation"
#: po/rc.cpp:56 rc.cpp:56
msgid "Mount points"
msgstr "Points de montage"
#: po/rc.cpp:56 rc.cpp:56
#: po/rc.cpp:62 rc.cpp:62
msgid "HDD devices (speed)"
msgstr "Périphériques HDD (la vitesse)"
#: po/rc.cpp:62 rc.cpp:62
#: po/rc.cpp:68 rc.cpp:68
msgid "HDD devices (temp)"
msgstr "Périphériques HDD (température)"
#: po/rc.cpp:68 rc.cpp:68
#: po/rc.cpp:74 rc.cpp:74
msgid "Disable auto select device and set specified device"
msgstr ""
"Désactiver la sélection automatique de périphériques et le sélectionner "
"manuellement"
#: po/rc.cpp:71 rc.cpp:71
#: po/rc.cpp:77 rc.cpp:77
msgid "Set network device"
msgstr "Sélectionner le périphérique réseau"
#: po/rc.cpp:74 rc.cpp:74
#: po/rc.cpp:80 rc.cpp:80
msgid "AC online tag"
msgstr "Tag alimentation branchée"
#: po/rc.cpp:77 rc.cpp:77
#: po/rc.cpp:83 rc.cpp:83
msgid "Line, which returns when AC is online"
msgstr "Ligne qui est renvoyée lorsque l'alimentation est branchée"
#: po/rc.cpp:80 rc.cpp:80
#: po/rc.cpp:86 rc.cpp:86
msgid "AC offline tag"
msgstr "Tag alimentation débranchée"
#: po/rc.cpp:83 rc.cpp:83
#: po/rc.cpp:89 rc.cpp:89
msgid "Line, which returns when AC is offline"
msgstr "Ligne, qui est renvoyée lorsque l'alimentation est débranchée"
#: po/rc.cpp:86 rc.cpp:86
#: po/rc.cpp:92 rc.cpp:92
msgid "Time interval"
msgstr "Intervalle"
#: po/rc.cpp:89 po/rc.cpp:196 rc.cpp:89 rc.cpp:196
#: po/rc.cpp:95 po/rc.cpp:196 rc.cpp:95 rc.cpp:196
msgid "Font"
msgstr "Police"
#: po/rc.cpp:92 rc.cpp:92
#: po/rc.cpp:98 rc.cpp:98
msgid "Font size"
msgstr "Taille de la police"
#: po/rc.cpp:95 rc.cpp:95
#: po/rc.cpp:101 rc.cpp:101
msgid "Font color"
msgstr "Couleur de la police"
#: po/rc.cpp:98 rc.cpp:98
#: po/rc.cpp:104 rc.cpp:104
msgid "Font style"
msgstr "Style de la police"
#: po/rc.cpp:101 rc.cpp:101
#: po/rc.cpp:107 rc.cpp:107
msgid "Font weight"
msgstr "Épaisseur de la police"
#: po/rc.cpp:104 rc.cpp:104
#: po/rc.cpp:110 rc.cpp:110
msgid "HDD"
msgstr "Disque dur"
#: po/rc.cpp:107 rc.cpp:107
#: po/rc.cpp:113 rc.cpp:113
msgid "MPD port"
msgstr "Port MPD"
#: po/rc.cpp:110 rc.cpp:110
#: po/rc.cpp:116 rc.cpp:116
msgid "GPU device"
msgstr "Périphérique graphique"
#: po/rc.cpp:113 rc.cpp:113
#: po/rc.cpp:119 rc.cpp:119
msgid "hddtemp cmd"
msgstr "Commande de température HDD"
#: po/rc.cpp:116 rc.cpp:116
#: po/rc.cpp:122 rc.cpp:122
msgid "Music player"
msgstr "Lecteur audio"
#: po/rc.cpp:119 rc.cpp:119
#: po/rc.cpp:125 rc.cpp:125
msgid "MPD address"
msgstr "Adresse MPD"
#: po/rc.cpp:122 rc.cpp:122
#: po/rc.cpp:128 rc.cpp:128
msgid "Desktop check cmd"
msgstr ""
#: po/rc.cpp:125 rc.cpp:125
#: po/rc.cpp:131 rc.cpp:131
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgstr ""
#: po/rc.cpp:128 rc.cpp:128
#: po/rc.cpp:134 rc.cpp:134
msgid "MPRIS player name"
msgstr ""
#: po/rc.cpp:131 po/rc.cpp:141 rc.cpp:131 rc.cpp:141
#: po/rc.cpp:137 po/rc.cpp:147 rc.cpp:137 rc.cpp:147
msgid ""
"Editable\n"
"del - remove item"
@ -258,20 +263,13 @@ msgstr ""
"Modifiable\n"
"del - supprimer un élément"
#: po/rc.cpp:148 rc.cpp:148
msgid "Battery device"
msgstr "Batterie"
#: po/rc.cpp:151 rc.cpp:151
msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
msgstr "\"/sys/class/power_supply/BAT0/capacity\" par défaut"
#: po/rc.cpp:154 rc.cpp:154
msgid "AC device"
msgstr "Périphérique d'alimentation"
msgid "ACPI path"
msgstr ""
#: po/rc.cpp:157 rc.cpp:157
msgid "\"/sys/class/power_supply/AC/online\" by default"
#, fuzzy
msgid "\"/sys/class/power_supply/\" by default"
msgstr "\"/sys/class/power_supply/AC/online\" par défaut"
#: po/rc.cpp:160 rc.cpp:160
@ -358,6 +356,12 @@ msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "esalexeev@gmail.com"
#~ msgid "Battery device"
#~ msgstr "Batterie"
#~ msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
#~ msgstr "\"/sys/class/power_supply/BAT0/capacity\" par défaut"
#~ msgid "Vertical layout"
#~ msgstr "Positionnement vertical"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 01:52+0400\n"
"POT-Creation-Date: 2014-09-21 20:18+0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -17,55 +17,55 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: awesome-widget.cpp:77
#: awesome-widget.cpp:78
msgid "Run ksysguard"
msgstr ""
#: awesome-widget.cpp:80
#: awesome-widget.cpp:81
msgid "Show README"
msgstr ""
#: awesome-widget.cpp:83
#: awesome-widget.cpp:84
msgid "Update text"
msgstr ""
#: configuration.cpp:319 po/rc.cpp:145 rc.cpp:145
#: configuration.cpp:362 po/rc.cpp:151 rc.cpp:151
msgid "Custom command"
msgstr ""
#: configuration.cpp:349 po/rc.cpp:135 rc.cpp:135
#: configuration.cpp:392 po/rc.cpp:141 rc.cpp:141
msgid "Package manager"
msgstr ""
#: configuration.cpp:350 po/rc.cpp:138 rc.cpp:138
#: configuration.cpp:393 po/rc.cpp:144 rc.cpp:144
msgid "Null lines"
msgstr ""
#: configuration.cpp:362
#: configuration.cpp:405
msgid "Widget"
msgstr ""
#: configuration.cpp:363
#: configuration.cpp:406
msgid "Advanced"
msgstr ""
#: configuration.cpp:364
#: configuration.cpp:407
msgid "Tooltip"
msgstr ""
#: configuration.cpp:365
#: configuration.cpp:408
msgid "Appearance"
msgstr ""
#: configuration.cpp:366
#: configuration.cpp:409
msgid "DataEngine"
msgstr ""
#: configuration.cpp:645 configuration.cpp:659
#: configuration.cpp:697 configuration.cpp:711
msgid "Remove"
msgstr ""
#: configuration.cpp:706
#: configuration.cpp:766
msgid "Select font"
msgstr ""
@ -123,127 +123,123 @@ msgstr ""
msgid "Temperature devices"
msgstr ""
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 rc.cpp:47 rc.cpp:53
#: rc.cpp:59 rc.cpp:65
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 po/rc.cpp:71 rc.cpp:47
#: rc.cpp:53 rc.cpp:59 rc.cpp:65 rc.cpp:71
msgid "Editable"
msgstr ""
#: po/rc.cpp:50 rc.cpp:50
msgid "Mount points"
msgid "Fan devices"
msgstr ""
#: po/rc.cpp:56 rc.cpp:56
msgid "HDD devices (speed)"
msgid "Mount points"
msgstr ""
#: po/rc.cpp:62 rc.cpp:62
msgid "HDD devices (temp)"
msgid "HDD devices (speed)"
msgstr ""
#: po/rc.cpp:68 rc.cpp:68
msgid "Disable auto select device and set specified device"
msgstr ""
#: po/rc.cpp:71 rc.cpp:71
msgid "Set network device"
msgid "HDD devices (temp)"
msgstr ""
#: po/rc.cpp:74 rc.cpp:74
msgid "AC online tag"
msgid "Disable auto select device and set specified device"
msgstr ""
#: po/rc.cpp:77 rc.cpp:77
msgid "Line, which returns when AC is online"
msgid "Set network device"
msgstr ""
#: po/rc.cpp:80 rc.cpp:80
msgid "AC offline tag"
msgid "AC online tag"
msgstr ""
#: po/rc.cpp:83 rc.cpp:83
msgid "Line, which returns when AC is offline"
msgid "Line, which returns when AC is online"
msgstr ""
#: po/rc.cpp:86 rc.cpp:86
msgid "Time interval"
msgid "AC offline tag"
msgstr ""
#: po/rc.cpp:89 po/rc.cpp:196 rc.cpp:89 rc.cpp:196
msgid "Font"
#: po/rc.cpp:89 rc.cpp:89
msgid "Line, which returns when AC is offline"
msgstr ""
#: po/rc.cpp:92 rc.cpp:92
msgid "Font size"
msgid "Time interval"
msgstr ""
#: po/rc.cpp:95 rc.cpp:95
msgid "Font color"
#: po/rc.cpp:95 po/rc.cpp:196 rc.cpp:95 rc.cpp:196
msgid "Font"
msgstr ""
#: po/rc.cpp:98 rc.cpp:98
msgid "Font style"
msgid "Font size"
msgstr ""
#: po/rc.cpp:101 rc.cpp:101
msgid "Font weight"
msgid "Font color"
msgstr ""
#: po/rc.cpp:104 rc.cpp:104
msgid "HDD"
msgid "Font style"
msgstr ""
#: po/rc.cpp:107 rc.cpp:107
msgid "MPD port"
msgid "Font weight"
msgstr ""
#: po/rc.cpp:110 rc.cpp:110
msgid "GPU device"
msgid "HDD"
msgstr ""
#: po/rc.cpp:113 rc.cpp:113
msgid "hddtemp cmd"
msgid "MPD port"
msgstr ""
#: po/rc.cpp:116 rc.cpp:116
msgid "Music player"
msgid "GPU device"
msgstr ""
#: po/rc.cpp:119 rc.cpp:119
msgid "MPD address"
msgid "hddtemp cmd"
msgstr ""
#: po/rc.cpp:122 rc.cpp:122
msgid "Desktop check cmd"
msgid "Music player"
msgstr ""
#: po/rc.cpp:125 rc.cpp:125
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgid "MPD address"
msgstr ""
#: po/rc.cpp:128 rc.cpp:128
msgid "Desktop check cmd"
msgstr ""
#: po/rc.cpp:131 rc.cpp:131
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgstr ""
#: po/rc.cpp:134 rc.cpp:134
msgid "MPRIS player name"
msgstr ""
#: po/rc.cpp:131 po/rc.cpp:141 rc.cpp:131 rc.cpp:141
#: po/rc.cpp:137 po/rc.cpp:147 rc.cpp:137 rc.cpp:147
msgid ""
"Editable\n"
"del - remove item"
msgstr ""
#: po/rc.cpp:148 rc.cpp:148
msgid "Battery device"
msgstr ""
#: po/rc.cpp:151 rc.cpp:151
msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
msgstr ""
#: po/rc.cpp:154 rc.cpp:154
msgid "AC device"
msgid "ACPI path"
msgstr ""
#: po/rc.cpp:157 rc.cpp:157
msgid "\"/sys/class/power_supply/AC/online\" by default"
msgid "\"/sys/class/power_supply/\" by default"
msgstr ""
#: po/rc.cpp:160 rc.cpp:160

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 01:52+0400\n"
"POT-Creation-Date: 2014-09-21 20:18+0400\n"
"PO-Revision-Date: 2014-09-05 11:21+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: Brazilian Portuguese <kde-russian@lists.kde.ru>\n"
@ -17,55 +17,55 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Lokalize 1.5\n"
#: awesome-widget.cpp:77
#: awesome-widget.cpp:78
msgid "Run ksysguard"
msgstr "Abrir ksysguard"
#: awesome-widget.cpp:80
#: awesome-widget.cpp:81
msgid "Show README"
msgstr "Mostrar README"
#: awesome-widget.cpp:83
#: awesome-widget.cpp:84
msgid "Update text"
msgstr "Atualizar texto"
#: configuration.cpp:319 po/rc.cpp:145 rc.cpp:145
#: configuration.cpp:362 po/rc.cpp:151 rc.cpp:151
msgid "Custom command"
msgstr "Comando personalizado"
#: configuration.cpp:349 po/rc.cpp:135 rc.cpp:135
#: configuration.cpp:392 po/rc.cpp:141 rc.cpp:141
msgid "Package manager"
msgstr "Gerenciador de pacotes"
#: configuration.cpp:350 po/rc.cpp:138 rc.cpp:138
#: configuration.cpp:393 po/rc.cpp:144 rc.cpp:144
msgid "Null lines"
msgstr "Número de valores para dicas de contexto"
#: configuration.cpp:362
#: configuration.cpp:405
msgid "Widget"
msgstr "Widget"
#: configuration.cpp:363
#: configuration.cpp:406
msgid "Advanced"
msgstr "Avançado"
#: configuration.cpp:364
#: configuration.cpp:407
msgid "Tooltip"
msgstr "Dica de contexto"
#: configuration.cpp:365
#: configuration.cpp:408
msgid "Appearance"
msgstr "Aparência"
#: configuration.cpp:366
#: configuration.cpp:409
msgid "DataEngine"
msgstr "Engine de dados"
#: configuration.cpp:645 configuration.cpp:659
#: configuration.cpp:697 configuration.cpp:711
msgid "Remove"
msgstr "Remover"
#: configuration.cpp:706
#: configuration.cpp:766
msgid "Select font"
msgstr ""
@ -143,109 +143,114 @@ msgstr "Unidades de temperatura"
msgid "Temperature devices"
msgstr "Dispositivos de temperatura"
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 rc.cpp:47 rc.cpp:53
#: rc.cpp:59 rc.cpp:65
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 po/rc.cpp:71 rc.cpp:47
#: rc.cpp:53 rc.cpp:59 rc.cpp:65 rc.cpp:71
msgid "Editable"
msgstr "Editável"
#: po/rc.cpp:50 rc.cpp:50
#, fuzzy
msgid "Fan devices"
msgstr "Dispositivo do carregador"
#: po/rc.cpp:56 rc.cpp:56
msgid "Mount points"
msgstr "Pontos de montagem"
#: po/rc.cpp:56 rc.cpp:56
#: po/rc.cpp:62 rc.cpp:62
msgid "HDD devices (speed)"
msgstr "Dispositivos HDD (velocidade) "
#: po/rc.cpp:62 rc.cpp:62
#: po/rc.cpp:68 rc.cpp:68
msgid "HDD devices (temp)"
msgstr "Dispositivos HDD (temperatura)"
#: po/rc.cpp:68 rc.cpp:68
#: po/rc.cpp:74 rc.cpp:74
msgid "Disable auto select device and set specified device"
msgstr ""
"Desativar auto seleção de dispositivos e escolher um dispositivo específico"
#: po/rc.cpp:71 rc.cpp:71
#: po/rc.cpp:77 rc.cpp:77
msgid "Set network device"
msgstr "Escolher dispositivo de rede"
#: po/rc.cpp:74 rc.cpp:74
#: po/rc.cpp:80 rc.cpp:80
msgid "AC online tag"
msgstr "Rótulo com carregador conectado"
#: po/rc.cpp:77 rc.cpp:77
#: po/rc.cpp:83 rc.cpp:83
msgid "Line, which returns when AC is online"
msgstr "Linha, que aparece quando o carregador está conectado"
#: po/rc.cpp:80 rc.cpp:80
#: po/rc.cpp:86 rc.cpp:86
msgid "AC offline tag"
msgstr "Rótulo com carregador desconectado"
#: po/rc.cpp:83 rc.cpp:83
#: po/rc.cpp:89 rc.cpp:89
msgid "Line, which returns when AC is offline"
msgstr "Linha, que aparece quando o carregador está offline"
#: po/rc.cpp:86 rc.cpp:86
#: po/rc.cpp:92 rc.cpp:92
msgid "Time interval"
msgstr "Intervalo de tempo"
#: po/rc.cpp:89 po/rc.cpp:196 rc.cpp:89 rc.cpp:196
#: po/rc.cpp:95 po/rc.cpp:196 rc.cpp:95 rc.cpp:196
msgid "Font"
msgstr "Tamanho da fonte"
#: po/rc.cpp:92 rc.cpp:92
#: po/rc.cpp:98 rc.cpp:98
msgid "Font size"
msgstr "Tamanho da fonte"
#: po/rc.cpp:95 rc.cpp:95
#: po/rc.cpp:101 rc.cpp:101
msgid "Font color"
msgstr "Cor da fonte"
#: po/rc.cpp:98 rc.cpp:98
#: po/rc.cpp:104 rc.cpp:104
msgid "Font style"
msgstr "Estilo da fonte"
#: po/rc.cpp:101 rc.cpp:101
#: po/rc.cpp:107 rc.cpp:107
msgid "Font weight"
msgstr "Peso da fonte"
#: po/rc.cpp:104 rc.cpp:104
#: po/rc.cpp:110 rc.cpp:110
msgid "HDD"
msgstr "HDD"
#: po/rc.cpp:107 rc.cpp:107
#: po/rc.cpp:113 rc.cpp:113
msgid "MPD port"
msgstr "Porta do MPD"
#: po/rc.cpp:110 rc.cpp:110
#: po/rc.cpp:116 rc.cpp:116
msgid "GPU device"
msgstr "Dispositivo GPU"
#: po/rc.cpp:113 rc.cpp:113
#: po/rc.cpp:119 rc.cpp:119
msgid "hddtemp cmd"
msgstr "comando hddtemp "
#: po/rc.cpp:116 rc.cpp:116
#: po/rc.cpp:122 rc.cpp:122
msgid "Music player"
msgstr "Reprodutor de áudio"
#: po/rc.cpp:119 rc.cpp:119
#: po/rc.cpp:125 rc.cpp:125
msgid "MPD address"
msgstr "Endereço do MPD"
#: po/rc.cpp:122 rc.cpp:122
#: po/rc.cpp:128 rc.cpp:128
msgid "Desktop check cmd"
msgstr ""
#: po/rc.cpp:125 rc.cpp:125
#: po/rc.cpp:131 rc.cpp:131
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgstr ""
#: po/rc.cpp:128 rc.cpp:128
#: po/rc.cpp:134 rc.cpp:134
msgid "MPRIS player name"
msgstr ""
#: po/rc.cpp:131 po/rc.cpp:141 rc.cpp:131 rc.cpp:141
#: po/rc.cpp:137 po/rc.cpp:147 rc.cpp:137 rc.cpp:147
msgid ""
"Editable\n"
"del - remove item"
@ -253,20 +258,13 @@ msgstr ""
"Editável\n"
"del - remover item"
#: po/rc.cpp:148 rc.cpp:148
msgid "Battery device"
msgstr "Dispositivo do carregador"
#: po/rc.cpp:151 rc.cpp:151
msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
msgstr "\"/sys/class/power_supply/BAT0/capacity\" por padrão"
#: po/rc.cpp:154 rc.cpp:154
msgid "AC device"
msgstr "Dispositivo do carregador"
msgid "ACPI path"
msgstr ""
#: po/rc.cpp:157 rc.cpp:157
msgid "\"/sys/class/power_supply/AC/online\" by default"
#, fuzzy
msgid "\"/sys/class/power_supply/\" by default"
msgstr "\"/sys/class/power_supply/AC/online\" por padrão"
#: po/rc.cpp:160 rc.cpp:160
@ -352,6 +350,12 @@ msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "dreanazous@gmail.com"
#~ msgid "Battery device"
#~ msgstr "Dispositivo do carregador"
#~ msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
#~ msgstr "\"/sys/class/power_supply/BAT0/capacity\" por padrão"
#~ msgid "Vertical layout"
#~ msgstr "Layout vertical"

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 01:52+0400\n"
"PO-Revision-Date: 2014-09-05 11:16+0400\n"
"POT-Creation-Date: 2014-09-21 20:18+0400\n"
"PO-Revision-Date: 2014-09-21 20:19+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
"Language: ru\n"
@ -18,55 +18,55 @@ msgstr ""
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 1.5\n"
#: awesome-widget.cpp:77
#: awesome-widget.cpp:78
msgid "Run ksysguard"
msgstr "Запустить ksysguard"
#: awesome-widget.cpp:80
#: awesome-widget.cpp:81
msgid "Show README"
msgstr "Показать README"
#: awesome-widget.cpp:83
#: awesome-widget.cpp:84
msgid "Update text"
msgstr "Обновить текст"
#: configuration.cpp:319 po/rc.cpp:145 rc.cpp:145
#: configuration.cpp:362 po/rc.cpp:151 rc.cpp:151
msgid "Custom command"
msgstr "Своя команда"
#: configuration.cpp:349 po/rc.cpp:135 rc.cpp:135
#: configuration.cpp:392 po/rc.cpp:141 rc.cpp:141
msgid "Package manager"
msgstr "Пакетный менеджер"
#: configuration.cpp:350 po/rc.cpp:138 rc.cpp:138
#: configuration.cpp:393 po/rc.cpp:144 rc.cpp:144
msgid "Null lines"
msgstr "Число пустых линий"
#: configuration.cpp:362
#: configuration.cpp:405
msgid "Widget"
msgstr "Виджет"
#: configuration.cpp:363
#: configuration.cpp:406
msgid "Advanced"
msgstr "Расширенные"
#: configuration.cpp:364
#: configuration.cpp:407
msgid "Tooltip"
msgstr "Тултип"
#: configuration.cpp:365
#: configuration.cpp:408
msgid "Appearance"
msgstr "Внешний вид"
#: configuration.cpp:366
#: configuration.cpp:409
msgid "DataEngine"
msgstr "DataEngine"
#: configuration.cpp:645 configuration.cpp:659
#: configuration.cpp:697 configuration.cpp:711
msgid "Remove"
msgstr "Удалить"
#: configuration.cpp:706
#: configuration.cpp:766
msgid "Select font"
msgstr "Выберете шрифт"
@ -146,108 +146,112 @@ msgstr "Температурные единицы"
msgid "Temperature devices"
msgstr "Температурные устройства"
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 rc.cpp:47 rc.cpp:53
#: rc.cpp:59 rc.cpp:65
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 po/rc.cpp:71 rc.cpp:47
#: rc.cpp:53 rc.cpp:59 rc.cpp:65 rc.cpp:71
msgid "Editable"
msgstr "Редактируемо"
#: po/rc.cpp:50 rc.cpp:50
msgid "Fan devices"
msgstr "Кулеры"
#: po/rc.cpp:56 rc.cpp:56
msgid "Mount points"
msgstr "Точки монтирования"
#: po/rc.cpp:56 rc.cpp:56
#: po/rc.cpp:62 rc.cpp:62
msgid "HDD devices (speed)"
msgstr "HDD (скорость)"
#: po/rc.cpp:62 rc.cpp:62
#: po/rc.cpp:68 rc.cpp:68
msgid "HDD devices (temp)"
msgstr "HDD (температура)"
#: po/rc.cpp:68 rc.cpp:68
#: po/rc.cpp:74 rc.cpp:74
msgid "Disable auto select device and set specified device"
msgstr "Отключить автовыбор устройства и использовать указанное"
#: po/rc.cpp:71 rc.cpp:71
#: po/rc.cpp:77 rc.cpp:77
msgid "Set network device"
msgstr "Выберете сетевое устройство"
#: po/rc.cpp:74 rc.cpp:74
#: po/rc.cpp:80 rc.cpp:80
msgid "AC online tag"
msgstr "AC подключен"
#: po/rc.cpp:77 rc.cpp:77
#: po/rc.cpp:83 rc.cpp:83
msgid "Line, which returns when AC is online"
msgstr "Строка, возвращаемая при подключенном адаптере питания"
#: po/rc.cpp:80 rc.cpp:80
#: po/rc.cpp:86 rc.cpp:86
msgid "AC offline tag"
msgstr "AC отключен"
#: po/rc.cpp:83 rc.cpp:83
#: po/rc.cpp:89 rc.cpp:89
msgid "Line, which returns when AC is offline"
msgstr "Строка, возвращаемая при отключенном адаптере питания"
#: po/rc.cpp:86 rc.cpp:86
#: po/rc.cpp:92 rc.cpp:92
msgid "Time interval"
msgstr "Интервал обновления"
#: po/rc.cpp:89 po/rc.cpp:196 rc.cpp:89 rc.cpp:196
#: po/rc.cpp:95 po/rc.cpp:196 rc.cpp:95 rc.cpp:196
msgid "Font"
msgstr "Шрифт"
#: po/rc.cpp:92 rc.cpp:92
#: po/rc.cpp:98 rc.cpp:98
msgid "Font size"
msgstr "Размер шрифта"
#: po/rc.cpp:95 rc.cpp:95
#: po/rc.cpp:101 rc.cpp:101
msgid "Font color"
msgstr "Цвет шрифта"
#: po/rc.cpp:98 rc.cpp:98
#: po/rc.cpp:104 rc.cpp:104
msgid "Font style"
msgstr "Стиль шрифта"
#: po/rc.cpp:101 rc.cpp:101
#: po/rc.cpp:107 rc.cpp:107
msgid "Font weight"
msgstr "Ширина шрифта"
#: po/rc.cpp:104 rc.cpp:104
#: po/rc.cpp:110 rc.cpp:110
msgid "HDD"
msgstr "HDD"
#: po/rc.cpp:107 rc.cpp:107
#: po/rc.cpp:113 rc.cpp:113
msgid "MPD port"
msgstr "Порт сервера MPD"
#: po/rc.cpp:110 rc.cpp:110
#: po/rc.cpp:116 rc.cpp:116
msgid "GPU device"
msgstr "Устройство GPU"
#: po/rc.cpp:113 rc.cpp:113
#: po/rc.cpp:119 rc.cpp:119
msgid "hddtemp cmd"
msgstr "Команда hddtemp"
#: po/rc.cpp:116 rc.cpp:116
#: po/rc.cpp:122 rc.cpp:122
msgid "Music player"
msgstr "Музыкальный плеер"
#: po/rc.cpp:119 rc.cpp:119
#: po/rc.cpp:125 rc.cpp:125
msgid "MPD address"
msgstr "Адрес сервера MPD"
#: po/rc.cpp:122 rc.cpp:122
#: po/rc.cpp:128 rc.cpp:128
msgid "Desktop check cmd"
msgstr "Команда для проверки рабочего стола"
#: po/rc.cpp:125 rc.cpp:125
#: po/rc.cpp:131 rc.cpp:131
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgstr "<b>ВНИМАНИЕ:</b> DBus интерфейс плеера должен быть активен"
#: po/rc.cpp:128 rc.cpp:128
#: po/rc.cpp:134 rc.cpp:134
msgid "MPRIS player name"
msgstr "Имя плеера в MPRIS"
#: po/rc.cpp:131 po/rc.cpp:141 rc.cpp:131 rc.cpp:141
#: po/rc.cpp:137 po/rc.cpp:147 rc.cpp:137 rc.cpp:147
msgid ""
"Editable\n"
"del - remove item"
@ -255,21 +259,13 @@ msgstr ""
"Редактируемо\n"
"del - удалить строку"
#: po/rc.cpp:148 rc.cpp:148
msgid "Battery device"
msgstr "Устройство батареи"
#: po/rc.cpp:151 rc.cpp:151
msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
msgstr "\"/sys/class/power_supply/BAT0/capacity\" по умолчанию"
#: po/rc.cpp:154 rc.cpp:154
msgid "AC device"
msgstr "Устройство AC"
msgid "ACPI path"
msgstr "Пусть к ACPI"
#: po/rc.cpp:157 rc.cpp:157
msgid "\"/sys/class/power_supply/AC/online\" by default"
msgstr "\"/sys/class/power_supply/AC/online\" по умолчанию"
msgid "\"/sys/class/power_supply/\" by default"
msgstr "\"/sys/class/power_supply/\" по умолчанию"
#: po/rc.cpp:160 rc.cpp:160
msgid ""
@ -354,6 +350,12 @@ msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "esalexeev@gmail.com"
#~ msgid "Battery device"
#~ msgstr "Устройство батареи"
#~ msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
#~ msgstr "\"/sys/class/power_supply/BAT0/capacity\" по умолчанию"
#~ msgid "Vertical layout"
#~ msgstr "Вертикальная разметка"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 01:52+0400\n"
"POT-Creation-Date: 2014-09-21 20:18+0400\n"
"PO-Revision-Date: 2014-09-05 11:22+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: Ukrainian <kde-russian@lists.kde.ru>\n"
@ -18,55 +18,55 @@ msgstr ""
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 1.5\n"
#: awesome-widget.cpp:77
#: awesome-widget.cpp:78
msgid "Run ksysguard"
msgstr "Запустити ksysguard"
#: awesome-widget.cpp:80
#: awesome-widget.cpp:81
msgid "Show README"
msgstr "Показати README"
#: awesome-widget.cpp:83
#: awesome-widget.cpp:84
msgid "Update text"
msgstr "Оновити текст"
#: configuration.cpp:319 po/rc.cpp:145 rc.cpp:145
#: configuration.cpp:362 po/rc.cpp:151 rc.cpp:151
msgid "Custom command"
msgstr "Своя команда"
#: configuration.cpp:349 po/rc.cpp:135 rc.cpp:135
#: configuration.cpp:392 po/rc.cpp:141 rc.cpp:141
msgid "Package manager"
msgstr "Пакетний менеджер"
#: configuration.cpp:350 po/rc.cpp:138 rc.cpp:138
#: configuration.cpp:393 po/rc.cpp:144 rc.cpp:144
msgid "Null lines"
msgstr "Кількість пустих рядків"
#: configuration.cpp:362
#: configuration.cpp:405
msgid "Widget"
msgstr "Віджет"
#: configuration.cpp:363
#: configuration.cpp:406
msgid "Advanced"
msgstr "Розширені"
#: configuration.cpp:364
#: configuration.cpp:407
msgid "Tooltip"
msgstr "Тултіп"
#: configuration.cpp:365
#: configuration.cpp:408
msgid "Appearance"
msgstr "Зовнішній вигляд"
#: configuration.cpp:366
#: configuration.cpp:409
msgid "DataEngine"
msgstr "DataEngine"
#: configuration.cpp:645 configuration.cpp:659
#: configuration.cpp:697 configuration.cpp:711
msgid "Remove"
msgstr "Видалити"
#: configuration.cpp:706
#: configuration.cpp:766
msgid "Select font"
msgstr ""
@ -146,108 +146,113 @@ msgstr "Одиниці виміру температури"
msgid "Temperature devices"
msgstr "Температурні пристрої"
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 rc.cpp:47 rc.cpp:53
#: rc.cpp:59 rc.cpp:65
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 po/rc.cpp:71 rc.cpp:47
#: rc.cpp:53 rc.cpp:59 rc.cpp:65 rc.cpp:71
msgid "Editable"
msgstr "Можна редагувати"
#: po/rc.cpp:50 rc.cpp:50
#, fuzzy
msgid "Fan devices"
msgstr "AC пристрій"
#: po/rc.cpp:56 rc.cpp:56
msgid "Mount points"
msgstr "Точки монтування"
#: po/rc.cpp:56 rc.cpp:56
#: po/rc.cpp:62 rc.cpp:62
msgid "HDD devices (speed)"
msgstr "HDD (швидкість)"
#: po/rc.cpp:62 rc.cpp:62
#: po/rc.cpp:68 rc.cpp:68
msgid "HDD devices (temp)"
msgstr "HDD (температура)"
#: po/rc.cpp:68 rc.cpp:68
#: po/rc.cpp:74 rc.cpp:74
msgid "Disable auto select device and set specified device"
msgstr "Відключити автоматичний вибір пристрою та використовувати вказаний"
#: po/rc.cpp:71 rc.cpp:71
#: po/rc.cpp:77 rc.cpp:77
msgid "Set network device"
msgstr "Оберіть мережевий пристрій"
#: po/rc.cpp:74 rc.cpp:74
#: po/rc.cpp:80 rc.cpp:80
msgid "AC online tag"
msgstr "AC підключений"
#: po/rc.cpp:77 rc.cpp:77
#: po/rc.cpp:83 rc.cpp:83
msgid "Line, which returns when AC is online"
msgstr "Рядок, що повертається при підключеному адаптері живлення"
#: po/rc.cpp:80 rc.cpp:80
#: po/rc.cpp:86 rc.cpp:86
msgid "AC offline tag"
msgstr "AC відключений"
#: po/rc.cpp:83 rc.cpp:83
#: po/rc.cpp:89 rc.cpp:89
msgid "Line, which returns when AC is offline"
msgstr "Рядок, що повертається при відключеному адаптері живлення"
#: po/rc.cpp:86 rc.cpp:86
#: po/rc.cpp:92 rc.cpp:92
msgid "Time interval"
msgstr "Інтервал оновлення"
#: po/rc.cpp:89 po/rc.cpp:196 rc.cpp:89 rc.cpp:196
#: po/rc.cpp:95 po/rc.cpp:196 rc.cpp:95 rc.cpp:196
msgid "Font"
msgstr "Шрифт"
#: po/rc.cpp:92 rc.cpp:92
#: po/rc.cpp:98 rc.cpp:98
msgid "Font size"
msgstr "Розмір шрифту"
#: po/rc.cpp:95 rc.cpp:95
#: po/rc.cpp:101 rc.cpp:101
msgid "Font color"
msgstr "Колір шрифту"
#: po/rc.cpp:98 rc.cpp:98
#: po/rc.cpp:104 rc.cpp:104
msgid "Font style"
msgstr "Стиль шрифту"
#: po/rc.cpp:101 rc.cpp:101
#: po/rc.cpp:107 rc.cpp:107
msgid "Font weight"
msgstr "Ширина шрифту"
#: po/rc.cpp:104 rc.cpp:104
#: po/rc.cpp:110 rc.cpp:110
msgid "HDD"
msgstr "HDD"
#: po/rc.cpp:107 rc.cpp:107
#: po/rc.cpp:113 rc.cpp:113
msgid "MPD port"
msgstr "Порт сервера MPD"
#: po/rc.cpp:110 rc.cpp:110
#: po/rc.cpp:116 rc.cpp:116
msgid "GPU device"
msgstr "Пристій GPU"
#: po/rc.cpp:113 rc.cpp:113
#: po/rc.cpp:119 rc.cpp:119
msgid "hddtemp cmd"
msgstr "Команда hddtemp"
#: po/rc.cpp:116 rc.cpp:116
#: po/rc.cpp:122 rc.cpp:122
msgid "Music player"
msgstr "Музичний плеєр"
#: po/rc.cpp:119 rc.cpp:119
#: po/rc.cpp:125 rc.cpp:125
msgid "MPD address"
msgstr "Адреса сервера MPD"
#: po/rc.cpp:122 rc.cpp:122
#: po/rc.cpp:128 rc.cpp:128
msgid "Desktop check cmd"
msgstr ""
#: po/rc.cpp:125 rc.cpp:125
#: po/rc.cpp:131 rc.cpp:131
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgstr ""
#: po/rc.cpp:128 rc.cpp:128
#: po/rc.cpp:134 rc.cpp:134
msgid "MPRIS player name"
msgstr ""
#: po/rc.cpp:131 po/rc.cpp:141 rc.cpp:131 rc.cpp:141
#: po/rc.cpp:137 po/rc.cpp:147 rc.cpp:137 rc.cpp:147
msgid ""
"Editable\n"
"del - remove item"
@ -255,20 +260,13 @@ msgstr ""
"Можна редагувати\n"
"del - видалити рядок"
#: po/rc.cpp:148 rc.cpp:148
msgid "Battery device"
msgstr "Пристрій батареї"
#: po/rc.cpp:151 rc.cpp:151
msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
msgstr "\"/sys/class/power_supply/BAT0/capacity\" за замовчуванням"
#: po/rc.cpp:154 rc.cpp:154
msgid "AC device"
msgstr "AC пристрій"
msgid "ACPI path"
msgstr ""
#: po/rc.cpp:157 rc.cpp:157
msgid "\"/sys/class/power_supply/AC/online\" by default"
#, fuzzy
msgid "\"/sys/class/power_supply/\" by default"
msgstr "\"/sys/class/power_supply/AC/online\" за замовчуванням"
#: po/rc.cpp:160 rc.cpp:160
@ -355,6 +353,12 @@ msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "sarumyan@i.ua"
#~ msgid "Battery device"
#~ msgstr "Пристрій батареї"
#~ msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
#~ msgstr "\"/sys/class/power_supply/BAT0/capacity\" за замовчуванням"
#~ msgid "Vertical layout"
#~ msgstr "Вертикальна розмітка"

View File

@ -0,0 +1,357 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
#
# Steve Lemuel <wlemuel@hotmail.com>, 2014.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-21 20:18+0400\n"
"PO-Revision-Date: 2014-09-10 22:50+0800\n"
"Last-Translator: Steve Lemuel <wlemuel@hotmail.com>\n"
"Language-Team: American English <kde-i18n-doc@kde.org>\n"
"Language: en_US\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Lokalize 1.5\n"
#: awesome-widget.cpp:78
msgid "Run ksysguard"
msgstr "运行任务管理器"
#: awesome-widget.cpp:81
msgid "Show README"
msgstr "显示帮助文档"
#: awesome-widget.cpp:84
msgid "Update text"
msgstr "刷新文本"
#: configuration.cpp:362 po/rc.cpp:151 rc.cpp:151
msgid "Custom command"
msgstr "自定义命令"
#: configuration.cpp:392 po/rc.cpp:141 rc.cpp:141
msgid "Package manager"
msgstr "包管理器"
#: configuration.cpp:393 po/rc.cpp:144 rc.cpp:144
msgid "Null lines"
msgstr "空行"
#: configuration.cpp:405
msgid "Widget"
msgstr "窗口小部件"
#: configuration.cpp:406
msgid "Advanced"
msgstr "高级设置"
#: configuration.cpp:407
msgid "Tooltip"
msgstr "提示"
#: configuration.cpp:408
msgid "Appearance"
msgstr "外观"
#: configuration.cpp:409
msgid "DataEngine"
msgstr "数据引擎"
#: configuration.cpp:697 configuration.cpp:711
msgid "Remove"
msgstr "移除"
#: configuration.cpp:766
msgid "Select font"
msgstr "选择字体"
#: po/rc.cpp:3 rc.cpp:3
msgid "Enable background"
msgstr "启用背景"
#: po/rc.cpp:6 rc.cpp:6
msgid "Enable popup on mouse click"
msgstr "鼠标点击时弹出对话框"
#: po/rc.cpp:9 rc.cpp:9
msgid "Custom time format"
msgstr "自定义时间格式"
#: po/rc.cpp:12 rc.cpp:12
msgid ""
"$dddd - long weekday\n"
"$ddd - short weekday\n"
"$dd - day\n"
"$d - day w\\o zero\n"
"$MMMM - long month\n"
"$MMM - short month\n"
"$MM - month\n"
"$M - month w\\o zero\n"
"$yyyy - year\n"
"$yy - short year\n"
"$hh - hours (24 only)\n"
"$h - hours w\\o zero (24 only)\n"
"$mm - minutes\n"
"$m - minutes w\\o zero\n"
"$ss - seconds\n"
"$s - seconds w\\o zero"
msgstr ""
"$dddd - 详细工作日\n"
"$ddd - 简短工作日\n"
"$dd - 日\n"
"$d - 日 w\\o 零\n"
"$MMMM - 详细月份\n"
"$MMM - 简短月份\n"
"$MM - 月\n"
"$M - 月 w\\o 零\n"
"$yyyy - 年\n"
"$yy - 简短年份\n"
"$hh - 小时 (24 小时制)\n"
"$h - 小时 w\\o 零 (24 小时制)\n"
"$mm - 分\n"
"$m - 分 w\\o 零\n"
"$ss - 秒\n"
"$s - 秒 w\\o 零"
#: po/rc.cpp:30 rc.cpp:30
msgid "Custom uptime format"
msgstr "自定义启动时间显示格式"
#: po/rc.cpp:33 rc.cpp:33
msgid ""
"$dd - uptime days\n"
"$d - uptime days without zero\n"
"$hh - uptime hours\n"
"$h - uptime hours without zero\n"
"$mm - uptime minutes\n"
"$m - uptime minutes without zero"
msgstr ""
"$dd - 运行天数\n"
"$d - 运行天数不显示0\n"
"$hh - 运行小时数\n"
"$h - 运行小时数不显示0\n"
"$mm - 运行分钟数\n"
"$m - 运行分钟数不显示0"
#: po/rc.cpp:41 rc.cpp:41
msgid "Temperature units"
msgstr "温度单位"
#: po/rc.cpp:44 rc.cpp:44
msgid "Temperature devices"
msgstr "温度传感器"
#: po/rc.cpp:47 po/rc.cpp:53 po/rc.cpp:59 po/rc.cpp:65 po/rc.cpp:71 rc.cpp:47
#: rc.cpp:53 rc.cpp:59 rc.cpp:65 rc.cpp:71
msgid "Editable"
msgstr "可编辑的"
#: po/rc.cpp:50 rc.cpp:50
#, fuzzy
msgid "Fan devices"
msgstr "外界电源设备"
#: po/rc.cpp:56 rc.cpp:56
msgid "Mount points"
msgstr "挂载点"
#: po/rc.cpp:62 rc.cpp:62
msgid "HDD devices (speed)"
msgstr "硬盘(高速)"
#: po/rc.cpp:68 rc.cpp:68
msgid "HDD devices (temp)"
msgstr "硬盘(临时)"
#: po/rc.cpp:74 rc.cpp:74
msgid "Disable auto select device and set specified device"
msgstr "禁用自动选择设备和设置特殊设备"
#: po/rc.cpp:77 rc.cpp:77
msgid "Set network device"
msgstr "设置网络设备"
#: po/rc.cpp:80 rc.cpp:80
msgid "AC online tag"
msgstr "外接电源使用中标签"
#: po/rc.cpp:83 rc.cpp:83
msgid "Line, which returns when AC is online"
msgstr "外接电源使用时显示线条"
#: po/rc.cpp:86 rc.cpp:86
msgid "AC offline tag"
msgstr "外接电源未使用标签"
#: po/rc.cpp:89 rc.cpp:89
msgid "Line, which returns when AC is offline"
msgstr "外接电源未使用时显示线条"
#: po/rc.cpp:92 rc.cpp:92
msgid "Time interval"
msgstr "时间周期"
#: po/rc.cpp:95 po/rc.cpp:196 rc.cpp:95 rc.cpp:196
msgid "Font"
msgstr "字体"
#: po/rc.cpp:98 rc.cpp:98
msgid "Font size"
msgstr "字体大小"
#: po/rc.cpp:101 rc.cpp:101
msgid "Font color"
msgstr "字体颜色"
#: po/rc.cpp:104 rc.cpp:104
msgid "Font style"
msgstr "字体样式"
#: po/rc.cpp:107 rc.cpp:107
msgid "Font weight"
msgstr "字体宽度"
#: po/rc.cpp:110 rc.cpp:110
msgid "HDD"
msgstr "硬盘"
#: po/rc.cpp:113 rc.cpp:113
msgid "MPD port"
msgstr "MPD 端口"
#: po/rc.cpp:116 rc.cpp:116
msgid "GPU device"
msgstr "GPU 设备"
#: po/rc.cpp:119 rc.cpp:119
msgid "hddtemp cmd"
msgstr "硬盘温度显示命令"
#: po/rc.cpp:122 rc.cpp:122
msgid "Music player"
msgstr "音乐播放器"
#: po/rc.cpp:125 rc.cpp:125
msgid "MPD address"
msgstr "MPD 地址"
#: po/rc.cpp:128 rc.cpp:128
msgid "Desktop check cmd"
msgstr "检测桌面命令"
#: po/rc.cpp:131 rc.cpp:131
msgid "<b>NOTE:</b> Player DBus interface should be an active"
msgstr "<b>提示:</b> 播放器 DBus 应当处于激活状态"
#: po/rc.cpp:134 rc.cpp:134
msgid "MPRIS player name"
msgstr "MPRIS 播放器名"
#: po/rc.cpp:137 po/rc.cpp:147 rc.cpp:137 rc.cpp:147
msgid ""
"Editable\n"
"del - remove item"
msgstr ""
"可编辑的\n"
"del - 移除项目"
#: po/rc.cpp:154 rc.cpp:154
msgid "ACPI path"
msgstr ""
#: po/rc.cpp:157 rc.cpp:157
#, fuzzy
msgid "\"/sys/class/power_supply/\" by default"
msgstr "默认为 \"/sys/class/power_supply/AC/online\""
#: po/rc.cpp:160 rc.cpp:160
msgid ""
"CPU, CPU clock, memory, swap and network labels support graphical tooltip. "
"To enable them just make needed checkbox fully checked."
msgstr ""
"CPU CPU 时钟,内存,虚拟内存和网络连接标签均支持图形化提示显示。 请在相应复"
"选框中勾选以启用该功能。 "
#: po/rc.cpp:163 rc.cpp:163
msgid "Number of values for tooltips"
msgstr "提示的数值"
#: po/rc.cpp:166 rc.cpp:166
msgid "Background"
msgstr "背景"
#: po/rc.cpp:169 rc.cpp:169
msgid "CPU color"
msgstr "CPU 颜色"
#: po/rc.cpp:172 rc.cpp:172
msgid "CPU clock color"
msgstr "CPU 时钟颜色"
#: po/rc.cpp:175 rc.cpp:175
msgid "Memory color"
msgstr "内存显示颜色"
#: po/rc.cpp:178 rc.cpp:178
msgid "Swap color"
msgstr "虚拟内存颜色"
#: po/rc.cpp:181 rc.cpp:181
msgid "Download speed color"
msgstr "下载速度颜色"
#: po/rc.cpp:184 rc.cpp:184
msgid "Upload speed color"
msgstr "上传速度颜色"
#: po/rc.cpp:187 rc.cpp:187
msgid "Battery active color"
msgstr "电池使用状态提示颜色"
#: po/rc.cpp:190 rc.cpp:190
msgid "Battery inactive color"
msgstr "电池未使用状态提示颜色"
#: po/rc.cpp:193 rc.cpp:193
msgid ""
"Detailed information may be found on <a href=\"http://arcanis.name/projects/"
"awesome-widgets/\">project homepage</a>"
msgstr ""
"详情请参照 <a href=\"http://arcanis.name/projects/ awesome-widgets/\">项目主"
"页</a>"
#: po/rc.cpp:199 rc.cpp:199
msgid "Ctrl+B"
msgstr "Ctrl+B"
#: po/rc.cpp:202 rc.cpp:202
msgid "Ctrl+I"
msgstr "Ctrl+I"
#: po/rc.cpp:205 rc.cpp:205
msgid "Ctrl+U"
msgstr "Ctrl+U"
#: po/rc.cpp:208 rc.cpp:208
msgid "Add"
msgstr "添加"
#: po/rc.cpp:209 rc.cpp:209
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
msgstr "用户名"
#: po/rc.cpp:210 rc.cpp:210
msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "用户邮箱"
#~ msgid "Battery device"
#~ msgstr "电池设备"
#~ msgid "\"/sys/class/power_supply/BAT0/capacity\" by default"
#~ msgstr "默认为 \"/sys/class/power_supply/BAT0/capacity\""

View File

@ -38,6 +38,8 @@ void AwesomeWidget::reinit()
else
textLabel->setPopupEnabled(true);
updateText(true);
textLabel->adjustSize();
mainLayout->itemAt(0, 0)->setGeometry(textLabel->geometry());
keys = getKeys();
foundKeys = findKeys();
@ -78,6 +80,7 @@ void AwesomeWidget::updateText(const bool clear)
for (int i=0; i<foundKeys.count(); i++)
text.replace(QString("$") + foundKeys[i], values[foundKeys[i]]);
textLabel->setText(formatLine[0] + text + formatLine[1]);
update();
}

View File

@ -26,7 +26,7 @@
#include <Plasma/Theme>
#include <QDebug>
#include <QFile>
#include <QGraphicsLinearLayout>
#include <QGraphicsGridLayout>
#include <QGraphicsSceneMouseEvent>
#include <QGraphicsView>
#include <QProcessEnvironment>
@ -94,9 +94,6 @@ DesktopPanel::DesktopPanel(QObject *parent, const QVariantList &args)
DesktopPanel::~DesktopPanel()
{
// for (int i=0; i<labels.count(); i++)
// delete labels[i];
// delete layout;
}
@ -106,7 +103,7 @@ void DesktopPanel::init()
extsysmonEngine = dataEngine(QString("ext-sysmon"));
layout = new QGraphicsLinearLayout();
layout = new QGraphicsGridLayout();
layout->setContentsMargins(1, 1, 1, 1);
setLayout(layout);
@ -154,15 +151,18 @@ QString DesktopPanel::panelLocationToStr(Plasma::Location loc)
QString DesktopPanel::parsePattern(const QString rawLine, const int num)
{
if (debug) qDebug() << PDEBUG;
if (debug) qDebug() << PDEBUG << ":" << "Run function with raw line" << rawLine;
if (debug) qDebug() << PDEBUG << ":" << "Run function with number" << num;
if (debug) qDebug() << PDEBUG << ":" << "Raw line" << rawLine;
if (debug) qDebug() << PDEBUG << ":" << "Number" << num;
QString line, mark;
QString line, fullMark, mark;
line = rawLine;
if (currentDesktop == num + 1)
mark = configuration[QString("mark")];
else
mark = QString("");
fullMark = QString("%1").arg(mark, configuration[QString("mark")].count(), QLatin1Char(' '));
if (line.contains(QString("$fullmark")))
line.replace(QString("$fullmark"), fullMark);
if (line.contains(QString("$mark")))
line.replace(QString("$mark"), mark);
if (line.contains(QString("$name")))
@ -189,7 +189,7 @@ void DesktopPanel::reinit()
}
labels.clear();
// layout
layout = new QGraphicsLinearLayout();
layout = new QGraphicsGridLayout();
layout->setContentsMargins(1, 1, 1, 1);
setLayout(layout);
@ -197,24 +197,18 @@ void DesktopPanel::reinit()
// layout
if (configuration[QString("background")].toInt() == 0)
setBackgroundHints(NoBackground);
if (configuration[QString("layout")].toInt() == 0)
layout->setOrientation(Qt::Horizontal);
else
layout->setOrientation(Qt::Vertical);
// left stretch
if (configuration[QString("leftStretch")].toInt() == 2)
layout->addStretch(1);
// labels
for (int i=0; i<desktopNames.count(); i++) {
labels.append(new CustomPlasmaLabel(this, i));
layout->addItem(labels[i]);
labels[i]->setWordWrap(false);
labels[i]->setAttribute(Qt::WA_NoSystemBackground, true);
if (configuration[QString("layout")].toInt() == 0)
layout->addItem(labels[i], 0, i);
else
layout->addItem(labels[i], i, 0);
}
// right stretch
if (configuration[QString("rightStretch")].toInt() == 2)
layout->addStretch(1);
updateText();
resize(10, 10);
updateText(true);
}
@ -259,21 +253,24 @@ void DesktopPanel::setCurrentDesktop(const int number)
}
void DesktopPanel::updateText()
void DesktopPanel::updateText(const bool first)
{
if (debug) qDebug() << PDEBUG;
if (labels.isEmpty()) return;
QString line, text;
for (int i=0; i<labels.count(); i++) {
if (debug) qDebug() << PDEBUG << ":" << "Label" << i;
line = parsePattern(configuration[QString("pattern")], i);
if (first)
line = configuration[QString("pattern")];
else
line = parsePattern(configuration[QString("pattern")], i);
if (currentDesktop == i + 1)
text = currentFormatLine[0] + line + currentFormatLine[1];
else
text = formatLine[0] + line + formatLine[1];
labels[i]->setText(text);
}
update();
}
@ -281,7 +278,7 @@ void DesktopPanel::updateText()
void DesktopPanel::dataUpdated(const QString &sourceName, const Plasma::DataEngine::Data &data)
{
if (debug) qDebug() << PDEBUG;
if (debug) qDebug() << PDEBUG << ":" << "Run function with source name" << sourceName;
if (debug) qDebug() << PDEBUG << ":" << "Source name" << sourceName;
if (data.keys().count() == 0)
return;
@ -308,6 +305,7 @@ void DesktopPanel::createConfigurationInterface(KConfigDialog *parent)
QWidget *toggleWidget = new QWidget;
uiToggleConfig.setupUi(toggleWidget);
uiWidConfig.textEdit_elements->setPlainText(configuration[QString("pattern")]);
if (configuration[QString("background")].toInt() == 0)
uiWidConfig.checkBox_background->setCheckState(Qt::Unchecked);
else
@ -316,18 +314,9 @@ void DesktopPanel::createConfigurationInterface(KConfigDialog *parent)
uiWidConfig.checkBox_layout->setCheckState(Qt::Unchecked);
else
uiWidConfig.checkBox_layout->setCheckState(Qt::Checked);
if (configuration[QString("leftStretch")].toInt() == 0)
uiWidConfig.checkBox_leftStretch->setCheckState(Qt::Unchecked);
else
uiWidConfig.checkBox_leftStretch->setCheckState(Qt::Checked);
if (configuration[QString("rightStretch")].toInt() == 0)
uiWidConfig.checkBox_rightStretch->setCheckState(Qt::Unchecked);
else
uiWidConfig.checkBox_rightStretch->setCheckState(Qt::Checked);
uiWidConfig.spinBox_interval->setValue(configuration[QString("interval")].toInt());
uiWidConfig.comboBox_mark->setItemText(uiWidConfig.comboBox_mark->count()-1, configuration[QString("mark")]);
uiWidConfig.comboBox_mark->setCurrentIndex(uiWidConfig.comboBox_mark->count()-1);
uiWidConfig.lineEdit_pattern->setText(configuration[QString("pattern")]);
uiWidConfig.lineEdit_desktopcmd->setText(configuration[QString("desktopcmd")]);
KConfigGroup cg = config();
@ -376,6 +365,18 @@ void DesktopPanel::createConfigurationInterface(KConfigDialog *parent)
parent->addPage(appWidget, i18n("Appearance"), QString("preferences-desktop-theme"));
parent->addPage(toggleWidget, i18n("Toggle panels"), QString("plasma"));
connect(uiWidConfig.pushButton_tags, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_br, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_font, SIGNAL(clicked(bool)), this, SLOT(setFontFormating()));
connect(uiWidConfig.pushButton_bold, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_italic, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_underline, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_strike, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_left, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_center, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_right, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(uiWidConfig.pushButton_fill, SIGNAL(clicked(bool)), this, SLOT(setFormating()));
connect(parent, SIGNAL(okClicked()), this, SLOT(configAccepted()));
connect(parent, SIGNAL(applyClicked()), this, SLOT(configAccepted()));
}
@ -388,13 +389,11 @@ void DesktopPanel::configAccepted()
extsysmonEngine->disconnectSource(QString("desktop"), this);
KConfigGroup cg = config();
cg.writeEntry("pattern", uiWidConfig.textEdit_elements->toPlainText());
cg.writeEntry("background", QString::number(uiWidConfig.checkBox_background->checkState()));
cg.writeEntry("layout", QString::number(uiWidConfig.checkBox_layout->checkState()));
cg.writeEntry("leftStretch", QString::number(uiWidConfig.checkBox_leftStretch->checkState()));
cg.writeEntry("rightStretch", QString::number(uiWidConfig.checkBox_rightStretch->checkState()));
cg.writeEntry("interval", QString::number(uiWidConfig.spinBox_interval->value()));
cg.writeEntry("mark", uiWidConfig.comboBox_mark->currentText());
cg.writeEntry("pattern", uiWidConfig.lineEdit_pattern->text());
cg.writeEntry("desktopcmd", uiWidConfig.lineEdit_desktopcmd->text());
cg.writeEntry("currentFontFamily", uiAppConfig.fontComboBox_fontActive->currentFont().family());
@ -426,15 +425,13 @@ void DesktopPanel::configChanged()
KConfigGroup cg = config();
configuration[QString("pattern")] = cg.readEntry("pattern", "[$fullmark$number/$total: $name]");
configuration[QString("background")] = cg.readEntry("background", "2");
configuration[QString("desktopcmd")] = cg.readEntry("desktopcmd", "qdbus org.kde.kwin /KWin setCurrentDesktop $number");
configuration[QString("interval")] = cg.readEntry("interval", "1000");
configuration[QString("layout")] = cg.readEntry("layout", "0");
configuration[QString("leftStretch")] = cg.readEntry("leftStretch", "2");
configuration[QString("mark")] = cg.readEntry("mark", "¤");
configuration[QString("panels")] = cg.readEntry("panels", "-1");
configuration[QString("pattern")] = cg.readEntry("pattern", "[$mark$number/$total: $name]");
configuration[QString("rightStretch")] = cg.readEntry("rightStretch", "2");
extsysmonEngine->connectSource(QString("desktop"), this, configuration[QString("interval")].toInt());
@ -479,4 +476,49 @@ void DesktopPanel::configChanged()
}
void DesktopPanel::setFontFormating()
{
if (debug) qDebug() << PDEBUG;
CFont defaultFont = CFont(uiAppConfig.fontComboBox_fontInactive->currentFont().family(),
uiAppConfig.spinBox_fontSizeInactive->value(),
400, false, uiAppConfig.kcolorcombo_fontColorInactive->color());
CFont font = CFontDialog::getFont(i18n("Select font"), defaultFont,
false, false);
QString selectedText = uiWidConfig.textEdit_elements->textCursor().selectedText();
uiWidConfig.textEdit_elements->insertPlainText(QString("<span style=\"color:%1; font-family:'%2'; font-size:%3pt;\">")
.arg(font.color().name()).arg(font.family()).arg(font.pointSize()) +
selectedText + QString("</span>"));
}
void DesktopPanel::setFormating()
{
if (debug) qDebug() << PDEBUG;
if (debug) qDebug() << PDEBUG << ":" << "Sender" << sender();
QString selectedText = uiWidConfig.textEdit_elements->textCursor().selectedText();
if (sender() == uiWidConfig.pushButton_tags)
uiWidConfig.textEdit_elements->insertPlainText(QString("$") + uiWidConfig.comboBox_tags->currentText());
else if (sender() == uiWidConfig.pushButton_br)
uiWidConfig.textEdit_elements->insertPlainText(QString("<br>\n"));
else if (sender() == uiWidConfig.pushButton_bold)
uiWidConfig.textEdit_elements->insertPlainText(QString("<b>") + selectedText + QString("</b>"));
else if (sender() == uiWidConfig.pushButton_italic)
uiWidConfig.textEdit_elements->insertPlainText(QString("<i>") + selectedText + QString("</i>"));
else if (sender() == uiWidConfig.pushButton_underline)
uiWidConfig.textEdit_elements->insertPlainText(QString("<u>") + selectedText + QString("</u>"));
else if (sender() == uiWidConfig.pushButton_strike)
uiWidConfig.textEdit_elements->insertPlainText(QString("<s>") + selectedText + QString("</s>"));
else if (sender() == uiWidConfig.pushButton_left)
uiWidConfig.textEdit_elements->insertPlainText(QString("<p align=\"left\">") + selectedText + QString("</p>"));
else if (sender() == uiWidConfig.pushButton_center)
uiWidConfig.textEdit_elements->insertPlainText(QString("<p align=\"center\">") + selectedText + QString("</p>"));
else if (sender() == uiWidConfig.pushButton_right)
uiWidConfig.textEdit_elements->insertPlainText(QString("<p align=\"right\">") + selectedText + QString("</p>"));
else if (sender() == uiWidConfig.pushButton_fill)
uiWidConfig.textEdit_elements->insertPlainText(QString("<p align=\"justify\">") + selectedText + QString("</p>"));
}
#include "desktop-panel.moc"

View File

@ -28,7 +28,7 @@
#include <ui_widget.h>
class QGraphicsLinearLayout;
class QGraphicsGridLayout;
class DesktopPanel;
@ -76,6 +76,8 @@ public slots:
private slots:
void reinit();
void setFontFormating();
void setFormating();
protected:
void createConfigurationInterface(KConfigDialog *parent);
@ -84,9 +86,9 @@ private:
// functions
QList<Plasma::Containment *> getPanels();
QString panelLocationToStr(Plasma::Location loc);
void updateText();
void updateText(const bool first = false);
// ui
QGraphicsLinearLayout *layout;
QGraphicsGridLayout *layout;
QList<CustomPlasmaLabel *> labels;
// debug
bool debug;
@ -100,9 +102,7 @@ private:
Ui::ToggleWindow uiToggleConfig;
// configuration
QMap<QString, QString> configuration;
QStringList desktopNames;
QStringList currentFormatLine;
QStringList formatLine;
QStringList desktopNames, currentFormatLine, formatLine;
};
K_EXPORT_PLASMA_APPLET(desktop-panel, DesktopPanel)

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 02:02+0400\n"
"PO-Revision-Date: 2014-09-08 02:02+0400\n"
"POT-Creation-Date: 2014-09-15 10:02+0400\n"
"PO-Revision-Date: 2014-09-15 10:02+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: English <kde-russian@lists.kde.ru>\n"
"Language: ru\n"
@ -20,7 +20,7 @@ msgstr ""
#: desktop-panel.cpp:141
msgid "Top Edge"
msgstr ""
msgstr "Top Edge"
#: desktop-panel.cpp:143
msgid "Bottom Edge"
@ -38,23 +38,27 @@ msgstr "Right Edge"
msgid "Unknown Position (%1)"
msgstr "Unknown Position (%1)"
#: desktop-panel.cpp:375
#: desktop-panel.cpp:367
msgid "Widget"
msgstr "Widget"
#: desktop-panel.cpp:376
#: desktop-panel.cpp:368
msgid "Appearance"
msgstr "Appearance"
#: desktop-panel.cpp:377
#: desktop-panel.cpp:369
msgid "Toggle panels"
msgstr "Toggle panels"
#: desktop-panel.cpp:489
msgid "Select font"
msgstr "Select font"
#: po/rc.cpp:3 rc.cpp:3
msgid "Active desktop"
msgstr "Active desktop"
#: po/rc.cpp:6 po/rc.cpp:24 rc.cpp:6 rc.cpp:24
#: po/rc.cpp:6 po/rc.cpp:24 po/rc.cpp:63 rc.cpp:6 rc.cpp:24 rc.cpp:63
msgid "Font"
msgstr "Font"
@ -83,57 +87,49 @@ msgid "To control panels please set widget shortcut."
msgstr "To control panels please set widget shortcut."
#: po/rc.cpp:42 rc.cpp:42
msgid "Enable background"
msgstr "Enable background"
#: po/rc.cpp:45 rc.cpp:45
msgid "Vertical layout"
msgstr "Vertical layout"
#: po/rc.cpp:48 rc.cpp:48
msgid "Add stretch to left/top of the layout"
msgstr "Add stretch to left/top of the layout"
#: po/rc.cpp:51 rc.cpp:51
msgid "Add stretch to right/bottom of the layout"
msgstr "Add stretch to right/bottom of the layout"
#: po/rc.cpp:54 rc.cpp:54
msgid "Time interval"
msgstr "Time interval"
#: po/rc.cpp:57 rc.cpp:57
#: po/rc.cpp:45 rc.cpp:45
msgid "Enable background"
msgstr "Enable background"
#: po/rc.cpp:48 rc.cpp:48
msgid "Mark"
msgstr "Mark"
#: po/rc.cpp:60 rc.cpp:60
#: po/rc.cpp:51 rc.cpp:51
msgid "A mark which will be shown if this desktop is active"
msgstr "A mark which will be shown if this desktop is active"
#: po/rc.cpp:63 rc.cpp:63
msgid "Pattern"
msgstr "Pattern"
#: po/rc.cpp:54 rc.cpp:54
msgid "Vertical layout"
msgstr "Vertical layout"
#: po/rc.cpp:66 rc.cpp:66
msgid ""
"$mark - show mark if the current desktop is active\n"
"$name - desktop name\n"
"$number - desktop number\n"
"$total - total number of desktops"
msgstr ""
"$mark - show mark if the current desktop is active\n"
"$name - desktop name\n"
"$number - desktop number\n"
"$total - total number of desktops"
#: po/rc.cpp:72 rc.cpp:72
#: po/rc.cpp:57 rc.cpp:57
msgid "Command to change desktop"
msgstr "Command to change desktop"
#: po/rc.cpp:75 rc.cpp:75
#: po/rc.cpp:60 rc.cpp:60
msgid "Command which will change the current desktop"
msgstr "Command which will change the current desktop"
#: po/rc.cpp:66 rc.cpp:66
msgid "Ctrl+B"
msgstr "Ctrl+B"
#: po/rc.cpp:69 rc.cpp:69
msgid "Ctrl+I"
msgstr "Ctrl+I"
#: po/rc.cpp:72 rc.cpp:72
msgid "Ctrl+U"
msgstr "Ctrl+U"
#: po/rc.cpp:75 rc.cpp:75
msgid "Add"
msgstr "Add"
#: po/rc.cpp:76 rc.cpp:76
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
@ -144,12 +140,29 @@ msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "esalexeev@gmail.com"
#~ msgid "Add stretch to left/top of the layout"
#~ msgstr "Add stretch to left/top of the layout"
#~ msgid "Add stretch to right/bottom of the layout"
#~ msgstr "Add stretch to right/bottom of the layout"
#~ msgid "Pattern"
#~ msgstr "Pattern"
#~ msgid ""
#~ "$mark - show mark if the current desktop is active\n"
#~ "$name - desktop name\n"
#~ "$number - desktop number\n"
#~ "$total - total number of desktops"
#~ msgstr ""
#~ "$mark - show mark if the current desktop is active\n"
#~ "$name - desktop name\n"
#~ "$number - desktop number\n"
#~ "$total - total number of desktops"
#~ msgid "Set font family"
#~ msgstr "Set font family"
#~ msgid "Set font size"
#~ msgstr "Set font size"
#~ msgid "Set font color"
#~ msgstr "Set font color"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 02:02+0400\n"
"POT-Creation-Date: 2014-09-15 10:02+0400\n"
"PO-Revision-Date: 2014-06-05 10:21+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: Spanish <kde-spanish@lists.kde.ru>\n"
@ -38,23 +38,27 @@ msgstr ""
msgid "Unknown Position (%1)"
msgstr ""
#: desktop-panel.cpp:375
#: desktop-panel.cpp:367
msgid "Widget"
msgstr "Widget"
#: desktop-panel.cpp:376
#: desktop-panel.cpp:368
msgid "Appearance"
msgstr "Apariencia"
#: desktop-panel.cpp:377
#: desktop-panel.cpp:369
msgid "Toggle panels"
msgstr ""
#: desktop-panel.cpp:489
msgid "Select font"
msgstr ""
#: po/rc.cpp:3 rc.cpp:3
msgid "Active desktop"
msgstr ""
#: po/rc.cpp:6 po/rc.cpp:24 rc.cpp:6 rc.cpp:24
#: po/rc.cpp:6 po/rc.cpp:24 po/rc.cpp:63 rc.cpp:6 rc.cpp:24 rc.cpp:63
msgid "Font"
msgstr "Fuente"
@ -83,53 +87,49 @@ msgid "To control panels please set widget shortcut."
msgstr ""
#: po/rc.cpp:42 rc.cpp:42
msgid "Enable background"
msgstr ""
#: po/rc.cpp:45 rc.cpp:45
msgid "Vertical layout"
msgstr "Orientación vertical"
#: po/rc.cpp:48 rc.cpp:48
msgid "Add stretch to left/top of the layout"
msgstr "Añadir extensión a la izquierda/superior de la distribución"
#: po/rc.cpp:51 rc.cpp:51
msgid "Add stretch to right/bottom of the layout"
msgstr "Añadir extensión a la derecha/inferior de la distribución"
#: po/rc.cpp:54 rc.cpp:54
msgid "Time interval"
msgstr "Intervalo de tiempo"
#: po/rc.cpp:57 rc.cpp:57
#: po/rc.cpp:45 rc.cpp:45
msgid "Enable background"
msgstr ""
#: po/rc.cpp:48 rc.cpp:48
msgid "Mark"
msgstr ""
#: po/rc.cpp:60 rc.cpp:60
#: po/rc.cpp:51 rc.cpp:51
msgid "A mark which will be shown if this desktop is active"
msgstr ""
#: po/rc.cpp:63 rc.cpp:63
msgid "Pattern"
msgstr ""
#: po/rc.cpp:54 rc.cpp:54
msgid "Vertical layout"
msgstr "Orientación vertical"
#: po/rc.cpp:66 rc.cpp:66
msgid ""
"$mark - show mark if the current desktop is active\n"
"$name - desktop name\n"
"$number - desktop number\n"
"$total - total number of desktops"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
#: po/rc.cpp:57 rc.cpp:57
msgid "Command to change desktop"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
#: po/rc.cpp:60 rc.cpp:60
msgid "Command which will change the current desktop"
msgstr ""
#: po/rc.cpp:66 rc.cpp:66
msgid "Ctrl+B"
msgstr ""
#: po/rc.cpp:69 rc.cpp:69
msgid "Ctrl+I"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
msgid "Ctrl+U"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
msgid "Add"
msgstr ""
#: po/rc.cpp:76 rc.cpp:76
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
@ -139,3 +139,9 @@ msgstr "Tu nombre"
msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "Tus correos"
#~ msgid "Add stretch to left/top of the layout"
#~ msgstr "Añadir extensión a la izquierda/superior de la distribución"
#~ msgid "Add stretch to right/bottom of the layout"
#~ msgstr "Añadir extensión a la derecha/inferior de la distribución"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 02:02+0400\n"
"POT-Creation-Date: 2014-09-15 10:02+0400\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"
@ -39,23 +39,27 @@ msgstr ""
msgid "Unknown Position (%1)"
msgstr ""
#: desktop-panel.cpp:375
#: desktop-panel.cpp:367
msgid "Widget"
msgstr "Widget"
#: desktop-panel.cpp:376
#: desktop-panel.cpp:368
msgid "Appearance"
msgstr "Apparence"
#: desktop-panel.cpp:377
#: desktop-panel.cpp:369
msgid "Toggle panels"
msgstr ""
#: desktop-panel.cpp:489
msgid "Select font"
msgstr ""
#: po/rc.cpp:3 rc.cpp:3
msgid "Active desktop"
msgstr ""
#: po/rc.cpp:6 po/rc.cpp:24 rc.cpp:6 rc.cpp:24
#: po/rc.cpp:6 po/rc.cpp:24 po/rc.cpp:63 rc.cpp:6 rc.cpp:24 rc.cpp:63
msgid "Font"
msgstr "Police"
@ -84,53 +88,49 @@ msgid "To control panels please set widget shortcut."
msgstr ""
#: po/rc.cpp:42 rc.cpp:42
msgid "Enable background"
msgstr ""
#: po/rc.cpp:45 rc.cpp:45
msgid "Vertical layout"
msgstr "Positionnement vertical"
#: po/rc.cpp:48 rc.cpp:48
msgid "Add stretch to left/top of the layout"
msgstr "Étirer le positionnement vers haut/gauche"
#: po/rc.cpp:51 rc.cpp:51
msgid "Add stretch to right/bottom of the layout"
msgstr "Étirer le positionnement vers bas/droite"
#: po/rc.cpp:54 rc.cpp:54
msgid "Time interval"
msgstr "Intervalle"
#: po/rc.cpp:57 rc.cpp:57
#: po/rc.cpp:45 rc.cpp:45
msgid "Enable background"
msgstr ""
#: po/rc.cpp:48 rc.cpp:48
msgid "Mark"
msgstr ""
#: po/rc.cpp:60 rc.cpp:60
#: po/rc.cpp:51 rc.cpp:51
msgid "A mark which will be shown if this desktop is active"
msgstr ""
#: po/rc.cpp:63 rc.cpp:63
msgid "Pattern"
msgstr ""
#: po/rc.cpp:54 rc.cpp:54
msgid "Vertical layout"
msgstr "Positionnement vertical"
#: po/rc.cpp:66 rc.cpp:66
msgid ""
"$mark - show mark if the current desktop is active\n"
"$name - desktop name\n"
"$number - desktop number\n"
"$total - total number of desktops"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
#: po/rc.cpp:57 rc.cpp:57
msgid "Command to change desktop"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
#: po/rc.cpp:60 rc.cpp:60
msgid "Command which will change the current desktop"
msgstr ""
#: po/rc.cpp:66 rc.cpp:66
msgid "Ctrl+B"
msgstr ""
#: po/rc.cpp:69 rc.cpp:69
msgid "Ctrl+I"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
msgid "Ctrl+U"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
msgid "Add"
msgstr ""
#: po/rc.cpp:76 rc.cpp:76
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
@ -140,3 +140,9 @@ msgstr "Evgeniy Alekseev"
msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "esalexeev@gmail.com"
#~ msgid "Add stretch to left/top of the layout"
#~ msgstr "Étirer le positionnement vers haut/gauche"
#~ msgid "Add stretch to right/bottom of the layout"
#~ msgstr "Étirer le positionnement vers bas/droite"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 02:02+0400\n"
"POT-Creation-Date: 2014-09-15 10:02+0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -37,23 +37,27 @@ msgstr ""
msgid "Unknown Position (%1)"
msgstr ""
#: desktop-panel.cpp:375
#: desktop-panel.cpp:367
msgid "Widget"
msgstr ""
#: desktop-panel.cpp:376
#: desktop-panel.cpp:368
msgid "Appearance"
msgstr ""
#: desktop-panel.cpp:377
#: desktop-panel.cpp:369
msgid "Toggle panels"
msgstr ""
#: desktop-panel.cpp:489
msgid "Select font"
msgstr ""
#: po/rc.cpp:3 rc.cpp:3
msgid "Active desktop"
msgstr ""
#: po/rc.cpp:6 po/rc.cpp:24 rc.cpp:6 rc.cpp:24
#: po/rc.cpp:6 po/rc.cpp:24 po/rc.cpp:63 rc.cpp:6 rc.cpp:24 rc.cpp:63
msgid "Font"
msgstr ""
@ -82,53 +86,49 @@ msgid "To control panels please set widget shortcut."
msgstr ""
#: po/rc.cpp:42 rc.cpp:42
msgid "Enable background"
msgstr ""
#: po/rc.cpp:45 rc.cpp:45
msgid "Vertical layout"
msgstr ""
#: po/rc.cpp:48 rc.cpp:48
msgid "Add stretch to left/top of the layout"
msgstr ""
#: po/rc.cpp:51 rc.cpp:51
msgid "Add stretch to right/bottom of the layout"
msgstr ""
#: po/rc.cpp:54 rc.cpp:54
msgid "Time interval"
msgstr ""
#: po/rc.cpp:57 rc.cpp:57
#: po/rc.cpp:45 rc.cpp:45
msgid "Enable background"
msgstr ""
#: po/rc.cpp:48 rc.cpp:48
msgid "Mark"
msgstr ""
#: po/rc.cpp:60 rc.cpp:60
#: po/rc.cpp:51 rc.cpp:51
msgid "A mark which will be shown if this desktop is active"
msgstr ""
#: po/rc.cpp:63 rc.cpp:63
msgid "Pattern"
#: po/rc.cpp:54 rc.cpp:54
msgid "Vertical layout"
msgstr ""
#: po/rc.cpp:66 rc.cpp:66
msgid ""
"$mark - show mark if the current desktop is active\n"
"$name - desktop name\n"
"$number - desktop number\n"
"$total - total number of desktops"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
#: po/rc.cpp:57 rc.cpp:57
msgid "Command to change desktop"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
#: po/rc.cpp:60 rc.cpp:60
msgid "Command which will change the current desktop"
msgstr ""
#: po/rc.cpp:66 rc.cpp:66
msgid "Ctrl+B"
msgstr ""
#: po/rc.cpp:69 rc.cpp:69
msgid "Ctrl+I"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
msgid "Ctrl+U"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
msgid "Add"
msgstr ""
#: po/rc.cpp:76 rc.cpp:76
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 02:02+0400\n"
"POT-Creation-Date: 2014-09-15 10:02+0400\n"
"PO-Revision-Date: 2014-06-09 01:47+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: Brazilian Portuguese <kde-russian@lists.kde.ru>\n"
@ -37,23 +37,27 @@ msgstr ""
msgid "Unknown Position (%1)"
msgstr ""
#: desktop-panel.cpp:375
#: desktop-panel.cpp:367
msgid "Widget"
msgstr "Widget"
#: desktop-panel.cpp:376
#: desktop-panel.cpp:368
msgid "Appearance"
msgstr "Aparência"
#: desktop-panel.cpp:377
#: desktop-panel.cpp:369
msgid "Toggle panels"
msgstr ""
#: desktop-panel.cpp:489
msgid "Select font"
msgstr ""
#: po/rc.cpp:3 rc.cpp:3
msgid "Active desktop"
msgstr ""
#: po/rc.cpp:6 po/rc.cpp:24 rc.cpp:6 rc.cpp:24
#: po/rc.cpp:6 po/rc.cpp:24 po/rc.cpp:63 rc.cpp:6 rc.cpp:24 rc.cpp:63
msgid "Font"
msgstr "Tamanho da fonte"
@ -82,53 +86,49 @@ msgid "To control panels please set widget shortcut."
msgstr ""
#: po/rc.cpp:42 rc.cpp:42
msgid "Enable background"
msgstr ""
#: po/rc.cpp:45 rc.cpp:45
msgid "Vertical layout"
msgstr "Layout vertical"
#: po/rc.cpp:48 rc.cpp:48
msgid "Add stretch to left/top of the layout"
msgstr "Adicionar esticamento à esquerda/topo do layout"
#: po/rc.cpp:51 rc.cpp:51
msgid "Add stretch to right/bottom of the layout"
msgstr "Adicionar esticamento à direita/inferior do layout"
#: po/rc.cpp:54 rc.cpp:54
msgid "Time interval"
msgstr "Intervalo de tempo"
#: po/rc.cpp:57 rc.cpp:57
#: po/rc.cpp:45 rc.cpp:45
msgid "Enable background"
msgstr ""
#: po/rc.cpp:48 rc.cpp:48
msgid "Mark"
msgstr ""
#: po/rc.cpp:60 rc.cpp:60
#: po/rc.cpp:51 rc.cpp:51
msgid "A mark which will be shown if this desktop is active"
msgstr ""
#: po/rc.cpp:63 rc.cpp:63
msgid "Pattern"
msgstr ""
#: po/rc.cpp:54 rc.cpp:54
msgid "Vertical layout"
msgstr "Layout vertical"
#: po/rc.cpp:66 rc.cpp:66
msgid ""
"$mark - show mark if the current desktop is active\n"
"$name - desktop name\n"
"$number - desktop number\n"
"$total - total number of desktops"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
#: po/rc.cpp:57 rc.cpp:57
msgid "Command to change desktop"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
#: po/rc.cpp:60 rc.cpp:60
msgid "Command which will change the current desktop"
msgstr ""
#: po/rc.cpp:66 rc.cpp:66
msgid "Ctrl+B"
msgstr ""
#: po/rc.cpp:69 rc.cpp:69
msgid "Ctrl+I"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
msgid "Ctrl+U"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
msgid "Add"
msgstr ""
#: po/rc.cpp:76 rc.cpp:76
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
@ -138,3 +138,9 @@ msgstr "under"
msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "dreanazous@gmail.com"
#~ msgid "Add stretch to left/top of the layout"
#~ msgstr "Adicionar esticamento à esquerda/topo do layout"
#~ msgid "Add stretch to right/bottom of the layout"
#~ msgstr "Adicionar esticamento à direita/inferior do layout"

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 02:02+0400\n"
"PO-Revision-Date: 2014-09-08 02:03+0400\n"
"POT-Creation-Date: 2014-09-15 10:02+0400\n"
"PO-Revision-Date: 2014-09-15 10:03+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
"Language: ru\n"
@ -38,23 +38,27 @@ msgstr "Правый край"
msgid "Unknown Position (%1)"
msgstr "Неизвестное положение (%1)"
#: desktop-panel.cpp:375
#: desktop-panel.cpp:367
msgid "Widget"
msgstr "Виджет"
#: desktop-panel.cpp:376
#: desktop-panel.cpp:368
msgid "Appearance"
msgstr "Внешний вид"
#: desktop-panel.cpp:377
#: desktop-panel.cpp:369
msgid "Toggle panels"
msgstr "Скрыть панели"
#: desktop-panel.cpp:489
msgid "Select font"
msgstr "Выберете шрифт"
#: po/rc.cpp:3 rc.cpp:3
msgid "Active desktop"
msgstr "Активный рабочий стол"
#: po/rc.cpp:6 po/rc.cpp:24 rc.cpp:6 rc.cpp:24
#: po/rc.cpp:6 po/rc.cpp:24 po/rc.cpp:63 rc.cpp:6 rc.cpp:24 rc.cpp:63
msgid "Font"
msgstr "Шрифт"
@ -83,57 +87,49 @@ msgid "To control panels please set widget shortcut."
msgstr "Чтобы управлять панелями, настройте комбинацию клавиш."
#: po/rc.cpp:42 rc.cpp:42
msgid "Enable background"
msgstr "Включить фон"
#: po/rc.cpp:45 rc.cpp:45
msgid "Vertical layout"
msgstr "Вертикальная разметка"
#: po/rc.cpp:48 rc.cpp:48
msgid "Add stretch to left/top of the layout"
msgstr "Добавить пустое место слева/сверху виджета"
#: po/rc.cpp:51 rc.cpp:51
msgid "Add stretch to right/bottom of the layout"
msgstr "Добавить пустое место справа/снизу виджета"
#: po/rc.cpp:54 rc.cpp:54
msgid "Time interval"
msgstr "Интервал обновления"
#: po/rc.cpp:57 rc.cpp:57
#: po/rc.cpp:45 rc.cpp:45
msgid "Enable background"
msgstr "Включить фон"
#: po/rc.cpp:48 rc.cpp:48
msgid "Mark"
msgstr "Метка"
#: po/rc.cpp:60 rc.cpp:60
#: po/rc.cpp:51 rc.cpp:51
msgid "A mark which will be shown if this desktop is active"
msgstr "Метка, которая будет показана, если данный рабочий стол активен"
#: po/rc.cpp:63 rc.cpp:63
msgid "Pattern"
msgstr "Шаблон"
#: po/rc.cpp:54 rc.cpp:54
msgid "Vertical layout"
msgstr "Вертикальная разметка"
#: po/rc.cpp:66 rc.cpp:66
msgid ""
"$mark - show mark if the current desktop is active\n"
"$name - desktop name\n"
"$number - desktop number\n"
"$total - total number of desktops"
msgstr ""
"$mark - показать метку, если данный рабочий стол активен\n"
"$name - имя рабочего стола\n"
"$number - номер рабочего стола\n"
"$total - общее число рабочий столов"
#: po/rc.cpp:72 rc.cpp:72
#: po/rc.cpp:57 rc.cpp:57
msgid "Command to change desktop"
msgstr "Команда"
#: po/rc.cpp:75 rc.cpp:75
#: po/rc.cpp:60 rc.cpp:60
msgid "Command which will change the current desktop"
msgstr "Команда которая изменит текущий рабочий стол"
#: po/rc.cpp:66 rc.cpp:66
msgid "Ctrl+B"
msgstr "Ctrl+B"
#: po/rc.cpp:69 rc.cpp:69
msgid "Ctrl+I"
msgstr "Ctrl+I"
#: po/rc.cpp:72 rc.cpp:72
msgid "Ctrl+U"
msgstr "Ctrl+U"
#: po/rc.cpp:75 rc.cpp:75
msgid "Add"
msgstr "Добавить"
#: po/rc.cpp:76 rc.cpp:76
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
@ -144,3 +140,22 @@ msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "esalexeev@gmail.com"
#~ msgid "Add stretch to left/top of the layout"
#~ msgstr "Добавить пустое место слева/сверху виджета"
#~ msgid "Add stretch to right/bottom of the layout"
#~ msgstr "Добавить пустое место справа/снизу виджета"
#~ msgid "Pattern"
#~ msgstr "Шаблон"
#~ msgid ""
#~ "$mark - show mark if the current desktop is active\n"
#~ "$name - desktop name\n"
#~ "$number - desktop number\n"
#~ "$total - total number of desktops"
#~ msgstr ""
#~ "$mark - показать метку, если данный рабочий стол активен\n"
#~ "$name - имя рабочего стола\n"
#~ "$number - номер рабочего стола\n"
#~ "$total - общее число рабочий столов"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-08 02:02+0400\n"
"POT-Creation-Date: 2014-09-15 10:02+0400\n"
"PO-Revision-Date: 2014-06-06 01:23+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: Ukrainian <kde-ukrainian@lists.kde.ru>\n"
@ -38,23 +38,27 @@ msgstr ""
msgid "Unknown Position (%1)"
msgstr ""
#: desktop-panel.cpp:375
#: desktop-panel.cpp:367
msgid "Widget"
msgstr "Віджет"
#: desktop-panel.cpp:376
#: desktop-panel.cpp:368
msgid "Appearance"
msgstr "Зовнішній вигляд"
#: desktop-panel.cpp:377
#: desktop-panel.cpp:369
msgid "Toggle panels"
msgstr ""
#: desktop-panel.cpp:489
msgid "Select font"
msgstr ""
#: po/rc.cpp:3 rc.cpp:3
msgid "Active desktop"
msgstr ""
#: po/rc.cpp:6 po/rc.cpp:24 rc.cpp:6 rc.cpp:24
#: po/rc.cpp:6 po/rc.cpp:24 po/rc.cpp:63 rc.cpp:6 rc.cpp:24 rc.cpp:63
msgid "Font"
msgstr "Шрифт"
@ -83,53 +87,49 @@ msgid "To control panels please set widget shortcut."
msgstr ""
#: po/rc.cpp:42 rc.cpp:42
msgid "Enable background"
msgstr ""
#: po/rc.cpp:45 rc.cpp:45
msgid "Vertical layout"
msgstr "Вертикальна розмітка"
#: po/rc.cpp:48 rc.cpp:48
msgid "Add stretch to left/top of the layout"
msgstr "Додати порожнє місце ліворуч/вгорі віджету"
#: po/rc.cpp:51 rc.cpp:51
msgid "Add stretch to right/bottom of the layout"
msgstr "Додати порожнє місце праворуч/внизу віджету"
#: po/rc.cpp:54 rc.cpp:54
msgid "Time interval"
msgstr "Інтервал оновлення"
#: po/rc.cpp:57 rc.cpp:57
#: po/rc.cpp:45 rc.cpp:45
msgid "Enable background"
msgstr ""
#: po/rc.cpp:48 rc.cpp:48
msgid "Mark"
msgstr ""
#: po/rc.cpp:60 rc.cpp:60
#: po/rc.cpp:51 rc.cpp:51
msgid "A mark which will be shown if this desktop is active"
msgstr ""
#: po/rc.cpp:63 rc.cpp:63
msgid "Pattern"
msgstr ""
#: po/rc.cpp:54 rc.cpp:54
msgid "Vertical layout"
msgstr "Вертикальна розмітка"
#: po/rc.cpp:66 rc.cpp:66
msgid ""
"$mark - show mark if the current desktop is active\n"
"$name - desktop name\n"
"$number - desktop number\n"
"$total - total number of desktops"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
#: po/rc.cpp:57 rc.cpp:57
msgid "Command to change desktop"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
#: po/rc.cpp:60 rc.cpp:60
msgid "Command which will change the current desktop"
msgstr ""
#: po/rc.cpp:66 rc.cpp:66
msgid "Ctrl+B"
msgstr ""
#: po/rc.cpp:69 rc.cpp:69
msgid "Ctrl+I"
msgstr ""
#: po/rc.cpp:72 rc.cpp:72
msgid "Ctrl+U"
msgstr ""
#: po/rc.cpp:75 rc.cpp:75
msgid "Add"
msgstr ""
#: po/rc.cpp:76 rc.cpp:76
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
@ -139,3 +139,9 @@ msgstr "Slobodyan Victor"
msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "sarumyan@i.ua"
#~ msgid "Add stretch to left/top of the layout"
#~ msgstr "Додати порожнє місце ліворуч/вгорі віджету"
#~ msgid "Add stretch to right/bottom of the layout"
#~ msgstr "Додати порожнє місце праворуч/внизу віджету"

View File

@ -0,0 +1,161 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
#
# Steve Lemuel <wlemuel@hotmail.com>, 2014.
# Evgeniy Alekseev <esalexeev@gmail.com>, 2014.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: https://github.com/arcan1s/awesome-widgets/issues\n"
"POT-Creation-Date: 2014-09-15 10:02+0400\n"
"PO-Revision-Date: 2014-09-15 10:04+0400\n"
"Last-Translator: Evgeniy Alekseev <esalexeev@gmail.com>\n"
"Language-Team: American English <kde-russian@lists.kde.ru>\n"
"Language: en_US\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Lokalize 1.5\n"
#: desktop-panel.cpp:141
msgid "Top Edge"
msgstr "顶部边缘"
#: desktop-panel.cpp:143
msgid "Bottom Edge"
msgstr "底部边缘"
#: desktop-panel.cpp:145
msgid "Left Edge"
msgstr "左端边缘"
#: desktop-panel.cpp:147
msgid "Right Edge"
msgstr "右端边缘"
#: desktop-panel.cpp:149
msgid "Unknown Position (%1)"
msgstr "未知位置(%1"
#: desktop-panel.cpp:367
msgid "Widget"
msgstr "窗口小部件"
#: desktop-panel.cpp:368
msgid "Appearance"
msgstr "外观"
#: desktop-panel.cpp:369
msgid "Toggle panels"
msgstr "控制面板状态切换(显示/隐藏)"
#: desktop-panel.cpp:489
msgid "Select font"
msgstr "选择字体"
#: po/rc.cpp:3 rc.cpp:3
msgid "Active desktop"
msgstr "当前激活桌面"
#: po/rc.cpp:6 po/rc.cpp:24 po/rc.cpp:63 rc.cpp:6 rc.cpp:24 rc.cpp:63
msgid "Font"
msgstr "字体"
#: po/rc.cpp:9 po/rc.cpp:27 rc.cpp:9 rc.cpp:27
msgid "Font size"
msgstr "字体大小"
#: po/rc.cpp:12 po/rc.cpp:30 rc.cpp:12 rc.cpp:30
msgid "Font color"
msgstr "字体颜色"
#: po/rc.cpp:15 po/rc.cpp:33 rc.cpp:15 rc.cpp:33
msgid "Font weight"
msgstr "字体宽度"
#: po/rc.cpp:18 po/rc.cpp:36 rc.cpp:18 rc.cpp:36
msgid "Font style"
msgstr "字体样式"
#: po/rc.cpp:21 rc.cpp:21
msgid "Inactive desktop"
msgstr "未激活桌面"
#: po/rc.cpp:39 rc.cpp:39
msgid "To control panels please set widget shortcut."
msgstr "设置控制面板的快捷键"
#: po/rc.cpp:42 rc.cpp:42
msgid "Time interval"
msgstr "时间间隔"
#: po/rc.cpp:45 rc.cpp:45
msgid "Enable background"
msgstr "启用背景"
#: po/rc.cpp:48 rc.cpp:48
msgid "Mark"
msgstr "标记"
#: po/rc.cpp:51 rc.cpp:51
msgid "A mark which will be shown if this desktop is active"
msgstr "当前桌面处于激活状态下,该当标记显示。 "
#: po/rc.cpp:54 rc.cpp:54
msgid "Vertical layout"
msgstr "垂直布局"
#: po/rc.cpp:57 rc.cpp:57
msgid "Command to change desktop"
msgstr "桌面切换命令"
#: po/rc.cpp:60 rc.cpp:60
msgid "Command which will change the current desktop"
msgstr "当前桌面更改命令"
#: po/rc.cpp:66 rc.cpp:66
msgid "Ctrl+B"
msgstr "Ctrl+B"
#: po/rc.cpp:69 rc.cpp:69
msgid "Ctrl+I"
msgstr "Ctrl+I"
#: po/rc.cpp:72 rc.cpp:72
msgid "Ctrl+U"
msgstr "Ctrl+U"
#: po/rc.cpp:75 rc.cpp:75
msgid "Add"
msgstr "添加"
#: po/rc.cpp:76 rc.cpp:76
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
msgstr "用户名"
#: po/rc.cpp:77 rc.cpp:77
msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "用户邮箱"
#~ msgid "Add stretch to left/top of the layout"
#~ msgstr "添加左上角拉伸"
#~ msgid "Add stretch to right/bottom of the layout"
#~ msgstr "添加右下角拉伸"
#~ msgid "Pattern"
#~ msgstr "样式"
#~ msgid ""
#~ "$mark - show mark if the current desktop is active\n"
#~ "$name - desktop name\n"
#~ "$number - desktop number\n"
#~ "$total - total number of desktops"
#~ msgstr ""
#~ "$mark - 当前桌面处于激活状态时,显示标记\n"
#~ "$name - 桌面名称\n"
#~ "$number - 桌面数量\n"
#~ "$total - 桌面总数量"

View File

@ -6,13 +6,13 @@
<rect>
<x>0</x>
<y>0</y>
<width>480</width>
<height>343</height>
<width>729</width>
<height>428</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>480</width>
<width>700</width>
<height>320</height>
</size>
</property>
@ -20,267 +20,386 @@
<string notr="true">Widget</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QScrollArea" name="scrollArea">
<property name="widgetResizable">
<bool>true</bool>
<item row="4" column="0">
<layout class="QHBoxLayout" name="layout_interval">
<item>
<widget class="QLabel" name="label_interval">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Time interval</string>
</property>
</widget>
</item>
<item>
<spacer name="spacer_interval">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QSpinBox" name="spinBox_interval">
<property name="minimumSize">
<size>
<width>180</width>
<height>0</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>10000</number>
</property>
<property name="singleStep">
<number>500</number>
</property>
<property name="value">
<number>1000</number>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="checkBox_background">
<property name="text">
<string>Enable background</string>
</property>
<widget class="QWidget" name="scrollAreaWidgetContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>464</width>
<height>327</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
</widget>
</item>
<item row="5" column="0">
<layout class="QHBoxLayout" name="layout_mark">
<item>
<widget class="QLabel" name="label_mark">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Mark</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="comboBox_mark">
<property name="toolTip">
<string>A mark which will be shown if this desktop is active</string>
</property>
<property name="editable">
<bool>true</bool>
</property>
<item>
<widget class="QCheckBox" name="checkBox_background">
<property name="text">
<string>Enable background</string>
</property>
</widget>
<property name="text">
<string notr="true">#</string>
</property>
</item>
<item>
<widget class="QCheckBox" name="checkBox_layout">
<property name="text">
<string>Vertical layout</string>
</property>
</widget>
<property name="text">
<string notr="true">$</string>
</property>
</item>
<item>
<widget class="QCheckBox" name="checkBox_leftStretch">
<property name="text">
<string>Add stretch to left/top of the layout</string>
</property>
</widget>
<property name="text">
<string notr="true">%</string>
</property>
</item>
<item>
<widget class="QCheckBox" name="checkBox_rightStretch">
<property name="text">
<string>Add stretch to right/bottom of the layout</string>
</property>
</widget>
<property name="text">
<string notr="true">&amp;</string>
</property>
</item>
<item>
<layout class="QHBoxLayout" name="layout_interval">
<item>
<widget class="QLabel" name="label_interval">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Time interval</string>
</property>
</widget>
</item>
<item>
<spacer name="spacer_interval">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QSpinBox" name="spinBox_interval">
<property name="minimumSize">
<size>
<width>180</width>
<height>0</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>10000</number>
</property>
<property name="singleStep">
<number>500</number>
</property>
<property name="value">
<number>1000</number>
</property>
</widget>
</item>
</layout>
<property name="text">
<string notr="true">*</string>
</property>
</item>
<item>
<layout class="QHBoxLayout" name="layout_mark">
<item>
<widget class="QLabel" name="label_mark">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Mark</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="comboBox_mark">
<property name="toolTip">
<string>A mark which will be shown if this desktop is active</string>
</property>
<property name="editable">
<bool>true</bool>
</property>
<item>
<property name="text">
<string notr="true">#</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">$</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">%</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">&amp;</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">*</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">@</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">¤</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">¶</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">·</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">º</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">×</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">†</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">•</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">(current)</string>
</property>
</item>
</widget>
</item>
</layout>
<property name="text">
<string notr="true">@</string>
</property>
</item>
<item>
<layout class="QHBoxLayout" name="layout_pattern">
<item>
<widget class="QLabel" name="label_pattern">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Pattern</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_pattern">
<property name="toolTip">
<string>$mark - show mark if the current desktop is active
$name - desktop name
$number - desktop number
$total - total number of desktops</string>
</property>
</widget>
</item>
</layout>
<property name="text">
<string notr="true">¤</string>
</property>
</item>
<item>
<layout class="QHBoxLayout" name="layout_desktopcmd">
<item>
<widget class="QLabel" name="label_desktopcmd">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Command to change desktop</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_desktopcmd">
<property name="toolTip">
<string>Command which will change the current desktop</string>
</property>
</widget>
</item>
</layout>
<property name="text">
<string notr="true">¶</string>
</property>
</item>
<item>
<spacer name="spacer_widget">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>152</height>
</size>
</property>
</spacer>
<property name="text">
<string notr="true">·</string>
</property>
</item>
</layout>
</widget>
<item>
<property name="text">
<string notr="true">º</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">×</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">†</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">•</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">(current)</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item row="3" column="0">
<widget class="QCheckBox" name="checkBox_layout">
<property name="text">
<string>Vertical layout</string>
</property>
</widget>
</item>
<item row="6" column="0">
<layout class="QHBoxLayout" name="layout_desktopcmd">
<item>
<widget class="QLabel" name="label_desktopcmd">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Command to change desktop</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_desktopcmd">
<property name="toolTip">
<string>Command which will change the current desktop</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="0" column="0">
<layout class="QHBoxLayout" name="layput_mainFormating">
<item>
<widget class="QPushButton" name="pushButton_font">
<property name="text">
<string>Font</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_br">
<property name="icon">
<iconset theme="stock_text_indent">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
</widget>
</item>
<item>
<spacer name="spacer_mainFormatingCenter1">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButton_bold">
<property name="icon">
<iconset theme="format-text-bold">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
<property name="shortcut">
<string>Ctrl+B</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_italic">
<property name="icon">
<iconset theme="format-text-italic">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
<property name="shortcut">
<string>Ctrl+I</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_underline">
<property name="icon">
<iconset theme="format-text-underline">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
<property name="shortcut">
<string>Ctrl+U</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_strike">
<property name="icon">
<iconset theme="format-text-strikethrough">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
</widget>
</item>
<item>
<spacer name="spacer_mainFormatingCenter2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButton_left">
<property name="icon">
<iconset theme="format-justify-left">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_center">
<property name="icon">
<iconset theme="format-justify-center">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_right">
<property name="icon">
<iconset theme="format-justify-right">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_fill">
<property name="icon">
<iconset theme="format-justify-fill">
<normaloff>../awesome-widget</normaloff>../awesome-widget</iconset>
</property>
</widget>
</item>
<item>
<spacer name="spacer_mainFormatingCenter3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QComboBox" name="comboBox_tags">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<item>
<property name="text">
<string notr="true">fullmark</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">mark</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">name</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">number</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">total</string>
</property>
</item>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_tags">
<property name="text">
<string>Add</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<widget class="QTextEdit" name="textEdit_elements">
<property name="lineWrapMode">
<enum>QTextEdit::NoWrap</enum>
</property>
<property name="acceptRichText">
<bool>false</bool>
</property>
</widget>
</item>
</layout>

View File

@ -2,8 +2,7 @@
# $kdehome/share/config/extsysmon.conf
# ACPI devices
#AC=/sys/class/power_supply/AC/online
#BATTERY=/sys/class/power_supply/BAT0/capacity
#ACPIPATH=/sys/class/power_supply/
# Custom command, separator is '@@'
#CUSTOM=curl ip4.telize.com

View File

@ -22,6 +22,7 @@
#include <KDE/KGlobal>
#include <KDE/KStandardDirs>
#include <QDebug>
#include <QDir>
#include <QFile>
#include <QProcessEnvironment>
#include <QRegExp>
@ -171,8 +172,7 @@ void ExtendedSysMon::readConfiguration()
// pre-setup
QMap<QString, QString> rawConfig;
rawConfig[QString("AC")] = QString("/sys/class/power_supply/AC/online");
rawConfig[QString("BATTERY")] = QString("/sys/class/power_supply/BAT0/capacity");
rawConfig[QString("ACPIPATH")] = QString("/sys/class/power_supply/");
rawConfig[QString("CUSTOM")] = QString("curl ip4.telize.com");
rawConfig[QString("DESKTOP")] = QString("");
rawConfig[QString("DESKTOPCMD")] = QString("qdbus org.kde.kwin /KWin currentDesktop");
@ -278,25 +278,42 @@ QMap<QString, QString> ExtendedSysMon::updateConfiguration(const QMap<QString, Q
}
QMap<QString, QVariant> ExtendedSysMon::getBattery(const QString acPath, const QString batPath)
QMap<QString, QVariant> ExtendedSysMon::getBattery(const QString acpiPath)
{
if (debug) qDebug() << PDEBUG;
if (debug) qDebug() << PDEBUG << ":" << "AC path" << acPath;
if (debug) qDebug() << PDEBUG << ":" << "Battery path" << batPath;
if (debug) qDebug() << PDEBUG << ":" << "ACPI path" << acpiPath;
QMap<QString, QVariant> battery;
battery[QString("ac")] = false;
battery[QString("battery")] = 0;
QFile acFile(acPath);
battery[QString("bat0")] = 0;
QFile acFile(acpiPath + QString("/AC/online"));
if (acFile.open(QIODevice::ReadOnly)) {
if (QString(acFile.readLine()).trimmed().toInt() == 1)
battery[QString("ac")] = true;
}
acFile.close();
QFile batFile(batPath);
if (batFile.open(QIODevice::ReadOnly))
battery[QString("battery")] = QString(batFile.readLine()).trimmed().toInt();
batFile.close();
// batterites
QStringList allDevices = QDir(acpiPath).entryList(QDir::Dirs | QDir::NoDotAndDotDot);
QStringList batDevices;
QRegExp batRegexp = QRegExp(QString("BAT.*"));
for (int i=0; i<allDevices.count(); i++)
if (allDevices[i].indexOf(batRegexp) > -1)
batDevices.append(allDevices[i]);
for (int i=0; i<batDevices.count(); i++) {
QFile batFile(acpiPath + QString("/") + batDevices[i] + QString("/capacity"));
if (batFile.open(QIODevice::ReadOnly))
battery[QString("bat") + QString::number(i+1)] = QString(batFile.readLine()).trimmed().toInt();
batFile.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("bat0")) continue;
average += battery[battery.keys()[i]].toInt();
number++;
}
battery[QString("bat0")] = int(average / number);
return battery;
}
@ -571,10 +588,12 @@ bool ExtendedSysMon::updateSourceEvent(const QString &source)
if (debug) qDebug() << PDEBUG << ":" << "Source" << source;
if (source == QString("battery")) {
QMap<QString, QVariant> battery = getBattery(configuration[QString("AC")],
configuration[QString("BATTERY")]);
QMap<QString, QVariant> battery = getBattery(configuration[QString("ACPIPATH")]);
setData(source, QString("ac"), battery[QString("ac")].toBool());
setData(source, QString("bat"), battery[QString("battery")].toInt());
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());
}
} else if (source == QString("custom")) {
for (int i=0; i<configuration[QString("CUSTOM")].split(QString("@@"), QString::SkipEmptyParts).count(); i++) {
setData(source, QString("custom") + QString::number(i),

View File

@ -28,7 +28,7 @@ class ExtendedSysMon : public Plasma::DataEngine
public:
ExtendedSysMon(QObject *parent, const QVariantList &args);
// update functions
QMap<QString, QVariant> getBattery(const QString acPath, const QString batPath);
QMap<QString, QVariant> getBattery(const QString acpiPath);
QMap<QString, QVariant> getCurrentDesktop(const QString cmd);
QString getCustomCmd(const QString cmd);
float getGpu(const QString device);