[Tkabber-dev] r1447 - in trunk/tkabber: . doc msgs plugins/pep

tkabber-svn at jabber.ru tkabber-svn at jabber.ru
Wed Jun 4 23:29:28 MSD 2008


Author: sergei
Date: 2008-06-04 23:29:26 +0400 (Wed, 04 Jun 2008)
New Revision: 1447

Modified:
   trunk/tkabber/ChangeLog
   trunk/tkabber/README
   trunk/tkabber/doc/tkabber.html
   trunk/tkabber/doc/tkabber.xml
   trunk/tkabber/msgs/de.msg
   trunk/tkabber/msgs/es.msg
   trunk/tkabber/msgs/pl.msg
   trunk/tkabber/msgs/ru.msg
   trunk/tkabber/plugins/pep/user_activity.tcl
   trunk/tkabber/plugins/pep/user_location.tcl
   trunk/tkabber/plugins/pep/user_mood.tcl
   trunk/tkabber/plugins/pep/user_tune.tcl
Log:
	* msgs/pl.msg: Updated Polish translation (thanks to Irek Chmielowiec).

	* msgs/es.msg: Updated Spanish translation (thanks to Badlop).

	* plugins/pep/user_tune.tcl: Show user tune info even if it doesn't
	  contain author's name using ? marks (thanks to Konstantin Khomoutov).

	* plugins/pep/user_location.tcl, plugins/pep/user_tune.tcl,
	  plugins/pep/user_activity.tcl, plugins/pep/user_mood.tcl,
	  msgs/es.msg, msgs/pl.msg, msgs/ru.msg, msgs/de.msg: Corrected
	  messages in user popup info (thanks to Konstantin Khomoutov).

	* doc/tkabber.html, doc/tkabber.xml, README: Added upgrade section
	  which describes main changes between 0.10.0 and 0.11.0 versions
	  (thanks to Konstantin Khomoutov).


Modified: trunk/tkabber/ChangeLog
===================================================================
--- trunk/tkabber/ChangeLog	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/ChangeLog	2008-06-04 19:29:26 UTC (rev 1447)
@@ -1,3 +1,21 @@
+2008-06-04  Sergei Golovan  <sgolovan at nes.ru>
+
+	* msgs/pl.msg: Updated Polish translation (thanks to Irek Chmielowiec).
+
+	* msgs/es.msg: Updated Spanish translation (thanks to Badlop).
+
+	* plugins/pep/user_tune.tcl: Show user tune info even if it doesn't
+	  contain author's name using ? marks (thanks to Konstantin Khomoutov).
+
+	* plugins/pep/user_location.tcl, plugins/pep/user_tune.tcl,
+	  plugins/pep/user_activity.tcl, plugins/pep/user_mood.tcl,
+	  msgs/es.msg, msgs/pl.msg, msgs/ru.msg, msgs/de.msg: Corrected
+	  messages in user popup info (thanks to Konstantin Khomoutov).
+
+	* doc/tkabber.html, doc/tkabber.xml, README: Added upgrade section
+	  which describes main changes between 0.10.0 and 0.11.0 versions
+	  (thanks to Konstantin Khomoutov).
+
 2008-05-22  Sergei Golovan  <sgolovan at nes.ru>
 
 	* doc/tkabber.xml, doc/tkabber.html, README: Bumped stable version to

Modified: trunk/tkabber/README
===================================================================
--- trunk/tkabber/README	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/README	2008-06-04 19:29:26 UTC (rev 1447)
@@ -9,7 +9,7 @@
                                                      New Economic School
                                                                M. Litvak
                                                   Information Centre ISP
-                                                            May 23, 2008
+                                                                May 2008
 
 
                             Tkabber v0.11.0
@@ -62,49 +62,49 @@
    1.  Features . . . . . . . . . . . . . . . . . . . . . . . . . . .  4
    2.  Requirements . . . . . . . . . . . . . . . . . . . . . . . . .  7
    3.  Download, install and run  . . . . . . . . . . . . . . . . . . 10
-   4.  Upgrading  . . . . . . . . . . . . . . . . . . . . . . . . . . 12
-   5.  Configuration  . . . . . . . . . . . . . . . . . . . . . . . . 13
-     5.1.  Pre-load . . . . . . . . . . . . . . . . . . . . . . . . . 15
-       5.1.1.  Tabbed Interface . . . . . . . . . . . . . . . . . . . 16
-       5.1.2.  Fonts and colors . . . . . . . . . . . . . . . . . . . 16
-       5.1.3.  Cryptography by default  . . . . . . . . . . . . . . . 18
-       5.1.4.  Using of external XML parser from tDOM . . . . . . . . 18
-       5.1.5.  Debugging Output . . . . . . . . . . . . . . . . . . . 18
-       5.1.6.  Splash window  . . . . . . . . . . . . . . . . . . . . 19
-       5.1.7.  I18n/L10n  . . . . . . . . . . . . . . . . . . . . . . 19
-       5.1.8.  Searching  . . . . . . . . . . . . . . . . . . . . . . 19
-     5.2.  Post-load  . . . . . . . . . . . . . . . . . . . . . . . . 20
-       5.2.1.  Look-and-Feel  . . . . . . . . . . . . . . . . . . . . 23
-       5.2.2.  The Autoaway Module  . . . . . . . . . . . . . . . . . 24
-       5.2.3.  The Avatar Module  . . . . . . . . . . . . . . . . . . 25
-       5.2.4.  The Chat Module  . . . . . . . . . . . . . . . . . . . 25
-       5.2.5.  The Clientinfo Module  . . . . . . . . . . . . . . . . 25
-       5.2.6.  The Conferenceinfo Module  . . . . . . . . . . . . . . 25
-       5.2.7.  The Cryptographic Module . . . . . . . . . . . . . . . 26
-       5.2.8.  The Emoticons Module . . . . . . . . . . . . . . . . . 26
-       5.2.9.  The File Transfer Module . . . . . . . . . . . . . . . 26
-       5.2.10. The Groupchat Module . . . . . . . . . . . . . . . . . 27
-       5.2.11. The Ispell Module  . . . . . . . . . . . . . . . . . . 27
-       5.2.12. The Stream Initiation Module . . . . . . . . . . . . . 28
-       5.2.13. The Logger Module  . . . . . . . . . . . . . . . . . . 28
-       5.2.14. The Login Module . . . . . . . . . . . . . . . . . . . 28
-       5.2.15. The Message Module . . . . . . . . . . . . . . . . . . 30
-       5.2.16. The Raw XML Input Module . . . . . . . . . . . . . . . 30
-       5.2.17. The Roster Module  . . . . . . . . . . . . . . . . . . 30
-       5.2.18. The Sound Module . . . . . . . . . . . . . . . . . . . 30
-     5.3.  Menu-load  . . . . . . . . . . . . . . . . . . . . . . . . 32
-       5.3.1.  The Avatar Module  . . . . . . . . . . . . . . . . . . 33
-       5.3.2.  The Browser Module . . . . . . . . . . . . . . . . . . 33
-       5.3.3.  The Groupchat Module . . . . . . . . . . . . . . . . . 33
-       5.3.4.  The Login Module . . . . . . . . . . . . . . . . . . . 33
-       5.3.5.  The Message Module . . . . . . . . . . . . . . . . . . 33
-       5.3.6.  The Presence Module  . . . . . . . . . . . . . . . . . 33
-       5.3.7.  Miscellany . . . . . . . . . . . . . . . . . . . . . . 34
-     5.4.  Final-Load . . . . . . . . . . . . . . . . . . . . . . . . 34
-   6.  Extensibility  . . . . . . . . . . . . . . . . . . . . . . . . 36
-     6.1.  Chat Hooks . . . . . . . . . . . . . . . . . . . . . . . . 37
-     6.2.  Login Hooks  . . . . . . . . . . . . . . . . . . . . . . . 39
-     6.3.  Presence Hooks . . . . . . . . . . . . . . . . . . . . . . 39
+   4.  Upgrading from version 0.10.0  . . . . . . . . . . . . . . . . 12
+     4.1.  Configuration options  . . . . . . . . . . . . . . . . . . 12
+       4.1.1.  Proxy servers  . . . . . . . . . . . . . . . . . . . . 12
+       4.1.2.  Resources to control fonts . . . . . . . . . . . . . . 13
+       4.1.3.  Keep-alives and dead link detection  . . . . . . . . . 13
+       4.1.4.  Resources to control appearance of balloon windows . . 14
+       4.1.5.  Support for external XML parser  . . . . . . . . . . . 14
+     4.2.  User interface . . . . . . . . . . . . . . . . . . . . . . 14
+       4.2.1.  System tray icon mouse gestures  . . . . . . . . . . . 15
+       4.2.2.  New tab management widget  . . . . . . . . . . . . . . 15
+       4.2.3.  Window splitters . . . . . . . . . . . . . . . . . . . 15
+   5.  Upgrading from version 0.9.9 . . . . . . . . . . . . . . . . . 16
+   6.  Configuration  . . . . . . . . . . . . . . . . . . . . . . . . 17
+     6.1.  Pre-load . . . . . . . . . . . . . . . . . . . . . . . . . 19
+       6.1.1.  Tabbed Interface . . . . . . . . . . . . . . . . . . . 20
+       6.1.2.  Fonts and colors . . . . . . . . . . . . . . . . . . . 20
+       6.1.3.  Cryptography by default  . . . . . . . . . . . . . . . 22
+       6.1.4.  Using of external XML parser from tDOM . . . . . . . . 22
+       6.1.5.  Debugging Output . . . . . . . . . . . . . . . . . . . 22
+       6.1.6.  Splash window  . . . . . . . . . . . . . . . . . . . . 23
+       6.1.7.  I18n/L10n  . . . . . . . . . . . . . . . . . . . . . . 23
+       6.1.8.  Searching  . . . . . . . . . . . . . . . . . . . . . . 23
+     6.2.  Post-load  . . . . . . . . . . . . . . . . . . . . . . . . 24
+       6.2.1.  Look-and-Feel  . . . . . . . . . . . . . . . . . . . . 27
+       6.2.2.  The Autoaway Module  . . . . . . . . . . . . . . . . . 28
+       6.2.3.  The Avatar Module  . . . . . . . . . . . . . . . . . . 29
+       6.2.4.  The Chat Module  . . . . . . . . . . . . . . . . . . . 29
+       6.2.5.  The Clientinfo Module  . . . . . . . . . . . . . . . . 29
+       6.2.6.  The Conferenceinfo Module  . . . . . . . . . . . . . . 29
+       6.2.7.  The Cryptographic Module . . . . . . . . . . . . . . . 30
+       6.2.8.  The Emoticons Module . . . . . . . . . . . . . . . . . 30
+       6.2.9.  The File Transfer Module . . . . . . . . . . . . . . . 30
+       6.2.10. The Groupchat Module . . . . . . . . . . . . . . . . . 31
+       6.2.11. The Ispell Module  . . . . . . . . . . . . . . . . . . 31
+       6.2.12. The Stream Initiation Module . . . . . . . . . . . . . 32
+       6.2.13. The Logger Module  . . . . . . . . . . . . . . . . . . 32
+       6.2.14. The Login Module . . . . . . . . . . . . . . . . . . . 32
+       6.2.15. The Message Module . . . . . . . . . . . . . . . . . . 34
+       6.2.16. The Raw XML Input Module . . . . . . . . . . . . . . . 34
+       6.2.17. The Roster Module  . . . . . . . . . . . . . . . . . . 34
+       6.2.18. The Sound Module . . . . . . . . . . . . . . . . . . . 34
+     6.3.  Menu-load  . . . . . . . . . . . . . . . . . . . . . . . . 36
+       6.3.1.  The Avatar Module  . . . . . . . . . . . . . . . . . . 37
 
 
 
@@ -113,23 +113,34 @@
                              Tkabber v0.11.0                    May 2008
 
 
-     6.4.  Roster Hooks . . . . . . . . . . . . . . . . . . . . . . . 40
-     6.5.  Miscellaneous Hooks  . . . . . . . . . . . . . . . . . . . 41
-   7.  User Interface basics  . . . . . . . . . . . . . . . . . . . . 42
-     7.1.  Searching  . . . . . . . . . . . . . . . . . . . . . . . . 42
-   Appendix A.  Releases History  . . . . . . . . . . . . . . . . . . 44
-     A.1.  Main changes in 0.11.0 . . . . . . . . . . . . . . . . . . 44
-     A.2.  Main changes in 0.10.0 . . . . . . . . . . . . . . . . . . 44
-     A.3.  Main changes in 0.9.9  . . . . . . . . . . . . . . . . . . 45
-     A.4.  Main changes in 0.9.8  . . . . . . . . . . . . . . . . . . 46
-     A.5.  Main changes in 0.9.7beta  . . . . . . . . . . . . . . . . 46
-     A.6.  Main changes in 0.9.6beta  . . . . . . . . . . . . . . . . 46
-     A.7.  Main changes in 0.9.5beta  . . . . . . . . . . . . . . . . 47
-   Appendix B.  Tk option database resources  . . . . . . . . . . . . 48
-   Appendix C.  Documentation TODO  . . . . . . . . . . . . . . . . . 52
-   Appendix D.  Acknowledgements  . . . . . . . . . . . . . . . . . . 53
-   Appendix E.  Copyrights  . . . . . . . . . . . . . . . . . . . . . 54
-   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 55
+       6.3.2.  The Browser Module . . . . . . . . . . . . . . . . . . 37
+       6.3.3.  The Groupchat Module . . . . . . . . . . . . . . . . . 37
+       6.3.4.  The Login Module . . . . . . . . . . . . . . . . . . . 37
+       6.3.5.  The Message Module . . . . . . . . . . . . . . . . . . 37
+       6.3.6.  The Presence Module  . . . . . . . . . . . . . . . . . 37
+       6.3.7.  Miscellany . . . . . . . . . . . . . . . . . . . . . . 38
+     6.4.  Final-Load . . . . . . . . . . . . . . . . . . . . . . . . 38
+   7.  Extensibility  . . . . . . . . . . . . . . . . . . . . . . . . 40
+     7.1.  Chat Hooks . . . . . . . . . . . . . . . . . . . . . . . . 41
+     7.2.  Login Hooks  . . . . . . . . . . . . . . . . . . . . . . . 43
+     7.3.  Presence Hooks . . . . . . . . . . . . . . . . . . . . . . 43
+     7.4.  Roster Hooks . . . . . . . . . . . . . . . . . . . . . . . 44
+     7.5.  Miscellaneous Hooks  . . . . . . . . . . . . . . . . . . . 45
+   8.  User Interface basics  . . . . . . . . . . . . . . . . . . . . 46
+     8.1.  Searching  . . . . . . . . . . . . . . . . . . . . . . . . 46
+   Appendix A.  Releases History  . . . . . . . . . . . . . . . . . . 48
+     A.1.  Main changes in 0.11.0 . . . . . . . . . . . . . . . . . . 48
+     A.2.  Main changes in 0.10.0 . . . . . . . . . . . . . . . . . . 48
+     A.3.  Main changes in 0.9.9  . . . . . . . . . . . . . . . . . . 49
+     A.4.  Main changes in 0.9.8  . . . . . . . . . . . . . . . . . . 50
+     A.5.  Main changes in 0.9.7beta  . . . . . . . . . . . . . . . . 50
+     A.6.  Main changes in 0.9.6beta  . . . . . . . . . . . . . . . . 51
+     A.7.  Main changes in 0.9.5beta  . . . . . . . . . . . . . . . . 51
+   Appendix B.  Tk option database resources  . . . . . . . . . . . . 52
+   Appendix C.  Documentation TODO  . . . . . . . . . . . . . . . . . 56
+   Appendix D.  Acknowledgements  . . . . . . . . . . . . . . . . . . 57
+   Appendix E.  Copyrights  . . . . . . . . . . . . . . . . . . . . . 58
+   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 59
 
 
 
@@ -153,17 +164,6 @@
 
 
 
-
-
-
-
-
-
-
-
-
-
-
 Shchepin, et al.                                                [Page 3]
 
                              Tkabber v0.11.0                    May 2008
@@ -617,14 +617,238 @@
                              Tkabber v0.11.0                    May 2008
 
 
-4.  Upgrading
+4.  Upgrading from version 0.10.0
 
+   When upgrading _Tkabber_ from version 0.10.0 or earlier note that
+   several configuration options and user interface elements have been
+   changed.
+
+4.1.  Configuration options
+
+   There are notable changes in handling connection through proxy
+   servers, managing fonts and balloon colors, and detecting breaks in
+   underlying TCP connection to a server.
+
+4.1.1.  Proxy servers
+
+   Since SOCKS4 and SOCKS5 proxy types were implemented in addition to
+   HTTP proxy type, the whole set of connection options regarding proxy
+   servers has been changed.  This means that after upgrade the old
+   values stored using the Customize mechanism will be lost and the same
+   values in "loginconf" arrays will not be recognized any longer.
+
+   If you do not use HTTP proxy, you can skip this section because these
+   changes will not affect you.
+
+   If your options are set using the _Customize_ interface, write down
+   values for options relevant to proxy server from the "Login" group of
+   _Customize_ settings, then after upgrade visit this group of
+   settings, select "HTTPS" for the option "::loginconf(proxy)" and then
+   fill in the rest of relevant settings with recorded values.  As
+   usual, save each setting after you change them.  Do not be surprised
+   with the word "HTTPS" (which stands for "HTTP over SSL").  It just
+   means that _Tkabber_ will use CONNECT method to tunnel TCP connection
+   through a proxy.
+
+   If you maintain "loginconf" arrays in config.tcl, you have to modify
+   each array using this scheme:
+
+   o  Rename variable "useproxy", if present, to just "proxy" and change
+      its value to either "https" if "useproxy" was set to true or to
+      "none" (yes, the word "none", do not leave it empty) if it was set
+      to false.
+
+   o  Modify existing variables in these arrays using this map:
+
+      *  Rename "httpproxy" to "proxyhost".
+
+      *  Rename "httpport" to "proxyport".
+
+
+
+
+
+Shchepin, et al.                                               [Page 12]
+
+                             Tkabber v0.11.0                    May 2008
+
+
+      *  Rename "httplogin" to "proxyusername".
+
+      *  Rename "httppassword" to "proxypassword".
+
+4.1.2.  Resources to control fonts
+
+   Fonts handling has been partially reworked: the global variable
+   "font" that controls chat and roster fonts has been removed and now
+   _Tkabber_ relies on _Tk_ option database to manage these settings.
+   You can override roster and chat fonts independently of each other.
+   To do that on systems not based on X Window use _Customize_ options
+   described below.
+
+   The main consequence of this change is that now the fonts are taken
+   from _Tk_ option database and if it contains sane values you don't
+   need to touch anything (until the update you had to tweak the "font"
+   variable because it was set to font "fixed" by default).  The
+   variable "font" does not have any special meaning starting from
+   0.11.0 release.
+
+   The second consequence is that you are now able to set fonts for chat
+   and roster windows separately from each other using this list as a
+   reference:
+
+   o  "*font" _Tk_ option database resource sets default font for all
+      widgets used in _Tkabber_.
+
+   o  "*Chat*Text.font" _Tk_ option database resource can be used to
+      override font used for chat windows.  This resource can be
+      overridden by the "::ifacetk::options(font)" option from the "Main
+      Interface" group of _Customize_ settings.
+
+   o  "*Roster*font" _Tk_ option database resource can be used to
+      override font used for roster windows.  This resource can be
+      overridden by the "::ifacetk::options(roster_font)" option from
+      the "Main Interface" group of _Customize_ settings.
+
+4.1.3.  Keep-alives and dead link detection
+
+   Keep-alive mechanism that was used to keep NATP devices from
+   disconnecting idle XMPP sessions was accompanied in 0.10.0 with "XMPP
+   ping" mechanism which also implemented dead link detection with
+   support for disconnecting upon detection of network outage.
+
+   In version 0.11.0, the old keep-alive mechanism has been dropped, so
+   the following two global options have no effect now:
+
+
+
+
+
+Shchepin, et al.                                               [Page 13]
+
+                             Tkabber v0.11.0                    May 2008
+
+
+   o  "keep_alive"
+
+   o  "keep_alive_interval"
+
+   In order to get the same functionality, enable XMPP ping using these
+   options in the "IQ" group of Customize settings:
+
+   o  Enabling "::plugins::ping::options(ping)" will make _Tkabber_
+      periodically send xmpp:ping IQ request to the server.
+
+   o  Set "::plugins::ping::options(timeout)" option to a number of
+      seconds _Tkabber_ should wait for either a xmpp:ping reply or an
+      error to arrive from the server; if there is no answer from the
+      server during this timeout, the socket for this connection will be
+      forcibly disconnected.
+
+4.1.4.  Resources to control appearance of balloon windows
+
+   Resources controlling the appearance of balloon windows have been
+   made more generic.  If you use custom _Tk_ option database settings
+   for balloon windows, change the relevant resources using this map:
+
+   o  Change references to "*Balloon.background" and
+      "*Balloon.foreground" resources to "*Balloon*background" and
+      "*Balloon*foreground", respectively.
+
+   o  Change references to "*Balloon*padX" and "*Balloon*padY" resources
+      to "*Balloon.text.padX" and "*Balloon.text.padY", respectively.
+
+4.1.5.  Support for external XML parser
+
+   Support for _TclXML_ as an external XML parser has been removed
+   (since _TclXML_ has anyway been unable to support partial XML
+   processing) along with the global variable "use_external_tclxml"
+   which controlled the loading of _TclXML_.
+
+   Now expat-based _Tcl_ package _tDOM_ is supported as an external XML
+   parser.  It can be enabled by loading it manually in config.tcl using
+   the Tcl package command, for example:
+
+   package require tdom
+
+4.2.  User interface
+
+   There are notable changes in systray mouse gestures, appearance of a
+   main tabbed window, and in behavior of paned window splitters.
+
+
+
+
+
+Shchepin, et al.                                               [Page 14]
+
+                             Tkabber v0.11.0                    May 2008
+
+
+4.2.1.  System tray icon mouse gestures
+
+   Mouse gestures bound to system tray (system notification area) icon
+   have been reworked:
+
+   o  Single click on it with the left mouse button now unconditionally
+      brings the main _Tkabber_ window to front, possibly deiconifying
+      it first.
+
+   o  Single click with the middle mouse button now unconditionally
+      iconifies the main _Tkabber_ window.
+
+   This differs from the previois behaviour where single click with the
+   left mouse button on _Tkabber_'s system tray icon toggled the
+   iconified/visible state of the main _Tkabber_ window.
+
+4.2.2.  New tab management widget
+
+   The _notebook_ widget which was used to render tabs in tabbed
+   interface mode has been replaced with a new custom widget providing
+   the ability for multi-row placement of tabs and docking them to the
+   left or right sides of the chat window (in addition to top or bottom
+   docking available in 0.10.0 version and earlier).
+
+   If you adjusted any specific _Tk_ option database resources
+   pertaining to that _notebook_ widget, you have to change them keeping
+   in mind that the new widget is just a bunch of _Tk_ buttons (class
+   "Button") placed in a frame (called ".nb" as before).  The class name
+   for the new widget is "ButtonBar".
+
+   So if you explicitly set, say "*Notebook*font" option, you have to
+   change it to "*ButtonBar*font" and so on.
+
+4.2.3.  Window splitters
+
+   Window splitters (thin vertical and horizontal windows used to change
+   relative sizes of windows between which a splitter is placed) have
+   been changed to "Windows" style.  This differs from previous "Motif"
+   style which implemented explicit "grip box" on each splitter which
+   was the only "active point" of a splitter.
+
+
+
+
+
+
+
+
+
+
+
+Shchepin, et al.                                               [Page 15]
+
+                             Tkabber v0.11.0                    May 2008
+
+
+5.  Upgrading from version 0.9.9
+
    When upgrading _Tkabber_ from version 0.9.9 or earlier note the
    following:
 
    o  On Macintosh or Microsoft Windows _Tkabber_ will copy it's
       configuration directory to a new location (see the next section
-      (Section 5) for details).  If the transfer of the config directory
+      (Section 6) for details).  If the transfer of the config directory
       goes smoothly you may delete old ""~/.tkabber"" directory and
       replace its name in your config file by "$::configdir".
 
@@ -668,12 +892,12 @@
 
 
 
-Shchepin, et al.                                               [Page 12]
+Shchepin, et al.                                               [Page 16]
 
                              Tkabber v0.11.0                    May 2008
 
 
-5.  Configuration
+6.  Configuration
 
    _Tkabber_ maintains its configuration using a set of files placed in
    a special configuration directory which location depends on the
@@ -724,7 +948,7 @@
 
 
 
-Shchepin, et al.                                               [Page 13]
+Shchepin, et al.                                               [Page 17]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -780,12 +1004,12 @@
 
 
 
-Shchepin, et al.                                               [Page 14]
+Shchepin, et al.                                               [Page 18]
 
                              Tkabber v0.11.0                    May 2008
 
 
-5.1.  Pre-load
+6.1.  Pre-load
 
    There are a few things that you may let _Tkabber_ know immediately.
    These are:
@@ -836,12 +1060,12 @@
 
 
 
-Shchepin, et al.                                               [Page 15]
+Shchepin, et al.                                               [Page 19]
 
                              Tkabber v0.11.0                    May 2008
 
 
-5.1.1.  Tabbed Interface
+6.1.1.  Tabbed Interface
 
    The first of these options, "ifacetk::options(use_tabbar)", tells
    _Tkabber_ whether you want a tabbed interface or not.  If not, here's
@@ -856,7 +1080,7 @@
    the beginning of your configuration file, or using graphical
    interface save the option and restart _Tkabber_.
 
-5.1.2.  Fonts and colors
+6.1.2.  Fonts and colors
 
    Many aspects of the _Tkabber_'s visual appearance such as fonts,
    colors and geometry of windows can be configured using the Tk option
@@ -892,7 +1116,7 @@
 
 
 
-Shchepin, et al.                                               [Page 16]
+Shchepin, et al.                                               [Page 20]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -948,7 +1172,7 @@
 
 
 
-Shchepin, et al.                                               [Page 17]
+Shchepin, et al.                                               [Page 21]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -964,7 +1188,7 @@
    specify fonts using sometimes more convenient _Tk_ features described
    here.
 
-5.1.3.  Cryptography by default
+6.1.3.  Cryptography by default
 
    Next, you may want to _Tkabber_ to use cryptography by default.
    There are two options:
@@ -979,7 +1203,7 @@
    otherwise, the default behavior is to proceed without any
    cryptographic buttons, menus, and so on.)
 
-5.1.4.  Using of external XML parser from tDOM
+6.1.4.  Using of external XML parser from tDOM
 
    By default for parsing XML _Tkabber_ uses (modified) _TclXML_ library
    that comes with it distribution.  This parser is pure-Tcl, and it
@@ -988,7 +1212,7 @@
 
    package require tdom 0.8
 
-5.1.5.  Debugging Output
+6.1.5.  Debugging Output
 
    _Tkabber_ has a lot of debugging output.  By default, it gets printed
    to the standard output by a Tcl procedure called "debugmsg".
@@ -1004,7 +1228,7 @@
 
 
 
-Shchepin, et al.                                               [Page 18]
+Shchepin, et al.                                               [Page 22]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1028,7 +1252,7 @@
 
    set debug_lvls {}
 
-5.1.6.  Splash window
+6.1.6.  Splash window
 
    By default, when _Tkabber_ startup, it show loading process in splash
    window.  To disable this feature, put this in your configuration
@@ -1036,7 +1260,7 @@
 
    set show_splash_window 0
 
-5.1.7.  I18n/L10n
+6.1.7.  I18n/L10n
 
    _Tkabber_ can show all messages in user's native language.  This is
    done by using Tcl's built-in _msgcat_ package which looks for a
@@ -1048,24 +1272,24 @@
 
    ::msgcat::mclocale en
 
-5.1.8.  Searching
+6.1.8.  Searching
 
    _Tkabber_ allows the user to perform textual searching in certain
    classes of its windows.  This searching is controlled by several
    settings which can be specified in this section.
 
-   These settings are described in detail here (Section 7.1).
+   These settings are described in detail here (Section 8.1).
 
 
 
 
 
-Shchepin, et al.                                               [Page 19]
+Shchepin, et al.                                               [Page 23]
 
                              Tkabber v0.11.0                    May 2008
 
 
-5.2.  Post-load
+6.2.  Post-load
 
    After _Tkabber_ reads your configuration file, it loads all of its
    own modules, it then invokes a procedure called "postload".  This
@@ -1116,7 +1340,7 @@
 
 
 
-Shchepin, et al.                                               [Page 20]
+Shchepin, et al.                                               [Page 24]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1172,7 +1396,7 @@
 
 
 
-Shchepin, et al.                                               [Page 21]
+Shchepin, et al.                                               [Page 25]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1228,7 +1452,7 @@
 
 
 
-Shchepin, et al.                                               [Page 22]
+Shchepin, et al.                                               [Page 26]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1271,7 +1495,7 @@
    This isn't nearly as complicated as it seems.  Let's break it down by
    individual module
 
-5.2.1.  Look-and-Feel
+6.2.1.  Look-and-Feel
 
    _Tkabber_ is shameless in borrowing icons from other Jabber clients.
    By setting "pixmaps::options(pixmaps_theme)", you can select a family
@@ -1284,7 +1508,7 @@
 
 
 
-Shchepin, et al.                                               [Page 23]
+Shchepin, et al.                                               [Page 27]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1317,7 +1541,7 @@
    raised.  If you don't like this behavior, add this line:
    set ifacetk::options(raise_new_tab) 0
 
-5.2.2.  The Autoaway Module
+6.2.2.  The Autoaway Module
 
    This module is presently available only if either:
 
@@ -1340,12 +1564,12 @@
 
 
 
-Shchepin, et al.                                               [Page 24]
+Shchepin, et al.                                               [Page 28]
 
                              Tkabber v0.11.0                    May 2008
 
 
-5.2.3.  The Avatar Module
+6.2.3.  The Avatar Module
 
    There are two variables that you can set to control whether _Tkabber_
    will allow others to see your avatar:
@@ -1356,7 +1580,7 @@
    o  "avatar::options(share)" determines whether requests for your
       avatar will be honored.
 
-5.2.4.  The Chat Module
+6.2.4.  The Chat Module
 
    Most instant messaging users prefer to see all the back-and-forth
    communication in a single window.  If you prefer to see each line
@@ -1375,14 +1599,14 @@
 
    set plugins::options(timestamp_format) {[%T]}
 
-5.2.5.  The Clientinfo Module
+6.2.5.  The Clientinfo Module
 
    This module shows in popup balloons information of used by this user
    client name, version, and OS.  You can allow or deny automatic asking
    of this info from users by setting this variable to 1 or 0:
    set plugins::clientinfo::options(autoask) 1
 
-5.2.6.  The Conferenceinfo Module
+6.2.6.  The Conferenceinfo Module
 
    After you join a conference that's listed in your roster, then
    whenever you mouse over that roster entry, you'll see a popup listing
@@ -1396,7 +1620,7 @@
 
 
 
-Shchepin, et al.                                               [Page 25]
+Shchepin, et al.                                               [Page 29]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1412,9 +1636,9 @@
    indicates that the server hosting the conference doesn't support
    browsing, so it makes sense not to try that often.
 
-5.2.7.  The Cryptographic Module
+6.2.7.  The Cryptographic Module
 
-   Earlier (Section 5.1) we saw an example where the "ssj::options"
+   Earlier (Section 6.1) we saw an example where the "ssj::options"
    array from the cryptographic module was set during the preload.
 
    In addition to "signed-traffic" and "encrypt-traffic", you can also
@@ -1422,7 +1646,7 @@
 
        set ssj::options(encrypt,fred at example.com) 1
 
-5.2.8.  The Emoticons Module
+6.2.8.  The Emoticons Module
 
    The procedure called _plugins::emoticons::load_dir_ is used to load
    emoticon definitions from a directory.  The directory contains a file
@@ -1443,7 +1667,7 @@
 
        plugins::emoticons::load_dir ""
 
-5.2.9.  The File Transfer Module
+6.2.9.  The File Transfer Module
 
    You can set directory in which files will be saved by default:
 
@@ -1452,12 +1676,12 @@
 
 
 
-Shchepin, et al.                                               [Page 26]
+Shchepin, et al.                                               [Page 30]
 
                              Tkabber v0.11.0                    May 2008
 
 
-5.2.10.  The Groupchat Module
+6.2.10.  The Groupchat Module
 
    There are several variables that set the dialog window defaults for
    adding a groupchat to your roster, or joining a groupchat:
@@ -1487,7 +1711,7 @@
 
    Exact JID's take the higher precedence than patterns.
 
-5.2.11.  The Ispell Module
+6.2.11.  The Ispell Module
 
    On Unix, _Tkabber_ can check spelling of what you entered by calling
    an external program _ispell_.  To enable this feature, add following
@@ -1508,7 +1732,7 @@
 
 
 
-Shchepin, et al.                                               [Page 27]
+Shchepin, et al.                                               [Page 31]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1518,7 +1742,7 @@
    to check correctness of current word after every entered symbol.
    (Usually you don't need to set this option.)
 
-5.2.12.  The Stream Initiation Module
+6.2.12.  The Stream Initiation Module
 
    Stream initiation profile is defined in _XEP-0095_ with two
    transports (_XEP-0047_ - IBB, _XEP-0065_ - SOCKS5 bytestreams).  With
@@ -1538,7 +1762,7 @@
 
        set si::transport(allowed,http://jabber.org/protocol/bytestreams) 0
 
-5.2.13.  The Logger Module
+6.2.13.  The Logger Module
 
    You can set directory to store logs:
 
@@ -1550,7 +1774,7 @@
        set logger::options(log_chat)      1
        set logger::options(log_groupchat) 1
 
-5.2.14.  The Login Module
+6.2.14.  The Login Module
 
    The first task is to initialize the configuration defaults for the
    _login_ module.  As you can see above, the global array "loginconf"
@@ -1564,7 +1788,7 @@
 
 
 
-Shchepin, et al.                                               [Page 28]
+Shchepin, et al.                                               [Page 32]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1620,12 +1844,12 @@
 
 
 
-Shchepin, et al.                                               [Page 29]
+Shchepin, et al.                                               [Page 33]
 
                              Tkabber v0.11.0                    May 2008
 
 
-5.2.15.  The Message Module
+6.2.15.  The Message Module
 
    By default, when you restart _Tkabber_ it won't remember the
    headlines you received.  If you want _Tkabber_ to remember headlines
@@ -1635,7 +1859,7 @@
    window.  If you want _Tkabber_ to use a seperate window for each
    headline source, set "message::options(headlines,multiple)" to "1".
 
-5.2.16.  The Raw XML Input Module
+6.2.16.  The Raw XML Input Module
 
    With this module you can monitor incoming/outgoing traffic from
    connection to server and send custom XML stanzas.  Also you can
@@ -1644,7 +1868,7 @@
    drawed incorrectly, e.g. for XHTML tags.  Also you can set
    indentation level via "indent" option.
 
-5.2.17.  The Roster Module
+6.2.17.  The Roster Module
 
    By default, your entire roster is shown, even those items that aren't
    online.  The variable called "roster::show_only_online" controls
@@ -1662,7 +1886,7 @@
    "friend at other.host" and "friend at another.host".  You can also disable
    all aliases by setting "roster::use_aliases" to "0".
 
-5.2.18.  The Sound Module
+6.2.18.  The Sound Module
 
    _Tkabber_ can play sounds on some events.  It can use for this
    _snack_ library or external program that can play _WAV_ files.  Sound
@@ -1676,7 +1900,7 @@
 
 
 
-Shchepin, et al.                                               [Page 30]
+Shchepin, et al.                                               [Page 34]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1732,7 +1956,7 @@
 
 
 
-Shchepin, et al.                                               [Page 31]
+Shchepin, et al.                                               [Page 35]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1753,7 +1977,7 @@
    set sound::options(groupchat_server_message_sound)      ""
    set sound::options(groupchat_their_message_to_me_sound) ""
 
-5.3.  Menu-load
+6.3.  Menu-load
 
    After _Tkabber_ invokes your "postload" procedure, it starts building
    the GUI.  One of the most important things it does is build up a list
@@ -1788,30 +2012,30 @@
 
 
 
-Shchepin, et al.                                               [Page 32]
+Shchepin, et al.                                               [Page 36]
 
                              Tkabber v0.11.0                    May 2008
 
 
    4.  Finally, study the procedures listed here.
 
-5.3.1.  The Avatar Module
+6.3.1.  The Avatar Module
 
    The procedure called "avatar::store_on_server" stores your avatar on
    the server.
 
-5.3.2.  The Browser Module
+6.3.2.  The Browser Module
 
    The procedure called "browser::open" opens a new browser window.
 
-5.3.3.  The Groupchat Module
+6.3.3.  The Groupchat Module
 
    The procedure called "add_group_dialog" displays a dialog window when
    you want to add a groupchat to your roster.  Similarly, the procedure
    called "join_group_dialog" displays a dialog window when you want to
    join a groupchat.
 
-5.3.4.  The Login Module
+6.3.4.  The Login Module
 
    The procedure called "show_login_dialog" displays a dialog window
    when you want to login to the server.  (Prior to attempting to login,
@@ -1819,7 +2043,7 @@
    "logout" does just that; however, if you want get a dialog window for
    confirmation, use "show_logout_dialog" instead.
 
-5.3.5.  The Message Module
+6.3.5.  The Message Module
 
    If you want to send a message to someone, the procedure called
    "message::send_dialog" will put up a dialog window.  It takes upto
@@ -1833,7 +2057,7 @@
    If you want to adjust your message filters, the procecure called
    "filters::open" will put up a dialog window.
 
-5.3.6.  The Presence Module
+6.3.6.  The Presence Module
 
    If you want to display information about a user, the procecure called
    "userinfo::open" will put up a dialog window.  It takes two optional
@@ -1844,7 +2068,7 @@
 
 
 
-Shchepin, et al.                                               [Page 33]
+Shchepin, et al.                                               [Page 37]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1885,7 +2109,7 @@
        set textstatus "Out to lunch"
        set userstatus $userstatus
 
-5.3.7.  Miscellany
+6.3.7.  Miscellany
 
    Finally, you can use the procedure named "help_window" to display
    some textual help.  This procedure takes two arguments: the title for
@@ -1894,13 +2118,13 @@
    Also, instead of calling "exit" to terminate _Tkabber_, please use
    the "quit" procedure instead.
 
-5.4.  Final-Load
+6.4.  Final-Load
 
    Finally, right before _Tkabber_ goes to display the login dialog, it
 
 
 
-Shchepin, et al.                                               [Page 34]
+Shchepin, et al.                                               [Page 38]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -1956,12 +2180,12 @@
 
 
 
-Shchepin, et al.                                               [Page 35]
+Shchepin, et al.                                               [Page 39]
 
                              Tkabber v0.11.0                    May 2008
 
 
-6.  Extensibility
+7.  Extensibility
 
    In addition to various configuration mechanisms, _Tkabber_ lets you
    define procedures, termed "hooks" that get run when certain events
@@ -2012,7 +2236,7 @@
 
 
 
-Shchepin, et al.                                               [Page 36]
+Shchepin, et al.                                               [Page 40]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2055,7 +2279,7 @@
    Now let's look at the different kind of hooks that _Tkabber_ knows
    about.
 
-6.1.  Chat Hooks
+7.1.  Chat Hooks
 
    When _Tkabber_ decides that it needs to open a (tabbed) window for a
    chat or groupchat, two hooks are run:
@@ -2068,7 +2292,7 @@
 
 
 
-Shchepin, et al.                                               [Page 37]
+Shchepin, et al.                                               [Page 41]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2124,7 +2348,7 @@
 
 
 
-Shchepin, et al.                                               [Page 38]
+Shchepin, et al.                                               [Page 42]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2137,7 +2361,7 @@
    The hooks are given two parameters: chatid of conference and nick of
    participant.
 
-6.2.  Login Hooks
+7.2.  Login Hooks
 
    Two hooks are invoked whenever a session is connected or
    disconnected:
@@ -2149,7 +2373,7 @@
    Both hooks are given one parameter: connection ID (_Tkabber_ allows
    several connections at once).
 
-6.3.  Presence Hooks
+7.3.  Presence Hooks
 
    When our presence status changes, a hook is run:
 
@@ -2180,7 +2404,7 @@
 
 
 
-Shchepin, et al.                                               [Page 39]
+Shchepin, et al.                                               [Page 43]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2194,7 +2418,7 @@
    extended subtags and parameters of this presence (e.g., "-show xa
    -status online").
 
-6.4.  Roster Hooks
+7.4.  Roster Hooks
 
    When an item is added to the roster window, one of the four hooks is
    run to add stuff to the menu associated with that item:
@@ -2236,12 +2460,12 @@
 
 
 
-Shchepin, et al.                                               [Page 40]
+Shchepin, et al.                                               [Page 44]
 
                              Tkabber v0.11.0                    May 2008
 
 
-6.5.  Miscellaneous Hooks
+7.5.  Miscellaneous Hooks
 
    There are three "obvious" hooks:
 
@@ -2255,7 +2479,7 @@
    procedures, respectively. _postload_hook_ is run after all code has
    been loaded and before initializing main _Tkabber_ window.  After
    that _finload_hook_ is run.  The final hook is called just before
-   _Tkabber_ terminates (cf., Section 5.3.7).
+   _Tkabber_ terminates (cf., Section 6.3.7).
 
    You can add custom pages to userinfo window using
 
@@ -2292,14 +2516,14 @@
 
 
 
-Shchepin, et al.                                               [Page 41]
+Shchepin, et al.                                               [Page 45]
 
                              Tkabber v0.11.0                    May 2008
 
 
-7.  User Interface basics
+8.  User Interface basics
 
-7.1.  Searching
+8.1.  Searching
 
    Search panel may be invoked in certain classes of _Tkabber_ windows
    using the "<<OpenSearchPanel>>" Tk virtual event which is bound by
@@ -2348,7 +2572,7 @@
 
 
 
-Shchepin, et al.                                               [Page 42]
+Shchepin, et al.                                               [Page 46]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2404,7 +2628,7 @@
 
 
 
-Shchepin, et al.                                               [Page 43]
+Shchepin, et al.                                               [Page 47]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2414,7 +2638,11 @@
 A.1.  Main changes in 0.11.0
 
    o  New tabbed user interface.  Tab headers now occupy several rows
+      and tab bar can be docked to the left and right sides of chat
+      window
 
+   o  Roster filter
+
    o  Added support for pixmaps (in particular emoticons) JISP archives
       (XEP-0038)
 
@@ -2453,18 +2681,17 @@
 
    o  Mediated SOCKS5 connection support for file transfer (XEP-0065)
 
-   o  Blocking communicaation with users not in roster (using XEP-0016
-      via simple interface)
 
 
 
-
-
-Shchepin, et al.                                               [Page 44]
+Shchepin, et al.                                               [Page 48]
 
                              Tkabber v0.11.0                    May 2008
 
 
+   o  Blocking communicaation with users not in roster (using XEP-0016
+      via simple interface)
+
    o  Translatable outgoing error messages support (based on recipient's
       xml:lang)
 
@@ -2510,17 +2737,16 @@
 
    o  Support for TXT DNS-records (XEP-0156)
 
-   o  Support for ad-hoc commands (XEP-0050)
 
 
 
-
-
-Shchepin, et al.                                               [Page 45]
+Shchepin, et al.                                               [Page 49]
 
                              Tkabber v0.11.0                    May 2008
 
 
+   o  Support for ad-hoc commands (XEP-0050)
+
    o  Improved headlines support
 
    o  Chat state notification support (XEP-0085)
@@ -2564,19 +2790,21 @@
 
    o  Many fixes and enhancements
 
-A.6.  Main changes in 0.9.6beta
 
-   o  Multiple logins support
 
 
 
 
 
-Shchepin, et al.                                               [Page 46]
+Shchepin, et al.                                               [Page 50]
 
                              Tkabber v0.11.0                    May 2008
 
 
+A.6.  Main changes in 0.9.6beta
+
+   o  Multiple logins support
+
    o  History now splitted by month
 
    o  Animated emoticons support
@@ -2624,11 +2852,7 @@
 
 
 
-
-
-
-
-Shchepin, et al.                                               [Page 47]
+Shchepin, et al.                                               [Page 51]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2684,7 +2908,7 @@
 
 
 
-Shchepin, et al.                                               [Page 48]
+Shchepin, et al.                                               [Page 52]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2740,7 +2964,7 @@
 
 
 
-Shchepin, et al.                                               [Page 49]
+Shchepin, et al.                                               [Page 53]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2796,7 +3020,7 @@
 
 
 
-Shchepin, et al.                                               [Page 50]
+Shchepin, et al.                                               [Page 54]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2852,7 +3076,7 @@
 
 
 
-Shchepin, et al.                                               [Page 51]
+Shchepin, et al.                                               [Page 55]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2908,7 +3132,7 @@
 
 
 
-Shchepin, et al.                                               [Page 52]
+Shchepin, et al.                                               [Page 56]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -2964,7 +3188,7 @@
 
 
 
-Shchepin, et al.                                               [Page 53]
+Shchepin, et al.                                               [Page 57]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -3020,7 +3244,7 @@
 
 
 
-Shchepin, et al.                                               [Page 54]
+Shchepin, et al.                                               [Page 58]
 
                              Tkabber v0.11.0                    May 2008
 
@@ -3076,5 +3300,5 @@
 
 
 
-Shchepin, et al.                                               [Page 55]
+Shchepin, et al.                                               [Page 59]
 

Modified: trunk/tkabber/doc/tkabber.html
===================================================================
--- trunk/tkabber/doc/tkabber.html	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/doc/tkabber.html	2008-06-04 19:29:26 UTC (rev 1447)
@@ -1,6 +1,6 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 <html lang="en"><head><title>Tkabber v0.11.0</title>
-<meta http-equiv="Expires" content="Fri, 23 May 2008 06:53:12 +0000">
+<meta http-equiv="Expires" content="Wed, 04 Jun 2008 19:25:37 +0000">
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <meta name="description" content="Tkabber v0.11.0">
 <meta name="generator" content="xml2rfc v1.30 (http://xml.resource.org/)">
@@ -132,7 +132,7 @@
 <tr><td class="header">&nbsp;</td><td class="header">New Economic School</td></tr>
 <tr><td class="header">&nbsp;</td><td class="header">M. Litvak</td></tr>
 <tr><td class="header">&nbsp;</td><td class="header">Information Centre ISP</td></tr>
-<tr><td class="header">&nbsp;</td><td class="header">May 23, 2008</td></tr>
+<tr><td class="header">&nbsp;</td><td class="header">May 2008</td></tr>
 </table></td></tr></table>
 <div align="right"><span class="title"><br />Tkabber v0.11.0</span></div>
 
@@ -151,99 +151,121 @@
 Requirements<br />
 <a href="#s.download">3.</a>&nbsp;
 Download, install and run<br />
-<a href="#s.upgrading">4.</a>&nbsp;
-Upgrading<br />
-<a href="#s.configuration">5.</a>&nbsp;
+<a href="#s.upgrading0.10.0">4.</a>&nbsp;
+Upgrading from version 0.10.0<br />
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.conf">4.1.</a>&nbsp;
+Configuration options<br />
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.conf.proxy">4.1.1.</a>&nbsp;
+Proxy servers<br />
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.conf.fonts">4.1.2.</a>&nbsp;
+Resources to control fonts<br />
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.conf.kalive">4.1.3.</a>&nbsp;
+Keep-alives and dead link detection<br />
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.conf.ballons">4.1.4.</a>&nbsp;
+Resources to control appearance of balloon windows<br />
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.conf.parser">4.1.5.</a>&nbsp;
+Support for external XML parser<br />
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.iface">4.2.</a>&nbsp;
+User interface<br />
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.iface.tray">4.2.1.</a>&nbsp;
+System tray icon mouse gestures<br />
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.iface.tabs">4.2.2.</a>&nbsp;
+New tab management widget<br />
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ss.upgrading0.10.0.iface.splitters">4.2.3.</a>&nbsp;
+Window splitters<br />
+<a href="#s.upgrading0.9.9">5.</a>&nbsp;
+Upgrading from version 0.9.9<br />
+<a href="#s.configuration">6.</a>&nbsp;
 Configuration<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload">5.1.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload">6.1.</a>&nbsp;
 Pre-load<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload.tab">5.1.1.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload.tab">6.1.1.</a>&nbsp;
 Tabbed Interface<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-looknfeel">5.1.2.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-looknfeel">6.1.2.</a>&nbsp;
 Fonts and colors<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-crypto">5.1.3.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-crypto">6.1.3.</a>&nbsp;
 Cryptography by default<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-tdom">5.1.4.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-tdom">6.1.4.</a>&nbsp;
 Using of external XML parser from tDOM<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-debugoutput">5.1.5.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-debugoutput">6.1.5.</a>&nbsp;
 Debugging Output<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-splashwindow">5.1.6.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-splashwindow">6.1.6.</a>&nbsp;
 Splash window<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-internation">5.1.7.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-internation">6.1.7.</a>&nbsp;
 I18n/L10n<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-searching">5.1.8.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.preload-searching">6.1.8.</a>&nbsp;
 Searching<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload">5.2.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload">6.2.</a>&nbsp;
 Post-load<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-looknfeel">5.2.1.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-looknfeel">6.2.1.</a>&nbsp;
 Look-and-Feel<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-autoaway">5.2.2.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-autoaway">6.2.2.</a>&nbsp;
 The Autoaway Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-avatar">5.2.3.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-avatar">6.2.3.</a>&nbsp;
 The Avatar Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-chat">5.2.4.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-chat">6.2.4.</a>&nbsp;
 The Chat Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-clientinfo">5.2.5.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-clientinfo">6.2.5.</a>&nbsp;
 The Clientinfo Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-confinfo">5.2.6.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-confinfo">6.2.6.</a>&nbsp;
 The Conferenceinfo Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-crypto">5.2.7.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-crypto">6.2.7.</a>&nbsp;
 The Cryptographic Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-emoti">5.2.8.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-emoti">6.2.8.</a>&nbsp;
 The Emoticons Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-filexfer">5.2.9.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-filexfer">6.2.9.</a>&nbsp;
 The File Transfer Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-groupchat">5.2.10.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-groupchat">6.2.10.</a>&nbsp;
 The Groupchat Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-ispell">5.2.11.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-ispell">6.2.11.</a>&nbsp;
 The Ispell Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-si">5.2.12.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-si">6.2.12.</a>&nbsp;
 The Stream Initiation Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-log">5.2.13.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-log">6.2.13.</a>&nbsp;
 The Logger Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-login">5.2.14.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-login">6.2.14.</a>&nbsp;
 The Login Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-message">5.2.15.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-message">6.2.15.</a>&nbsp;
 The Message Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-rawxml">5.2.16.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-rawxml">6.2.16.</a>&nbsp;
 The Raw XML Input Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-roster">5.2.17.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-roster">6.2.17.</a>&nbsp;
 The Roster Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-sound">5.2.18.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.postload-sound">6.2.18.</a>&nbsp;
 The Sound Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload">5.3.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload">6.3.</a>&nbsp;
 Menu-load<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-avatar">5.3.1.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-avatar">6.3.1.</a>&nbsp;
 The Avatar Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-browser">5.3.2.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-browser">6.3.2.</a>&nbsp;
 The Browser Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-groupchat">5.3.3.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-groupchat">6.3.3.</a>&nbsp;
 The Groupchat Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-login">5.3.4.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-login">6.3.4.</a>&nbsp;
 The Login Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-message">5.3.5.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-message">6.3.5.</a>&nbsp;
 The Message Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-presence">5.3.6.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-presence">6.3.6.</a>&nbsp;
 The Presence Module<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-miscellany">5.3.7.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.menuload-miscellany">6.3.7.</a>&nbsp;
 Miscellany<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.finalload">5.4.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.finalload">6.4.</a>&nbsp;
 Final-Load<br />
-<a href="#s.extensibility">6.</a>&nbsp;
+<a href="#s.extensibility">7.</a>&nbsp;
 Extensibility<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor1">6.1.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor1">7.1.</a>&nbsp;
 Chat Hooks<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor2">6.2.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor2">7.2.</a>&nbsp;
 Login Hooks<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor3">6.3.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor3">7.3.</a>&nbsp;
 Presence Hooks<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor4">6.4.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor4">7.4.</a>&nbsp;
 Roster Hooks<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">6.5.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#anchor5">7.5.</a>&nbsp;
 Miscellaneous Hooks<br />
-<a href="#s.user-interface">7.</a>&nbsp;
+<a href="#s.user-interface">8.</a>&nbsp;
 User Interface basics<br />
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.ui-searching">7.1.</a>&nbsp;
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#s.ui-searching">8.1.</a>&nbsp;
 Searching<br />
 <a href="#anchor6">Appendix&nbsp;A.</a>&nbsp;
 Releases History<br />
@@ -679,10 +701,244 @@
 </p><pre>
 tkabber -mime %s
 </pre>
-<a name="s.upgrading"></a><br /><hr />
+<a name="s.upgrading0.10.0"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.4"></a><h3>4.&nbsp;Upgrading</h3>
+<a name="rfc.section.4"></a><h3>4.&nbsp;Upgrading from version 0.10.0</h3>
 
+<p>When upgrading <span class="emph">Tkabber</span> from version 0.10.0 or earlier note that
+several configuration options and user interface elements have been changed.
+</p>
+<a name="ss.upgrading0.10.0.conf"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.1"></a><h3>4.1.&nbsp;Configuration options</h3>
+
+<p>There are notable changes in handling connection through proxy servers, managing
+fonts and balloon colors, and detecting breaks in underlying TCP
+connection to a server.
+</p>
+<a name="ss.upgrading0.10.0.conf.proxy"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.1.1"></a><h3>4.1.1.&nbsp;Proxy servers</h3>
+
+<p>Since SOCKS4 and SOCKS5 proxy types were implemented in addition to HTTP
+proxy type, the whole set of connection options regarding proxy servers has
+been changed. This means that after upgrade the old values stored using the
+Customize mechanism will be lost and the same values in
+<span class="verb">loginconf</span> arrays will not be recognized any longer.
+</p>
+<p>If you do not use HTTP proxy, you can skip this section because these
+changes will not affect you.
+</p>
+<p>If your options are set using the <span class="emph">Customize</span> interface,
+write down values for options relevant to proxy server from the "Login"
+group of <span class="emph">Customize</span> settings, then after upgrade visit
+this group of settings, select "HTTPS" for the option
+<span class="verb">::loginconf(proxy)</span> and then fill in the rest
+of relevant settings with recorded values. As usual, save each setting after
+you change them. Do not be surprised with the word "HTTPS" (which stands for
+"HTTP over SSL"). It just means that <span class="emph">Tkabber</span> will use CONNECT
+method to tunnel TCP connection through a proxy.
+</p>
+<p>If you maintain <span class="verb">loginconf</span> arrays in config.tcl,
+you have to modify each array using this scheme:
+</p>
+<ul class="text">
+<li>Rename variable "useproxy", if present, to just "proxy" and change
+its value to either "https" if "useproxy" was set to true or to "none"
+(yes, the word "none", do not leave it empty) if it was set to false.
+</li>
+<li>Modify existing variables in these arrays using this map:
+
+<ul class="text">
+<li>Rename "httpproxy" to "proxyhost".
+</li>
+<li>Rename "httpport" to "proxyport".
+</li>
+<li>Rename "httplogin" to "proxyusername".
+</li>
+<li>Rename "httppassword" to "proxypassword".
+</li>
+</ul>
+
+</li>
+</ul><p>
+
+</p>
+<a name="ss.upgrading0.10.0.conf.fonts"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.1.2"></a><h3>4.1.2.&nbsp;Resources to control fonts</h3>
+
+<p>Fonts handling has been partially reworked: the global variable
+<span class="verb">font</span> that
+controls chat and roster fonts has been removed and now <span class="emph">Tkabber</span>
+relies on <span class="emph">Tk</span> option database to manage these settings.
+You can override roster and chat fonts independently of each other. To do
+that on systems not based on X Window use <span class="emph">Customize</span> options
+described below.
+</p>
+<p>The main consequence of this change is that now the fonts are taken from
+<span class="emph">Tk</span> option database and if it contains sane values you don't need to
+touch anything (until the update you had to tweak the
+<span class="verb">font</span> variable because it was set to font "fixed"
+by default). The variable <span class="verb">font</span> does not have any
+special meaning starting from 0.11.0 release.
+</p>
+<p>The second consequence is that you are now able to set fonts for chat
+and roster windows separately from each other using this list as a reference:
+</p>
+<ul class="text">
+<li><span class="verb">*font</span> <span class="emph">Tk</span> option database resource sets default font for
+all widgets used in <span class="emph">Tkabber</span>.
+</li>
+<li><span class="verb">*Chat*Text.font</span> <span class="emph">Tk</span> option database resource can be used
+to override font used for chat windows. This resource can be overridden by the
+<span class="verb">::ifacetk::options(font)</span> option from the
+"Main Interface" group of <span class="emph">Customize</span> settings.
+</li>
+<li><span class="verb">*Roster*font</span> <span class="emph">Tk</span> option database resource can be used to override
+font used for roster windows. This resource can be overridden by the
+<span class="verb">::ifacetk::options(roster_font)</span> option from the
+"Main Interface" group of <span class="emph">Customize</span> settings.
+</li>
+</ul><p>
+
+</p>
+<a name="ss.upgrading0.10.0.conf.kalive"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.1.3"></a><h3>4.1.3.&nbsp;Keep-alives and dead link detection</h3>
+
+<p>Keep-alive mechanism that was used to keep NATP devices from disconnecting
+idle XMPP sessions was accompanied in 0.10.0 with "XMPP ping" mechanism
+which also implemented dead link detection with support for disconnecting
+upon detection of network outage.
+</p>
+<p>In version 0.11.0, the old keep-alive mechanism has been dropped,
+so the following two global options have no effect now:
+</p>
+<ul class="text">
+<li><span class="verb">keep_alive</span>
+</li>
+<li><span class="verb">keep_alive_interval</span>
+</li>
+</ul><p>
+
+</p>
+<p>In order to get the same functionality, enable XMPP ping using these
+options in the "IQ" group of Customize settings:
+</p>
+<ul class="text">
+<li>Enabling <span class="verb">::plugins::ping::options(ping)</span> will make
+<span class="emph">Tkabber</span> periodically
+send xmpp:ping IQ request to the server.
+</li>
+<li>Set <span class="verb">::plugins::ping::options(timeout)</span> option to a number of seconds
+<span class="emph">Tkabber</span> should wait for either a xmpp:ping reply or an error to arrive
+from the server; if there is no answer from the server during this
+timeout, the socket for this connection will be forcibly disconnected.
+</li>
+</ul><p>
+
+</p>
+<a name="ss.upgrading0.10.0.conf.ballons"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.1.4"></a><h3>4.1.4.&nbsp;Resources to control appearance of balloon windows</h3>
+
+<p>Resources controlling the appearance of balloon windows have been made
+more generic. If you use custom <span class="emph">Tk</span> option database settings for balloon
+windows, change the relevant resources using this map:
+</p>
+<ul class="text">
+<li>Change references to <span class="verb">*Balloon.background</span> and
+<span class="verb">*Balloon.foreground</span>
+resources to <span class="verb">*Balloon*background</span> and
+<span class="verb">*Balloon*foreground</span>, respectively.
+</li>
+<li>Change references to <span class="verb">*Balloon*padX</span> and
+<span class="verb">*Balloon*padY</span> resources to
+<span class="verb">*Balloon.text.padX</span> and
+<span class="verb">*Balloon.text.padY</span>, respectively.
+</li>
+</ul><p>
+
+</p>
+<a name="ss.upgrading0.10.0.conf.parser"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.1.5"></a><h3>4.1.5.&nbsp;Support for external XML parser</h3>
+
+<p>Support for <span class="emph">TclXML</span> as an external XML parser has been removed
+(since <span class="emph">TclXML</span> has anyway been unable to support partial XML processing)
+along with the global variable <span class="verb">use_external_tclxml</span>
+which controlled the loading of <span class="emph">TclXML</span>.
+</p>
+<p>Now expat-based <span class="emph">Tcl</span> package <span class="emph">tDOM</span>
+is supported as an external XML
+parser. It can be enabled by loading it manually in config.tcl
+using the Tcl package command, for example:
+</p><pre>
+package require tdom
+</pre>
+<a name="ss.upgrading0.10.0.iface"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.2"></a><h3>4.2.&nbsp;User interface</h3>
+
+<p>There are notable changes in systray mouse gestures, appearance of a main
+tabbed window, and in behavior of paned window splitters.
+</p>
+<a name="ss.upgrading0.10.0.iface.tray"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.2.1"></a><h3>4.2.1.&nbsp;System tray icon mouse gestures</h3>
+
+<p>Mouse gestures bound to system tray (system notification area) icon
+have been reworked:
+</p>
+<ul class="text">
+<li>Single click on it with the left mouse button now unconditionally
+brings the main <span class="emph">Tkabber</span> window to front, possibly deiconifying it first.
+</li>
+<li>Single click with the middle mouse button now unconditionally
+iconifies the main <span class="emph">Tkabber</span> window.
+</li>
+</ul><p>
+
+</p>
+<p>This differs from the previois behaviour where single click with the
+left mouse button on <span class="emph">Tkabber</span>'s system tray icon toggled the
+iconified/visible state of the main <span class="emph">Tkabber</span> window.
+</p>
+<a name="ss.upgrading0.10.0.iface.tabs"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.2.2"></a><h3>4.2.2.&nbsp;New tab management widget</h3>
+
+<p>The <span class="emph">notebook</span> widget which was used to render tabs in tabbed
+interface mode has been replaced with a new custom widget providing
+the ability for multi-row placement of tabs and docking them to the
+left or right sides of the chat window (in addition to top or bottom
+docking available in 0.10.0 version and earlier).
+</p>
+<p>If you adjusted any specific <span class="emph">Tk</span> option database resources pertaining
+to that <span class="emph">notebook</span> widget, you have to change them keeping in mind
+that the new widget is just a bunch of <span class="emph">Tk</span> buttons (class
+<span class="verb">Button</span>)
+placed in a frame (called <span class="verb">.nb</span> as before). The class name for the
+new widget is <span class="verb">ButtonBar</span>.
+</p>
+<p>So if you explicitly set, say <span class="verb">*Notebook*font</span> option, you have to
+change it to <span class="verb">*ButtonBar*font</span> and so on.
+</p>
+<a name="ss.upgrading0.10.0.iface.splitters"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.4.2.3"></a><h3>4.2.3.&nbsp;Window splitters</h3>
+
+<p>Window splitters (thin vertical and horizontal windows used to change
+relative sizes of windows between which a splitter is placed) have been
+changed to "Windows" style. This differs from previous "Motif" style which
+implemented explicit "grip box" on each splitter which was the only
+"active point" of a splitter.
+</p>
+<a name="s.upgrading0.9.9"></a><br /><hr />
+<table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
+<a name="rfc.section.5"></a><h3>5.&nbsp;Upgrading from version 0.9.9</h3>
+
 <p>When upgrading <span class="emph">Tkabber</span> from version 0.9.9 or earlier note the following:
 </p>
 <ul class="text">
@@ -703,7 +959,7 @@
 </p>
 <a name="s.configuration"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5"></a><h3>5.&nbsp;Configuration</h3>
+<a name="rfc.section.6"></a><h3>6.&nbsp;Configuration</h3>
 
 <p><span class="emph">Tkabber</span> maintains its configuration using a set
 of files placed in a special configuration directory which
@@ -785,7 +1041,7 @@
 </p>
 <a name="s.preload"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1"></a><h3>5.1.&nbsp;Pre-load</h3>
+<a name="rfc.section.6.1"></a><h3>6.1.&nbsp;Pre-load</h3>
 
 <p>There are a few things that you may let <span class="emph">Tkabber</span> know
 immediately.
@@ -832,7 +1088,7 @@
 </pre>
 <a name="s.preload.tab"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1.1"></a><h3>5.1.1.&nbsp;Tabbed Interface</h3>
+<a name="rfc.section.6.1.1"></a><h3>6.1.1.&nbsp;Tabbed Interface</h3>
 
 <p>The first of these options,
 <span class="verb">ifacetk::options(use_tabbar)</span>,
@@ -851,7 +1107,7 @@
 </p>
 <a name="s.preload-looknfeel"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1.2"></a><h3>5.1.2.&nbsp;Fonts and colors</h3>
+<a name="rfc.section.6.1.2"></a><h3>6.1.2.&nbsp;Fonts and colors</h3>
 
 <p>Many aspects of the <span class="emph">Tkabber</span>'s visual appearance
 	such as fonts, colors and geometry of windows can be
@@ -974,7 +1230,7 @@
 
 <a name="s.preload-crypto"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1.3"></a><h3>5.1.3.&nbsp;Cryptography by default</h3>
+<a name="rfc.section.6.1.3"></a><h3>6.1.3.&nbsp;Cryptography by default</h3>
 
 <p>Next,
 you may want to <span class="emph">Tkabber</span> to use cryptography by default.
@@ -996,7 +1252,7 @@
 </p>
 <a name="s.preload-tdom"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1.4"></a><h3>5.1.4.&nbsp;Using of external XML parser from tDOM</h3>
+<a name="rfc.section.6.1.4"></a><h3>6.1.4.&nbsp;Using of external XML parser from tDOM</h3>
 
 <p>
 	      By default for parsing XML <span class="emph">Tkabber</span> uses (modified) <span class="emph">TclXML</span>
@@ -1009,7 +1265,7 @@
 </pre>
 <a name="s.preload-debugoutput"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1.5"></a><h3>5.1.5.&nbsp;Debugging Output</h3>
+<a name="rfc.section.6.1.5"></a><h3>6.1.5.&nbsp;Debugging Output</h3>
 
 <p><span class="emph">Tkabber</span> has a lot of debugging output.
 By default,
@@ -1043,7 +1299,7 @@
 </pre>
 <a name="s.preload-splashwindow"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1.6"></a><h3>5.1.6.&nbsp;Splash window</h3>
+<a name="rfc.section.6.1.6"></a><h3>6.1.6.&nbsp;Splash window</h3>
 
 <p>
 	      By default, when <span class="emph">Tkabber</span> startup, it show loading process in
@@ -1055,7 +1311,7 @@
 </pre>
 <a name="s.preload-internation"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1.7"></a><h3>5.1.7.&nbsp;I18n/L10n</h3>
+<a name="rfc.section.6.1.7"></a><h3>6.1.7.&nbsp;I18n/L10n</h3>
 
 <p>
 	      <span class="emph">Tkabber</span> can show all messages in user's native language.  This
@@ -1072,7 +1328,7 @@
 </pre>
 <a name="s.preload-searching"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.1.8"></a><h3>5.1.8.&nbsp;Searching</h3>
+<a name="rfc.section.6.1.8"></a><h3>6.1.8.&nbsp;Searching</h3>
 
 <p><span class="emph">Tkabber</span> allows the user to perform textual
 		searching in certain classes of its windows. This searching
@@ -1084,7 +1340,7 @@
 </p>
 <a name="s.postload"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2"></a><h3>5.2.&nbsp;Post-load</h3>
+<a name="rfc.section.6.2"></a><h3>6.2.&nbsp;Post-load</h3>
 
 <p>After <span class="emph">Tkabber</span> reads your configuration file,
 it loads all of its own modules,
@@ -1275,7 +1531,7 @@
 </p>
 <a name="s.postload-looknfeel"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.1"></a><h3>5.2.1.&nbsp;Look-and-Feel</h3>
+<a name="rfc.section.6.2.1"></a><h3>6.2.1.&nbsp;Look-and-Feel</h3>
 
 <p>
 	    <span class="emph">Tkabber</span> is shameless in borrowing icons from other Jabber
@@ -1339,7 +1595,7 @@
 </p><pre>set ifacetk::options(raise_new_tab) 0</pre>
 <a name="s.postload-autoaway"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.2"></a><h3>5.2.2.&nbsp;The Autoaway Module</h3>
+<a name="rfc.section.6.2.2"></a><h3>6.2.2.&nbsp;The Autoaway Module</h3>
 
 <p>This module is presently available only if either:
 </p>
@@ -1364,7 +1620,7 @@
 </p>
 <a name="s.postload-avatar"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.3"></a><h3>5.2.3.&nbsp;The Avatar Module</h3>
+<a name="rfc.section.6.2.3"></a><h3>6.2.3.&nbsp;The Avatar Module</h3>
 
 <p>There are two variables that you can set to control whether
 <span class="emph">Tkabber</span> will allow others to see your avatar:
@@ -1380,7 +1636,7 @@
 
 <a name="s.postload-chat"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.4"></a><h3>5.2.4.&nbsp;The Chat Module</h3>
+<a name="rfc.section.6.2.4"></a><h3>6.2.4.&nbsp;The Chat Module</h3>
 
 <p>Most instant messaging users prefer to see all the back-and-forth
 communication in a single window.
@@ -1405,7 +1661,7 @@
 </pre>
 <a name="s.postload-clientinfo"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.5"></a><h3>5.2.5.&nbsp;The Clientinfo Module</h3>
+<a name="rfc.section.6.2.5"></a><h3>6.2.5.&nbsp;The Clientinfo Module</h3>
 
 <p>
 	      This module shows in popup balloons information of used by this
@@ -1416,7 +1672,7 @@
 </p><pre>set plugins::clientinfo::options(autoask) 1</pre>
 <a name="s.postload-confinfo"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.6"></a><h3>5.2.6.&nbsp;The Conferenceinfo Module</h3>
+<a name="rfc.section.6.2.6"></a><h3>6.2.6.&nbsp;The Conferenceinfo Module</h3>
 
 <p>After you join a conference that's listed in your
 	    roster, then whenever you mouse over that roster entry,
@@ -1444,7 +1700,7 @@
 </p>
 <a name="s.postload-crypto"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.7"></a><h3>5.2.7.&nbsp;The Cryptographic Module</h3>
+<a name="rfc.section.6.2.7"></a><h3>6.2.7.&nbsp;The Cryptographic Module</h3>
 
 <p><a class="info" href="#s.preload">Earlier<span> (</span><span class="info">Pre-load</span><span>)</span></a> we saw an example where
 the <span class="verb">ssj::options</span> array from the cryptographic module was set during
@@ -1459,7 +1715,7 @@
 </pre>
 <a name="s.postload-emoti"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.8"></a><h3>5.2.8.&nbsp;The Emoticons Module</h3>
+<a name="rfc.section.6.2.8"></a><h3>6.2.8.&nbsp;The Emoticons Module</h3>
 
 <p>
 	    The procedure called <span class="emph">plugins::emoticons::load_dir</span> is used to load
@@ -1484,7 +1740,7 @@
 </pre>
 <a name="s.postload-filexfer"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.9"></a><h3>5.2.9.&nbsp;The File Transfer Module</h3>
+<a name="rfc.section.6.2.9"></a><h3>6.2.9.&nbsp;The File Transfer Module</h3>
 
 <p>
 	      You can set directory in which files will be saved by default:
@@ -1494,7 +1750,7 @@
 </pre>
 <a name="s.postload-groupchat"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.10"></a><h3>5.2.10.&nbsp;The Groupchat Module</h3>
+<a name="rfc.section.6.2.10"></a><h3>6.2.10.&nbsp;The Groupchat Module</h3>
 
 <p>
 	    There are several variables that set the dialog window defaults for
@@ -1539,7 +1795,7 @@
 </p>
 <a name="s.postload-ispell"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.11"></a><h3>5.2.11.&nbsp;The Ispell Module</h3>
+<a name="rfc.section.6.2.11"></a><h3>6.2.11.&nbsp;The Ispell Module</h3>
 
 <p>
 	    On Unix, <span class="emph">Tkabber</span> can check spelling of what you entered by
@@ -1572,7 +1828,7 @@
 </p>
 <a name="s.postload-si"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.12"></a><h3>5.2.12.&nbsp;The Stream Initiation Module</h3>
+<a name="rfc.section.6.2.12"></a><h3>6.2.12.&nbsp;The Stream Initiation Module</h3>
 
 <p>
 	    Stream initiation profile is defined in <span class="emph">XEP-0095</span> with
@@ -1607,7 +1863,7 @@
 </pre>
 <a name="s.postload-log"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.13"></a><h3>5.2.13.&nbsp;The Logger Module</h3>
+<a name="rfc.section.6.2.13"></a><h3>6.2.13.&nbsp;The Logger Module</h3>
 
 <p>
 	      You can set directory to store logs:
@@ -1625,7 +1881,7 @@
 </pre>
 <a name="s.postload-login"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.14"></a><h3>5.2.14.&nbsp;The Login Module</h3>
+<a name="rfc.section.6.2.14"></a><h3>6.2.14.&nbsp;The Login Module</h3>
 
 <p>The first task is to initialize the configuration defaults for the
 <span class="emph">login</span> module.
@@ -1711,7 +1967,7 @@
 </p>
 <a name="s.postload-message"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.15"></a><h3>5.2.15.&nbsp;The Message Module</h3>
+<a name="rfc.section.6.2.15"></a><h3>6.2.15.&nbsp;The Message Module</h3>
 
 <p>By default,
 when you restart <span class="emph">Tkabber</span> it won't remember the headlines you received.
@@ -1727,7 +1983,7 @@
 </p>
 <a name="s.postload-rawxml"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.16"></a><h3>5.2.16.&nbsp;The Raw XML Input Module</h3>
+<a name="rfc.section.6.2.16"></a><h3>6.2.16.&nbsp;The Raw XML Input Module</h3>
 
 <p>
 	    With this module you can monitor incoming/outgoing traffic from
@@ -1740,7 +1996,7 @@
 </p>
 <a name="s.postload-roster"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.17"></a><h3>5.2.17.&nbsp;The Roster Module</h3>
+<a name="rfc.section.6.2.17"></a><h3>6.2.17.&nbsp;The Roster Module</h3>
 
 <p>
 	    By default, your entire roster is shown, even those items that
@@ -1770,7 +2026,7 @@
 </p>
 <a name="s.postload-sound"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.2.18"></a><h3>5.2.18.&nbsp;The Sound Module</h3>
+<a name="rfc.section.6.2.18"></a><h3>6.2.18.&nbsp;The Sound Module</h3>
 
 <p>
 	      <span class="emph">Tkabber</span> can play sounds on some events.  It can use for this
@@ -1864,7 +2120,7 @@
 </pre>
 <a name="s.menuload"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.3"></a><h3>5.3.&nbsp;Menu-load</h3>
+<a name="rfc.section.6.3"></a><h3>6.3.&nbsp;Menu-load</h3>
 
 <p>After <span class="emph">Tkabber</span> invokes your <span class="verb">postload</span> procedure,
 it starts building the GUI.
@@ -1906,20 +2162,20 @@
 
 <a name="s.menuload-avatar"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.3.1"></a><h3>5.3.1.&nbsp;The Avatar Module</h3>
+<a name="rfc.section.6.3.1"></a><h3>6.3.1.&nbsp;The Avatar Module</h3>
 
 <p>The procedure called <span class="verb">avatar::store_on_server</span> stores your avatar
 on the server.
 </p>
 <a name="s.menuload-browser"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.3.2"></a><h3>5.3.2.&nbsp;The Browser Module</h3>
+<a name="rfc.section.6.3.2"></a><h3>6.3.2.&nbsp;The Browser Module</h3>
 
 <p>The procedure called <span class="verb">browser::open</span> opens a new browser window.
 </p>
 <a name="s.menuload-groupchat"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.3.3"></a><h3>5.3.3.&nbsp;The Groupchat Module</h3>
+<a name="rfc.section.6.3.3"></a><h3>6.3.3.&nbsp;The Groupchat Module</h3>
 
 <p>The procedure called <span class="verb">add_group_dialog</span> displays a dialog window
 when you want to add a groupchat to your roster.
@@ -1929,7 +2185,7 @@
 </p>
 <a name="s.menuload-login"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.3.4"></a><h3>5.3.4.&nbsp;The Login Module</h3>
+<a name="rfc.section.6.3.4"></a><h3>6.3.4.&nbsp;The Login Module</h3>
 
 <p>The procedure called <span class="verb">show_login_dialog</span> displays a dialog window
 when you want to login to the server.
@@ -1943,7 +2199,7 @@
 </p>
 <a name="s.menuload-message"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.3.5"></a><h3>5.3.5.&nbsp;The Message Module</h3>
+<a name="rfc.section.6.3.5"></a><h3>6.3.5.&nbsp;The Message Module</h3>
 
 <p>If you want to send a message to someone,
 the procedure called <span class="verb">message::send_dialog</span> will put up a dialog window.
@@ -1961,7 +2217,7 @@
 </p>
 <a name="s.menuload-presence"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.3.6"></a><h3>5.3.6.&nbsp;The Presence Module</h3>
+<a name="rfc.section.6.3.6"></a><h3>6.3.6.&nbsp;The Presence Module</h3>
 
 <p>If you want to display information about a user,
 the procecure called <span class="verb">userinfo::open</span> will put up a dialog window.
@@ -2015,7 +2271,7 @@
 </pre>
 <a name="s.menuload-miscellany"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.3.7"></a><h3>5.3.7.&nbsp;Miscellany</h3>
+<a name="rfc.section.6.3.7"></a><h3>6.3.7.&nbsp;Miscellany</h3>
 
 <p>Finally,
 you can use the procedure named <span class="verb">help_window</span> to display some textual
@@ -2030,7 +2286,7 @@
 </p>
 <a name="s.finalload"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.5.4"></a><h3>5.4.&nbsp;Final-Load</h3>
+<a name="rfc.section.6.4"></a><h3>6.4.&nbsp;Final-Load</h3>
 
 <p>Finally,
 right before <span class="emph">Tkabber</span> goes to display the login dialog,
@@ -2039,7 +2295,7 @@
 </p>
 <a name="s.extensibility"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.6"></a><h3>6.&nbsp;Extensibility</h3>
+<a name="rfc.section.7"></a><h3>7.&nbsp;Extensibility</h3>
 
 <p>In addition to various configuration mechanisms,
 <span class="emph">Tkabber</span> lets you define procedures,
@@ -2119,7 +2375,7 @@
 </p>
 <a name="anchor1"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.6.1"></a><h3>6.1.&nbsp;Chat Hooks</h3>
+<a name="rfc.section.7.1"></a><h3>7.1.&nbsp;Chat Hooks</h3>
 
 <p>When <span class="emph">Tkabber</span> decides that it needs to open a (tabbed)
 window for a chat or groupchat,
@@ -2213,7 +2469,7 @@
 </p>
 <a name="anchor2"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.6.2"></a><h3>6.2.&nbsp;Login Hooks</h3>
+<a name="rfc.section.7.2"></a><h3>7.2.&nbsp;Login Hooks</h3>
 
 <p>Two hooks are invoked whenever a session is connected or
 disconnected:
@@ -2227,7 +2483,7 @@
 </p>
 <a name="anchor3"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.6.3"></a><h3>6.3.&nbsp;Presence Hooks</h3>
+<a name="rfc.section.7.3"></a><h3>7.3.&nbsp;Presence Hooks</h3>
 
 <p>When our presence status changes,
 a hook is run:
@@ -2280,7 +2536,7 @@
 </p>
 <a name="anchor4"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.6.4"></a><h3>6.4.&nbsp;Roster Hooks</h3>
+<a name="rfc.section.7.4"></a><h3>7.4.&nbsp;Roster Hooks</h3>
 
 <p>
 	    When an item is added to the roster window, one of the four hooks is run to add
@@ -2326,7 +2582,7 @@
 </p>
 <a name="anchor5"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.6.5"></a><h3>6.5.&nbsp;Miscellaneous Hooks</h3>
+<a name="rfc.section.7.5"></a><h3>7.5.&nbsp;Miscellaneous Hooks</h3>
 
 <p>There are three "obvious" hooks:
 </p><pre>
@@ -2342,7 +2598,7 @@
 respectively. <span class="emph">postload_hook</span> is run after all code has been loaded and before initializing main
 <span class="emph">Tkabber</span> window. After that <span class="emph">finload_hook</span> is run.
 The final hook is called just before <span class="emph">Tkabber</span> terminates
-(cf., <a class="info" href="#s.menuload-miscellany">Section&nbsp;5.3.7<span> (</span><span class="info">Miscellany</span><span>)</span></a>).
+(cf., <a class="info" href="#s.menuload-miscellany">Section&nbsp;6.3.7<span> (</span><span class="info">Miscellany</span><span>)</span></a>).
 </p>
 <p>You can add custom pages to userinfo window using
 </p><pre>
@@ -2350,11 +2606,11 @@
 </pre>
 <a name="s.user-interface"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.7"></a><h3>7.&nbsp;User Interface basics</h3>
+<a name="rfc.section.8"></a><h3>8.&nbsp;User Interface basics</h3>
 
 <a name="s.ui-searching"></a><br /><hr />
 <table summary="layout" cellpadding="0" cellspacing="2" class="bug" align="right"><tr><td class="bug"><a href="#toc" class="link2">&nbsp;TOC&nbsp;</a></td></tr></table>
-<a name="rfc.section.7.1"></a><h3>7.1.&nbsp;Searching</h3>
+<a name="rfc.section.8.1"></a><h3>8.1.&nbsp;Searching</h3>
 
 <p>Search panel may be invoked in certain classes of
 <span class="emph">Tkabber</span> windows using the
@@ -2444,8 +2700,11 @@
 <p>
 	  </p>
 <ul class="text">
-<li>New tabbed user interface. Tab headers now occupy several rows
+<li>New tabbed user interface. Tab headers now occupy several rows and tab bar
+	       can be docked to the left and right sides of chat window
 </li>
+<li>Roster filter
+</li>
 <li>Added support for pixmaps (in particular emoticons) JISP archives (XEP-0038)
 </li>
 <li>Added support for SOCKS4a and SOCKS5 proxy for the main connection

Modified: trunk/tkabber/doc/tkabber.xml
===================================================================
--- trunk/tkabber/doc/tkabber.xml	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/doc/tkabber.xml	2008-06-04 19:29:26 UTC (rev 1447)
@@ -405,7 +405,200 @@
 	</figure>
 </section>
 
-<section anchor='s.upgrading' title='Upgrading'>
+<section anchor='s.upgrading0.10.0' title='Upgrading from version 0.10.0'>
+<t>When upgrading <spanx>Tkabber</spanx> from version 0.10.0 or earlier note that
+several configuration options and user interface elements have been changed.</t>
+
+<section anchor='ss.upgrading0.10.0.conf' title='Configuration options'>
+<t>There are notable changes in handling connection through proxy servers, managing
+fonts and balloon colors, and detecting breaks in underlying TCP
+connection to a server.</t>
+
+<section anchor='ss.upgrading0.10.0.conf.proxy' title='Proxy servers'>
+<t>Since SOCKS4 and SOCKS5 proxy types were implemented in addition to HTTP
+proxy type, the whole set of connection options regarding proxy servers has
+been changed. This means that after upgrade the old values stored using the
+Customize mechanism will be lost and the same values in
+<spanx style='verb'>loginconf</spanx> arrays will not be recognized any longer.</t> 
+
+<t>If you do not use HTTP proxy, you can skip this section because these
+changes will not affect you.</t> 
+
+<t>If your options are set using the <spanx>Customize</spanx> interface,
+write down values for options relevant to proxy server from the "Login"
+group of <spanx>Customize</spanx> settings, then after upgrade visit
+this group of settings, select "HTTPS" for the option
+<spanx style='verb'>::loginconf(proxy)</spanx> and then fill in the rest
+of relevant settings with recorded values. As usual, save each setting after
+you change them. Do not be surprised with the word "HTTPS" (which stands for
+"HTTP over SSL"). It just means that <spanx>Tkabber</spanx> will use CONNECT
+method to tunnel TCP connection through a proxy.</t> 
+
+<t>If you maintain <spanx style='verb'>loginconf</spanx> arrays in config.tcl,
+you have to modify each array using this scheme:
+<list style='symbols'>
+<t>Rename variable "useproxy", if present, to just "proxy" and change
+its value to either "https" if "useproxy" was set to true or to "none"
+(yes, the word "none", do not leave it empty) if it was set to false.</t>
+<t>Modify existing variables in these arrays using this map:
+<list style='symbols'>
+<t>Rename "httpproxy" to "proxyhost".</t>
+<t>Rename "httpport" to "proxyport".</t>
+<t>Rename "httplogin" to "proxyusername".</t>
+<t>Rename "httppassword" to "proxypassword".</t>
+</list>
+</t>
+</list>
+</t>
+</section>
+
+<section anchor='ss.upgrading0.10.0.conf.fonts' title='Resources to control fonts'>
+<t>Fonts handling has been partially reworked: the global variable
+<spanx style='verb'>font</spanx> that
+controls chat and roster fonts has been removed and now <spanx>Tkabber</spanx>
+relies on <spanx>Tk</spanx> option database to manage these settings.
+You can override roster and chat fonts independently of each other. To do
+that on systems not based on X Window use <spanx>Customize</spanx> options
+described below.</t>
+
+<t>The main consequence of this change is that now the fonts are taken from
+<spanx>Tk</spanx> option database and if it contains sane values you don't need to
+touch anything (until the update you had to tweak the
+<spanx style='verb'>font</spanx> variable because it was set to font "fixed"
+by default). The variable <spanx style='verb'>font</spanx> does not have any
+special meaning starting from 0.11.0 release.</t>
+
+<t>The second consequence is that you are now able to set fonts for chat
+and roster windows separately from each other using this list as a reference:
+<list style='symbols'>
+<t><spanx style='verb'>*font</spanx> <spanx>Tk</spanx> option database resource sets default font for
+all widgets used in <spanx>Tkabber</spanx>.</t>
+<t><spanx style='verb'>*Chat*Text.font</spanx> <spanx>Tk</spanx> option database resource can be used
+to override font used for chat windows. This resource can be overridden by the
+<spanx style='verb'>::ifacetk::options(font)</spanx> option from the
+"Main Interface" group of <spanx>Customize</spanx> settings.</t>
+<t><spanx style='verb'>*Roster*font</spanx> <spanx>Tk</spanx> option database resource can be used to override
+font used for roster windows. This resource can be overridden by the
+<spanx style='verb'>::ifacetk::options(roster_font)</spanx> option from the
+"Main Interface" group of <spanx>Customize</spanx> settings.</t>
+</list>
+</t>
+</section>
+
+<section anchor='ss.upgrading0.10.0.conf.kalive' title='Keep-alives and dead link detection'>
+<t>Keep-alive mechanism that was used to keep NATP devices from disconnecting
+idle XMPP sessions was accompanied in 0.10.0 with "XMPP ping" mechanism
+which also implemented dead link detection with support for disconnecting
+upon detection of network outage.</t>
+
+<t>In version 0.11.0, the old keep-alive mechanism has been dropped,
+so the following two global options have no effect now:
+<list style='symbols'>
+<t><spanx style='verb'>keep_alive</spanx></t>
+<t><spanx style='verb'>keep_alive_interval</spanx></t>
+</list>
+</t>
+
+<t>In order to get the same functionality, enable XMPP ping using these
+options in the "IQ" group of Customize settings:
+<list style='symbols'>
+<t>Enabling <spanx style='verb'>::plugins::ping::options(ping)</spanx> will make
+<spanx>Tkabber</spanx> periodically
+send xmpp:ping IQ request to the server.</t>
+<t>Set <spanx style='verb'>::plugins::ping::options(timeout)</spanx> option to a number of seconds
+<spanx>Tkabber</spanx> should wait for either a xmpp:ping reply or an error to arrive
+from the server; if there is no answer from the server during this
+timeout, the socket for this connection will be forcibly disconnected.</t>
+</list>
+</t>
+</section>
+
+<section anchor='ss.upgrading0.10.0.conf.ballons' title='Resources to control appearance of balloon windows'>
+
+<t>Resources controlling the appearance of balloon windows have been made
+more generic. If you use custom <spanx>Tk</spanx> option database settings for balloon
+windows, change the relevant resources using this map:
+<list style='symbols'>
+<t>Change references to <spanx style='verb'>*Balloon.background</spanx> and
+<spanx style='verb'>*Balloon.foreground</spanx>
+resources to <spanx style='verb'>*Balloon*background</spanx> and
+<spanx style='verb'>*Balloon*foreground</spanx>, respectively.</t>
+<t>Change references to <spanx style='verb'>*Balloon*padX</spanx> and
+<spanx style='verb'>*Balloon*padY</spanx> resources to
+<spanx style='verb'>*Balloon.text.padX</spanx> and
+<spanx style='verb'>*Balloon.text.padY</spanx>, respectively.</t>
+</list>
+</t>
+</section>
+
+<section anchor='ss.upgrading0.10.0.conf.parser' title='Support for external XML parser'>
+
+<t>Support for <spanx>TclXML</spanx> as an external XML parser has been removed
+(since <spanx>TclXML</spanx> has anyway been unable to support partial XML processing)
+along with the global variable <spanx style='verb'>use_external_tclxml</spanx>
+which controlled the loading of <spanx>TclXML</spanx>.</t>
+
+<figure>
+<preamble>Now expat-based <spanx>Tcl</spanx> package <spanx>tDOM</spanx>
+is supported as an external XML
+parser. It can be enabled by loading it manually in config.tcl
+using the Tcl package command, for example:</preamble>
+<artwork><![CDATA[
+package require tdom
+]]></artwork>
+</figure>
+</section>
+</section>
+
+<section anchor='ss.upgrading0.10.0.iface' title='User interface'>
+<t>There are notable changes in systray mouse gestures, appearance of a main
+tabbed window, and in behavior of paned window splitters.</t>
+<section anchor='ss.upgrading0.10.0.iface.tray' title='System tray icon mouse gestures'>
+
+<t>Mouse gestures bound to system tray (system notification area) icon
+have been reworked:
+<list style='symbols'>
+<t>Single click on it with the left mouse button now unconditionally
+brings the main <spanx>Tkabber</spanx> window to front, possibly deiconifying it first.</t>
+<t>Single click with the middle mouse button now unconditionally
+iconifies the main <spanx>Tkabber</spanx> window.</t>
+</list>
+</t>
+
+<t>This differs from the previois behaviour where single click with the
+left mouse button on <spanx>Tkabber</spanx>'s system tray icon toggled the
+iconified/visible state of the main <spanx>Tkabber</spanx> window.</t>
+</section>
+
+<section anchor='ss.upgrading0.10.0.iface.tabs' title='New tab management widget'>
+<t>The <spanx>notebook</spanx> widget which was used to render tabs in tabbed
+interface mode has been replaced with a new custom widget providing
+the ability for multi-row placement of tabs and docking them to the
+left or right sides of the chat window (in addition to top or bottom
+docking available in 0.10.0 version and earlier).</t>
+
+<t>If you adjusted any specific <spanx>Tk</spanx> option database resources pertaining
+to that <spanx>notebook</spanx> widget, you have to change them keeping in mind
+that the new widget is just a bunch of <spanx>Tk</spanx> buttons (class
+<spanx style='verb'>Button</spanx>)
+placed in a frame (called <spanx style='verb'>.nb</spanx> as before). The class name for the
+new widget is <spanx style='verb'>ButtonBar</spanx>.</t>
+
+<t>So if you explicitly set, say <spanx style='verb'>*Notebook*font</spanx> option, you have to
+change it to <spanx style='verb'>*ButtonBar*font</spanx> and so on.</t>
+</section>
+
+<section anchor='ss.upgrading0.10.0.iface.splitters' title='Window splitters'>
+<t>Window splitters (thin vertical and horizontal windows used to change
+relative sizes of windows between which a splitter is placed) have been
+changed to "Windows" style. This differs from previous "Motif" style which
+implemented explicit "grip box" on each splitter which was the only
+"active point" of a splitter.</t>
+</section>
+</section>
+</section>
+
+<section anchor='s.upgrading0.9.9' title='Upgrading from version 0.9.9'>
 <t>When upgrading <spanx>Tkabber</spanx> from version 0.9.9 or earlier note the following:
 <list style='symbols'>
     <t>On Macintosh or Microsoft Windows <spanx>Tkabber</spanx> will copy
@@ -2133,7 +2326,9 @@
       <section title="Main changes in 0.11.0">
 	<t>
 	  <list style='symbols'>
-	    <t>New tabbed user interface. Tab headers now occupy several rows</t>
+	    <t>New tabbed user interface. Tab headers now occupy several rows and tab bar
+	       can be docked to the left and right sides of chat window</t>
+	    <t>Roster filter</t>
 	    <t>Added support for pixmaps (in particular emoticons) JISP archives (XEP-0038)</t>
 	    <t>Added support for SOCKS4a and SOCKS5 proxy for the main connection</t>
 	    <t>Added user location support (XEP-0080)</t>

Modified: trunk/tkabber/msgs/de.msg
===================================================================
--- trunk/tkabber/msgs/de.msg	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/msgs/de.msg	2008-06-04 19:29:26 UTC (rev 1447)
@@ -1453,7 +1453,7 @@
 ::msgcat::mcset de "User activity publishing failed: %s"                    "Veröffentlichen der Kontakt-Aktivität misslungen: %s"
 ::msgcat::mcset de "User activity unpublishing failed: %s"                  "Zurückziehen der Kontakt-Aktivität misslungen: %s"
 ::msgcat::mcset de "\n\tActivity: %s"                                       "\n\tAktivität: %s"
-::msgcat::mcset de "\n\tUser's activity subscription: %s"                   "\n\tAktivitäts-Anmeldung des Kontakts: %s"
+::msgcat::mcset de "\n\tUser activity subscription: %s"                   "\n\tAktivitäts-Anmeldung des Kontakts: %s"
 
 ::msgcat::mcset de "doing chores"                                           "Haushalt"
 ::msgcat::mcset de "buying groceries"                                         "Lebensmittel kaufen"
@@ -1539,7 +1539,7 @@
 ::msgcat::mcset de "User location publishing failed: %s"                    "Veröffentlichen des Kontakt-Standorts misslungen: %s"
 ::msgcat::mcset de "User location unpublishing failed: %s"                  "Zurückziehen des Kontakt-Standorts misslungen: %s"
 ::msgcat::mcset de "\n\tLocation: %s : %s"                                  "\n\tStandort: %s : %s"
-::msgcat::mcset de "\n\tUser's location subscription: %s"                   "\n\tStandort-Anmeldung des Kontakts: %s"
+::msgcat::mcset de "\n\tUser location subscription: %s"                   "\n\tStandort-Anmeldung des Kontakts: %s"
 
 ::msgcat::mcset de "Altitude:"                                              "Höhenlage:"
 ::msgcat::mcset de "Area:"                                                  "Gegend:"
@@ -1577,7 +1577,7 @@
 ::msgcat::mcset de "User mood publishing failed: %s"                        "Veröffentlichen der Kontakt-Gemütslage misslungen: %s"
 ::msgcat::mcset de "User mood unpublishing failed: %s"                      "Zurückziehen der Kontakt-Gemütslage misslungen: %s"
 ::msgcat::mcset de "\n\tMood: %s"                                           "\n\tGemütslage: %s"
-::msgcat::mcset de "\n\tUser's mood subscription: %s"                       "\n\tGemütslagen-Anmeldung des Kontakts: %s"
+::msgcat::mcset de "\n\tUser mood subscription: %s"                       "\n\tGemütslagen-Anmeldung des Kontakts: %s"
 
 ::msgcat::mcset de "afraid"                                                 "ängstlich"
 ::msgcat::mcset de "amazed"                                                 "erstaunt"
@@ -1661,7 +1661,7 @@
 ::msgcat::mcset de "User tune publishing failed: %s"                        "Veröffentlichen der Kontakt-Musik misslungen: %s"
 ::msgcat::mcset de "User tune unpublishing failed: %s"                      "Zurückziehen der Kontakt-Musik misslungen: %s"
 ::msgcat::mcset de "\n\tTune: %s - %s"                                      "\n\tMusik: %s - %s"
-::msgcat::mcset de "\n\tUser's tune subscription: %s"                       "\n\tMusik-Anmeldung des Kontakts: %s"
+::msgcat::mcset de "\n\tUser tune subscription: %s"                       "\n\tMusik-Anmeldung des Kontakts: %s"
 
 # .../plugins/richtext/emoticons.tcl
 ::msgcat::mcset de "Handle ROTFL/LOL smileys -- those like :))) -- by \"consuming\" all that parens and rendering the whole word with appropriate icon." "ROTFL/LOL Smileys, wie z. B. :-))), derart behandeln, daß alle Paare entfernt werden und das Ganze mit dem zugehörigen Icon dargestellt wird."

Modified: trunk/tkabber/msgs/es.msg
===================================================================
--- trunk/tkabber/msgs/es.msg	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/msgs/es.msg	2008-06-04 19:29:26 UTC (rev 1447)
@@ -34,9 +34,12 @@
 ::msgcat::mcset es "%s request from %s" "Petición %s de %s"
 ::msgcat::mcset es "%s's activity changed to %s" "La actividad de %s ha cambiado a %s"
 ::msgcat::mcset es "%s's activity is unset" "La actividad de %s se ha desactivado"
+::msgcat::mcset es "%s's location changed to %s : %s" "La localización de %s ha cambiado a %s : %s"
+::msgcat::mcset es "%s's location is unset" "La localización de %s se ha desactivado"
 ::msgcat::mcset es "%s's mood changed to %s" "El estado de ánimo del usuario %s ha cambiado a %s"
 ::msgcat::mcset es "%s's mood is unset" "Se ha desactivado el estado de ánimo de %s"
 ::msgcat::mcset es "%s's tune changed to %s - %s" "La canción de %s ha cambiado a %s - %s"
+::msgcat::mcset es "%s's tune has stopped playing" "La canción de %s se ha detenido"
 ::msgcat::mcset es "%s's tune is unset" "La canción de %s ha sido desactivada"
 ::msgcat::mcset es "%s: %s/%s, Description: %s, Version: %s\nNumber of children: %s" "%s: %s/%s, Descripción: %s, Versión: %s\nNúmero de hijos: %s"
 ::msgcat::mcset es "&Help" "&Ayuda"
@@ -47,6 +50,7 @@
 ::msgcat::mcset es "<- Remove" "<- Eliminar"
 ::msgcat::mcset es "<none>" "<ninguno>"
 ::msgcat::mcset es ">>> Unable to decipher data: %s <<<" ">>> No ha sido posible descifrar los datos: %s <<<"
+::msgcat::mcset es "A new room is created" "Se ha creado una sala nueva"
 ::msgcat::mcset es "Abbreviations:" "Abreviaturas:"
 ::msgcat::mcset es "Aborted" "Abortado"
 ::msgcat::mcset es "About " "Acerca de "
@@ -55,6 +59,7 @@
 ::msgcat::mcset es "Accept connections from the listed JIDs." "Aceptar conexiones de los JIDs listados."
 ::msgcat::mcset es "Accept default config" "Aceptar la configuración por defecto"
 ::msgcat::mcset es "Accept messages from roster users only" "Aceptar mensajes solo de contactos de la lista"
+::msgcat::mcset es "Access Error" "Error de acceso"
 ::msgcat::mcset es "Account" "Cuenta"
 ::msgcat::mcset es "Action" "Acción"
 ::msgcat::mcset es "Activate lists at startup" "Activar listas en el inicio"
@@ -74,6 +79,7 @@
 ::msgcat::mcset es "Add group by regexp on JIDs..." "Crear grupo por regexp sobre JID..."
 ::msgcat::mcset es "Add item" "Añadir elemento"
 ::msgcat::mcset es "Add list" "Añadir lista"
+::msgcat::mcset es "Add new item" "Añadir nuevo elemento"
 ::msgcat::mcset es "Add new user..." "Añadir nuevo usuario..."
 ::msgcat::mcset es "Add roster group by JID regexp" "Añadir grupo a la lista por regexp sobre JID"
 ::msgcat::mcset es "Add user to roster..." "Añadir usuario..."
@@ -82,6 +88,7 @@
 ::msgcat::mcset es "Added abbreviation:\n%s: %s" "Añadir abreviatura:\n%s: %s"
 ::msgcat::mcset es "Address 2" "Dirección 2"
 ::msgcat::mcset es "Address 2:" "Dirección 2:"
+::msgcat::mcset es "Address Error" "Error de dirección"
 ::msgcat::mcset es "Address type not supported by SOCKS proxy" "Tipo de dirección no soportada por el proxy SOCKS"
 ::msgcat::mcset es "Address" "Dirección"
 ::msgcat::mcset es "Address:" "Dirección:"
@@ -90,6 +97,7 @@
 ::msgcat::mcset es "Alexey Shchepin" "Alexey Shchepin"
 ::msgcat::mcset es "All Files" "Todos los ficheros"
 ::msgcat::mcset es "All files" "Todos los ficheros"
+::msgcat::mcset es "All items:" "Todos los elementos:"
 ::msgcat::mcset es "All unread messages were forwarded to %s." "Todos los mensajes no leídos fueron reenviados a %s."
 ::msgcat::mcset es "All" "Todos"
 ::msgcat::mcset es "Allow X-GOOGLE-TOKEN SASL mechanism" "Permitir el mecanismo SASL: X-GOOGLE-TOKEN"
@@ -97,14 +105,17 @@
 ::msgcat::mcset es "Allow downloading" "Permitir descargar"
 ::msgcat::mcset es "Allow plaintext authentication mechanisms (when password is transmitted unencrypted)." "Permitir mecanismos de autenticación de texto plano (donde la contraseña se envía sin cifrar)."
 ::msgcat::mcset es "Allow plaintext authentication mechanisms" "Permitir mecanismos de autenticación de texto plano"
+::msgcat::mcset es "Altitude:" "Altitud:"
 ::msgcat::mcset es "An error occurred when searching in %s\n\n%s" "Un error ocurrió buscando en %s\n\n%s"
 ::msgcat::mcset es "Announce" "Anunciar"
+::msgcat::mcset es "Application Error" "Error de aplicación"
 ::msgcat::mcset es "Approve subscription" "Aprobar subscripción"
 ::msgcat::mcset es "April" "Abril"
 ::msgcat::mcset es "Are you sure to remove %s from roster?" "¿Estás seguro de querer eliminar %s de tu lista?"
 ::msgcat::mcset es "Are you sure to remove all users in group '%s' from roster? \n(Users which are in another groups too, will not be removed from the roster.)" "¿Estás seguro de que quieres eliminar todos los usuarios del grupo '%s'? \n(Los usuarios que están también en otros grupos no se eliminarán de tu lista de contactos)"
 ::msgcat::mcset es "Are you sure to remove group '%s' from roster? \n(Users which are in this group only, will be in undefined group.)" "¿Estás seguro de que quieres eliminar el grupo '%s'? \n(Los usuarios que están solo en este grupo se moverán al grupo 'Indefinido')"
 ::msgcat::mcset es "Are you sure to remove group '%s' from roster?" "¿Estás seguro de que quieres eliminar el grupo '%s' de la lista de contactos?"
+::msgcat::mcset es "Area:" "Área:"
 ::msgcat::mcset es "Artist:" "Artista:"
 ::msgcat::mcset es "Ask:" "Preguntar:"
 ::msgcat::mcset es "Attached URL:" "URL adjunta:"
@@ -118,6 +129,14 @@
 ::msgcat::mcset es "Authentication successful" "Autenticación exitosa"
 ::msgcat::mcset es "Authentication" "Autenticación"
 ::msgcat::mcset es "Authors:" "Autores:"
+::msgcat::mcset es "Auto-subscribe to other's user activity notifications." "Auto subscribirse a las notificaciones de actividad de otros usuarios"
+::msgcat::mcset es "Auto-subscribe to other's user activity" "Auto subscribirse a la actividad de otros usuarios"
+::msgcat::mcset es "Auto-subscribe to other's user location notifications." "Auto subscribirse a las notificaciones de localización de otros usuarios"
+::msgcat::mcset es "Auto-subscribe to other's user location" "Auto subscribirse a la localización de otros usuarios"
+::msgcat::mcset es "Auto-subscribe to other's user mood notifications." "Auto subscribirse a las notificaciones de estado de ánimo de otros usuarios"
+::msgcat::mcset es "Auto-subscribe to other's user mood" "Auto subscribirse al estado de ánimo de otros usuarios"
+::msgcat::mcset es "Auto-subscribe to other's user tune notifications." "Auto subscribirse a las notificaciones de canción de otros usuarios."
+::msgcat::mcset es "Auto-subscribe to other's user tune" "Auto subscribirse a las canciones de otros usuarios"
 ::msgcat::mcset es "Automatically away due to idle" "Automáticamente ausente debido a inactividad"
 ::msgcat::mcset es "Automatically join conference upon connect" "Entrar en la sala automáticamente al conectar"
 ::msgcat::mcset es "Available groups" "Grupos disponibles"
@@ -130,6 +149,7 @@
 ::msgcat::mcset es "Bad Namespace Prefix" "Mal Prefijo de Espacio de Nombres"
 ::msgcat::mcset es "Bad Request" "Mala petición"
 ::msgcat::mcset es "Ban" "Bloquear"
+::msgcat::mcset es "Bearing:" "Bearing:"
 ::msgcat::mcset es "Begin date" "Fecha de inicio"
 ::msgcat::mcset es "Birthday" "Fecha de nacimiento"
 ::msgcat::mcset es "Birthday:" "Fecha de nacimiento:"
@@ -139,6 +159,7 @@
 ::msgcat::mcset es "Bottom" "Abajo"
 ::msgcat::mcset es "Browse" "Explorar"
 ::msgcat::mcset es "Browse..." "Explorar..."
+::msgcat::mcset es "Building:" "Edificio:"
 ::msgcat::mcset es "Cache headlines on exit and restore on start." "Guardar titulares al terminar y recuperar al iniciar."
 ::msgcat::mcset es "Cached service categories and types (from disco#info)." "Categorías de servicio y tipos cacheados (de disco#info)."
 ::msgcat::mcset es "Can't open file \"%s\": %s" "No se puede abrir el fichero \"%s\": %s"
@@ -151,6 +172,7 @@
 ::msgcat::mcset es "Cannot publish empty mood" "No se puede publicar un estado de ánimo vacío"
 ::msgcat::mcset es "Carbon copy" "Copia carbón"
 ::msgcat::mcset es "Cell:" "Móvil:"
+::msgcat::mcset es "Certificate has expired" "El certificado ha expirado"
 ::msgcat::mcset es "Change Presence Priority" "Cambiar Prioridad"
 ::msgcat::mcset es "Change password" "Cambiar contraseña"
 ::msgcat::mcset es "Change password..." "Cambiar contraseña..."
@@ -178,6 +200,7 @@
 ::msgcat::mcset es "City:" "Población:"
 ::msgcat::mcset es "Clear bookmarks" "Borrar marcadores"
 ::msgcat::mcset es "Clear chat window" "Limpiar ventana de charla"
+::msgcat::mcset es "Clear history" "Limpiar historial"
 ::msgcat::mcset es "Clear window" "Limpiar ventana"
 ::msgcat::mcset es "Clear" "Limpiar"
 ::msgcat::mcset es "Client message" "Mensaje del cliente"
@@ -304,12 +327,12 @@
 ::msgcat::mcset es "Edit visible list" "Editando la lista de visibles"
 ::msgcat::mcset es "Edit voice list" "Editar la lista de Voces"
 ::msgcat::mcset es "Edit" "Editar"
-::msgcat::mcset es "Email:" "Correo-e:"
 ::msgcat::mcset es "Emphasize stylecoded messages using different fonts." "Enfatizar mensajes con códigos de estilo usando diferentes fuentes."
 ::msgcat::mcset es "Emphasize" "Enfatizar"
 ::msgcat::mcset es "Empty rule name" "Nombre de la regla vacío"
 ::msgcat::mcset es "Enable KDE tray icon." "Usar icono en la bandeja de sistema de KDE."
 ::msgcat::mcset es "Enable SI transport %s." "Activar transporte SI %s."
+::msgcat::mcset es "Enable announcing entity capabilities in every outgoing presence." "Anunciar en todos los mensajes de presencia enviados las capacidades de la entidad."
 ::msgcat::mcset es "Enable chat window autoscroll only when last message is shown." "Activar desplazamiento automático sólo cuando se ha mostrado el último mensaje."
 ::msgcat::mcset es "Enable freedesktop system tray icon." "Activar icono en bandeja de sistema Freedesktop"
 ::msgcat::mcset es "Enable freedesktop systray icon." "Activar el icono Freedesktop en la bandeja de sistema."
@@ -340,6 +363,9 @@
 ::msgcat::mcset es "Error loading MUC ignore rules, purged." "Ocurrió un error al cargar las reglas MUC de ignorados, purgado."
 ::msgcat::mcset es "Error negotiate: %s" "Error negociando: %s"
 ::msgcat::mcset es "Error requesting data: %s" "Error pidiendo datos: %s"
+::msgcat::mcset es "Error restoring annotations: %s" "Error restaurando las anotaciones: %s"
+::msgcat::mcset es "Error restoring conference bookmarks: %s" "Error restaurando marcadores de conferencias: %s"
+::msgcat::mcset es "Error restoring roster contacts: %s" "Error restaurando la lista de contactos: %s"
 ::msgcat::mcset es "Error while converting screenname: %s." "Error al convertir la dirección de contacto: %s."
 ::msgcat::mcset es "Error" "Error"
 ::msgcat::mcset es "Error:" "Error:"
@@ -363,6 +389,7 @@
 ::msgcat::mcset es "Fetch all messages" "Recuperar todos los mensajes"
 ::msgcat::mcset es "Fetch message" "Recuperar mensaje"
 ::msgcat::mcset es "Fetch nickname" "Averiguar apodo"
+::msgcat::mcset es "Fetch nicknames of all users in group" "Averiguar apodos de todos los usuarios en el grupo"
 ::msgcat::mcset es "Fetch unseen messages" "Recuperar mensajes no vistos"
 ::msgcat::mcset es "Fetch user nicknames" "Averiguar apodos de usuario"
 ::msgcat::mcset es "File %s cannot be opened: %s. History for %s (%s) is NOT converted\n" "No se pudo abrir el fichero %s: %s. El historial de %s (%s) NO se convirtió\n"
@@ -375,9 +402,13 @@
 ::msgcat::mcset es "Filters" "Filtros"
 ::msgcat::mcset es "Finish" "Terminar"
 ::msgcat::mcset es "First Name:" "Nombre:"
-::msgcat::mcset es "Font to use in roster, chat windows etc." "Fuente para usar en la lista de contactos, etc."
+::msgcat::mcset es "Floor:" "Planta:"
+::msgcat::mcset es "Font to use in chat windows." "Fuente a usar en las ventanas de charla."
+::msgcat::mcset es "Font to use in roster windows." "Fuente a usar en la lista de contactos."
 ::msgcat::mcset es "Forbidden" "Prohibido"
 ::msgcat::mcset es "Force advertising this hostname (or IP address) for outgoing HTTP file transfers." "Forzar indicación del nombre de la máquina (o dirección IP) en las transferencias de fichero HTTP salientes."
+::msgcat::mcset es "Format Error" "Error de formato"
+::msgcat::mcset es "Format of timestamp in chat message. Refer to Tcl documentation of 'clock' command for description of format.\n\nExamples:\n  \[%R\] - \[20:37\]\n  \[%T\] - \[20:37:12\]\n  \[%a %b %d %H:%M:%S %Z %Y\] - \[Thu Jan 01 03:00:00 MSK 1970\]" "Formatio de la fecha en un mensaje de charla. Consulta la documentación de Tcl sobre el comando 'clock' para obtener detalles del formato.\n\nEjemplos:\n  \[%R\] - \[20:37\]\n  \[%T\] - \[20:37:12\]\n  \[%a %b %d %H:%M:%S %Z %Y\] - \[Thu Jan 01 03:00:00 MSK 1970\]"
 ::msgcat::mcset es "Format of timestamp in delayed chat messages delayed for more than 24 hours." "Formato de los tiempos en mensajes de charla retrasados por más de 24 horas."
 ::msgcat::mcset es "Format of timestamp in headline tree view. Set to empty string if you don't want to see timestamps." "Formato de fecha en la vista de árbol de los titulares. Si no quieres ver la fecha déjalo vacío."
 ::msgcat::mcset es "Forward headline" "Reenviar titular"
@@ -395,6 +426,7 @@
 ::msgcat::mcset es "GPG-encrypt outgoing messages where possible." "Cifrar con GPG los mensajes salientes siempre que sea posible."
 ::msgcat::mcset es "GPG-sign outgoing messages and presence updates." "Firmar con GPG los mensajes y presencias salientes."
 ::msgcat::mcset es "GPGME options (signing and encryption)." "Opciones de GPGME (firma y cifrado)."
+::msgcat::mcset es "GPS datum:" "GPS datum:"
 ::msgcat::mcset es "Generate chat messages when chat peer changes his/her status and/or status message" "Generar mensajes de charla cuando el contacto cambia su estado o su mensaje de estado"
 ::msgcat::mcset es "Generate enter/exit messages" "Generar mensajes de entrada/salida"
 ::msgcat::mcset es "Generate groupchat messages when occupant changes his/her status and/or status message." "Generar mensajes de sala cuando un ocupante cambia su estado o su mensaje de estado."
@@ -430,12 +462,15 @@
 ::msgcat::mcset es "Headline message" "Mensaje de titular"
 ::msgcat::mcset es "Headlines" "Titulares"
 ::msgcat::mcset es "Help" "Ayuda"
+::msgcat::mcset es "Hide characters comprising stylecode markup." "Esconder caracteres que correspondan a formato de texto."
 ::msgcat::mcset es "Hide main window" "Esconder ventana principal"
 ::msgcat::mcset es "Hide/Show roster" "Ocultar/mostrar lista de contactos"
 ::msgcat::mcset es "Highlight current nickname in messages." "Resaltar en los mensajes tu apodo actual."
 ::msgcat::mcset es "Highlight only whole words in messages." "Resaltar solo palabras completas en los mensajes."
 ::msgcat::mcset es "History for %s" "Historial de %s"
+::msgcat::mcset es "History of availability status messages" "Historial de mensajes de estado de disponibilidad"
 ::msgcat::mcset es "Home:" "Casa:"
+::msgcat::mcset es "Horizontal GPS error:" "Error de GPS horizontal:"
 ::msgcat::mcset es "Host Gone" "Host No Disponible"
 ::msgcat::mcset es "Host Unknown" "Host Desconocido"
 ::msgcat::mcset es "Host unreachable" "Máquina inlocalizable"
@@ -449,6 +484,7 @@
 ::msgcat::mcset es "Idle for %s" "Inactivo durante %s"
 ::msgcat::mcset es "Idle threshold in minutes after that Tkabber marks you as away." "Intervalo de inactividad tras el cual Tkabber te cambia a 'ausente'"
 ::msgcat::mcset es "Idle threshold in minutes after that Tkabber marks you as extended away." "Intervalo de inactividad tras el cual Tkabber te cambia a 'muy ausente'."
+::msgcat::mcset es "If set then open chat window/tab when user doubleclicks roster item. Otherwise open normal message window." "Si está activado, cuando se pulse dos veces con el ratón sobre un contacto, se abrirá una ventana o pestaña de charla. Si no, se abrirá una ventana de mensaje normal."
 ::msgcat::mcset es "Ignore chat messages" "Ignorar mensajes de charla"
 ::msgcat::mcset es "Ignore groupchat messages" "Ignorar mensajes de charla de grupo"
 ::msgcat::mcset es "Ignore list" "Lista de ignorados"
@@ -486,6 +522,7 @@
 ::msgcat::mcset es "Invite" " Invitar "
 ::msgcat::mcset es "Invited to:" "Invitado a:"
 ::msgcat::mcset es "Ispell dictionary encoding. If it is empty, system encoding is used." "Codificación del diccionario Ispell. Si está vacío se utilizará la codificación del sistema."
+::msgcat::mcset es "Ispell options. See ispell manual for details.\n\nExamples:\n  -d russian\n  -d german -T latin1\n  -C -d english" "Opciones de Ispell. Consulta el manual de Ispell para más detalles.\n\nEjemplos:\n  -d russian\n  -d german -T latin1\n  -C -d english"
 ::msgcat::mcset es "Issuer" "Emisor"
 ::msgcat::mcset es "Item Not Found" "Elemento no encontrado"
 ::msgcat::mcset es "JID Malformed" "JID mal formado"
@@ -532,6 +569,7 @@
 ::msgcat::mcset es "Load state on Tkabber start." "Cargar estado en el inicio de Tkabber."
 ::msgcat::mcset es "Load state on start" "Cargar estado al inicio"
 ::msgcat::mcset es "Loading photo failed: %s." "No se pudo cargar la imagen: %s."
+::msgcat::mcset es "Locality:" "Localidad:"
 ::msgcat::mcset es "Location" "Lugar"
 ::msgcat::mcset es "Log in" " Iniciar "
 ::msgcat::mcset es "Log in..." "Iniciar sesión..."
@@ -556,10 +594,12 @@
 ::msgcat::mcset es "Mark all unseen" "Marcar todos como no leídos"
 ::msgcat::mcset es "Marshall T. Rose" "Marshall T. Rose"
 ::msgcat::mcset es "Match case while searching in chat, log or disco windows." "Hacer coincidencia mayúsculas/minúsculas al buscar."
+::msgcat::mcset es "Match contact JIDs in addition to nicknames in roster filter." "Concordar en el filtro de contactos no solo apodos, sino también direcciones Jabber (JID)."
 ::msgcat::mcset es "Maximum interval length in hours for which log messages should be shown in newly opened chat window (if set to negative then the interval is unlimited)." "Máxima longitud de intervalo en horas para el cual los mensajes del historial deberían mostrarse cuando se abre una nueva ventana de charla (si es negativo el intervalo será ilimitado)."
 ::msgcat::mcset es "Maximum number of characters in the history in MUC compatible conference rooms." "Máximo número de caracteres en el historial de las salas de charla MUC."
 ::msgcat::mcset es "Maximum number of log messages to show in newly opened chat window (if set to negative then the number is unlimited)." "Máximo número de mensajes de historial a mostrar en una ventana de charla nueva (si es negativo el intervalo será ilimitado)."
 ::msgcat::mcset es "Maximum number of stanzas in the history in MUC compatible conference rooms." "Máximo número de mensajes en el historial de las salas de charla MUC."
+::msgcat::mcset es "Maximum number of status messages to keep. If the history size reaches this threshold, the oldest message will be deleted automatically when a new one is recorded." "Número máximo de mensajes de estado a mantener. Si el tamaño del historial excede este umbral, los mensajes antiguos se irán borrandp automáticamente según se vayan guardando mensajes nuevos."
 ::msgcat::mcset es "Maximum poll interval." "Intervalo máximo de Poll."
 ::msgcat::mcset es "Maximum width of tab buttons in tabbed mode." "Ancho máximo de los botones de pesataña en el modo de pestañas."
 ::msgcat::mcset es "May" "Mayo"
@@ -637,6 +677,8 @@
 ::msgcat::mcset es "Not Acceptable" "No aceptable"
 ::msgcat::mcset es "Not Allowed" "No permitido"
 ::msgcat::mcset es "Not Authorized" "No autorizado"
+::msgcat::mcset es "Not Found" "No encontrado"
+::msgcat::mcset es "Not Implemented" "No implementado"
 ::msgcat::mcset es "Not connected" "No conectado"
 ::msgcat::mcset es "Not logged in" "No conectado"
 ::msgcat::mcset es "Notes" "Notas"
@@ -665,6 +707,7 @@
 ::msgcat::mcset es "Opens a new chat window for the new nick of the room occupant" "Abre una nueva ventana de charla para el nuevo apodo del ocupante de la sala"
 ::msgcat::mcset es "Options for Conference Info module, that allows you to see list of participants in roster popup, regardless of whether you are currently joined with the conference." "Opciones para el módulo 'Información de Conferencias', que te permite ver la lista de participantes en las salas de conferencia de tu lista de contactos con un popup, sin necesidad de que participes ellas."
 ::msgcat::mcset es "Options for Raw XML Input module, which allows you to monitor incoming/outgoing traffic from connection to server and send custom XML stanzas." "Opciones para el módulo 'XML Crudo', que te permite monitorizar tráfico de entrada/salida en la conexión con el servidor y enviar tus propios mensajes XML."
+::msgcat::mcset es "Options for entity capabilities plugin." "Opciones del plugin de capacidades de entidad."
 ::msgcat::mcset es "Options for external play program" "Opciones para el programa de reproducción externo"
 ::msgcat::mcset es "Options for main interface." "Opciones del interfaz principal."
 ::msgcat::mcset es "Options for module that automatically marks you as away after idle threshold." "Opciones del módulo 'Autoausencia', que te cambia a 'ausente' automáticamente después de un tiempo de inactividad."
@@ -692,6 +735,7 @@
 ::msgcat::mcset es "Pending" "Pendiente"
 ::msgcat::mcset es "Periodically browse roster conferences" "Inspeccionar periódicamente salas de charla de la lista"
 ::msgcat::mcset es "Personal " "Personal "
+::msgcat::mcset es "Personal eventing via pubsub plugins options." "Opciones de Eventos Personales via PubSub (PEP)."
 ::msgcat::mcset es "Personal eventing" "Eventos personales"
 ::msgcat::mcset es "Personal" "Personal"
 ::msgcat::mcset es "Phone BBS" "Teléfono BBS"
@@ -726,6 +770,7 @@
 ::msgcat::mcset es "Port:" "Puerto:"
 ::msgcat::mcset es "Postal Code" "Código Postal"
 ::msgcat::mcset es "Postal Code:" "Código Postal:"
+::msgcat::mcset es "Postal code:" "Código Postal:"
 ::msgcat::mcset es "Preferred:" "Preferido:"
 ::msgcat::mcset es "Prefix" "Prefijo"
 ::msgcat::mcset es "Prefix:" "Prefijo:"
@@ -767,10 +812,12 @@
 ::msgcat::mcset es "Proxy username:" "Nombre de usuario de proxy:"
 ::msgcat::mcset es "Proxy" "Proxy"
 ::msgcat::mcset es "Pub/sub" "Pub/sub"
+::msgcat::mcset es "Publish \"playback stopped\" instead" "Publicar \"se ha detenido la canción\" en su lugar"
 ::msgcat::mcset es "Publish node" "Publicar nodo"
-::msgcat::mcset es "Publish user activity" "Publicar la actividad de usuario"
-::msgcat::mcset es "Publish user mood" "Publicar el estado de ánimo del usuario"
-::msgcat::mcset es "Publish user tune" "Publicar canción de usuario"
+::msgcat::mcset es "Publish user activity..." "Publicar la actividad..."
+::msgcat::mcset es "Publish user location..." "Publicar localización de usuario..."
+::msgcat::mcset es "Publish user mood..." "Publicar estado de ánimo..."
+::msgcat::mcset es "Publish user tune..." "Publicar canción de usuario..."
 ::msgcat::mcset es "Publish" "Publicado"
 ::msgcat::mcset es "Publisher" "Publicador"
 ::msgcat::mcset es "Publishing is only possible while being online" "Solo puedes publicar cuando estás conectado"
@@ -784,6 +831,7 @@
 ::msgcat::mcset es "Quit" "Salir"
 ::msgcat::mcset es "Quote" "Cita"
 ::msgcat::mcset es "Raise new tab." "Levantar nueva pestaña."
+::msgcat::mcset es "Rating:" "Valoración:"
 ::msgcat::mcset es "Raw XML" "XML crudo"
 ::msgcat::mcset es "Read on..." "Leer..."
 ::msgcat::mcset es "Reason" "Razón"
@@ -793,10 +841,12 @@
 ::msgcat::mcset es "Receive" "Recibir"
 ::msgcat::mcset es "Received by:" "Recibido por:"
 ::msgcat::mcset es "Received/Sent" "Recibido/Enviado"
+::msgcat::mcset es "Recipient Error" "Error de recipiente"
 ::msgcat::mcset es "Recipient Unavailable" "Recipiente no disponible"
 ::msgcat::mcset es "Reconnect to server if it does not reply (with result or with error) to ping (urn:xmpp:ping) request in specified time interval (in seconds)." "Reconectar al servidor si este no responde (con resultado o con error) a la petición de Ping (urn:xmpp:ping) en el intervalo de tiempo especificado (en segundos)."
 ::msgcat::mcset es "Redirect" "Redirección"
 ::msgcat::mcset es "Redo" "Rehacer"
+::msgcat::mcset es "Region:" "Región:"
 ::msgcat::mcset es "Register in %s" "Registrarse en %s"
 ::msgcat::mcset es "Register" "Registrar"
 ::msgcat::mcset es "Registration Required" "Registro requerido"
@@ -805,6 +855,7 @@
 ::msgcat::mcset es "Registration is successful!" "¡Registro satisfactorio!"
 ::msgcat::mcset es "Registration: %s" "Registro: %s"
 ::msgcat::mcset es "Remote Connection Failed" "Fallo en la Conexión Remota"
+::msgcat::mcset es "Remote Server Error" "Error de servidor remoto"
 ::msgcat::mcset es "Remote Server Not Found" "Servidor remoto no encontrado"
 ::msgcat::mcset es "Remote Server Timeout" "Intervalo de espera sobrepasado esperando al Servidor remoto"
 ::msgcat::mcset es "Remote control options." "Opciones de control remoto."
@@ -822,6 +873,7 @@
 ::msgcat::mcset es "Replace opened connections." "Reemplazar conexiones abiertas."
 ::msgcat::mcset es "Reply subject:" "Tema de la respuesta:"
 ::msgcat::mcset es "Reply to current time (jabber:iq:time) requests." "Responder las peticiones sobre el tiempo actual (jabber:iq:time)."
+::msgcat::mcset es "Reply to entity time (urn:xmpp:time) requests." "Responder a peticiones de 'fecha de la entidad' (urn:xmpp:time)."
 ::msgcat::mcset es "Reply to idle time (jabber:iq:last) requests." "Responder a peticiones sobre el tiempo que llevas ausente (jabber:iq:last)."
 ::msgcat::mcset es "Reply to ping (urn:xmpp:ping) requests." "Responder a peticiones de Ping (urn:xmpp:ping)."
 ::msgcat::mcset es "Reply to room" "Responder a la sala"
@@ -830,6 +882,7 @@
 ::msgcat::mcset es "Reply" "Responder"
 ::msgcat::mcset es "Report the list of current MUC rooms on disco#items query." "Mostrar la lista de salas de charla MUC actuales en peticiones disco#items."
 ::msgcat::mcset es "Request Error" "Error en la petición"
+::msgcat::mcset es "Request Timeout" "Timeout de la petición"
 ::msgcat::mcset es "Request failed: %s" "Petición fallida: %s"
 ::msgcat::mcset es "Request only unseen (which aren't displayed in the chat window) messages in the history in MUC compatible conference rooms." "Solicitar solo mensajes del historial de las salas de charla MUC que no se hayan visto (que no se muestran en la ventana de la charla."
 ::msgcat::mcset es "Request subscription" "Solicitar subscripción"
@@ -867,12 +920,15 @@
 ::msgcat::mcset es "Room %s is successfully created" "Se ha creado correctamente la sala %s"
 ::msgcat::mcset es "Room is created" "Se ha creado la sala"
 ::msgcat::mcset es "Room is destroyed" "Se ha destruido la sala"
+::msgcat::mcset es "Room:" "Habitación:"
 ::msgcat::mcset es "Roster Files" "Archivos de lista de contactos"
 ::msgcat::mcset es "Roster Notes" "Notas"
+::msgcat::mcset es "Roster filter." "Filtro de contactos."
 ::msgcat::mcset es "Roster group:" "Grupo de contactos:"
 ::msgcat::mcset es "Roster item may be dropped not only over group name but also over any item in group." "Al coger y arrastra elementos de la lista de contactos, se les puede soltar en cualquier parte de un grupo, no solo sobre el nombre del grupo."
 ::msgcat::mcset es "Roster of %s" "Lista de contactos de %s"
 ::msgcat::mcset es "Roster options." "Opciones de la lista de contactos."
+::msgcat::mcset es "Roster restoration completed" "Completada la restauración de la lista de contactos"
 ::msgcat::mcset es "Roster" "Lista de contactos"
 ::msgcat::mcset es "Rule Name:" "Nombre de la regla:"
 ::msgcat::mcset es "Rule name already exists" "El nombre de la regla ya existe"
@@ -880,6 +936,7 @@
 ::msgcat::mcset es "SASL Port:" "Puerto SASL:"
 ::msgcat::mcset es "SASL auth error:\n%s" "Error en la autenticación SASL:\n%s"
 ::msgcat::mcset es "SASL"
+::msgcat::mcset es "SHA1 hash" "Hash SHA1"
 ::msgcat::mcset es "SI connection closed" "Conexión SI cerrada"
 ::msgcat::mcset es "SOCKS authentication failed" "Falló la autenticación SOCKS"
 ::msgcat::mcset es "SOCKS command not supported" "Comando SOCKS no soportado"
@@ -920,6 +977,7 @@
 ::msgcat::mcset es "Select Key for Signing %s Traffic" "Seleccionar clave para firmar el tráfico de %s"
 ::msgcat::mcset es "Select month:" "Seleccionar mes:"
 ::msgcat::mcset es "Select" "Seleccionar"
+::msgcat::mcset es "Self signed certificate" "Certificado auto firmado"
 ::msgcat::mcset es "Send broadcast message..." "Enviar mensaje de difusión..."
 ::msgcat::mcset es "Send contacts to %s" "Enviar contactos a %s"
 ::msgcat::mcset es "Send contacts to" "Enviar contactos a"
@@ -950,6 +1008,7 @@
 ::msgcat::mcset es "September" "Septiembre"
 ::msgcat::mcset es "Sergei Golovan" "Sergei Golovan"
 ::msgcat::mcset es "Serial number" "Número de serie"
+::msgcat::mcset es "Server Error" "Error de servidor"
 ::msgcat::mcset es "Server Port:" "Puerto del servidor:"
 ::msgcat::mcset es "Server doesn't support hashed password authentication" "El servidor no permite autenticación por resumen de contraseña"
 ::msgcat::mcset es "Server doesn't support plain or digest authentication" "El servidor no permite autenticación simple o por resumen"
@@ -970,6 +1029,7 @@
 ::msgcat::mcset es "Service Unavailable" "Servicio no disponible"
 ::msgcat::mcset es "Service info" "Información del servicio"
 ::msgcat::mcset es "Service statistics" "Estadísticas del servicio"
+::msgcat::mcset es "Session key bits" "Bits the la llave de sesión"
 ::msgcat::mcset es "Set bookmark" "Guardar marcador"
 ::msgcat::mcset es "Set for current and future sessions" "Modificar y guardar"
 ::msgcat::mcset es "Set for current session only" "Modificar solo para esta sesión (no guardar)"
@@ -999,7 +1059,7 @@
 ::msgcat::mcset es "Show palette of emoticons" "Mostrar paleta de emoticonos"
 ::msgcat::mcset es "Show presence bar." "Mostrar barra de presencia."
 ::msgcat::mcset es "Show status bar." "Mostrar barra de estado."
-::msgcat::mcset es "Show subscription type in roster item tooltips." "Mostrar tipo de suscripción en el globo informativo de la lista de contactos."
+::msgcat::mcset es "Show subscription type in roster item tooltips." "Mostrar tipo de subscripción en el globo informativo de la lista de contactos."
 ::msgcat::mcset es "Show user or service info" "Mostrar información de usuario o servicio"
 ::msgcat::mcset es "Show user or service info..." "Mostrar información de usuario o servicio..."
 ::msgcat::mcset es "Show" " Mostrar "
@@ -1029,6 +1089,7 @@
 ::msgcat::mcset es "Sound" "Sonido"
 ::msgcat::mcset es "Source:" "Fuente:"
 ::msgcat::mcset es "Specifies search mode while searching in chat, log or disco windows. \"substring\" searches exact substring, \"glob\" uses glob style matching, \"regexp\" allows to match regular expression." "Especifica el modo de búsqueda. \"substring\" busca la subcadena exacta, \"glob\" usa concordancia de estilo glob, \"regexp\" permite usar expresiones regulares."
+::msgcat::mcset es "Speed:" "Velocidad:"
 ::msgcat::mcset es "Spell check options." "Opciones de correción ortográfica."
 ::msgcat::mcset es "Start chat" "Charlar en privado"
 ::msgcat::mcset es "Starting auto-away" "Pasando a auto ausencia"
@@ -1054,6 +1115,7 @@
 ::msgcat::mcset es "Stream Error%s%s" "Error en el Stream%s%s"
 ::msgcat::mcset es "Stream initiation options." "Opciones de iniciación de Envío"
 ::msgcat::mcset es "Stream method negotiation failed" "Falló la negociación del método de Stream"
+::msgcat::mcset es "Street:" "Calle:"
 ::msgcat::mcset es "Strip leading \"http://jabber.org/protocol/\" from IQ namespaces in the status line." "Quitar el \"http://jabber.org/protocol/\" del principio en los nombres de espacio de IQ en la línea de comandos."
 ::msgcat::mcset es "SubID" "SubID"
 ::msgcat::mcset es "Subactivity" "Subactividad"
@@ -1064,12 +1126,12 @@
 ::msgcat::mcset es "Subject:" "Asunto:"
 ::msgcat::mcset es "Submit" "Enviar"
 ::msgcat::mcset es "Subscribe to a node" "Subscribir a nodo"
-::msgcat::mcset es "Subscribe" "Suscribir"
-::msgcat::mcset es "Subscribed" "Suscrito"
+::msgcat::mcset es "Subscribe" "Subscribir"
+::msgcat::mcset es "Subscribed" "Subscrito"
 ::msgcat::mcset es "Subscription Required" "Se requiere subscripción"
 ::msgcat::mcset es "Subscription request from %s" "Petición de subscripción de %s"
 ::msgcat::mcset es "Subscription request from:" "Petición de subscripción de:"
-::msgcat::mcset es "Subscription" "Suscripción"
+::msgcat::mcset es "Subscription" "Subscripción"
 ::msgcat::mcset es "Subscription:" "Subscripción:"
 ::msgcat::mcset es "Substrings to highlight in messages." "Sílabas a resaltar en los mensajes."
 ::msgcat::mcset es "Suffix" "Sufijo"
@@ -1100,6 +1162,7 @@
 ::msgcat::mcset es "Timeout for waiting for HTTP poll responses (if set to zero, Tkabber will wait forever)." "Timeout a esperar para las respuestas de HTTP Poll (si se indica cero, Tkabber esperará para siempre)."
 ::msgcat::mcset es "Timeout" "Timeout"
 ::msgcat::mcset es "Timer" "Temporizador"
+::msgcat::mcset es "Timestamp:" "Fecha:"
 ::msgcat::mcset es "Title" "Cargo"
 ::msgcat::mcset es "Title:" "Cargo:"
 ::msgcat::mcset es "Tkabber Systray" "Icono en la Bandeja de Sistema"
@@ -1133,6 +1196,7 @@
 ::msgcat::mcset es "Unable to encipher data for %s: %s.\n\nEncrypting traffic to this user is now disabled.\n\nSend it as PLAINTEXT?" "No se ha podido cifrar los datos para %s: %s.\n\nSe ha desactivado el cifrado del tráfico con este usuario.\n\n¿Enviar sin cifrar?"
 ::msgcat::mcset es "Unable to sign message body: %s.\n\nSigning traffic is now disabled.\n\nSend it WITHOUT a signature?" "Imposible firmar el cuerpo del mensaje: %s.\n\n¿Enviar SIN firma?"
 ::msgcat::mcset es "Unable to sign presence information: %s.\n\nPresence will be sent, but signing traffic is now disabled." "Imposible firmar información de presencia: %s.\n\nLa presencia se enviará, pero el firmado de tráfico está ahora desactivado."
+::msgcat::mcset es "Unauthorized" "No autorizado"
 ::msgcat::mcset es "Unavailable presence" "Presencia: desconectado"
 ::msgcat::mcset es "Unavailable" "No disponible"
 ::msgcat::mcset es "Unconfigured" "No configurado"
@@ -1145,14 +1209,19 @@
 ::msgcat::mcset es "Unknown address type" "Tipo de dirección desconocida"
 ::msgcat::mcset es "Unknown error" "Error desconocido"
 ::msgcat::mcset es "Unpublish user activity" "Despublicar la actividad de usuario"
+::msgcat::mcset es "Unpublish user activity..." "Despublicar la actividad..."
+::msgcat::mcset es "Unpublish user location" "Despublicar la localización de usuario"
+::msgcat::mcset es "Unpublish user location..." "Despublicar la localización de usuario..."
 ::msgcat::mcset es "Unpublish user mood" "Despublicar el estado de ánimo del usuario"
-::msgcat::mcset es "Unpublish user tune" "Despublicar canción de usuario"
+::msgcat::mcset es "Unpublish user mood..." "Despublicar el estado de ánimo..."
+::msgcat::mcset es "Unpublish user tune" "Despublicar la canción de usuario"
+::msgcat::mcset es "Unpublish user tune..." "Despublicar la canción de usuario..."
 ::msgcat::mcset es "Unpublish" "Despublicar"
 ::msgcat::mcset es "Unpublishing is only possible while being online" "Solo puedes despublicar cuando estás conectado"
 ::msgcat::mcset es "Unrecoverable Error" "Error irrecuperable"
 ::msgcat::mcset es "Unregister" "Desregistrar"
 ::msgcat::mcset es "Unsubscribe from a node" "Desubscribirse de un nodo"
-::msgcat::mcset es "Unsubscribe" "Desuscribir"
+::msgcat::mcset es "Unsubscribe" "Desubscribir"
 ::msgcat::mcset es "Unsubscribed from %s" "Desubscrito de %s"
 ::msgcat::mcset es "Unsupported Encoding" "Codificación No Soportada"
 ::msgcat::mcset es "Unsupported SOCKS authentication method" "Método de autenticación SOCKS no soportado"
@@ -1163,6 +1232,7 @@
 ::msgcat::mcset es "Unsupported log dir format" "Formato del directorio de históricos no soportado"
 ::msgcat::mcset es "Up" "Arriba"
 ::msgcat::mcset es "Update message of the day..." "Actualizar mensaje del día..."
+::msgcat::mcset es "Update" "Actualizar"
 ::msgcat::mcset es "Uptime" "Tiempo activo"
 ::msgcat::mcset es "Usage: /abbrev WHAT FOR" "Usar: /abbrev ABREVIADO TEXTO"
 ::msgcat::mcset es "Usage: /unabbrev WHAT" "Usar: /unabbrev ABREVIADO"
@@ -1186,9 +1256,12 @@
 ::msgcat::mcset es "Use hashed password" "Usar resumen de la contraseña"
 ::msgcat::mcset es "Use mediated SOCKS5 connection if proxy is available." "Usar conexión SOCKS5 mediada si el proxy está disponible."
 ::msgcat::mcset es "Use only whole words for emoticons." "Usar solo palabras completas para los emoticonos."
+::msgcat::mcset es "Use roster filter" "Usar filtro de contactos"
+::msgcat::mcset es "Use roster filter." "Usar filtro de contactos."
 ::msgcat::mcset es "Use sound notification only when being available." "Usar la notificación sonora sólo cuanto se está en estado 'disponible'."
 ::msgcat::mcset es "Use specified key ID for signing and decrypting messages." "Usar el ID de llave especificado para firmar y descifrar mensajes."
 ::msgcat::mcset es "Use the same passphrase for signing and decrypting messages." "Usar la misma contraseña para firmar y descifrar mensajes."
+::msgcat::mcset es "Use the specified function to hash supported features list." "Usar la función especificada para hashear la lista de características disponibles."
 ::msgcat::mcset es "Use this module" "Usar este módulo"
 ::msgcat::mcset es "User ID" "ID de usuario"
 ::msgcat::mcset es "User activity publishing failed: %s" "Falló la publicación de la actividad de usuario: %s"
@@ -1196,6 +1269,9 @@
 ::msgcat::mcset es "User activity" "Actividad de usuario"
 ::msgcat::mcset es "User already %s" "El usuario ya está %s"
 ::msgcat::mcset es "User info" "Información del usuario"
+::msgcat::mcset es "User location publishing failed: %s" "Fallo al publicar la localización del usuario: %s"
+::msgcat::mcset es "User location unpublishing failed: %s" "Fallo al despublicar la localización del usuario: %s"
+::msgcat::mcset es "User location" "Localización de usuario"
 ::msgcat::mcset es "User mood publishing failed: %s" "Falló la publicación del estado de ánimo de usuario: %s"
 ::msgcat::mcset es "User mood unpublishing failed: %s" "Falló la despublicación del estado de ánimo de usuario: %s"
 ::msgcat::mcset es "User mood" "Estado de ánimo del usuario"
@@ -1205,6 +1281,7 @@
 ::msgcat::mcset es "User tune unpublishing failed: %s" "Falló la despublicación de la canción de usuario: %s"
 ::msgcat::mcset es "User tune" "Canción de usuario"
 ::msgcat::mcset es "User-Agent string." "Cadena de identificación del usuario."
+::msgcat::mcset es "Username Not Available" "Nombre de usuario no disponible"
 ::msgcat::mcset es "Username:" "Nombre de usuario:"
 ::msgcat::mcset es "Users" "Usuarios"
 ::msgcat::mcset es "Value" "Valor"
@@ -1230,7 +1307,7 @@
 ::msgcat::mcset es "Whois" "¿Quién es?"
 ::msgcat::mcset es "Work:" "Trabajo:"
 ::msgcat::mcset es "XML Not Well-Formed" "XML No está Bien Formado"
-::msgcat::mcset es "XMPP stream options when connecting to server." "Opciones de la comunicación XMPP cuando se conecta al servidor."
+::msgcat::mcset es "XMPP stream options when connecting to server." "Opciones de la conexión XMPP cuando se conecta al servidor."
 ::msgcat::mcset es "Year:" "Año:"
 ::msgcat::mcset es "You are unsubscribed from %s" "Te has desubscrito de %s"
 ::msgcat::mcset es "You're using root directory %s for storing Tkabber logs!\n\nI refuse to convert logs database." "Estas usando el directorio raiz %s para guardas los ficheros históricos de Tkabber!\n\nNo se van a convertir esos ficheros."
@@ -1246,14 +1323,16 @@
 ::msgcat::mcset es "\n\tCan't browse: %s" "\n\tNo se puede navegar: %s"
 ::msgcat::mcset es "\n\tClient: %s" "\n\tCliente: %s"
 ::msgcat::mcset es "\n\tJID: %s" "\n\tJID: %s"
+::msgcat::mcset es "\n\tLocation: %s : %s" "\n\tLocalización: %s : %s"
 ::msgcat::mcset es "\n\tMood: %s" "\n\tEstado de ánimo: %s"
 ::msgcat::mcset es "\n\tName: %s" "\n\tNombre: %s"
 ::msgcat::mcset es "\n\tOS: %s" "\n\tSO: %s"
 ::msgcat::mcset es "\n\tPresence is signed:" "\n\tLa presencia está firmada:"
 ::msgcat::mcset es "\n\tTune: %s - %s" "\n\tCanción: %s - %s"
-::msgcat::mcset es "\n\tUser's activity subscription: %s" "\n\tSuscripción a la actividad de usuario: %s"
-::msgcat::mcset es "\n\tUser's mood subscription: %s" "\n\tSuscripción al estado de ánimo de usuario: %s"
-::msgcat::mcset es "\n\tUser's tune subscription: %s" "\n\tSusripción a la canción de usuario: %s"
+::msgcat::mcset es "\n\tUser activity subscription: %s" "\n\tSubscripción a la actividad de usuario: %s"
+::msgcat::mcset es "\n\tUser location subscription: %s" "\n\tSubscripción a la localización del usuario: %s"
+::msgcat::mcset es "\n\tUser mood subscription: %s" "\n\tSubscripción al estado de ánimo de usuario: %s"
+::msgcat::mcset es "\n\tUser tune subscription: %s" "\n\tSubscripción a la canción de usuario: %s"
 ::msgcat::mcset es "admin" "admin"
 ::msgcat::mcset es "afraid" "asustado"
 ::msgcat::mcset es "amazed" "sorprendido"

Modified: trunk/tkabber/msgs/pl.msg
===================================================================
--- trunk/tkabber/msgs/pl.msg	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/msgs/pl.msg	2008-06-04 19:29:26 UTC (rev 1447)
@@ -82,18 +82,8 @@
 ::msgcat::mcset pl "Plugins options." "Ustawienia wtyczek."
 ::msgcat::mcset pl "Could not start ispell server. Check your ispell path and dictionary name. Ispell is disabled now" "Nie udało się wystartować programu ispell. Sprawdź ścieżkę do programu i nazwę słownika. Ispell jest w tej chwili wyłączony"
 ::msgcat::mcset pl "Enable spellchecker in text input windows." "WÅ‚Ä…cz sprawdzanie pisowni w oknach gdzie wpisuje siÄ™ tekst."
-::msgcat::mcset pl "Ispell options. See ispell manual for details.
+::msgcat::mcset pl "Ispell options. See ispell manual for details.\n\nExamples:\n  -d russian\n  -d german -T latin1\n  -C -d english" "Parametry programu ispell. Dokładny opis znajduje się w dokumentacji programu. \n\nPrzykłady:\n  -d russian\n  -d german -T latin1\n  -C -d english"
 
-Examples:
-  -d russian
-  -d german -T latin1
-  -C -d english" "Parametry programu ispell. Dokładny opis znajduje się w dokumentacji programu.
-
-Przykłady:
-  -d russian
-  -d german -T latin1
-  -C -d english"
-
 # plugins/chat/events.tcl
 ::msgcat::mcset pl "Message stored on the server" "Wiadomość zapamiętana na serwerze"
 ::msgcat::mcset pl "Message stored on %s's server" "Wiadomość zapamiętana na serwerze %s"
@@ -191,19 +181,7 @@
 ::msgcat::mcset pl "Enable rendering of XHTML messages." "Włącz obsługę XHTML w wiadomościach."
 
 # plugins/chat/draw_timestamp.tcl
-::msgcat::mcset pl "Format of timestamp in chat message.\
-Refer to Tcl documentation of 'clock' command for description of format.
-
-Examples:
-  \[%R\] \u2013 \[20:37\]
-  \[%T\] \u2013 \[20:37:12\]
-  \[%a %b %d %H:%M:%S %Z %Y\] \u2013 \[Thu Jan 01 03:00:00 MSK 1970\]" "Format czasu i daty w wiadomościach. \
-Dokładny opis formatu w dokumentacji Tcl dla polecenia 'clock'.
-
-Przykłady:
-  \[%R\] \u2013 \[20:37\]
-  \[%T\] \u2013 \[20:37:12\]
-  \[%a %b %d %H:%M:%S %Z %Y\] \u2013 \[Wto Sty 01 03:00:00 CET 1970\]"
+::msgcat::mcset pl "Format of timestamp in chat message. Refer to Tcl documentation of 'clock' command for description of format.\n\nExamples:\n  \[%R\] - \[20:37\]\n  \[%T\] - \[20:37:12\]\n  \[%a %b %d %H:%M:%S %Z %Y\] - \[Thu Jan 01 03:00:00 MSK 1970\]" "Format czasu i daty w wiadomościach. Dokładny opis formatu w dokumentacji Tcl dla polecenia 'clock'.\n\nPrzykłady:\n  \[%R\] \u2013 \[20:37\]\n  \[%T\] \u2013 \[20:37:12\]\n  \[%a %b %d %H:%M:%S %Z %Y\] \u2013 \[Wto Sty 01 03:00:00 CET 1970\]"
 ::msgcat::mcset pl "Format of timestamp in delayed chat messages delayed for more than 24 hours." "Format czasu i daty w wiadomościach dostarczonych z opóźnieniem większym niż 24 godziny."
 
 # roster.tcl
@@ -373,6 +351,8 @@
 ::msgcat::mcset pl "Proxy type to connect." "Typ serwera proxy."
 ::msgcat::mcset pl "SOCKS4a" "SOCKS4a"
 ::msgcat::mcset pl "SOCKS5" "SOCKS5"
+::msgcat::mcset pl "Certificate has expired" "Certyfikat stracił ważność"
+::msgcat::mcset pl "Self signed certificate" "Certyfikat typu self-signed"
 
 # plugins/unix/wmdock.tcl
 ::msgcat::mcset pl "Message from %s" "Wiadomość od %s"
@@ -488,6 +468,7 @@
 ::msgcat::mcset pl "JPEG images" "Obrazy JPEG"
 ::msgcat::mcset pl "PNG images" "Obrazy PNG"
 ::msgcat::mcset pl "Loading photo failed: %s." "Nie udało się wczytać zdjęcia: %s."
+::msgcat::mcset pl "Update" "Aktualizuj"
 
 # datagathering.tcl
 ::msgcat::mcset pl "Error requesting data: %s" "BÅ‚Ä…d przy pobieraniu danych: %s"
@@ -747,6 +728,7 @@
 ::msgcat::mcset pl "Show Toolbar." "Pokaż pasek przycisków."
 ::msgcat::mcset pl "Generate enter/exit messages" "Generuj wiadomości przy wejściu/wyjściu"
 ::msgcat::mcset pl "SHA1 hash" "Skrót SHA1"
+::msgcat::mcset pl "Session key bits" "Liczba bitów klucza sesji"
 
 # plugins/chat/info_commands.tcl
 ::msgcat::mcset pl "Full Name" "Pełna nazwa"
@@ -1271,8 +1253,11 @@
 ::msgcat::mcset pl "Font to use in chat windows." "Czcionka używana w oknach rozmów."
 ::msgcat::mcset pl "Font to use in roster windows." "Czcionka używana w oknie listy kontaktów."
 ::msgcat::mcset pl "If set then open chat window/tab when user doubleclicks roster item. Otherwise open normal message window." "Opcja włączona oznacza że podwójne kliknięcie na element listy kontaktów otwiera okno/kartę rozmowy. W przeciwnym przypadku otwierane jest okno wiadomości."
+::msgcat::mcset pl "Clear history" "Wyczyść historię"
+::msgcat::mcset pl "History of availability status messages" "Historia używanych opisów statusu"
+::msgcat::mcset pl "Maximum number of status messages to keep. If the history size reaches this threshold, the oldest message will be deleted automatically when a new one is recorded." "Maksymalna liczba pamiętanych w historii opisów. Jeżeli rozmiar historii przekracza ten próg, automatycznie usuwane są najstarsze opisy podczas dodawania nowego."
 
-# ifacetk/iroster.tclifaceck/iface.tcl
+# ifacetk/iroster.tcl
 ::msgcat::mcset pl "Main window:" "Okno Główne:"
 ::msgcat::mcset pl "Close tab" "Zamknij kartÄ™"
 ::msgcat::mcset pl "Previous/Next tab" "Poprzedna/następna karta"
@@ -1473,13 +1458,14 @@
 ::msgcat::mcset pl "Unconfigured" "Nieskonfigurowany"
 ::msgcat::mcset pl "Subscribed" "Zasubskrybowany"
 ::msgcat::mcset pl "Edit entities affiliations: %s" "Edytuj przynależności obiektów: %s"
-::msgcat::mcset pl "Jabber ID"
-::msgcat::mcset pl "SubID"
+::msgcat::mcset pl "Jabber ID" "Jabber ID"
+::msgcat::mcset pl "SubID" "SubID"
 ::msgcat::mcset pl "Subscription" "Subskrypcja"
 
 # plugins/roster/fetch_nicknames.tcl
 ::msgcat::mcset pl "Fetch nickname" "Pobierz pseudonim"
 ::msgcat::mcset pl "Fetch user nicknames" "Pobierz pseudonimy kontaktów"
+::msgcat::mcset pl "Fetch nicknames of all users in group" "Pobierz pseudonimy dla wszystkich w grupie"
 
 # plugins/general/session.tcl
 ::msgcat::mcset pl "Load state on Tkabber start." "Wczytaj zapisanÄ… sesjÄ™ przy starcie Tkabbera."
@@ -1556,7 +1542,7 @@
 ::msgcat::mcset pl "User mood" "Nastrój użytkownika"
 ::msgcat::mcset pl "User mood publishing failed: %s" "Publikacja nastroju użytkownika nie udała się: %s"
 ::msgcat::mcset pl "\n\tMood: %s" "\n\tNastrój: %s"
-::msgcat::mcset pl "\n\tUser's mood subscription: %s" "\n\tSubskrypcja nastroju użytkownika: %s"
+::msgcat::mcset pl "\n\tUser mood subscription: %s" "\n\tSubskrypcja nastroju użytkownika: %s"
 ::msgcat::mcset pl "afraid" "przestraszony"
 ::msgcat::mcset pl "amazed" "zdumiony"
 ::msgcat::mcset pl "angry" "zły"
@@ -1643,9 +1629,12 @@
 ::msgcat::mcset pl "User tune publishing failed: %s" "Publikacja melodii nie udała się: %s"
 ::msgcat::mcset pl "User tune unpublishing failed: %s" "Anulowanie publikacji melodii nie udało się: %s"
 ::msgcat::mcset pl "\n\tTune: %s - %s" "\n\tMelodia: %s - %s"
-::msgcat::mcset pl "\n\tUser's tune subscription: %s" "\n\tSubskrypcja melodii użytkownika: %s"
+::msgcat::mcset pl "\n\tUser tune subscription: %s" "\n\tSubskrypcja melodii użytkownika: %s"
 ::msgcat::mcset pl "Auto-subscribe to other's user tune" "Automatycznie subskrybuj melodię innego użytkownika"
 ::msgcat::mcset pl "Auto-subscribe to other's user tune notifications." "Automatycznie subskrybuj powiadomienia o melodii innego użytkownika."
+::msgcat::mcset pl "%s's tune has stopped playing" "Odtwarzanie melodii %s zostało zatrzymane"
+::msgcat::mcset pl "Publish \"playback stopped\" instead" "Publikuj \"odtwarzanie zatrzymane\" zamiast tego"
+::msgcat::mcset pl "Rating:" "Ocena:"
 
 # plugins/pep/user_activity.tcl
 ::msgcat::mcset pl "%s's activity changed to %s" "%s zmienił czynność na %s"
@@ -1662,7 +1651,7 @@
 ::msgcat::mcset pl "User activity publishing failed: %s" "Publikacja czynności nie udała się: %s"
 ::msgcat::mcset pl "User activity unpublishing failed: %s" "Anulowanie publikacji czynności nie udało się: %s"
 ::msgcat::mcset pl "\n\tActivity: %s" "\n\tCzynność: %s"
-::msgcat::mcset pl "\n\tUser's activity subscription: %s" "\n\tSubskrypcja czynności użytkownika: %s"
+::msgcat::mcset pl "\n\tUser activity subscription: %s" "\n\tSubskrypcja czynności użytkownika: %s"
 ::msgcat::mcset pl "at the spa" "jestem w uzdrowisku"
 ::msgcat::mcset pl "brushing teeth" "myję zęby"
 ::msgcat::mcset pl "buying groceries" "kupujÄ™ jedzenie"
@@ -1754,10 +1743,11 @@
 ::msgcat::mcset pl "Auto-subscribe to other's user location notifications." "Automatycznie subskrybuj powiadomienia o lokalizacji innego użytkownika."
 ::msgcat::mcset pl "Bearing:" "Namiar:"
 ::msgcat::mcset pl "Building:" "Budynek:"
-::msgcat::mcset pl "Datum:" "Punkt odniesienia:"
+::msgcat::mcset pl "GPS datum:" "Układ odniesienia GPS:"
+::msgcat::mcset pl "Horizontal GPS error:" "BÅ‚Ä…d horyzontalny GPS:"
 ::msgcat::mcset pl "Floor:" "Piętro:"
 ::msgcat::mcset pl "Locality:" "Miejscowość:"
-::msgcat::mcset pl "Postalcode:" "Kod pocztowy:"
+::msgcat::mcset pl "Postal code:" "Kod pocztowy:"
 ::msgcat::mcset pl "Publish user location..." "Publikuj swojÄ… lokalizacjÄ™..."
 ::msgcat::mcset pl "Region:" "Region:"
 ::msgcat::mcset pl "Room:" "Pokój:"
@@ -1770,7 +1760,7 @@
 ::msgcat::mcset pl "User location publishing failed: %s" "Publikacja lokalizacji nie udała się: %s"
 ::msgcat::mcset pl "User location unpublishing failed: %s" "Anulowanie publikacji lokalizacji nie udało się: %s"
 ::msgcat::mcset pl "\n\tLocation: %s : %s" "\n\tLokalizacja: %s : %s"
-::msgcat::mcset pl "\n\tUser's location subscription: %s" "\n\tSubskrypcja lokalizacji użytkownika: %s"
+::msgcat::mcset pl "\n\tUser location subscription: %s" "\n\tSubskrypcja lokalizacji użytkownika: %s"
 
 # plugins/roster/bkup_annotations.tcl
 ::msgcat::mcset pl "Error restoring annotations: %s" "BÅ‚Ä…d podczas przywracania notatek: %s"
@@ -1781,3 +1771,18 @@
 # plugins/roster/backup.tcl
 ::msgcat::mcset pl "Error restoring roster contacts: %s" "Błąd podczas przywracania listy kontaktów: %s"
 ::msgcat::mcset pl "Roster restoration completed" "Przywracanie listy kontaktów zakończone"
+
+# jabberlib/stanzaerror.tcl
+::msgcat::mcset pl "Access Error" "Błąd dostępu"
+::msgcat::mcset pl "Address Error" "BÅ‚Ä…d adresu"
+::msgcat::mcset pl "Application Error" "BÅ‚Ä…d aplikacji"
+::msgcat::mcset pl "Format Error" "BÅ‚Ä…d formatu"
+::msgcat::mcset pl "Not Found" "Nie znaleziono"
+::msgcat::mcset pl "Not Implemented" "Nie zaimplementowano"
+::msgcat::mcset pl "Recipient Error" "BÅ‚Ä…d odbiorcy"
+::msgcat::mcset pl "Remote Server Error" "BÅ‚Ä…d zdalnego serwera"
+::msgcat::mcset pl "Request Timeout" "Przekroczony limit czasu oczekiwania na odpowiedź"
+::msgcat::mcset pl "Server Error" "BÅ‚Ä…d serwera"
+::msgcat::mcset pl "Unauthorized" "Nie uwierzytelniono"
+::msgcat::mcset pl "Username Not Available" "Nazwa użytkownia niedostępna"
+

Modified: trunk/tkabber/msgs/ru.msg
===================================================================
--- trunk/tkabber/msgs/ru.msg	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/msgs/ru.msg	2008-06-04 19:29:26 UTC (rev 1447)
@@ -16,13 +16,13 @@
 ::msgcat::mcset ru "\n\tOS: %s" "\n\tОС: %s"
 ::msgcat::mcset ru "\n\tPresence is signed:" "\n\tПрисутствие подписано:"
 ::msgcat::mcset ru "\n\tTune: %s - %s" "\n\tМелодия: %s - %s"
-::msgcat::mcset ru "\n\tUser's activity subscription: %s" "\n\tПодписка на\
+::msgcat::mcset ru "\n\tUser activity subscription: %s" "\n\tПодписка на\
 	занятие пользователя: %s"
-::msgcat::mcset ru "\n\tUser's location subscription: %s" "\n\tПодписка на\
+::msgcat::mcset ru "\n\tUser location subscription: %s" "\n\tПодписка на\
 	местонахождение пользователя: %s"
-::msgcat::mcset ru "\n\tUser's mood subscription: %s" "\n\tПодписка на\
+::msgcat::mcset ru "\n\tUser mood subscription: %s" "\n\tПодписка на\
 	состояние пользователя: %s"
-::msgcat::mcset ru "\n\tUser's tune subscription: %s" "\n\tПодписка на\
+::msgcat::mcset ru "\n\tUser tune subscription: %s" "\n\tПодписка на\
 	мелодию пользователя: %s"
 ::msgcat::mcset ru "\nAlternative venue: %s" "\nАльтернативное место сбора:\
 	%s"

Modified: trunk/tkabber/plugins/pep/user_activity.tcl
===================================================================
--- trunk/tkabber/plugins/pep/user_activity.tcl	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/plugins/pep/user_activity.tcl	2008-06-04 19:29:26 UTC (rev 1447)
@@ -296,7 +296,7 @@
 	}
 	append info [::msgcat::mc "\n\tActivity: %s" $status]
     } elseif {[info exists substatus($connid,$jid)]} {
-	append info [::msgcat::mc "\n\tUser's activity subscription: %s" \
+	append info [::msgcat::mc "\n\tUser activity subscription: %s" \
 			    $substatus($connid,$jid)]
     } else {
 	return

Modified: trunk/tkabber/plugins/pep/user_location.tcl
===================================================================
--- trunk/tkabber/plugins/pep/user_location.tcl	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/plugins/pep/user_location.tcl	2008-06-04 19:29:26 UTC (rev 1447)
@@ -193,7 +193,7 @@
 				  $geoloc(lat,$connid,$jid) \
 				  $geoloc(lon,$connid,$jid)]
     } elseif {[info exists substatus($connid,$jid)]} {
-	append info [::msgcat::mc "\n\tUser's location subscription: %s" \
+	append info [::msgcat::mc "\n\tUser location subscription: %s" \
 				  $substatus($connid,$jid)]
     } else {
 	return

Modified: trunk/tkabber/plugins/pep/user_mood.tcl
===================================================================
--- trunk/tkabber/plugins/pep/user_mood.tcl	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/plugins/pep/user_mood.tcl	2008-06-04 19:29:26 UTC (rev 1447)
@@ -249,7 +249,7 @@
 	}
 	append info [::msgcat::mc "\n\tMood: %s" $status]
     } elseif {[info exists substatus($connid,$jid)]} {
-	append info [::msgcat::mc "\n\tUser's mood subscription: %s" \
+	append info [::msgcat::mc "\n\tUser mood subscription: %s" \
 			    $substatus($connid,$jid)]
     } else {
 	return

Modified: trunk/tkabber/plugins/pep/user_tune.tcl
===================================================================
--- trunk/tkabber/plugins/pep/user_tune.tcl	2008-06-04 17:36:38 UTC (rev 1446)
+++ trunk/tkabber/plugins/pep/user_tune.tcl	2008-06-04 19:29:26 UTC (rev 1447)
@@ -32,14 +32,14 @@
     disco::register_feature $node
 }
 
-proc tune::get {connid jid what} {
+proc tune::get {connid jid what {default ""}} {
     variable tune
 
     upvar 0 tune($what,$connid,$jid) v
     if {[info exists v]} {
 	return $v
     } else {
-	return ""
+	return $default
     }
 }
 
@@ -181,12 +181,12 @@
 
     set jid [node_and_server_from_jid $user]
 
-    if {[info exists tune(title,$connid,$jid)]} {
+    if {[info exists tune(available,$connid,$jid)]} {
 	append info [::msgcat::mc "\n\tTune: %s - %s" \
-				  $tune(artist,$connid,$jid) \
-				  $tune(title,$connid,$jid)]
+				  [get $connid $jid artist ?] \
+				  [get $connid $jid title ?]]
     } elseif {[info exists substatus($connid,$jid)]} {
-	append info [::msgcat::mc "\n\tUser's tune subscription: %s" \
+	append info [::msgcat::mc "\n\tUser tune subscription: %s" \
 				  $substatus($connid,$jid)]
     } else {
 	return
@@ -244,6 +244,7 @@
 		    catch {unset tune($tag,$connid,$jid)}
 		}
 	    }
+	    set tune(available,$connid,$jid) ""
 	    hook::run user_tune_notification_hook $connid $jid published
 	} else { # "stop" command
 	    forget_user_tune $connid $jid
@@ -261,6 +262,7 @@
     foreach tag {artist length source title track uri rating} {
 	catch {unset tune($tag,$connid,$jid)}
     }
+    catch {unset tune(available,$connid,$jid)}
 }
 
 proc tune::notify_via_status_message {connid jid event} {
@@ -275,8 +277,8 @@
 	published {
 	    set msg [::msgcat::mc "%s's tune changed to %s - %s" \
 				  $contact \
-				  [get $connid $jid artist] \
-				  [get $connid $jid title]]
+				  [get $connid $jid artist ?] \
+				  [get $connid $jid title ?]]
 	}
 	retracted {
 	    set msg [::msgcat::mc "%s's tune is unset" $contact]
@@ -690,7 +692,7 @@
     if {$editable} return
 
     set barejid [node_and_server_from_jid $jid]
-    if {![info exists tune(artist,$connid,$barejid)]} return
+    if {![info exists tune(available,$connid,$barejid)]} return
 
     foreach tag {artist length source title track uri rating} {
 	if {[info exists tune($tag,$connid,$barejid)]} {



More information about the Tkabber-dev mailing list