mathieui
103d097acf
Fix #2183 (do not scroll one char at a time when you reach the end)
...
Now it scrolls horizontally of 1/4 the size of the input
2013-06-09 15:18:39 +02:00
mathieui
9d5fddf5ba
Use the new format in the roster log too (ref #2311 )
...
(and add the pep events and invites to it)
2013-06-09 12:56:51 +02:00
mathieui
71b6404b04
Adopt the mcabber log format ( Fix #2311 )
2013-06-09 03:47:16 +02:00
mathieui
9eaffe1369
Fix the os.makedirs calls so that they don’t traceback for nothing
2013-06-09 03:45:10 +02:00
mathieui
9b8ed569bb
Fix the regex for text attributes
2013-06-08 23:51:47 +02:00
mathieui
26ea842cee
Add a way to format background colors in a string
...
(also add colors to the /info command in MUCs)
2013-06-08 17:36:02 +02:00
mathieui
545e67c500
Fix setting autojoin with /bookmark
2013-06-08 12:28:07 +02:00
Florent Le Coz
463ec5ca0d
Accept NULL bytes in strings to be cut by the poopt module
...
fix #2296
2013-06-07 00:04:01 +02:00
Florent Le Coz
032d2b711b
Add a M-k keyboard shortcut to escape the next keyboard shortcut
...
fix #2227
2013-06-06 22:58:29 +02:00
Florent Le Coz
834546ac77
Do not traceback when receiving malformed XML in a xhtml-im body
2013-06-06 22:53:43 +02:00
mathieui
9e8860cd6a
Fix joining a domain-only room
...
(e.g. “/join @conference.prosody.im”)
- If the current tab is a MUC the @ prefix is mandatory as there is no
way to tell if the user meant a room name or a domain.
- If it is not a MUC, then the @ prefix is not mandatory (but works
anyway)
2013-06-05 20:44:27 +02:00
mathieui
ae009318b2
Fix #2299 (invalid characters causing a TB)
...
any character beyond 0x110000 does not exist and should be dropped
2013-06-04 13:20:59 +02:00
mathieui
0abc789403
Do not block on roster operations (and do not traceback on errors) #2315
2013-06-03 23:13:10 +02:00
mathieui
0dcc6f9cc4
Fix the caps updating (“do not verify” message in swift)
2013-06-01 21:43:15 +02:00
mathieui
4ee7708b14
Small workaround for the default config location
2013-05-29 15:32:25 +02:00
mathieui
2b42c6a3ea
Update setup.py to use distutils
...
(use new default directory, install the plugins as a separate
python module…)
2013-05-26 20:13:39 +02:00
Florent Le Coz
1b9dc72d14
Fix a traceback (plugin_manager)
2013-05-24 22:13:56 +02:00
Florent Le Coz
3356cac9ce
Fix a stupid traceback (common.datetime_tuple)
2013-05-24 21:52:12 +02:00
mathieui
0255968049
Fix a tb on "/ban "
2013-05-17 19:30:52 +02:00
mathieui
69af684494
Fix a traceback on /role completion if the tab is not connected
...
(also add outcast to the completed roles)
2013-05-17 11:53:32 +02:00
mathieui
ee8de89f9e
Fix #2307 (commandinput history)
2013-05-16 16:08:30 +02:00
mathieui
06e368f66e
Fix the parser for the rainbow plugin
2013-05-16 15:35:59 +02:00
mathieui
785b21ff02
Fix #2229 (prevent correction if the 2 fulljid differ)
...
(Except in MUC, where we check the User object for that)
2013-05-15 19:04:56 +02:00
mathieui
55dfc625b3
Fix a traceback on /nick [tab]
...
(introduced in 686352d22b
, because a
nick bookmark can now be None)
2013-05-15 13:17:24 +02:00
mathieui
58174d1bf1
Sort users in /names
2013-05-15 12:56:24 +02:00
mathieui
9de322bea3
Rewrite the poezio colors parser (also Fix #2279 )
...
The parser now handles text with multiple style attributes
(e.g. bold, underlined and red text).
2013-05-14 22:29:45 +02:00
mathieui
7f1562c4c2
Actually use it.
2013-05-11 21:43:45 +02:00
mathieui
a1ef835a37
Handle the roster order cache as a real cache
...
When an external (or internal) event may cause the order of the
cache to be modified, or new elements to be added, schedule it
for a rebuild. Otherwise, don’t, and only rebuild it when
refreshing (that should improve refresh speed a lot).
Also, if the position in the roster is further than the total size
of the roster, go back to the top instead of displaying an empty
window with “+++”.
2013-05-11 20:51:11 +02:00
mathieui
dde153e85b
Reverse the plugin loading path
2013-05-11 12:00:37 +02:00
mathieui
3d8c91dcb0
Fix the reason in the ban message
2013-05-11 00:33:06 +02:00
mathieui
686352d22b
Do not add a nick to each bookmarked room
2013-05-10 14:55:50 +02:00
mathieui
6767d04a1d
Fix #2295 (sanitize commands given to /help)
...
remove starting slashes and starting and trailing spaces
2013-05-10 13:41:13 +02:00
mathieui
ca8b67fca9
Fix #2131 (Input cursor when pasting text)
2013-05-10 00:49:38 +02:00
mathieui
60388686a5
Fix the exit message
2013-05-09 22:29:26 +02:00
Florent Le Coz
ffe33c5da3
Add a little workaround for MUC servers that do not send the 110 status
2013-05-09 13:20:46 +02:00
Florent Le Coz
53170fd4f2
Add the 'changing_nick' event
2013-05-09 13:18:44 +02:00
Florent Le Coz
38af82501c
Fix a crash introduce something like 5-6 commits ago, np.
2013-05-09 13:18:44 +02:00
mathieui
3eece64062
Fix #2284 (don’t send always send an inactive chatstate with /w)
2013-05-06 20:48:37 +02:00
mathieui
48614d6cf0
Fix #2286
...
Also fix the copy of the default config if -f is used
2013-05-06 20:23:33 +02:00
Florent Le Coz
ea5bfbfca4
Fix a typo "on on an unknown platform"
2013-05-01 19:38:47 +02:00
Florent Le Coz
beb374f7e3
Make Alt+backspace work on my freebsd
2013-05-01 19:03:32 +02:00
Florent Le Coz
ea12f4ccce
Document the new event
2013-05-01 18:44:14 +02:00
Florent Le Coz
e8f5c21fcd
Lets plugins change the presence BEFORE joining a muc, with a new plugin event
2013-05-01 18:39:33 +02:00
Florent Le Coz
fb21f337e7
Take into account the nick given by the MUC when joining a room.
...
This way, if the MUC service decides to give us an other nick than the one
we asked it works properly.
2013-05-01 18:37:27 +02:00
mathieui
9661854611
Typo
2013-04-23 12:37:47 +02:00
mathieui
62787af607
Actually use the deprecated method for versions INFERIOR to 3.2
2013-04-19 23:55:54 +02:00
mathieui
93cdac01ae
Use ''.join(str) instead of str += …
...
Should improve speed on xhtml parsing, but be noticeable only
with *heavy* (e.g. 1000chars with the rainbow plugin) xhtml stanzas.
2013-04-18 19:54:13 +02:00
mathieui
9fd15cc2a2
Use importlib for python 3.3 to load plugins
...
(also probably fix the I/O operation on closed file issue when using
imp)
2013-04-16 18:49:03 +02:00
mathieui
e5f219d43e
Do not attempt to log things when use_log = false
2013-04-06 11:45:34 +02:00
mathieui
91b960b797
Handle I/O errors better
...
- Do not crash because of low disk space
- Notify the user whenever it happens
- A few functions now return a boolean instead of nothing
- Config.silent_set is Config.set_and_save without toggle and returning
strings. It is used whenever we don’t need set_and_save
- Config.set_and_save now returns a tuple (that can be passed directly
to core.information())
TODO: display the precise error to the user (instead of “unable to…”)
2013-04-05 23:57:53 +02:00
mathieui
16268ba964
Consistency
2013-04-05 15:24:04 +02:00
mathieui
26fa83dd9a
Add an option to choose between shared and separate input history
...
- separate_history, defaults to false
2013-04-04 01:11:56 +02:00
mathieui
8a5a5bb644
Fix #2255 (search in input history)
...
- The input is split in two parts: on the left is what the user enters,
on the right is the first match (the right part has a different
color)
- Start and cancel a search with ^R
- Validate a search with enter, then press another time enter to send
- CommandInput and MessageInput now inherit from the HistoryInput class
and share some methods
2013-04-04 01:03:18 +02:00
mathieui
e8fae6f24c
Fix #2275 , ref #2229
...
- Refactor the message handlers to be more readable
- Add a group_corrections tab-specific option (#2229 )
- Fix issues with /correct in private tabs and conversation tabs
2013-03-31 16:33:10 +02:00
mathieui
f58cd588c2
Fix some PEP issues
2013-03-30 02:22:36 +01:00
mathieui
3f3d1a0a54
Fix the help of /gaming
2013-03-28 10:49:44 +01:00
mathieui
098bc9028a
Typo/traceback
2013-03-28 10:47:49 +01:00
Florent Le Coz
347e82b552
Add a (per-tab) notif_messages option to ignore MUC’s normal messages
2013-03-28 01:44:05 +01:00
Florent Le Coz
bbe041fd58
Catch CorrectionError to avoid tracebacking when /correct fails
2013-03-16 12:16:11 +01:00
Florent Le Coz
ad04d32b48
On /exit, save the config earlier.
2013-03-16 11:58:47 +01:00
mathieui
57ce4b6fdf
Fix #2265
...
also:
- fix Message.__str__/repr
- fix a traceback with user gaming
2013-03-13 22:49:19 +01:00
mathieui
d797b1fd65
Implement user gaming (xep-0196)
...
- configuration options
- theming options
- /gaming
2013-03-12 16:12:47 +01:00
mathieui
cec1151ecb
Fix #1839 (User mood/activity)
...
- Added as always new theming variables:
CHAR_ROSTER_MOOD, CHAR_ROSTER_ACTIVITY (a SNOWMAN!)
COLOR_ROSTER_MOOD, COLOR_ROSTER_ACTIVITY
- Added two new notification types in Theme.INFO_COLORS (mood/activity)
- Added new configuration options:
display_mood/activity/tune_notifications (those can be set for a
specific JID)
enable_user_tune/nick/activity/mood
- Added /activity and /mood commands, with completions
- Moved the old /activity to /last_activity
- Details are show in the ContactInfoWin if there is room, or with "i"
on a contact in the roster.
2013-03-11 23:06:52 +01:00
mathieui
d2d0416214
Fix #1841 (User nickname)
...
- add a use_pep_nick boolean option
- use it as a nickname for roster contacts, but it does not
supercede the user-defined handle
- send a <nick/> at the beginning of a normal chat
- not implemented in MUC (wontfix)
2013-03-11 17:54:29 +01:00
mathieui
34af8f69c7
Add a receive_user_tune option ( fix #2261 )
2013-03-11 11:43:32 +01:00
mathieui
71c35eb279
Implement XEP-0118 ( Fix #1840 )
...
- Add new theming options
- Show the tune in the roster (both in contact line and infowin)
- add an option to show tunes as info messages
2013-03-11 02:04:20 +01:00
mathieui
eb2e5825bc
Disable plugins on exit
2013-03-10 23:58:20 +01:00
mathieui
c33ee919ff
Fix #2241
2013-03-10 22:58:42 +01:00
mathieui
d87834760f
Fix #2122 (coloration of long messages)
...
- Add a “prepend” attribute to the Line tuple
I’m not sure of the impact of this on performance (we parse the message
yet another time)
2013-03-10 18:35:51 +01:00
mathieui
f00dd1b8fe
Fix #2254
...
(add a new theming option, too)
2013-03-09 22:38:31 +01:00
mathieui
9885203c67
Update the plugins to use the PluginAPI
...
Also:
- Add get_conversation_messages() to PluginAPI
- Make plugins_autoload colon-separated instead of space-separated
(for consistency)
- Replace a JID() with a safeJID() in the uptime plugin
2013-03-08 22:53:35 +01:00
mathieui
dbde08a526
Document with sphinx timed_events, common, and add methods to PluginAPI
...
- add methods related to timed events to the PluginAPI
- remove parse_command_args_to_alias because str.format does that, and
better
→ update the alias plugin
2013-03-08 19:39:34 +01:00
mathieui
0a2bd90c6d
Fix PluginAPI.run_command()
2013-03-08 16:55:27 +01:00
mathieui
370cc874c2
Introduce a new way for plugins to interact with poezio
...
- Try to reduce the use of the “core” object in the plugins
- New “api” member for each BasePlugin which is a wrapper around
the unique PluginAPI object. (instead of having the methods
directly in BasePlugin and then calling the PluginManager)
- Documented methods with rst (for sphinx)
2013-03-06 22:57:41 +01:00
mathieui
cbf563583c
FIX XHTML ISSUES DUE TO A SLEEKXMPP UPDATE
...
(THE NAMESPACE WAS NOT PRESENT ANYMORE)
2013-03-06 22:53:42 +01:00
mathieui
3f71405efd
Add a CHAR_NEW_TEXT_SEPARATOR theming option
2013-03-06 22:34:41 +01:00
mathieui
993c960aa6
Rename 'normal_chatstate' event to 'conversation_chatstate'
...
for consistency
2013-03-05 00:15:56 +01:00
mathieui
d99c09ffc3
Make /affiliation and /role non-blocking ( fix #2235 )
2013-03-04 16:20:07 +01:00
mathieui
f40cfe2669
Add a show_s2s_errors config option (cf #2182 )
2013-03-04 16:01:35 +01:00
mathieui
f7204ab0a3
Fix /xhtml
2013-03-04 11:41:19 +01:00
mathieui
1e9e2112f7
Fix #2126 (per-server configuration sections)
...
(also move replace_key_with_bound() to core.py, to prevent having
common.py depending of config.py)
2013-03-04 00:23:58 +01:00
mathieui
fb7586f049
Fix #1923 (caps)
2013-03-03 13:47:11 +01:00
mathieui
3d98f48ba2
Fix #2182 (show s2s errors)
...
- Add the theming options COLOR_ROSTER_ERROR, CHAR_ROSTER_ERRROR, and
CHAR_ROSTER_ASKED
2013-03-03 13:13:15 +01:00
mathieui
e861290d10
Add a plugins_conf_dir option
2013-03-03 00:24:18 +01:00
mathieui
98850ff877
Fix #2132 (/disconnect)
2013-03-02 19:50:59 +01:00
mathieui
dbba6b5e1a
Fix /reconnect
2013-03-02 19:45:24 +01:00
mathieui
6afc1f915c
Fix #2226 (TB on /activity)
2013-03-01 01:54:54 +01:00
mathieui
b2aa3abf50
Remove a debug that floods too much
2013-02-28 22:54:15 +01:00
mathieui
5a0cec9717
Fix a traceback due to a sleekxmpp API change
...
- remove the help message for people still using the old custom
sleekxmpp repo
2013-02-28 22:44:07 +01:00
mathieui
abfd50aacd
Fix signal handling
...
- reload the config/theme with SIGUSR1
- quit properly with SIGHUP/SIGTERM
2013-02-28 22:23:25 +01:00
mathieui
de11a00a8e
Improve XEP-0308 support
...
- Prevent correction of delayed messages
- Prevent correction of messages by someone else in a MUC (and in a
private tab)
- Messages with unauthorized corrections (above) or wrong message id
will be displayed as normal messages
TODO: restrict the corrections to the same fullJID (only in direct
"normal" conversations, because we can know in private an muc tabs, via
the User object)
2013-02-27 22:09:14 +01:00
mathieui
f1831cc0ec
Fix the background color of some messages
2013-02-21 21:50:05 +01:00
mathieui
23a1b4c353
Fix a potential traceback on /ignore
...
(if the room was not joined)
2013-02-15 21:22:08 +01:00
mathieui
f4c275eb07
Add an indicator of the number of participants
...
(like in weechat)
2013-02-13 21:29:14 +01:00
mathieui
14183c49c5
Do not add a space after /unignore completion
2013-02-11 22:23:44 +01:00
mathieui
27d85a0961
Fix the folding of contacts in multiple groups
...
(add a defaultdict to keep the folded state in each group)
2013-02-03 23:55:13 +01:00
Florent Le Coz
a76b016f95
Add a key (Alt+d) de delete the next word in the input.
2013-02-03 22:17:22 +01:00
Florent Le Coz
dd9f6936be
Remove some useless keys, and change the keys to scroll the info win.
...
M-d and M-c become M-D and M-C
2013-02-03 22:15:10 +01:00
mathieui
f0b03ceee7
Fix a traceback on the completion of /correct
...
when no message has been sent yet
2013-02-03 19:53:32 +01:00
Florent Le Coz
edd82fef9b
Fix a tb on /accept. Make sure jid is a JID object, not an str.
2013-01-29 17:34:26 +01:00