diff --git a/chatstate/chatstate.py b/chatstate/chatstate.py
index be0c7d637956cd2d0788d6a60127c7a1107b7857..159a627fa3b06e5629bf6028b8d29dbd631e0c4e 100644
--- a/chatstate/chatstate.py
+++ b/chatstate/chatstate.py
@@ -15,6 +15,10 @@ class ChatstatePlugin(GajimPlugin):
 
     @log_calls('ChatstatePlugin')
     def init(self):
+        self.description = _('Chat State Notifications in roster.'
+'Font color of the contact varies depending on the chat state.\n'
+'The plugin does not work if you use custom font color for contacts in roster.\n'
+'http://trac.gajim.org/ticket/3628.\nhttp://xmpp.org/extensions/xep-0085.html')
         self.config_dialog = None  # ChatstatePluginConfigDialog(self)
         self.events_handlers = {'chatstate-received':
                                     (ged.GUI2, self.chatstate_received), }
diff --git a/clickable_nicknames/clickable_nicknames.py b/clickable_nicknames/clickable_nicknames.py
index 8d48a7083c71bdb74619b58f1a50591598729706..aa61446b4f072b0c816b65dd5e93b515de5a22c9 100644
--- a/clickable_nicknames/clickable_nicknames.py
+++ b/clickable_nicknames/clickable_nicknames.py
@@ -13,6 +13,8 @@ class ClickableNicknames(GajimPlugin):
 
     @log_calls('ClickableNicknamesPlugin')
     def init(self):
+        self.description = _('Clickable nicknames '
+            'in the conversation textview.')
         self.config_dialog = None  # ClickableNicknamesPluginConfigDialog(self)
         self.gui_extension_points = {
                 'chat_control_base': (self.connect_with_chat_control,
diff --git a/clients_icons/clients_icons.py b/clients_icons/clients_icons.py
index 528f23c7b9f6814c91a4faa56455ea2cd277724c..ae9eeefed1e06f57e4acd2af442720145a7735a0 100644
--- a/clients_icons/clients_icons.py
+++ b/clients_icons/clients_icons.py
@@ -131,10 +131,11 @@ clients = {
 
 
 class ClientsIconsPlugin(GajimPlugin):
-    description = _('Shows the client icons in the roster')
 
     @log_calls('ClientsIconsPlugin')
     def init(self):
+        self.description = _('Shows the client icons in the roster'
+            ' and in groupchats.\nDepends: Gajim > r12506')
         self.pos_list = [_('after statusicon'), _('before avatar')]
         self.events_handlers = {'presence-received':
                                     (ged.POSTGUI, self.presence_received),
@@ -168,8 +169,10 @@ class ClientsIconsPlugin(GajimPlugin):
             return
         if roster.model[child_iters[0]][self.renderer_num] is None:
             caps = contact.client_caps._node
-            if not caps and jid == 'juick@juick.com':
+            if jid == 'juick@juick.com':
                 caps = 'http://juick.com/caps'
+            elif jid == 'psto@psto.net':
+                caps = 'psto@psto.net'
             self.set_icon(roster.model, child_iters[0], self.renderer_num,
                 caps)
 
diff --git a/flashing_keyboard/flashing_keyboard.py b/flashing_keyboard/flashing_keyboard.py
index f9aad456a5030b8b75431aafc9403b58f2c6b794..3681910911f9a6b5e424b1b0c6c211069fd1a94f 100644
--- a/flashing_keyboard/flashing_keyboard.py
+++ b/flashing_keyboard/flashing_keyboard.py
@@ -13,6 +13,7 @@ from plugins.gui import GajimPluginConfigDialog
 class FlashingKeyboard(GajimPlugin):
     @log_calls('FlashingKeyboard')
     def init(self):
+        self.description = _('Flashing keyboard led if there is unread messages')
         self.config_dialog = FlashingKeyboardPluginConfigDialog(self)
         self.config_default_values = {
                             'command1': ("xset led named 'Scroll Lock'", ''),
diff --git a/gnome_session_manager/plugin.py b/gnome_session_manager/plugin.py
index 34f80e002c893b7d4244dbca986e4f6b2697211a..5f163e9f529faa69c4f86c39e014dcc816e5cf94 100644
--- a/gnome_session_manager/plugin.py
+++ b/gnome_session_manager/plugin.py
@@ -32,6 +32,7 @@ class GnomeSessionManagerPlugin(GajimPlugin):
 
     @log_calls('GnomeSessionManagerPlugin')
     def init(self):
+        self.description = _('Set and react on GNOME Session presence settings')
         self.config_dialog = None
         self.events_handlers = {}
 
diff --git a/gotr/otrmodule.py b/gotr/otrmodule.py
index dbbd9979fd10deb40aa38f7ab3fac443adc0ac16..a82ddcf04a1408b76160d7b1bdfbc39ed7028fee 100644
--- a/gotr/otrmodule.py
+++ b/gotr/otrmodule.py
@@ -40,7 +40,7 @@ DEFAULTFLAGS = {
             'SEND_TAG':True,
             'WHITESPACE_START_AKE':True,
             'ERROR_START_AKE':True,
-        } 
+        }
 
 MMS = 1024
 PROTOCOL = 'xmpp'
@@ -174,7 +174,7 @@ class GajimOtrAccount(potr.context.Account):
 
     def loadTrusts(self, newCtxCb=None):
         ''' load the fingerprint trustdb '''
-        # it has the same format as libotr, therefore the 
+        # it has the same format as libotr, therefore the
         # redundant account / proto field
         try:
             with open(self.keyFilePath + '.fpr', 'r') as fprFile:
@@ -210,6 +210,7 @@ class OtrPlugin(GajimPlugin):
     otr = None
     def init(self):
 
+        self.description = _('See http://www.cypherpunks.ca/otr/')
         self.us = {}
         self.config_dialog = ui.OtrPluginConfigDialog(self)
         self.events_handlers = {}
diff --git a/image/image.py b/image/image.py
index 7a86d7e41f150aac22ee69bffadd662fd00b2d41..5fc4c1aeae71e5af4bfdfe03a9c0caf8128aaa96 100644
--- a/image/image.py
+++ b/image/image.py
@@ -14,6 +14,11 @@ from dialogs import ImageChooserDialog, ErrorDialog
 class ImagePlugin(GajimPlugin):
     @log_calls('ImagePlugin')
     def init(self):
+        self.description = _('This plugin is designed to send '
+            'a small(0 - 40 kb) graphic image to your contact.\n'
+            'Client on the other side must support XEP-0071: XHTML-IM'
+            ' and maintain the scheme data: URI.\n'
+            'Psi+ and Jabbim supported this.')
         self.config_dialog = None  # ImagePluginConfigDialog(self)
         self.controls = []
         self.gui_extension_points = {
diff --git a/juick/manifest.ini b/juick/manifest.ini
index 5f6745902e57604c388101d89a406d7f81e7cd1b..87ddb820922a22ff09ec88fe9658ff32b12813bd 100644
--- a/juick/manifest.ini
+++ b/juick/manifest.ini
@@ -3,7 +3,7 @@ name: Juick
 short_name: Juick
 version: 0.2
 description: Clickable juick links , juick nics, preview juick picturs.
-	The key combination alt + up in the textbox allow insert the number of last message (comment or topic).
+ The key combination alt + up in the textbox allow insert the number of last message (comment or topic).
 authors: Denis Fomin <fominde@gmail.com>, evgen <drujebober@gmail.com>
 homepage: http://trac-plugins.gajim.org/wiki/JuickPlugin
 
diff --git a/juick/plugin.py b/juick/plugin.py
index 4a1246c458e75c48f81f9a97d91229e67b9f0d81..6b48d5089a1fa83d319e6683e63026f69348b3c0 100644
--- a/juick/plugin.py
+++ b/juick/plugin.py
@@ -23,6 +23,10 @@ import common.xmpp
 class JuickPlugin(GajimPlugin):
     @log_calls('JuickPlugin')
     def init(self):
+        self.description = _('Clickable juick links , juick nics, '
+            'preview juick picturs.\nThe key combination alt + up in the '
+            'textbox allow insert the number of last message '
+            '(comment or topic).')
         self.config_dialog = JuickPluginConfigDialog(self)
         self.gui_extension_points = {
                 'chat_control_base': (self.connect_with_chat_control,
diff --git a/now_listen/manifest.ini b/now_listen/manifest.ini
index d43746917deaf6800df2f5d46e57b94115827a37..2dc3f8784a96ed94227a5290e08f7b1b9a8ad3c5 100644
--- a/now_listen/manifest.ini
+++ b/now_listen/manifest.ini
@@ -2,7 +2,6 @@
 name: Now Listen
 short_name: now-listen
 version: 0.1
-description: Copy tune info to conversation input box (alt + n),
- at cursor position
+description: Copy tune info to conversation input box (alt + n) at cursor position
 authors = Denis Fomin <fominde@gmail.com>
 homepage = http://trac-plugins.gajim.org/wiki
diff --git a/now_listen/now_listen.py b/now_listen/now_listen.py
index d5251f8a29f9f844cc681345c91f84f70a85ccd7..87add8a6c7bd555353b81980828ea6861701d26f 100644
--- a/now_listen/now_listen.py
+++ b/now_listen/now_listen.py
@@ -17,6 +17,8 @@ class NowListenPlugin(GajimPlugin):
 
     @log_calls('NowListenPlugin')
     def init(self):
+        self.description = _('Copy tune info to conversation input box '
+            '(alt + n) at cursor position')
         self.config_dialog = NowListenPluginConfigDialog(self)
         self.gui_extension_points = {'chat_control_base':
             (self.connect_with_chat_control, self.disconnect_from_chat_control)}
diff --git a/plagins_translations/manifest.ini b/plagins_translations/manifest.ini
index 027f8be57a03f87b8db7826a8fa39ca4e69d5101..b641d2afda31470b2e32440025cf66ac333e48ab 100644
--- a/plagins_translations/manifest.ini
+++ b/plagins_translations/manifest.ini
@@ -1,7 +1,7 @@
 [info]
 name: Plagins translations
 short_name: plagins_translations
-version: 0.1
+version: 0.2
 description: This plugin contains translations files for Gajim plugins
 authors = Denis Fomin <fominde@gmail.com>
 homepage = http://trac-plugins.gajim.org/wiki/
diff --git a/plagins_translations/plagins_translations.pot b/plagins_translations/plagins_translations.pot
index 011aeed28fe830f1051fa0051f75d638d24b2744..e62e2828ec26a3adfa88d4a47fb12cabc761eb84 100644
--- a/plagins_translations/plagins_translations.pot
+++ b/plagins_translations/plagins_translations.pot
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-09-02 22:48+0400\n"
+"POT-Creation-Date: 2011-09-03 10:08+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,175 +17,243 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: community_plugins/clients_icons/clients_icons.py:134
-msgid "Shows the client icons in the roster"
+#: community_plugins/now_listen/now_listen.py:20
+msgid ""
+"Copy tune info to conversation input box (alt + n),\n"
+"at cursor position"
+msgstr ""
+
+#: community_plugins/clients_icons/clients_icons.py:137
+msgid ""
+"Shows the client icons in the roster and in groupchats.\n"
+"Depends: Gajim > r12506"
 msgstr ""
 
-#: community_plugins/clients_icons/clients_icons.py:138
+#: community_plugins/clients_icons/clients_icons.py:139
 msgid "after statusicon"
 msgstr ""
 
-#: community_plugins/clients_icons/clients_icons.py:138
+#: community_plugins/clients_icons/clients_icons.py:139
 msgid "before avatar"
 msgstr ""
 
-#: community_plugins/image/image.py:45
+#: community_plugins/image/image.py:17
+msgid ""
+"This plugin is designed to send a small(0 - 40 kb) graphic image to your "
+"contact.\n"
+"Client on the other side must support XEP-0071: XHTML-IM and maintain the "
+"scheme data: URI.\n"
+"Psi+ and Jabbim supported this."
+msgstr ""
+
+#: community_plugins/image/image.py:50
 msgid "This contact does not support XHTML_IM"
 msgstr ""
 
-#: community_plugins/image/image.py:47
+#: community_plugins/image/image.py:52
 msgid "Send image"
 msgstr ""
 
-#: community_plugins/image/image.py:81
+#: community_plugins/image/image.py:86
 msgid "File is empty"
 msgstr ""
 
-#: community_plugins/image/image.py:84
+#: community_plugins/image/image.py:89
 msgid "File does not exist"
 msgstr ""
 
-#: community_plugins/image/image.py:90 community_plugins/image/image.py:93
+#: community_plugins/image/image.py:95 community_plugins/image/image.py:98
 msgid "File too big"
 msgstr ""
 
-#: community_plugins/image/image.py:95
+#: community_plugins/image/image.py:100
 msgid "Could not load image"
 msgstr ""
 
-#: community_plugins/set_location/set_location.py:137
+#: community_plugins/chatstate/chatstate.py:18
+msgid ""
+"Chat State Notifications in roster.Font color of the contact varies "
+"depending on the chat state.\n"
+"The plugin does not work if you use custom font color for contacts in "
+"roster.\n"
+"http://trac.gajim.org/ticket/3628.\n"
+"http://xmpp.org/extensions/xep-0085.html"
+msgstr ""
+
+#: community_plugins/ubuntu_integration/plugin.py:51
+msgid ""
+"This plugin integrates Gajim with the Ubuntu Messaging Menu.\n"
+"\n"
+"You must have python-indicate and python-xdg (and Gajim obviously) installed "
+"to enable this plugin.\n"
+"\n"
+"Many thanks to the guys from gajim@conference.gajim.org for answering my "
+"questions :)"
+msgstr ""
+
+#: community_plugins/plagins_translations/plagins_translations.py:17
+msgid "This plugin contains translations files for Gajim plugins"
+msgstr ""
+
+#: community_plugins/set_location/set_location.py:29
+msgid ""
+"Set information about the current geographical or physical location.\n"
+"To be able to specify a location on the built-in card, you must install "
+"python-osmgpsmap > 0.5"
+msgstr ""
+
+#: community_plugins/set_location/set_location.py:141
 msgid ""
 "Click the right mouse button to specify the location, \n"
 "middle mouse button to show / hide the contacts on the map"
 msgstr ""
 
-#: community_plugins/set_location/set_location.py:222
+#: community_plugins/set_location/set_location.py:226
 msgid "Save as Preset"
 msgstr ""
 
-#: community_plugins/set_location/set_location.py:222
+#: community_plugins/set_location/set_location.py:226
 msgid "Please type a name for this preset"
 msgstr ""
 
-#: community_plugins/wrong_layout/plugin.py:22
+#: community_plugins/roster_tweaks/roster_tweaks.py:21
+msgid ""
+"Allows user to tweak roster window appearance (eg. make it compact).\n"
+"Based on ticket #3340:\n"
+"http://trac.gajim.org/ticket/3340.\n"
+"Added ability to quickly change the status message to all connected accounts."
+msgstr ""
+
+#: community_plugins/wrong_layout/plugin.py:15
 msgid "Press alt+r to convert chars typed in wrong layout Rus<>Eng"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:31
+#: community_plugins/clickable_nicknames/clickable_nicknames.py:16
+msgid "Clickable nicknames in the conversation textview."
+msgstr ""
+
+#: community_plugins/juick/plugin.py:26
+msgid ""
+"Clickable juick links , juick nics, preview juick picturs.\n"
+"The key combination alt + up in the textbox allow insert the number of last "
+"message (comment or topic)."
+msgstr ""
+
+#: community_plugins/juick/plugin.py:35
 msgid "Avatar size(10-32)"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:33
+#: community_plugins/juick/plugin.py:37
 #: community_plugins/juick/config_dialog.ui.h:5
 msgid "Preview size(10-512)"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:34
+#: community_plugins/juick/plugin.py:38
 #: community_plugins/juick/config_dialog.ui.h:2
 msgid "Juick link color"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:191
+#: community_plugins/juick/plugin.py:195
 msgid "Reply to message"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:195
+#: community_plugins/juick/plugin.py:199
 msgid "Unsubscribe from comments"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:196
+#: community_plugins/juick/plugin.py:200
 msgid "Subscribe to message replies"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:197
+#: community_plugins/juick/plugin.py:201
 msgid "Recommend post"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:198
+#: community_plugins/juick/plugin.py:202
 msgid "Show message with replies"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:199
+#: community_plugins/juick/plugin.py:203
 msgid "Delete post"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:205
+#: community_plugins/juick/plugin.py:209
 msgid "Open in browser"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:209
+#: community_plugins/juick/plugin.py:213
 msgid "Show user's info"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:210
+#: community_plugins/juick/plugin.py:214
 msgid "Show user's info and last 10 messages"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:211
+#: community_plugins/juick/plugin.py:215
 msgid "Subscribe to user's blog"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:212
+#: community_plugins/juick/plugin.py:216
 msgid "Unsubscribe from user's blog"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:213
+#: community_plugins/juick/plugin.py:217
 msgid "Add/delete user to/from your blacklist"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:219
+#: community_plugins/juick/plugin.py:223
 msgid "Send personal message"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:465
+#: community_plugins/juick/plugin.py:469
 msgid "Show last messages from public timeline"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:466
+#: community_plugins/juick/plugin.py:470
 msgid "Show last messages from your feed"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:467
+#: community_plugins/juick/plugin.py:471
 msgid "Show popular personal blogs"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:468
+#: community_plugins/juick/plugin.py:472
 msgid "Show your tags"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:469
+#: community_plugins/juick/plugin.py:473
 msgid "Show your subscriptions"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:470
+#: community_plugins/juick/plugin.py:474
 msgid "Delete last message"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:471
+#: community_plugins/juick/plugin.py:475
 msgid "Enable subscriptions delivery"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:472
+#: community_plugins/juick/plugin.py:476
 msgid "Disable subscriptions delivery"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:473
+#: community_plugins/juick/plugin.py:477
 msgid "Show your blacklist"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:474
+#: community_plugins/juick/plugin.py:478
 msgid "Update \"About\" info from Jabber vCard"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:475
+#: community_plugins/juick/plugin.py:479
 msgid "Ping"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:476
+#: community_plugins/juick/plugin.py:480
 msgid "Login"
 msgstr ""
 
-#: community_plugins/juick/plugin.py:477
+#: community_plugins/juick/plugin.py:481
 msgid "HELP"
 msgstr ""
 
@@ -215,30 +283,34 @@ msgstr ""
 msgid "Private conversation with %s lost."
 msgstr ""
 
-#: community_plugins/gotr/otrmodule.py:460
+#: community_plugins/gotr/otrmodule.py:213
+msgid "See http://www.cypherpunks.ca/otr/"
+msgstr ""
+
+#: community_plugins/gotr/otrmodule.py:461
 #, python-format
 msgid "The following message received from %s was *not encrypted*: [%s]"
 msgstr ""
 
-#: community_plugins/gotr/otrmodule.py:463
+#: community_plugins/gotr/otrmodule.py:464
 #, python-format
 msgid ""
 "The encrypted message received from %s is unreadable, as you are not "
 "currently communicating privately"
 msgstr ""
 
-#: community_plugins/gotr/otrmodule.py:468
+#: community_plugins/gotr/otrmodule.py:469
 #, python-format
 msgid "We received the following OTR error message from %s: [%s]"
 msgstr ""
 
-#: community_plugins/gotr/otrmodule.py:473
+#: community_plugins/gotr/otrmodule.py:474
 #, python-format
 msgid ""
 "The following error occurred when trying to decrypt a message from %s: [%s]"
 msgstr ""
 
-#: community_plugins/gotr/otrmodule.py:516
+#: community_plugins/gotr/otrmodule.py:517
 msgid ""
 "Your message was not send. Either end your private conversation, or restart "
 "it"
@@ -316,65 +388,133 @@ msgstr ""
 msgid "unknown"
 msgstr ""
 
-#: triggers/triggers.py:268
+#: community_plugins/flashing_keyboard/flashing_keyboard.py:16
+msgid "Flashing keyboard led if there is unread messages"
+msgstr ""
+
+#: community_plugins/gnome_session_manager/plugin.py:35
+msgid "Set and react on GNOME Session presence settings"
+msgstr ""
+
+#: events_dump/plugin.py:39
+msgid "Dumps info about selected events to console."
+msgstr ""
+
+#: acronyms_expander/acronyms_expander.py:39
+msgid "Replaces acronyms (or other strings) with given expansions/substitutes."
+msgstr ""
+
+#: triggers/triggers.py:37
+msgid "Configure Gajim's behaviour for each contact"
+msgstr ""
+
+#: triggers/triggers.py:269
 msgid "#"
 msgstr ""
 
-#: triggers/triggers.py:274
+#: triggers/triggers.py:275
 msgid "Condition"
 msgstr ""
 
-#: triggers/triggers.py:387
+#: triggers/triggers.py:388
 msgid "when I am "
 msgstr ""
 
-#: plugin_installer/plugin_installer.py:102
+#: plugin_installer/plugin_installer.py:44
+msgid "Install and upgrade plugins from ftp"
+msgstr ""
+
+#: plugin_installer/plugin_installer.py:103
 msgid "Plugin"
 msgstr ""
 
-#: plugin_installer/plugin_installer.py:107
+#: plugin_installer/plugin_installer.py:108
 msgid ""
 "Installed\n"
 "version"
 msgstr ""
 
-#: plugin_installer/plugin_installer.py:109
+#: plugin_installer/plugin_installer.py:110
 msgid ""
 "Available\n"
 "version"
 msgstr ""
 
-#: plugin_installer/plugin_installer.py:116
+#: plugin_installer/plugin_installer.py:117
 msgid ""
 "Install /\n"
 "Upgrade"
 msgstr ""
 
-#: banner_tweaks/plugin.py:107
+#: dbus_plugin/plugin.py:691
+msgid ""
+"D-Bus support. Based on remote_control module from\n"
+"Gajim core but uses new events handling system."
+msgstr ""
+
+#: new_events_example/plugin.py:44
+msgid ""
+"Shows how to generate new network events based on existing one using Network "
+"Events Controller."
+msgstr ""
+
+#: banner_tweaks/plugin.py:48
+msgid ""
+"Allows user to tweak chat window banner appearance (eg. make it compact).\n"
+"Based on patch by pb in ticket #4133:\n"
+"http://trac.gajim.org/attachment/ticket/4133."
+msgstr ""
+
+#: banner_tweaks/plugin.py:111
 #, python-format
 msgid "%(nickname)s from group chat %(room_name)s"
 msgstr ""
 
-#: whiteboard/plugin.py:153
+#: snarl_notifications/plugin.py:44
+msgid ""
+"Shows events notification using Snarl (http://www.fullphat.net/) under "
+"Windows. Snarl needs to be installed in system.\n"
+"PySnarl bindings are used (http://code.google.com/p/pysnarl/)."
+msgstr ""
+
+#: google_translation/plugin.py:47
+msgid "Translates (currently only incoming)messages using Google Translate."
+msgstr ""
+
+#: length_notifier/length_notifier.py:39
+msgid ""
+"Highlights message entry field in chat window when given length of message "
+"is exceeded."
+msgstr ""
+
+#: roster_buttons/plugin.py:39
+msgid "Adds quick action buttons to roster window."
+msgstr ""
+
+#: whiteboard/plugin.py:55
+msgid "Shows a whiteboard in chat. python-pygoocanvas is required."
+msgstr ""
+
+#: whiteboard/plugin.py:155
 msgid "Incoming Whiteboard"
 msgstr ""
 
-#: whiteboard/plugin.py:154
+#: whiteboard/plugin.py:156
 #, python-format
 msgid ""
 "%(name)s (%(jid)s) wants to start a whiteboard with you. Do you want to "
 "accept?"
 msgstr ""
 
-#: whiteboard/plugin.py:204
+#: whiteboard/plugin.py:206
 msgid "Invalid Jabber ID"
 msgstr ""
 
-#: whiteboard/plugin.py:205
+#: whiteboard/plugin.py:207
 msgid "A message from a non-valid JID arrived, it has been ignored."
 msgstr ""
 
-#: whiteboard/plugin.py:344
+#: whiteboard/plugin.py:346
 #, python-format
 msgid "Whiteboard stopped: %(reason)s"
 msgstr ""
diff --git a/plagins_translations/plagins_translations.py b/plagins_translations/plagins_translations.py
index 597f3e5a6394008d8dfa8bff85c0fa331ae64243..579df2f5b221193951f1d82efacd3d5f60853de3 100644
--- a/plagins_translations/plagins_translations.py
+++ b/plagins_translations/plagins_translations.py
@@ -14,6 +14,8 @@ class PlaginsTranslationsPlugin(GajimPlugin):
 
     @log_calls('PlaginsTranslationsPlugin')
     def init(self):
+        self.description = _('This plugin contains translations files '
+            'for Gajim plugins')
         self.config_dialog = None
         self.config_default_values = {'last_version': '0'}
         self.locale_dir = os.path.join(gajim.PLUGINS_DIRS[1], 'locale')
diff --git a/plagins_translations/ru.mo b/plagins_translations/ru.mo
index 208ea2e87ebf164103a83517bffc887937af1590..7df5e9df0627c03fd20ca0622d6b5d18e7623a8c 100644
Binary files a/plagins_translations/ru.mo and b/plagins_translations/ru.mo differ
diff --git a/roster_tweaks/roster_tweaks.py b/roster_tweaks/roster_tweaks.py
index bbe8dd28466dd2fd601516f5a20b7b82e9e0e383..46c90011c741ffbfa05dc86bea90c0a535837ec9 100644
--- a/roster_tweaks/roster_tweaks.py
+++ b/roster_tweaks/roster_tweaks.py
@@ -18,6 +18,11 @@ class RosterTweaksPlugin(GajimPlugin):
 
     @log_calls('RosterTweaksPlugin')
     def init(self):
+        self.description = _('Allows user to tweak roster window appearance '
+            '(eg. make it compact).\nBased on ticket #3340:\n'
+            'http://trac.gajim.org/ticket/3340.\n'
+            'Added ability to quickly change the status message '
+            'to all connected accounts.')
         self.config_dialog = RosterTweaksPluginConfigDialog(self)
 
         self.config_default_values = {'hide_status_combo': (False, ''),
diff --git a/set_location/set_location.py b/set_location/set_location.py
index 5ef13e8cd5b7452e23595f8370f514d4ff2191b0..94d24906959c670b891eb7743c7db25dcd275d63 100644
--- a/set_location/set_location.py
+++ b/set_location/set_location.py
@@ -26,6 +26,10 @@ except:
 class SetLocationPlugin(GajimPlugin):
     @log_calls('SetLocationPlugin')
     def init(self):
+        self.description = _('Set information about the current geographical '
+            'or physical location.\n'
+            'To be able to specify a location on the built-in card, '
+            'you must install python-osmgpsmap > 0.5')
         self.config_dialog = SetLocationPluginConfigDialog(self)
         self.config_default_values = {
             'alt': (1609, ''),
diff --git a/ubuntu_integration/plugin.py b/ubuntu_integration/plugin.py
index ffa6b496720232ae3a1a182cdd99e5906b4e57f0..33c64bc5ae1c26deccacc4bcde18ecd4582de6fc 100644
--- a/ubuntu_integration/plugin.py
+++ b/ubuntu_integration/plugin.py
@@ -48,6 +48,12 @@ class UbuntuIntegrationPlugin(GajimPlugin):
         """
         Does nothing.
         """
+        self.description = _('This plugin integrates Gajim '
+            'with the Ubuntu Messaging Menu.\n\n'
+            'You must have python-indicate and python-xdg (and Gajim obviously)'
+            ' installed to enable this plugin.\n\n'
+            'Many thanks to the guys from gajim@conference.gajim.org for '
+            'answering my questions :)')
         self.config_dialog = None
 
     @log_calls("UbuntuIntegrationPlugin")
diff --git a/wrong_layout/plugin.py b/wrong_layout/plugin.py
index 7ce20a134be6ff434661da0c4800a7e05d6b4a6a..72774368e31ce47b06b6b27951ce49bea510e191 100644
--- a/wrong_layout/plugin.py
+++ b/wrong_layout/plugin.py
@@ -2,7 +2,6 @@
 
 import gtk
 import os
-import gettext
 from common import helpers
 from common import gajim
 
@@ -10,18 +9,11 @@ from plugins import GajimPlugin
 from plugins.helpers import log_calls, log
 
 
-locale_path = os.path.dirname(__file__) + '/locale'
-try:
-    gett = gettext.Catalog('WrongLayout', locale_path)
-    _ = gett.gettext
-except:
-    pass
-
-
 class WrongLayoutPlugin(GajimPlugin):
-    description = _('Press alt+r to convert chars typed in wrong layout Rus<>Eng')
     @log_calls('WrongLayoutPlugin')
     def init(self):
+        self.description = _('Press alt+r to convert chars typed in '
+            'wrong layout Rus<>Eng')
         self.config_dialog = None
         self.gui_extension_points = {
                 'chat_control_base': (self.connect_with_chat_control,
@@ -29,19 +21,19 @@ class WrongLayoutPlugin(GajimPlugin):
         self.chat_control = None
         self.controls = []
         self.dict_eng = {'`': 'ё', 'q': 'й', 'w': 'ц', 'e': 'у', 'r': 'к',
-                    't': 'е',
-                    'y': 'н', 'u': 'г', 'i': 'ш', 'o': 'щ', 'p': 'з', '[': 'х',
-                    ']': 'ъ', 'a': 'ф', 's': 'ы', 'd': 'в', 'f': 'а', 'g': 'п',
-                    'h': 'р', 'j': 'о', 'k': 'л', 'l': 'д', ';': 'ж', '\'': 'э',
-                    'z': 'я', 'x': 'ч', 'c': 'с', 'v': 'м', 'b': 'и', 'n': 'т',
-                    'm': 'ь', ',': 'б', '.': 'ю', '/': '.',
-                    '\\': '\\', '~': 'Ё', '@': '"', '$': ';', '^': ':', '&': '?',
-                    'Q': 'Й', 'W': 'Ц', 'E': 'У', 'R': 'К', 'T': 'Е', 'Y': 'Н',
-                    'U': 'Г', 'I': 'Ш', 'O': 'Щ', 'P': 'З', '{': 'Х', '}': 'Ъ',
-                    '|': '/', 'A': 'Ф', 'S': 'Ы', 'D': 'В', 'F': 'А', 'G': 'П',
-                    'H': 'Р', 'J': 'О', 'K': 'Л', 'L': 'Д', '"': 'Э', 'Z': 'Я',
-                    'X': 'Ч', 'C': 'С', 'V': 'М', 'B': 'И', 'N': 'Т', 'M': 'Ь',
-                    '<': 'Б', '>': 'Ю', '?': ',', ':': 'Ж'}
+                't': 'е',
+                'y': 'н', 'u': 'г', 'i': 'ш', 'o': 'щ', 'p': 'з', '[': 'х',
+                ']': 'ъ', 'a': 'ф', 's': 'ы', 'd': 'в', 'f': 'а', 'g': 'п',
+                'h': 'р', 'j': 'о', 'k': 'л', 'l': 'д', ';': 'ж', '\'': 'э',
+                'z': 'я', 'x': 'ч', 'c': 'с', 'v': 'м', 'b': 'и', 'n': 'т',
+                'm': 'ь', ',': 'б', '.': 'ю', '/': '.',
+                '\\': '\\', '~': 'Ё', '@': '"', '$': ';', '^': ':', '&': '?',
+                'Q': 'Й', 'W': 'Ц', 'E': 'У', 'R': 'К', 'T': 'Е', 'Y': 'Н',
+                'U': 'Г', 'I': 'Ш', 'O': 'Щ', 'P': 'З', '{': 'Х', '}': 'Ъ',
+                '|': '/', 'A': 'Ф', 'S': 'Ы', 'D': 'В', 'F': 'А', 'G': 'П',
+                'H': 'Р', 'J': 'О', 'K': 'Л', 'L': 'Д', '"': 'Э', 'Z': 'Я',
+                'X': 'Ч', 'C': 'С', 'V': 'М', 'B': 'И', 'N': 'Т', 'M': 'Ь',
+                '<': 'Б', '>': 'Ю', '?': ',', ':': 'Ж'}
         self.dict_ru = {}
         for key in self.dict_eng.keys():
             self.dict_ru[self.dict_eng[key]] = key