POEZIO.KEYS(7)
π poezio.keys(7) β Poezio Key Bindings
okay so welcome to poezio.keys(7), bestie β this is the page that spills literally all the tea on poezio's default keys and how to configure them. π
By default, most keys manipulating the input (the place where you type your messages and commands) behave like emacs does. No cap.
β οΈ Note: Keys are case sensitive.Ctrl-Xis not the same thanCtrl-x. Not me warning you twice. π
β¨ KEY BINDINGS LISTING β¨
Some key bindings are available only in some tabs, others are global. Iconic division of labour, honestly.
π Global keys
These keys work in any tab. Main character energy, they go everywhere.
Ctrl-porF5β go to the previous tab.Ctrl-norF6β go to the next tab.Alt-numberβ go to the tab with that number.Alt-jβ waits for you to type a two-digits number. Go to tab number xx.Alt-eβ go to the tab with a higher priority (private message > highlight > message > non-empty input).Alt-zβ go to the previously selected tab.Alt-rβ go to the contact list tab.F4β toggle the left pane.F7β shrink the information buffer.F8β grow the information buffer.Ctrl-lβ refresh the screen.Alt-Dβ scroll the information buffer up.Alt-Cβ scroll the information buffer down.
β¨οΈ Input keys
These keys concern only the inputs.
π NOTE: The clipboard is common to all inputs. This lets you cut a text from one input to paste it into an other one. Sharing is caring π«Ά
Ctrl-aβ move the cursor to the beginning of line.Ctrl-eβ move the cursor to the end of line.Ctrl-uβ delete the text from the start of the input until the cursor and save it to the clipboard.Ctrl-kβ delete the text from the cursor until the end of the input and save it to the clipboard.Ctrl-yβ insert the content of the clipboard at the cursor position.Ctrl-EnterorCtrl-jβ insert a line break. Since the input is only one line, the line break is represented by the character|in it but will be sent as the real\ncharacter. sneaky but valid πAlt-kβ escape the next key pressed. For example if you pressAlt-k, followed byCtrl-q, this will enter β^Qβ into the text input. This is useful for example in conjunction with thebindcommand, to help you know how to bind something to a key combination without having to remember how to write them by hand.
π¬ Chat tab input keys
These keys work in any conversation tab (MultiUserChat, Private or Conversation tabs).
- Key Up β use the previous message from the message history.
- Key Down β use the next message from the message history.
- Page Up β scroll up in the conversation by x lines, where x is the height of the conversation window - 1.
- Page Down β like Page Up, but down.
Ctrl-bβ go one line up in the buffer.Ctrl-fβ go one line down in the buffer.Ctrl-sβ go half a screen up in the buffer.Ctrl-xβ go half a screen down in the buffer.Alt-/β complete what youβre typing using the "recent" words from the current conversation, if any.Alt-vβ move the separator at the bottom of the tab.Alt-hβ scroll to the separator, if there is one.Ctrl-cβ insert xhtml formatting. π
You have to press Ctrl-c then a character listed below:
1: Red2: Green3: Yellow/Orange4: Blue5: Pink6: Turquoiseb: Boldu: Underlinedo: Stop formatting
π₯ MultiUserChat tab input keys
These keys work only in the MultiUserChat tab.
Alt-uβ scroll the user list down.Alt-yβ scroll the user list up.Alt-pβ scroll to the previous highlight.Alt-nβ scroll to the next highlight.tabulationβ complete a nick.
π MultiUserChat List tab input keys
These keys work only in the MultiUserChat List tab (obtained with /list <#term-list>).
Upβ go up one row.Downβ go down one row.jβ join the MultiUserChat currently selected.Jβ join the MultiUserChat currently selected, without giving focus to its tab.Ctrl-Mβ join the MultiUserChat currently selected (same asj).PageUpβ scroll a page of chats up.PageDownβ scroll a page of chats down.
ποΈ Contact list tab input keys
These keys work only in the Contact list tab (the tab number 0).
/β open a prompt for commands.sβ start a search on the contacts.Sβ start a (slow) search with approximation on the contacts. πAlt-uβ move the cursor to the next group.Alt-yβ move the cursor to the previous group.Ctrl-cβ cancel the input (search or command)Enteron a contact/resource β open a chat tab with this contact/resourceEnteron a group β fold/unfold that groupUpβ move the cursor down one contact.Downβ move the cursor up one contact.PageUpβ scroll a page of contacts up.PageDownβ scroll a page of contacts down.
β οΈ Note: The following will not work if you can still write things in the input (meaning you previously typedsor/). yeah. it's giving "read the room" π
Spaceβ fold/unfold the current item.oβ show the offline contacts.
π During a search
Enterβ end the search while keeping the selected contact under the cursor (tip: pressEntera second time to open a chat window)
π Data Forms tab keys
Ctrl-yβ validate the form, send it and close the tab.Ctrl-gβ cancel that form (do not send your changes) and close the tab.Upβ select the next field.Downβ select the previous field.Right/Leftβ switch between possible values, in ajid-multi,list-multi,list-singleortext-multifield.Spaceβ select that option
π§ XML tab input keys
These keys only work in the XML tab (obtained with /xml_tab <#term-xml_tab>)
Ctrl-kβ freeze or un-freeze the display in order to have a clear view of the stanzas.
π οΈ KEY CONFIGURATION
Bindings are keyboard shortcut aliases. You can use them to define your own keys to replace the default ones. Where ^x means Ctrl + x and M-x means Alt + x. iykyk π
To know exactly what the code of a key is, just run
python3 poezio/keyboard.py
And enter any key. it will tell you. so useful.
Turn Alt-i into a tab key (completion, etc):
M-i = ^I
π₯ ACTIONS
π― Mapping actions on keys
One may want to add keyboard shortcuts on actions that were not mapped already in poezio. To this effect, you can map the keys on actions using the Key configuration seen in the previous section.
The actions are pseudo-keystrokes, and have to be treated the same way. They all begin with an underscore to prevent any possible collision with things already defined. safe, protected, boundary-having icons π
π Actions list
β οΈ Note: Even if some of these actions are labelled as similar to other keystrokes, remapping the keystrokes will not remap the actions defined here. they're separate girlies, fr fr.
_bookmarkβ bookmarks the current room. Similar to/bookmark <#term-bookmark>._bookmark_localβ bookmarks the current room, locally. Similar to/bookmark_local <#term-bookmark_local>_close_tabβ closes the current tab. This is the same as/close <#term-close>. The first tab (the contact list) can not be closed._disconnectβ disconnects poezio from the server._quitβ exits poezio. Similar to/quit <#term-quit>._reconnectβ disconnects then reconnects poezio, if possible. This is similar to/reconnect <#term-reconnect>._redraw_screenβ redraws the screen. This isnβt normally useful, similar toCtrl-l._reload_themeβ reloads the theme. Similar to/theme <#term-theme>._remove_bookmarkβ removes the bookmark on the current room. Similar to/remove_bookmark <#term-remove_bookmark>._room_leftβ goes to the room on the left. Similar to the defaultCtrl-paction._room_rightβ goes to the room on the right. Similar to the defaultCtrl-naction._show_rosterβ goes to the contact list Similar toAlt-raction._scroll_downβ scrolls down in the current buffer. Similar toPAGEDOWN._scroll_upβ scrolls up in the current buffer. Similar toPAGEUP._scroll_info_downβ scrolls down in the info buffer. Similar toAlt-c._scroll_info_upβ scrolls up in the info buffer. Similar toAlt-d._server_cycleβ cycles in the current chatroom server. Similar to/server_cycle <#term-server_cycle>in a chatroom. If you are not in a chatroom, you will get an error._show_bookmarksβ shows the current bookmarks. Similar to/bookmarks <#term-bookmarks>._show_important_roomβ goes to the most important room. Similar toAlt-e._show_invitationsβ shows all the pending chatroom invitations. Similar to/invitations <#term-invitations>._show_pluginsβ shows the currently loaded plugins. Similar to/plugins <#term-plugins>._show_xmltabβ opens an XML tab. Similar to/xml_tab <#term-xml_tab>._toggle_presences_localβ toggles the display of MUC presences in the current tab._toggle_presences_globalβ toggles the display of MUC presences globally._toggle_paneβ toggles the left pane. Similar toF4._go_to_room_nameβ jump to a tab by unique prefix. Similar to/wup <#term-wup>and the defaultAlt-j. This action will take input as long as there is at least one tab name starting with the input given so far. If there is exactly one tab matching, the action completes and the current tab is switched over to the tab matching the input. If no tab matches, the action completes without any change. This means that you can typically abort the action withEscape.
π Status actions
_availableβ sets the status to available. Similar to/status available._awayβ sets the status to away. Similar to/status away._chatβ sets the status to chat. Similar to/status chat._dndβ sets the status to dnd. Similar to/status dnd._xaβ sets the status to xa. Similar to/status xa.
π Command execution
With that kind of actions, you can also execute arbitrary commands, with the _exc_ keyword.
You only have to prefix your command line with _exc_, and without the /.
/kick Partauche bound on Ctrl-w:
^W = _exc_kick Partauche
That key binding will only work in the tabs defining the command (here, the chatroom tab), and will show an error message in the others. tragic but fair π
π Examples
Config with user-defined actions
[bindings]
^W = _close_tab
M-x = _show_xmltab
M-i = _show_important_room
M-p = _toggle_pane
Config with commands mapped
[bindings]
M-c = _exc_configure
^Q = _exc_part RAGE QUIT
^J = _exc_join
^F = _exc_load figlet
^R = _exc_load rainbow
^S = _exc_say llollllllllllll
π Author
Mathieu Pasquet, Florent Le Coz, Emmanuel Gil Peyrot, Maxime Buquet
Β©οΈ Copyright
1980, Mathieu Pasquet - Florent Le Coz - Emmanuel Gil Peyrot - Maxime Buquet
and that's the whole page, bestie β version 0.17, dated Jan 02, 1980, section 7 of the Poezio manual. go forth and bind responsibly πβ¨π
π¦ where this page comes from
- nixpkgs unstable: poezio 0.18
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms