Esempio n. 1
0
def cron_completion_keyword_cb(data, completion_item, buffer, completion):
    """ Complete with cron keyword, for command '/cron'. """
    global cron_commands
    for command in sorted(cron_commands.keys()):
        weechat.completion_list_add(completion, command, 0,
                                    weechat.WEECHAT_LIST_POS_END)
    return weechat.WEECHAT_RC_OK
Esempio n. 2
0
def cron_completion_at_time_cb(data, completion_item, buffer, completion):
    """ Complete with time, for command '/at'. """
    weechat.completion_list_add(completion, "+5m", 0,
                                weechat.WEECHAT_LIST_POS_END)
    weechat.completion_list_add(completion, "20:00", 0,
                                weechat.WEECHAT_LIST_POS_END)
    return weechat.WEECHAT_RC_OK
Esempio n. 3
0
def completion_cb(data, completion_item, buffer, completion):
    if weechat.info_get('version', '') <= '2.8':
        for number in contacts:
            weechat.hook_completion_list_add(completion, number, 0,
                                             weechat.WEECHAT_LIST_POS_SORT)
            weechat.hook_completion_list_add(completion,
                                             contact_name(number).lower(), 0,
                                             weechat.WEECHAT_LIST_POS_SORT)
            weechat.hook_completion_list_add(completion, contact_name(number),
                                             0, weechat.WEECHAT_LIST_POS_SORT)
        for group in groups:
            weechat.hook_completion_list_add(completion,
                                             groups[group]['name'].lower(), 0,
                                             weechat.WEECHAT_LIST_POS_SORT)
            weechat.hook_completion_list_add(completion, groups[group]['name'],
                                             0, weechat.WEECHAT_LIST_POS_SORT)
    else:
        for number in contacts:
            weechat.completion_list_add(completion, number, 0,
                                        weechat.WEECHAT_LIST_POS_SORT)
            weechat.completion_list_add(completion,
                                        contact_name(number).lower(), 0,
                                        weechat.WEECHAT_LIST_POS_SORT)
            weechat.completion_list_add(completion, contact_name(number), 0,
                                        weechat.WEECHAT_LIST_POS_SORT)
        for group in groups:
            weechat.completion_list_add(completion,
                                        groups[group]['name'].lower(), 0,
                                        weechat.WEECHAT_LIST_POS_SORT)
            weechat.completion_list_add(completion, groups[group]['name'], 0,
                                        weechat.WEECHAT_LIST_POS_SORT)

    return weechat.WEECHAT_RC_OK
Esempio n. 4
0
def completion_cb(data, completion_item, buf, completion):
    """Completion callback."""
    check(data == 'completion_data')
    check(completion_item == 'SCRIPT_NAME')
    check(weechat.completion_get_string(completion, 'args') == 'w')
    weechat.completion_list_add(completion, 'word_completed', 0,
                                weechat.WEECHAT_LIST_POS_END)
    return weechat.WEECHAT_RC_OK
Esempio n. 5
0
def cron_completion_number_cb(data, completion_item, buffer, completion):
    """ Complete with jobs numbers, for command '/cron'. """
    global crontab
    if len(crontab) > 0:
        for i in reversed(range(0, len(crontab))):
            weechat.completion_list_add(completion, "%d" % (i + 1), 0,
                                        weechat.WEECHAT_LIST_POS_BEGINNING)
    return weechat.WEECHAT_RC_OK
Esempio n. 6
0
def cron_completion_commands_cb(data, completion_item, buffer, completion):
    """ Complete with commands, for command '/cron'. """
    infolist = weechat.infolist_get("hook", "command", "")
    while weechat.infolist_next(infolist):
        command = weechat.infolist_string(infolist, "command")
        if command.startswith("/"):
            command = command[1:]
        if command:
            weechat.completion_list_add(completion, "/%s" % command, 0,
                                        weechat.WEECHAT_LIST_POS_SORT)
    weechat.infolist_free(infolist)
    return weechat.WEECHAT_RC_OK
Esempio n. 7
0
def cron_completion_buffer_cb(data, completion_item, buffer, completion):
    """ Complete with buffer, for command '/cron'. """
    infolist = weechat.infolist_get("buffer", "", "")
    while weechat.infolist_next(infolist):
        plugin_name = weechat.infolist_string(infolist, "plugin_name")
        name = weechat.infolist_string(infolist, "name")
        weechat.completion_list_add(completion, "%s.%s" % (plugin_name, name),
                                    0, weechat.WEECHAT_LIST_POS_SORT)
    weechat.infolist_free(infolist)
    weechat.completion_list_add(completion, "current", 0,
                                weechat.WEECHAT_LIST_POS_BEGINNING)
    weechat.completion_list_add(completion, "core.weechat", 0,
                                weechat.WEECHAT_LIST_POS_BEGINNING)
    return weechat.WEECHAT_RC_OK
Esempio n. 8
0
def docgen_completion_cb(data, completion_item, buf, completion):
    """Callback for completion."""
    for locale in LOCALE_LIST:
        weechat.completion_list_add(completion, locale, 0,
                                    weechat.WEECHAT_LIST_POS_SORT)
    return weechat.WEECHAT_RC_OK
Esempio n. 9
0
def cron_completion_repeat_cb(data, completion_item, buffer, completion):
    """ Complete with repeat, for command '/cron'. """
    weechat.completion_list_add(completion, "*", 0,
                                weechat.WEECHAT_LIST_POS_BEGINNING)
    return weechat.WEECHAT_RC_OK