summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile7
-rw-r--r--locale/poezio.pot182
-rw-r--r--src/connection.py13
-rw-r--r--src/gui.py26
-rw-r--r--src/multiuserchat.py10
-rw-r--r--src/poezio.py3
-rw-r--r--src/window.py14
7 files changed, 181 insertions, 74 deletions
diff --git a/Makefile b/Makefile
index 0484b1c5..ecd88d0a 100644
--- a/Makefile
+++ b/Makefile
@@ -42,5 +42,12 @@ uninstall:
rm -f $$gettextfile; \
done
+mo:
+ for localename in `find locale/ -maxdepth 1 -type d | grep -v '.svn' | sed 's:locale/::g'` ; do \
+ if [ -d locale/$$localename ]; then \
+ msgfmt locale/$$localename/LC_MESSAGES/poezio.po -o locale/$$localename/LC_MESSAGES/poezio.mo -v; \
+ fi \
+ done
+
pot:
xgettext src/*.py --from-code=utf-8 --keyword=_ -o locale/poezio.pot
diff --git a/locale/poezio.pot b/locale/poezio.pot
index ab288fad..939adea1 100644
--- a/locale/poezio.pot
+++ b/locale/poezio.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-05-12 15:08+0200\n"
+"POT-Creation-Date: 2010-06-13 16:13+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/connection.py:91
+#: src/connection.py:105
#, python-format
msgid ""
"Error: Could not authenticate. Please make sure the server you chose (%s) "
@@ -24,10 +24,6 @@ msgid ""
msgstr ""
#: src/gui.py:67
-msgid "OLOL, this is SOOO recursive"
-msgstr ""
-
-#: src/gui.py:68
msgid ""
"Usage: /join [room_name][/nick] [password]\n"
"Join: Join the specified room. You can specify a nickname after a slash (/). "
@@ -37,78 +33,78 @@ msgid ""
"password to join the room.\n"
"Examples:\n"
"/join room@server.tld\n"
-"/join room@server.tld/John\n"
+"/join room@server.tld/ John\n"
"/join /me_again\n"
"/join\n"
"/join room@server.tld/my_nick password\n"
"/join / pass"
msgstr ""
-#: src/gui.py:69
+#: src/gui.py:68
msgid ""
"Usage: /quit\n"
"Quit: Just disconnect from the server and exit poezio."
msgstr ""
-#: src/gui.py:70
+#: src/gui.py:69
msgid ""
"Usage: /exit\n"
"Exit: Just disconnect from the server and exit poezio."
msgstr ""
-#: src/gui.py:71
+#: src/gui.py:70
msgid ""
"Usage: /next\n"
"Next: Go to the next room."
msgstr ""
-#: src/gui.py:72
+#: src/gui.py:71
msgid ""
"Usage: /n\n"
"N: Go to the next room."
msgstr ""
-#: src/gui.py:73
+#: src/gui.py:72
msgid ""
"Usage: /prev\n"
"Prev: Go to the previous room."
msgstr ""
-#: src/gui.py:74
+#: src/gui.py:73
msgid ""
"Usage: /p\n"
"P: Go to the previous room."
msgstr ""
-#: src/gui.py:75
+#: src/gui.py:74
msgid ""
"Usage: /win <number>\n"
"Win: Go to the specified room."
msgstr ""
-#: src/gui.py:76
+#: src/gui.py:75
msgid ""
"Usage: /w <number>\n"
"W: Go to the specified room."
msgstr ""
-#: src/gui.py:77
-msgid "Usage: /ignore <nickname>\\Ignore: Ignore a specified nickname."
+#: src/gui.py:76
+msgid "Usage: /ignore <nickname> \\Ignore: Ignore a specified nickname."
msgstr ""
-#: src/gui.py:78
+#: src/gui.py:77
msgid ""
"Usage: /unignore <nickname>\\Unignore: Remove the specified nickname from "
"the ignore list."
msgstr ""
-#: src/gui.py:79
+#: src/gui.py:78
msgid ""
"Usage: /part [message]\n"
-"Part: disconnect from a room. You can specify an optional message."
+" Part: disconnect from a room. You can specify an optional message."
msgstr ""
-#: src/gui.py:80
+#: src/gui.py:79
msgid ""
"Usage: /show <availability> [status]\n"
"Show: Change your availability and (optionaly) your status. The "
@@ -117,35 +113,35 @@ msgid ""
"message"
msgstr ""
-#: src/gui.py:81
+#: src/gui.py:80
msgid ""
"Usage: /away [message]\n"
"Away: Sets your availability to away and (optional) sets your status "
-"message. This is equivalent to \"/show away [message]\""
+"message. This is equivalent to '/show away [message]'"
msgstr ""
-#: src/gui.py:82
+#: src/gui.py:81
msgid ""
"Usage: /busy [message]\n"
"Busy: Sets your availability to busy and (optional) sets your status "
-"message. This is equivalent to \"/show busy [message]\""
+"message. This is equivalent to '/show busy [message]'"
msgstr ""
-#: src/gui.py:83
+#: src/gui.py:82
msgid ""
"Usage: /avail [message]\n"
"Avail: Sets your availability to available and (optional) sets your status "
-"message. This is equivalent to \"/show available [message]\""
+"message. This is equivalent to '/show available [message]'"
msgstr ""
-#: src/gui.py:84
+#: src/gui.py:83
msgid ""
"Usage: /available [message]\n"
"Available: Sets your availability to available and (optional) sets your "
-"status message. This is equivalent to \"/show available [message]\""
+"status message. This is equivalent to '/show available [message]'"
msgstr ""
-#: src/gui.py:85
+#: src/gui.py:84
msgid ""
"Usage: /bookmark [roomname][/nick]\n"
"Bookmark: Bookmark the specified room (you will then auto-join it on each "
@@ -155,7 +151,7 @@ msgid ""
"room (instead of default_nick)"
msgstr ""
-#: src/gui.py:86
+#: src/gui.py:85
msgid ""
"Usage: /set <option> [value]\n"
"Set: Sets the value to the option in your configuration file. You can, for "
@@ -164,131 +160,197 @@ msgid ""
"(nothing) by providing no [value] after <option>."
msgstr ""
-#: src/gui.py:87
+#: src/gui.py:86
msgid ""
"Usage: /kick <nick> [reason]\n"
"Kick: Kick the user with the specified nickname. You also can give an "
"optional reason."
msgstr ""
-#: src/gui.py:88
+#: src/gui.py:87
msgid ""
-"Usage: /topic <subject>\n"
+"Usage: /topic <subject> \n"
"Topic: Change the subject of the room"
msgstr ""
-#: src/gui.py:89
+#: src/gui.py:88
+msgid ""
+"Usage: /query <nick>\n"
+"Query: Open a private conversation with <nick>. This nick has to be present "
+"in the room you're currently in."
+msgstr ""
+
+#: src/gui.py:90
msgid ""
-"Usage: /nick <nickname>\n"
+"Usage: /nick <nickname> \n"
"Nick: Change your nickname in the current room"
msgstr ""
-#: src/gui.py:193
+#: src/gui.py:219
msgid "Welcome on Poezio \\o/!"
msgstr ""
-#: src/gui.py:194
+#: src/gui.py:220
#, python-format
msgid "Your JID is %s"
msgstr ""
-#: src/gui.py:229
+#: src/gui.py:281
+msgid "Unknown error"
+msgstr ""
+
+#: src/gui.py:282
#, python-format
msgid "Error: %(code)s-%(msg)s: %(body)s"
msgstr ""
-#: src/gui.py:231
+#: src/gui.py:285
msgid ""
"To provide a password in order to join the room, type \"/join / password"
"\" (replace \"password\" by the real password)"
msgstr ""
-#: src/gui.py:246
+#: src/gui.py:345
#, python-format
msgid "message received for a non-existing room: %s"
msgstr ""
-#: src/gui.py:252
+#: src/gui.py:351
#, python-format
msgid "%(nick)s changed the subject to: %(subject)s"
msgstr ""
-#: src/gui.py:254
+#: src/gui.py:353
#, python-format
msgid "The subject is: %(subject)s"
msgstr ""
-#: src/gui.py:284
+#: src/gui.py:389
#, python-format
msgid "Your nickname is %s"
msgstr ""
-#: src/gui.py:286
+#: src/gui.py:391
#, python-format
msgid "%s is in the room"
msgstr ""
-#: src/gui.py:296
+#: src/gui.py:402
#, python-format
msgid "%(nick)s joined the room %(roomname)s"
msgstr ""
-#: src/gui.py:302
+#: src/gui.py:414
+#, python-format
+msgid "%(old)s is now known as %(new)s"
+msgstr ""
+
+#: src/gui.py:418
#, python-format
msgid "%(old_nick)s is now known as %(new_nick)s"
msgstr ""
-#: src/gui.py:317
+#: src/gui.py:437
#, python-format
msgid "You have been kicked by %(by)s. Reason: %(reason)s"
msgstr ""
-#: src/gui.py:319
+#: src/gui.py:439
#, python-format
msgid "You have been kicked. Reason: %s"
msgstr ""
-#: src/gui.py:322
+#: src/gui.py:442
#, python-format
msgid "%(nick)s has been kicked by %(by)s. Reason: %(reason)s"
msgstr ""
-#: src/gui.py:324
+#: src/gui.py:444
#, python-format
msgid "%(nick)s has been kicked. Reason: %(reason)s"
msgstr ""
-#: src/gui.py:333
+#: src/gui.py:450 src/gui.py:453
#, python-format
msgid "%s has left the room"
msgstr ""
-#: src/gui.py:343
+#: src/gui.py:457
#, python-format
-msgid "%(nick)s changed his/her status : %(a)s, %(b)s, %(c)s, %(d)s"
+msgid "%s changed his/her status: "
msgstr ""
-#: src/gui.py:388
+#: src/gui.py:459
+#, python-format
+msgid "affiliation: %s,"
+msgstr ""
+
+#: src/gui.py:461
+#, python-format
+msgid "role: %s,"
+msgstr ""
+
+#: src/gui.py:463
+#, python-format
+msgid "show: %s,"
+msgstr ""
+
+#: src/gui.py:465
+#, python-format
+msgid "status: %s,"
+msgstr ""
+
+#: src/gui.py:518
#, python-format
msgid "Error: unknown command (%s)"
msgstr ""
-#: src/gui.py:397
-msgid "Available commands are:"
+#: src/gui.py:534
+msgid "Available commands are: "
msgstr ""
-#: src/gui.py:400
+#: src/gui.py:537
msgid ""
"\n"
"Type /help <command_name> to know what each command does"
msgstr ""
-#: src/gui.py:405
+#: src/gui.py:542
#, python-format
msgid "Unknown command: %s"
msgstr ""
-#: src/gui.py:470
+#: src/gui.py:616
#, python-format
msgid "already in room [%s]"
msgstr ""
+
+#: src/gui.py:720
+#, python-format
+msgid "%s is now ignored"
+msgstr ""
+
+#: src/gui.py:722
+#, python-format
+msgid "%s is already ignored"
+msgstr ""
+
+#: src/gui.py:736
+#, python-format
+msgid "%s was not ignored"
+msgstr ""
+
+#: src/gui.py:741
+#, python-format
+msgid "%s is now unignored"
+msgstr ""
+
+#: src/gui.py:798
+#, python-format
+msgid "The subject of the room is: %s"
+msgstr ""
+
+#: src/window.py:135
+#, python-format
+msgid "%(nick)s from room %(room)s"
+msgstr ""
diff --git a/src/connection.py b/src/connection.py
index d7b1ac6a..4abe2d5b 100644
--- a/src/connection.py
+++ b/src/connection.py
@@ -23,13 +23,16 @@ Defines the Connection class
from gettext import (bindtextdomain, textdomain, bind_textdomain_codeset,
gettext as _)
+# from os.path import isfile
+# if isfile('../locale/poezio.pot'):
+# localedir = '../locale'
+# else:
+# localedir = '/usr/share/locale'
-bindtextdomain('poezio')
-textdomain('poezio')
-bind_textdomain_codeset('poezio', 'utf-8')
-import locale
-locale.setlocale(locale.LC_ALL, '')
+# bindtextdomain('poezio', localedir)
+# textdomain('poezio')
+# bind_textdomain_codeset('poezio', 'utf-8')
import sys
diff --git a/src/gui.py b/src/gui.py
index efb11166..fe200d23 100644
--- a/src/gui.py
+++ b/src/gui.py
@@ -19,13 +19,22 @@
from gettext import (bindtextdomain, textdomain, bind_textdomain_codeset,
gettext as _)
+from os.path import isfile
-bindtextdomain('poezio')
-textdomain('poezio')
-bind_textdomain_codeset('poezio', 'utf-8')
+from time import sleep
+
+# if isfile('../locale/poezio.pot'):
+# localedir = '../locale'
+# else:
+# localedir = '/usr/share/locale'
+
+# bindtextdomain('poezio', localedir)
+# textdomain('poezio')
+# bind_textdomain_codeset('poezio', 'utf-8')
+
+# import locale
+# locale.setlocale(locale.LC_ALL, '')
-import locale
-locale.setlocale(locale.LC_ALL, '')
import sys
import curses
@@ -824,5 +833,12 @@ class Gui(object):
"""
/quit
"""
+ if len(args):
+ msg = ' '.join(args)
+ else:
+ msg = None
+ if msg:
+ self.muc.disconnect(self.rooms, msg)
+ sleep(0.2) # :(
self.reset_curses()
sys.exit()
diff --git a/src/multiuserchat.py b/src/multiuserchat.py
index 4eaa696c..be4d2277 100644
--- a/src/multiuserchat.py
+++ b/src/multiuserchat.py
@@ -179,6 +179,16 @@ class MultiUserChat(object):
pres.setStatus(msg)
self.connection.send(pres)
+ def disconnect(self, rooms, msg):
+ """
+ """
+ for room in rooms:
+ if room.jid is None and room.joined:
+ pres = Presence(to='%s' % room.name,
+ typ='unavailable')
+ pres.setStatus(msg)
+ self.connection.send(pres)
+
def on_disconnect(self):
"""Called at disconnection"""
for room in self.rooms:
diff --git a/src/poezio.py b/src/poezio.py
index 3e6d4fef..dc714a4f 100644
--- a/src/poezio.py
+++ b/src/poezio.py
@@ -23,6 +23,9 @@ Starting point of poezio. Launches both the Connection and Gui
import sys
+# import locale
+# locale.setlocale(locale.LC_ALL, '')
+
# disable any printout (this would mess the display)
# sys.stdout = open('/dev/null', 'w')
sys.stderr = open('errors', 'w')
diff --git a/src/window.py b/src/window.py
index 879151c3..8532e541 100644
--- a/src/window.py
+++ b/src/window.py
@@ -20,10 +20,16 @@
from gettext import (bindtextdomain, textdomain, bind_textdomain_codeset,
gettext as _)
+from os.path import isfile
-bindtextdomain('poezio')
-textdomain('poezio')
-bind_textdomain_codeset('poezio', 'utf-8')
+# if isfile('../locale/poezio.pot'):
+# localedir = '../locale'
+# else:
+# localedir = '/usr/share/locale'
+
+# bindtextdomain('poezio', localedir)
+# textdomain('poezio')
+# bind_textdomain_codeset('poezio', 'utf-8')
import locale
locale.setlocale(locale.LC_ALL, '')
@@ -167,7 +173,7 @@ class RoomInfo(Win):
break
(y, x) = self.win.getyx()
try:
- self.win.addstr(y, x-1, '] '+ current.name.encode('utf-8') , curses.color_pair(1))
+ self.win.addstr(y, x-1, '] '+ current.name.encode('utf-8'), curses.color_pair(1))
except:
pass
while True: