Mercurial > ~mikael > mcabber > hg
view mcabber/mcabber/xmpp_helper.h @ 2304:fa8365fb6ac2
[PATCH 1/3] New option: vi_mode
If the new vi_mode option is set to 1, let MCabber's non-chat mode
accept a few commands loosely based on those available in vi(1)'s normal
mode, e.g.:
A Call "/roster unread_first".
a Call "/roster unread_next".
F Call "/roster group_prev".
f Call "/roster group_next".
G Call "/roster bottom".
gg Call "/roster top".
i Enter chat mode.
[<n>]j Call "/roster down [<n>]".
[<n>]k Call "/roster up [<n>]".
n Repeat the previous search (if any).
O Call "/roster unread_first" and open chat window.
o Call "/roster unread_next" and open chat window.
ZZ Call "/quit".
zM Call "/group fold" for all groups.
zR Call "/group unfold" for all groups.
<Space> Call "/group toggle" for the current group.
'' Call "/roster alternate".
! Toggle attention flag for current buddy.
# Toggle unread messages flag for current buddy.
/<str> Call "/roster search <str>".
:q Call "/quit".
:wq Call "/quit".
:x Call "/quit".
:<n> Jump to line <n> in the roster.
:<cmd> Call "/<cmd>" (unless <cmd> matches one of the above commands).
author | Holger Weiß <holger@zedat.fu-berlin.de> |
---|---|
date | Wed, 22 Jul 2015 19:25:22 +0200 |
parents | a37fbc3ac6aa |
children |
line wrap: on
line source
#ifndef __MCABBER_XMPPHELPER_H__ #define __MCABBER_XMPPHELPER_H__ 1 #include <time.h> #include <loudmouth/loudmouth.h> #include <mcabber/xmpp.h> #include <mcabber/xmpp_defines.h> #include <mcabber/config.h> extern time_t iqlast; /* last message/status change time */ struct T_presence { enum imstatus st; const char *msg; }; struct xmpp_error { guint code; const char *code_str; const char *meaning; const char *condition; const char *type; }; #ifdef MODULES_ENABLE void xmpp_add_feature (const char *xmlns); void xmpp_del_feature (const char *xmlns); #endif LmMessageNode *lm_message_node_new(const gchar *name, const gchar *xmlns); LmMessageNode *lm_message_node_find_xmlns(LmMessageNode *node, const char *xmlns); const gchar* lm_message_node_get_child_value(LmMessageNode *node, const gchar *child); void lm_message_node_hide(LmMessageNode *node); void lm_message_node_insert_childnode(LmMessageNode *node, LmMessageNode *child); void lm_message_node_deep_ref(LmMessageNode *node); time_t lm_message_node_get_timestamp(LmMessageNode *node); LmMessage *lm_message_new_iq_from_query(LmMessage *m, LmMessageSubType type); LmMessage *lm_message_new_presence(enum imstatus st, const char *recipient, const char *msg); const gchar* lm_message_get_from(LmMessage *m); const gchar* lm_message_get_id(LmMessage *m); void display_server_error(LmMessageNode *x, const char *from); /* XEP-0115 (Entity Capabilities) node */ const char *entity_version(enum imstatus status); #endif /* vim: set et cindent cinoptions=>2\:2(0 ts=2 sw=2: For Vim users... */