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
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
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
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
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
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
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
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
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