summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/core')
-rw-r--r--src/core/commands.py12
-rw-r--r--src/core/completions.py6
-rw-r--r--src/core/core.py72
-rw-r--r--src/core/handlers.py48
4 files changed, 69 insertions, 69 deletions
diff --git a/src/core/commands.py b/src/core/commands.py
index ab441ae9..daf420fb 100644
--- a/src/core/commands.py
+++ b/src/core/commands.py
@@ -369,7 +369,7 @@ def command_join(self, arg, histo_length=None):
room = room[1:]
current_status = self.get_status()
if not histo_length:
- histo_length = config.get('muc_history_length', 20)
+ histo_length = config.get('muc_history_length')
if histo_length == -1:
histo_length = None
if histo_length is not None:
@@ -473,7 +473,7 @@ def command_bookmark(self, arg=''):
/bookmark [room][/nick] [autojoin] [password]
"""
- if not config.get('use_remote_bookmarks', True):
+ if not config.get('use_remote_bookmarks'):
self.command_bookmark_local(arg)
return
args = common.shell_split(arg)
@@ -533,7 +533,7 @@ def command_bookmark(self, arg=''):
if not bm:
bm = bookmark.Bookmark(roomname)
bookmark.bookmarks.append(bm)
- bm.method = config.get('use_bookmarks_method', 'pep')
+ bm.method = config.get('use_bookmarks_method')
if nick:
bm.nick = nick
if password:
@@ -808,11 +808,11 @@ def command_quit(self, arg=''):
msg = arg
else:
msg = None
- if config.get('enable_user_mood', True):
+ if config.get('enable_user_mood'):
self.xmpp.plugin['xep_0107'].stop(block=False)
- if config.get('enable_user_activity', True):
+ if config.get('enable_user_activity'):
self.xmpp.plugin['xep_0108'].stop(block=False)
- if config.get('enable_user_gaming', True):
+ if config.get('enable_user_gaming'):
self.xmpp.plugin['xep_0196'].stop(block=False)
self.save_config()
self.plugin_manager.disable_plugins()
diff --git a/src/core/completions.py b/src/core/completions.py
index f8fb7fc8..ca0bb41e 100644
--- a/src/core/completions.py
+++ b/src/core/completions.py
@@ -46,7 +46,7 @@ def completion_presence(self, the_input):
def completion_theme(self, the_input):
""" Completion for /theme"""
- themes_dir = config.get('themes_dir', '')
+ themes_dir = config.get('themes_dir')
themes_dir = themes_dir or\
os.path.join(os.environ.get('XDG_DATA_HOME') or\
os.path.join(os.environ.get('HOME'), '.local', 'share'),
@@ -190,7 +190,7 @@ def completion_bookmark(self, the_input):
tab = self.get_tab_by_name(jid.bare, tabs.MucTab)
nicks = [tab.own_nick] if tab else []
default = os.environ.get('USER') if os.environ.get('USER') else 'poezio'
- nick = config.get('default_nick', '')
+ nick = config.get('default_nick')
if not nick:
if not default in nicks:
nicks.append(default)
@@ -371,7 +371,7 @@ def completion_bookmark_local(self, the_input):
tab = self.get_tab_by_name(jid.bare, tabs.MucTab)
nicks = [tab.own_nick] if tab else []
default = os.environ.get('USER') if os.environ.get('USER') else 'poezio'
- nick = config.get('default_nick', '')
+ nick = config.get('default_nick')
if not nick:
if not default in nicks:
nicks.append(default)
diff --git a/src/core/core.py b/src/core/core.py
index 985fb752..52199206 100644
--- a/src/core/core.py
+++ b/src/core/core.py
@@ -64,10 +64,10 @@ class Core(object):
sys.excepthook = self.on_exception
self.connection_time = time.time()
self.stdscr = None
- status = config.get('status', None)
+ status = config.get('status')
status = possible_show.get(status, None)
self.status = Status(show=status,
- message=config.get('status_message', ''))
+ message=config.get('status_message'))
self.running = True
self.xmpp = singleton.Singleton(connection.Connection)
self.xmpp.core = self
@@ -82,7 +82,7 @@ class Core(object):
# that are displayed in almost all tabs, in an
# information window.
self.information_buffer = TextBuffer()
- self.information_win_size = config.get('info_win_height', 2, 'var')
+ self.information_win_size = config.get('info_win_height', section='var')
self.information_win = windows.TextWin(300)
self.information_buffer.add_window(self.information_win)
self.left_tab_win = None
@@ -96,7 +96,7 @@ class Core(object):
self._current_tab_nb = 0
self.previous_tab_nb = 0
- own_nick = config.get('default_nick', '')
+ own_nick = config.get('default_nick')
own_nick = own_nick or self.xmpp.boundjid.user
own_nick = own_nick or os.environ.get('USER')
own_nick = own_nick or 'poezio'
@@ -119,7 +119,7 @@ class Core(object):
self.register_initial_commands()
# We are invisible
- if not config.get('send_initial_presence', True):
+ if not config.get('send_initial_presence'):
del self.commands['status']
del self.commands['show']
@@ -241,19 +241,19 @@ class Core(object):
connection.MatchAll(None),
self.incoming_stanza)
self.xmpp.register_handler(self.all_stanzas)
- if config.get('enable_user_tune', True):
+ if config.get('enable_user_tune'):
self.xmpp.add_event_handler("user_tune_publish",
self.on_tune_event)
- if config.get('enable_user_nick', True):
+ if config.get('enable_user_nick'):
self.xmpp.add_event_handler("user_nick_publish",
self.on_nick_received)
- if config.get('enable_user_mood', True):
+ if config.get('enable_user_mood'):
self.xmpp.add_event_handler("user_mood_publish",
self.on_mood_event)
- if config.get('enable_user_activity', True):
+ if config.get('enable_user_activity'):
self.xmpp.add_event_handler("user_activity_publish",
self.on_activity_event)
- if config.get('enable_user_gaming', True):
+ if config.get('enable_user_gaming'):
self.xmpp.add_event_handler("user_gaming_publish",
self.on_gaming_event)
@@ -342,13 +342,14 @@ class Core(object):
"""
Called when the request_message_receipts option changes
"""
- self.xmpp.plugin['xep_0184'].auto_request = config.get(option, True)
+ self.xmpp.plugin['xep_0184'].auto_request = config.get(option,
+ default=True)
def on_ack_receipts_config_change(self, option, value):
"""
Called when the ack_message_receipts option changes
"""
- self.xmpp.plugin['xep_0184'].auto_ack = config.get(option, True)
+ self.xmpp.plugin['xep_0184'].auto_ack = config.get(option, default=True)
def on_plugins_dir_config_change(self, option, value):
"""
@@ -398,7 +399,7 @@ class Core(object):
old_section = old_config.get(section, {})
for option in config.options(section):
old_value = old_section.get(option)
- new_value = config.get(option, "", section)
+ new_value = config.get(option, default="", section=section)
if new_value != old_value:
self.trigger_configuration_change(option, new_value)
log.debug("Config reloaded.")
@@ -420,11 +421,11 @@ class Core(object):
}
log.error("%s received. Exiting…", signals[sig])
- if config.get('enable_user_mood', True):
+ if config.get('enable_user_mood'):
self.xmpp.plugin['xep_0107'].stop(block=False)
- if config.get('enable_user_activity', True):
+ if config.get('enable_user_activity'):
self.xmpp.plugin['xep_0108'].stop(block=False)
- if config.get('enable_user_gaming', True):
+ if config.get('enable_user_gaming'):
self.xmpp.plugin['xep_0196'].stop(block=False)
self.plugin_manager.disable_plugins()
self.disconnect('')
@@ -439,7 +440,7 @@ class Core(object):
"""
Load the plugins on startup.
"""
- plugins = config.get('plugins_autoload', '')
+ plugins = config.get('plugins_autoload')
if ':' in plugins:
for plugin in plugins.split(':'):
self.plugin_manager.load(plugin)
@@ -659,9 +660,9 @@ class Core(object):
work. If you try to do anything else, your |, [, <<, etc will be
interpreted as normal command arguments, not shell special tokens.
"""
- if config.get('exec_remote', False):
+ if config.get('exec_remote'):
# We just write the command in the fifo
- fifo_path = config.get('remote_fifo_path', './')
+ fifo_path = config.get('remote_fifo_path')
if not self.remote_fifo:
try:
self.remote_fifo = Fifo(os.path.join(fifo_path,
@@ -755,7 +756,7 @@ class Core(object):
or to use it when joining a new muc)
"""
self.status = Status(show=pres, message=msg)
- if config.get('save_status', True):
+ if config.get('save_status'):
ok = config.silent_set('status', pres if pres else '')
msg = msg.replace('\n', '|') if msg else ''
ok = ok and config.silent_set('status_message', msg)
@@ -993,7 +994,7 @@ class Core(object):
return False
elif not self.tabs[old_pos]:
return False
- if config.get('create_gaps', False):
+ if config.get('create_gaps'):
return self.insert_tab_gaps(old_pos, new_pos)
return self.insert_tab_nogaps(old_pos, new_pos)
@@ -1237,7 +1238,7 @@ class Core(object):
if self.previous_tab_nb != nb:
self.current_tab_nb = self.previous_tab_nb
self.previous_tab_nb = 0
- if config.get('create_gaps', False):
+ if config.get('create_gaps'):
if nb >= len(self.tabs) - 1:
self.tabs.remove(tab)
nb -= 1
@@ -1288,7 +1289,7 @@ class Core(object):
"""
Displays an informational message in the "Info" buffer
"""
- filter_messages = config.get('filter_info_messages', '').split(':')
+ filter_messages = config.get('filter_info_messages').split(':')
for words in filter_messages:
if words and words in msg:
log.debug('Did not show the message:\n\t%s> %s', typ, msg)
@@ -1298,12 +1299,11 @@ class Core(object):
nb_lines = self.information_buffer.add_message(msg,
nickname=typ,
nick_color=color)
- popup_on = config.get('information_buffer_popup_on',
- 'error roster warning help info').split()
+ popup_on = config.get('information_buffer_popup_on').split()
if isinstance(self.current_tab(), tabs.RosterInfoTab):
self.refresh_window()
elif typ != '' and typ.lower() in popup_on:
- popup_time = config.get('popup_time', 4) + (nb_lines - 1) * 2
+ popup_time = config.get('popup_time') + (nb_lines - 1) * 2
self.pop_information_win_up(nb_lines, popup_time)
else:
if self.information_win_size != 0:
@@ -1496,7 +1496,7 @@ class Core(object):
"""
Enable/disable the left panel.
"""
- enabled = config.get('enable_vertical_tab_list', False)
+ enabled = config.get('enable_vertical_tab_list')
if not config.silent_set('enable_vertical_tab_list', str(not enabled)):
self.information(_('Unable to write in the config file'), 'Error')
self.call_for_resize()
@@ -1523,14 +1523,14 @@ class Core(object):
"""
with g_lock:
height, width = self.stdscr.getmaxyx()
- if config.get('enable_vertical_tab_list', False):
+ if config.get('enable_vertical_tab_list'):
if self.size.core_degrade_x:
return
try:
height, _ = self.stdscr.getmaxyx()
truncated_win = self.stdscr.subwin(height,
- config.get('vertical_tab_list_size', 20),
+ config.get('vertical_tab_list_size'),
0, 0)
except:
log.error('Curses error on infobar resize', exc_info=True)
@@ -1569,12 +1569,12 @@ class Core(object):
# on the left remaining space
with g_lock:
height, width = self.stdscr.getmaxyx()
- if (config.get('enable_vertical_tab_list', False) and
+ if (config.get('enable_vertical_tab_list') and
not self.size.core_degrade_x):
with g_lock:
try:
scr = self.stdscr.subwin(0,
- config.get('vertical_tab_list_size', 20))
+ config.get('vertical_tab_list_size'))
except:
log.error('Curses error on resize', exc_info=True)
return
@@ -1585,7 +1585,7 @@ class Core(object):
self.resize_global_information_win()
with g_lock:
for tab in self.tabs:
- if config.get('lazy_resize', True):
+ if config.get('lazy_resize'):
tab.need_resize = True
else:
tab.resize()
@@ -1818,7 +1818,7 @@ class Core(object):
usage='<jid>',
shortdesc=_('List available ad-hoc commands on the given jid'))
- if config.get('enable_user_activity', True):
+ if config.get('enable_user_activity'):
self.register_command('activity', self.command_activity,
usage='[<general> [specific] [text]]',
desc=_('Send your current activity to your contacts '
@@ -1826,7 +1826,7 @@ class Core(object):
'"stop broadcasting an activity".'),
shortdesc=_('Send your activity.'),
completion=self.completion_activity)
- if config.get('enable_user_mood', True):
+ if config.get('enable_user_mood'):
self.register_command('mood', self.command_mood,
usage='[<mood> [text]]',
desc=_('Send your current mood to your contacts '
@@ -1834,7 +1834,7 @@ class Core(object):
'"stop broadcasting a mood".'),
shortdesc=_('Send your mood.'),
completion=self.completion_mood)
- if config.get('enable_user_gaming', True):
+ if config.get('enable_user_gaming'):
self.register_command('gaming', self.command_gaming,
usage='[<game name> [server address]]',
desc=_('Send your current gaming activity to '
@@ -1977,7 +1977,7 @@ def replace_key_with_bound(key):
Replace an inputted key with the one defined as its replacement
in the config
"""
- bind = config.get(key, key, 'bindings')
+ bind = config.get(key, default=key, section='bindings')
if not bind:
bind = key
return bind
diff --git a/src/core/handlers.py b/src/core/handlers.py
index 4853c804..dfcb3223 100644
--- a/src/core/handlers.py
+++ b/src/core/handlers.py
@@ -44,7 +44,7 @@ def on_session_start_features(self, _):
features = iq['disco_info']['features']
rostertab = self.get_tab_by_name('Roster', tabs.RosterInfoTab)
rostertab.check_blocking(features)
- if (config.get('enable_carbons', True) and
+ if (config.get('enable_carbons') and
'urn:xmpp:carbons:2' in features):
self.xmpp.plugin['xep_0280'].enable()
self.xmpp.add_event_handler('carbon_received', self.on_carbon_received)
@@ -111,7 +111,7 @@ def on_groupchat_invitation(self, message):
if password:
msg += ". The password is \"%s\"." % password
self.information(msg, 'Info')
- if 'invite' in config.get('beep_on', 'invite').split():
+ if 'invite' in config.get('beep_on').split():
curses.beep()
logger.log_roster_change(inviter.full, 'invited you to %s' % jid.full)
self.pending_invites[jid.bare] = inviter.full
@@ -142,7 +142,7 @@ def on_groupchat_direct_invitation(self, message):
msg += "\nreason: %s" % reason
self.information(msg, 'Info')
- if 'invite' in config.get('beep_on', 'invite').split():
+ if 'invite' in config.get('beep_on').split():
curses.beep()
self.pending_invites[room.bare] = inviter.full
@@ -178,9 +178,9 @@ def on_normal_message(self, message):
elif message['type'] == 'headline' and message['body']:
return self.information('%s says: %s' % (message['from'], message['body']), 'Headline')
- use_xhtml = config.get('enable_xhtml_im', True)
- tmp_dir = config.get('tmp_image_dir', '') or path.join(CACHE_DIR, 'images')
- extract_images = config.get('extract_inline_images', True)
+ use_xhtml = config.get('enable_xhtml_im')
+ tmp_dir = config.get('tmp_image_dir') or path.join(CACHE_DIR, 'images')
+ extract_images = config.get('extract_inline_images')
body = xhtml.get_body_from_message_stanza(message, use_xhtml=use_xhtml,
tmp_dir=tmp_dir,
extract_images=extract_images)
@@ -197,7 +197,7 @@ def on_normal_message(self, message):
if conv_jid.bare in roster:
remote_nick = roster[conv_jid.bare].name
# check for a received nick
- if not remote_nick and config.get('enable_user_nick', True):
+ if not remote_nick and config.get('enable_user_nick'):
if message.xml.find('{http://jabber.org/protocol/nick}nick') is not None:
remote_nick = message['nick']['nick']
if not remote_nick:
@@ -259,7 +259,7 @@ def on_normal_message(self, message):
conversation.remote_wants_chatstates = True
else:
conversation.remote_wants_chatstates = False
- if 'private' in config.get('beep_on', 'highlight private').split():
+ if 'private' in config.get('beep_on').split():
if not config.get_by_tabname('disable_beep', conv_jid.bare):
curses.beep()
if self.current_tab() is not conversation:
@@ -447,9 +447,9 @@ def on_groupchat_message(self, message):
return
self.events.trigger('muc_msg', message, tab)
- use_xhtml = config.get('enable_xhtml_im', True)
- tmp_dir = config.get('tmp_image_dir', '') or path.join(CACHE_DIR, 'images')
- extract_images = config.get('extract_inline_images', True)
+ use_xhtml = config.get('enable_xhtml_im')
+ tmp_dir = config.get('tmp_image_dir') or path.join(CACHE_DIR, 'images')
+ extract_images = config.get('extract_inline_images')
body = xhtml.get_body_from_message_stanza(message, use_xhtml=use_xhtml,
tmp_dir=tmp_dir,
extract_images=extract_images)
@@ -487,7 +487,7 @@ def on_groupchat_message(self, message):
current.input.refresh()
self.doupdate()
- if 'message' in config.get('beep_on', 'highlight private').split():
+ if 'message' in config.get('beep_on').split():
if (not config.get_by_tabname('disable_beep', room_from)
and self.own_nick != message['from'].resource):
curses.beep()
@@ -508,9 +508,9 @@ def on_groupchat_private_message(self, message):
return self.on_groupchat_message(message)
room_from = jid.bare
- use_xhtml = config.get('enable_xhtml_im', True)
- tmp_dir = config.get('tmp_image_dir', '') or path.join(CACHE_DIR, 'images')
- extract_images = config.get('extract_inline_images', True)
+ use_xhtml = config.get('enable_xhtml_im')
+ tmp_dir = config.get('tmp_image_dir') or path.join(CACHE_DIR, 'images')
+ extract_images = config.get('extract_inline_images')
body = xhtml.get_body_from_message_stanza(message, use_xhtml=use_xhtml,
tmp_dir=tmp_dir,
extract_images=extract_images)
@@ -554,7 +554,7 @@ def on_groupchat_private_message(self, message):
tab.remote_wants_chatstates = True
else:
tab.remote_wants_chatstates = False
- if 'private' in config.get('beep_on', 'highlight private').split():
+ if 'private' in config.get('beep_on').split():
if not config.get_by_tabname('disable_beep', jid.full):
curses.beep()
if tab is self.current_tab():
@@ -876,23 +876,23 @@ def on_session_start(self, event):
# request the roster
self.xmpp.get_roster()
# send initial presence
- if config.get('send_initial_presence', True):
+ if config.get('send_initial_presence'):
pres = self.xmpp.make_presence()
pres['show'] = self.status.show
pres['status'] = self.status.message
self.events.trigger('send_normal_presence', pres)
pres.send()
bookmark.get_local()
- if not self.xmpp.anon and config.get('use_remote_bookmarks', True):
+ if not self.xmpp.anon and config.get('use_remote_bookmarks'):
bookmark.get_remote(self.xmpp)
for bm in bookmark.bookmarks:
- if bm.autojoin or config.get('open_all_bookmarks', False):
+ if bm.autojoin or config.get('open_all_bookmarks'):
tab = self.get_tab_by_name(bm.jid, tabs.MucTab)
nick = bm.nick if bm.nick else self.own_nick
if not tab:
self.open_new_room(bm.jid, nick, False)
self.initial_joins.append(bm.jid)
- histo_length = config.get('muc_history_length', 20)
+ histo_length = config.get('muc_history_length')
if histo_length == -1:
histo_length = None
if histo_length is not None:
@@ -906,7 +906,7 @@ def on_session_start(self, event):
status=self.status.message,
show=self.status.show)
- if config.get('enable_user_nick', True):
+ if config.get('enable_user_nick'):
self.xmpp.plugin['xep_0172'].publish_nick(nick=self.own_nick, callback=dumb_callback, block=False)
self.xmpp.plugin['xep_0115'].update_caps()
@@ -1081,9 +1081,9 @@ def validate_ssl(self, pem):
"""
Check the server certificate using the sleekxmpp ssl_cert event
"""
- if config.get('ignore_certificate', False):
+ if config.get('ignore_certificate'):
return
- cert = config.get('certificate', '')
+ cert = config.get('certificate')
# update the cert representation when it uses the old one
if cert and not ':' in cert:
cert = ':'.join(i + j for i, j in zip(cert[::2], cert[1::2])).upper()
@@ -1147,7 +1147,7 @@ def _composing_tab_state(tab, state):
else:
return # should not happen
- show = config.get('show_composing_tabs', 'direct')
+ show = config.get('show_composing_tabs')
show = show in values
if tab.state != 'composing' and state == 'composing':