summaryrefslogtreecommitdiff
path: root/doc/en
diff options
context:
space:
mode:
authorSebastien Helleu <flashcode@flashtux.org>2011-07-26 18:50:29 +0200
committerSebastien Helleu <flashcode@flashtux.org>2011-07-26 18:50:29 +0200
commite0781f0390291e264e6dd9c17beae1342e87f9a2 (patch)
treeaac2f19ab7e527180952db15867d8daaa23c4a91 /doc/en
parent2fec84314433c2b7152c6c47b1172a621257fe6f (diff)
downloadweechat-e0781f0390291e264e6dd9c17beae1342e87f9a2.zip
core: add mouse support (task #5435), free cursor movement, hook_focus, fix bugs with key "^" (bug #32072, bug #21381), fix bugs with bar windows, completion and /buffer
New features and bugs fixed: - mouse support: new command /mouse, new option weechat.look.mouse, new key context "mouse" - free movement of cursor: new command /cursor, new key context "cursor" - new hook_focus (used by cursor and mouse) - info "cursor_mode" - bugs fixed with key "^" - allow plugin name in /buffer name - fix bugs with bar windows: do not create bar windows for hidden bars - fix completion bug when two words for completion are equal but with different case - automatic scroll direction in /bar scroll (x/y is now optional)
Diffstat (limited to 'doc/en')
-rw-r--r--doc/en/autogen/plugin_api/completions.txt2
-rw-r--r--doc/en/autogen/plugin_api/hdata.txt47
-rw-r--r--doc/en/autogen/plugin_api/infos.txt2
-rw-r--r--doc/en/autogen/user/weechat_commands.txt60
-rw-r--r--doc/en/autogen/user/weechat_options.txt5
-rw-r--r--doc/en/weechat_plugin_api.en.txt82
-rw-r--r--doc/en/weechat_user.en.txt111
7 files changed, 268 insertions, 41 deletions
diff --git a/doc/en/autogen/plugin_api/completions.txt b/doc/en/autogen/plugin_api/completions.txt
index b0bc80eeb..1e909099c 100644
--- a/doc/en/autogen/plugin_api/completions.txt
+++ b/doc/en/autogen/plugin_api/completions.txt
@@ -78,6 +78,8 @@
| weechat | config_options | configuration options
+| weechat | cursor_areas | areas ("chat" or bar name) for free cursor movement
+
| weechat | filename | filename
| weechat | filters_names | names of filters
diff --git a/doc/en/autogen/plugin_api/hdata.txt b/doc/en/autogen/plugin_api/hdata.txt
index e6ff1fa15..b4c46732c 100644
--- a/doc/en/autogen/plugin_api/hdata.txt
+++ b/doc/en/autogen/plugin_api/hdata.txt
@@ -175,7 +175,10 @@
'items_count' (integer) +
'items_subcount' (pointer) +
'items_array' (pointer) +
- 'bar_window' (pointer) +
+ 'items_prefix' (pointer) +
+ 'items_name' (pointer) +
+ 'items_suffix' (pointer) +
+ 'bar_window' (pointer, hdata: 'bar_window') +
'bar_refresh_needed' (integer) +
'prev_bar' (pointer, hdata: 'bar') +
'next_bar' (pointer, hdata: 'bar') |
@@ -192,6 +195,30 @@
'gui_bar_items' +
'last_gui_bar_item'
+| weechat | bar_window | bar window |
+ 'bar' (pointer, hdata: 'bar') +
+ 'x' (integer) +
+ 'y' (integer) +
+ 'width' (integer) +
+ 'height' (integer) +
+ 'scroll_x' (integer) +
+ 'scroll_y' (integer) +
+ 'cursor_x' (integer) +
+ 'cursor_y' (integer) +
+ 'current_size' (integer) +
+ 'items_count' (integer) +
+ 'items_subcount' (pointer) +
+ 'items_content' (pointer) +
+ 'items_num_lines' (pointer) +
+ 'items_refresh_needed' (pointer) +
+ 'screen_col_size' (integer) +
+ 'coords_count' (integer) +
+ 'coords' (pointer) +
+ 'gui_objects' (pointer) +
+ 'prev_bar_window' (pointer, hdata: 'bar_window') +
+ 'next_bar_window' (pointer, hdata: 'bar_window') |
+ -
+
| weechat | buffer | buffer |
'plugin' (pointer, hdata: 'plugin') +
'plugin_name_for_upgrade' (string) +
@@ -383,9 +410,21 @@
'prev_key' (pointer, hdata: 'key') +
'next_key' (pointer, hdata: 'key') |
'gui_default_keys' +
+ 'gui_default_keys_cursor' +
+ 'gui_default_keys_mouse' +
+ 'gui_default_keys_search' +
'gui_keys' +
+ 'gui_keys_cursor' +
+ 'gui_keys_mouse' +
+ 'gui_keys_search' +
'last_gui_default_key' +
- 'last_gui_key'
+ 'last_gui_default_key_cursor' +
+ 'last_gui_default_key_mouse' +
+ 'last_gui_default_key_search' +
+ 'last_gui_key' +
+ 'last_gui_key_cursor' +
+ 'last_gui_key_mouse' +
+ 'last_gui_key_search'
| weechat | line | structure with one line |
'data' (pointer, hdata: 'line_data') +
@@ -473,8 +512,8 @@
'win_chat_height' (integer) +
'win_chat_cursor_x' (integer) +
'win_chat_cursor_y' (integer) +
- 'bar_windows' (pointer) +
- 'last_bar_window' (pointer) +
+ 'bar_windows' (pointer, hdata: 'bar_window') +
+ 'last_bar_window' (pointer, hdata: 'bar_window') +
'refresh_needed' (integer) +
'gui_objects' (pointer) +
'buffer' (pointer, hdata: 'buffer') +
diff --git a/doc/en/autogen/plugin_api/infos.txt b/doc/en/autogen/plugin_api/infos.txt
index 708a570f1..f4fb2a5a7 100644
--- a/doc/en/autogen/plugin_api/infos.txt
+++ b/doc/en/autogen/plugin_api/infos.txt
@@ -28,6 +28,8 @@
| weechat | charset_terminal | terminal charset | -
+| weechat | cursor_mode | 1 if cursor mode is enabled | -
+
| weechat | date | WeeChat compilation date | -
| weechat | dir_separator | directory separator | -
diff --git a/doc/en/autogen/user/weechat_commands.txt b/doc/en/autogen/user/weechat_commands.txt
index 48f64285a..d35e0a27f 100644
--- a/doc/en/autogen/user/weechat_commands.txt
+++ b/doc/en/autogen/user/weechat_commands.txt
@@ -42,7 +42,7 @@ message: message for away (if no message is given, away status is removed)
toggle: hide/show a bar
scroll: scroll bar
buffer: name of buffer to scroll ('*' means current buffer, you should use '*' for root bars)
- scroll_value: value for scroll: 'x' or 'y', followed by '+', '-', 'b' (beginning) or 'e' (end), value (for +/-), and optional %% (to scroll by %% of width/height, otherwise value is number of chars)
+ scroll_value: value for scroll: 'x' or 'y' (optional), followed by '+', '-', 'b' (beginning) or 'e' (end), value (for +/-), and optional % (to scroll by % of width/height, otherwise value is number of chars)
Examples:
create a bar with time, buffer number + name, and completion:
@@ -140,12 +140,33 @@ Examples:
command: command to execute (a '/' is automatically added if not found at beginning of command)
........................................
+[command]*`cursor`* free movement of cursor on screen to execute actions on specific areas of screen::
+........................................
+/cursor go chat|<bar>|<x>,<y>
+ move up|down|left|right|area_up|area_down|area_left|area_right
+ stop
+
+ go: move cursor to chat area, a bar (using bar name) or coordinates "x,y"
+move: move cursor with direction
+stop: stop cursor mode
+
+Without argument, this command toggles cursor mode.
+
+When mouse is enabled (see /help mouse), by default a middle click will start cursor mode at this point.
+
+Examples:
+ go to nicklist:
+ /cursor go nicklist
+ go to coordinates x=10, y=5:
+ /cursor go 10,5
+........................................
+
[command]*`debug`* control debug for core/plugins::
........................................
/debug list
set <plugin> <level>
dump [<plugin>]
- buffer|color|infolists|memory|tags|term|windows
+ buffer|color|cursor|infolists|memory|mouse|tags|term|windows
hdata [free]
list: list plugins with debug levels
@@ -155,9 +176,11 @@ command: command to execute (a '/' is automatically added if not found at beginn
dump: save memory dump in WeeChat log file (same dump is written when WeeChat crashes)
buffer: dump buffer content with hexadecimal values in log file
color: display infos about current color pairs
+ cursor: toggle debug for cursor mode
hdata: display infos about hdata (with free: remove all hdata in memory)
infolists: display infos about infolists
memory: display infos about memory usage
+ mouse: toggle debug for mouse
tags: display tags for lines
term: display infos about terminal
windows: display windows tree
@@ -279,8 +302,8 @@ list of actions:
jump_previously_visited_buffer: jump to previously visited buffer
jump_next_visited_buffer: jump to next visited buffer
hotlist_clear: clear hotlist
- grab_key: grab a key
- grab_key_command: grab a key with its associated command
+ grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
+ grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
scroll_unread: scroll to unread marker
set_unread: set unread marker for all buffers
set_unread_current_buffer: set unread marker for current buffer
@@ -318,6 +341,14 @@ listdefault: list default keys
When binding a command to a key, it is recommended to use key alt+k (or Esc then k), and then press the key to bind: this will insert key code in command line.
+For context "mouse" (possible in context "cursor" too), key has format: "@area:key" where area can be:
+ *: any area on screen
+ chat: chat area
+ bar(*): any bar
+ bar(xxx): bar "xxx"
+ item(*): any bar item
+ item(xxx): bar item "xxx"
+
Examples:
key alt-x to toggle nicklist bar:
/key bind meta-x /bar toggle nicklist
@@ -327,6 +358,8 @@ Examples:
/key reset meta-r
key "tab" to stop search in buffer:
/key bindctxt search ctrl-I /input search_stop
+ middle button of mouse on a nick to retrieve info on nick:
+ /key bindctxt mouse @item(buffer_nicklist):button3 /msg nickserv info ${nick}
........................................
[command]*`layout`* save/apply/reset layout for buffers and windows::
@@ -344,6 +377,25 @@ windows: save/apply only windows (buffer displayed by each window)
Without argument, this command displays saved layout.
........................................
+[command]*`mouse`* mouse control::
+........................................
+/mouse enable|disable|toggle [<delay>]
+
+ enable: enable mouse
+disable: disable mouse
+ toggle: toggle mouse
+ delay: delay (in seconds) after which initial mouse state is restored (useful to temporarily disable mouse)
+
+To enable/disable mouse at startup, use:
+ /set weechat.look.mouse on/off
+
+Examples:
+ enable mouse:
+ /mouse enable
+ toggle mouse for 5 seconds:
+ /mouse toggle 5
+........................................
+
[command]*`mute`* execute a command silently::
........................................
/mute [-current | -buffer <name> | -all] command
diff --git a/doc/en/autogen/user/weechat_options.txt b/doc/en/autogen/user/weechat_options.txt
index 559b221da..787bb77b4 100644
--- a/doc/en/autogen/user/weechat_options.txt
+++ b/doc/en/autogen/user/weechat_options.txt
@@ -473,6 +473,11 @@
** type: boolean
** values: on, off (default value: `on`)
+* *weechat.look.mouse*
+** description: `enable mouse support at startup (to enable it now, see /help mouse)`
+** type: boolean
+** values: on, off (default value: `off`)
+
* *weechat.look.nickmode*
** description: `display nick mode ((half)op/voice) before each nick`
** type: boolean
diff --git a/doc/en/weechat_plugin_api.en.txt b/doc/en/weechat_plugin_api.en.txt
index c6e77ce8c..b38b1f70f 100644
--- a/doc/en/weechat_plugin_api.en.txt
+++ b/doc/en/weechat_plugin_api.en.txt
@@ -6042,7 +6042,7 @@ weechat_hook_modifier ("2000|input_text_display", &modifier_cb, NULL);
----------------------------------------
Following hook types allow priority: command, command_run, signal, hsignal,
-config, completion, modifier, info, info_hashtable, infolist, hdata.
+config, completion, modifier, info, info_hashtable, infolist, hdata, focus.
weechat_hook_command
^^^^^^^^^^^^^^^^^^^^
@@ -8229,6 +8229,86 @@ struct t_hook *my_hdata = weechat_hook_hdata ("my_hdata",
[NOTE]
This function is not available in scripting API.
+weechat_hook_focus
+^^^^^^^^^^^^^^^^^^
+
+Hook a focus: mouse event or key pressed in cursor mode (free movement of
+cursor).
+
+Prototype:
+
+[source,C]
+----------------------------------------
+struct t_hook *weechat_hook_focus (const char *area,
+ struct t_hashtable *(*callback)(void *data,
+ struct t_hashtable *info),
+ void *callback_data);
+----------------------------------------
+
+Arguments:
+
+* 'area': "chat" for chat area, or name of bar item
+ (priority allowed, see note about <<hook_priority,priority>>)
+* 'callback': function called when focus is made, arguments and return
+ value:
+** 'void *data': pointer
+** 'struct t_hashtable *info': hashtable with info on focus and strings returned
+ by other calls to focus callbacks (with higher priority); keys and values
+ are of type "string"; info on focus (filled by WeeChat) are:
+*** '_x': column of focus on screen (first column on the left is "0")
+*** '_y': line of focus on screen (first line on top is "0")
+*** '_window': pointer of window with focus ("0x0" for a bar of type "root"
+ or for unknown area)
+*** '_bar_name': name of bar with focus (NULL for chat area or for unknown
+ area)
+*** '_bar_item_name': name of bar item with focus (NULL if focus is not in a
+ bar or if focus is after the end of last bar item)
+*** '_item_line': line with focus in bar item (first line of bar item is "0")
+*** '_item_col': column with focus in bar item (first column of bar item is "0")
+** return value: either "info" pointer (hashtable completed), or pointer to a
+ new hashtable (created by callback, with keys and values of type "string"),
+ this new hashtable content will be added to 'info' for other calls to focus
+ callbacks
+* 'callback_data': pointer given to callback when it is called by WeeChat
+
+Return value:
+
+* pointer to new hook, NULL if error occured
+
+C example:
+
+[source,C]
+----------------------------------------
+struct t_hashtable *
+my_focus_nicklist_cb (void *data, struct t_hashtable *info)
+{
+ /* add strings in hashtable */
+ /* ... */
+
+ return info;
+}
+
+/* add focus on nicklist */
+struct t_hook *my_focus = weechat_hook_focus ("buffer_nicklist",
+ &my_focus_nicklist_cb, NULL);
+----------------------------------------
+
+Script (Python):
+
+[source,python]
+----------------------------------------
+# prototype
+hook = weechat.hook_focus(area, callback, callback_data)
+
+# example
+def my_focus_nicklist_cb(data, info):
+ # build dict
+ # ...
+ return my_dict
+
+hook = weechat.hook_focus("buffer_nicklist", "my_focus_nicklist_cb", "")
+----------------------------------------
+
weechat_unhook
^^^^^^^^^^^^^^
diff --git a/doc/en/weechat_user.en.txt b/doc/en/weechat_user.en.txt
index 0ca58384f..938a796ed 100644
--- a/doc/en/weechat_user.en.txt
+++ b/doc/en/weechat_user.en.txt
@@ -412,20 +412,20 @@ Default key bindings
Keys for command line
^^^^^^^^^^^^^^^^^^^^^
-[width="100%",cols="^.^3,.^10,.^5m",options="header"]
+[width="100%",cols="^.^3,.^10,.^5l",options="header"]
|========================================
| Key | Description | Command
-| @k(←) .2+| Go to previous char in command line .2+| /input move_previous_char
+| @k(←) .2+| Go to previous char in command line .2+| /input move_previous_char
| @k(C-)@k(b)
-| @k(→) .2+| Go to next char in command line .2+| /input move_next_char
+| @k(→) .2+| Go to next char in command line .2+| /input move_next_char
| @k(C-)@k(f)
-| @k(C-)@k(←) .2+| Go to previous word in command line .2+| /input move_previous_word
+| @k(C-)@k(←) .2+| Go to previous word in command line .2+| /input move_previous_word
| @k(A-)@k(b)
-| @k(C-)@k(→) .2+| Go to next word in command line .2+| /input move_next_word
+| @k(C-)@k(→) .2+| Go to next word in command line .2+| /input move_next_word
| @k(A-)@k(f)
-| @k(Home) .2+| Go to the beginning of command line .2+| /input move_beginning_of_line
+| @k(Home) .2+| Go to the beginning of command line .2+| /input move_beginning_of_line
| @k(C-)@k(a)
-| @k(End) .2+| Go to the end of command line .2+| /input move_end_of_line
+| @k(End) .2+| Go to the end of command line .2+| /input move_end_of_line
| @k(C-)@k(e)
| @k(C-)@k(c) , @k(b) | Insert code for bold text | /input insert \x02
| @k(C-)@k(c) , @k(c) | Insert code for colored text | /input insert \x03
@@ -433,9 +433,9 @@ Keys for command line
| @k(C-)@k(c) , @k(o) | Insert code for color reset | /input insert \x0F
| @k(C-)@k(c) , @k(r) | Insert code for reverse color | /input insert \x12
| @k(C-)@k(c) , @k(u) | Insert code for underlined text | /input insert \x15
-| @k(Del) .2+| Delete next char in command line .2+| /input delete_next_char
+| @k(Del) .2+| Delete next char in command line .2+| /input delete_next_char
| @k(C-)@k(d)
-| @k(Backsp.) .2+| Delete previous char in command line .2+| /input delete_previous_char
+| @k(Backsp.) .2+| Delete previous char in command line .2+| /input delete_previous_char
| @k(C-)@k(h)
| @k(C-)@k(k) | Delete from cursor until end of command line (deleted string is copied to clipboard) | /input delete_end_of_line
| @k(C-)@k(r) | Search for text in buffer history (see <<key_bindings_search_context,keys for search context>>) | /input search_text
@@ -447,7 +447,7 @@ Keys for command line
| @k(A-)@k(_) | Redo last action on command line | /input redo
| @k(Tab) | Complete command or nick (@k(Tab) again: find next completion) | /input complete_next
| @k(S-)@k(Tab) | Without completion: do a partial completion, with pending completion: complete with previous completion | /input complete_previous
-| @k(Enter) .3+| Execute command or send message (in search mode: stop search) .3+| /input return
+| @k(Enter) .3+| Execute command or send message (in search mode: stop search) .3+| /input return
| @k(C-)@k(j)
| @k(C-)@k(m)
| @k(↑) | Call previous command/message (in search mode: search up) | /input history_previous
@@ -463,7 +463,7 @@ Keys for command line
Keys for buffers / windows
^^^^^^^^^^^^^^^^^^^^^^^^^^
-[width="100%",cols="^.^3,.^10,.^5m",options="header"]
+[width="100%",cols="^.^3,.^10,.^5l",options="header"]
|========================================
| Key | Description | Command
| @k(C-)@k(l) | Redraw whole window | /window refresh
@@ -475,23 +475,24 @@ Keys for buffers / windows
| @k(A-)@k(PgDn) | Scroll down a few lines in buffer history | /window scroll_down
| @k(A-)@k(Home) | Scroll to top of buffer | /window scroll_top
| @k(A-)@k(End) | Scroll to bottom of buffer | /window scroll_bottom
-| @k(A-)@k(←) .4+| Switch to previous buffer .4+| /buffer -1
+| @k(A-)@k(←) .4+| Switch to previous buffer .4+| /buffer -1
| @k(A-)@k(↑)
| @k(C-)@k(p)
| @k(F5)
-| @k(A-)@k(→) .4+| Switch to next buffer .4+| /buffer +1
+| @k(A-)@k(→) .4+| Switch to next buffer .4+| /buffer +1
| @k(A-)@k(↓)
| @k(C-)@k(n)
| @k(F6)
| @k(F7) | Switch to previous window | /window -1
| @k(F8) | Switch to next window | /window +1
-| @k(F9) | Scroll buffer's title on the left | /bar scroll title * x-50%
-| @k(F10) | Scroll buffer's title on the right | /bar scroll title * x+50%
-| @k(F11) | Scroll up one page in nicklist | /bar scroll nicklist * y-100%
-| @k(F12) | Scroll down one page in nicklist | /bar scroll nicklist * y+100%
-| @k(A-)@k(F11) | Go to the beginning of nicklist | /bar scroll nicklist * yb
-| @k(A-)@k(F12) | Go to the end of nicklist | /bar scroll nicklist * ye
+| @k(F9) | Scroll buffer's title on the left | /bar scroll title * -30%
+| @k(F10) | Scroll buffer's title on the right | /bar scroll title * +30%
+| @k(F11) | Scroll up one page in nicklist | /bar scroll nicklist * -100%
+| @k(F12) | Scroll down one page in nicklist | /bar scroll nicklist * +100%
+| @k(A-)@k(F11) | Go to the beginning of nicklist | /bar scroll nicklist * b
+| @k(A-)@k(F12) | Go to the end of nicklist | /bar scroll nicklist * e
| @k(A-)@k(a) | Switch to next buffer with activity (with priority: highlight, message, other) | /input jump_smart
+| @k(A-)@k(h) | Clear hotlist (activity notification on other buffers) | /input hotlist_clear
| @k(A-)@k(j) , @k(A-)@k(l) | Switch to last buffer | /input jump_last_buffer
| @k(A-)@k(j) , @k(A-)@k(r) | Switch to IRC raw buffer | /server raw
| @k(A-)@k(j) , @k(A-)@k(s) | Switch to IRC server buffer | /server jump
@@ -509,6 +510,7 @@ Keys for buffers / windows
| @k(A-)@k(z) | Zoom on current window (@k(A-)@k(z) again: restore initial windows state, before zoom) | /window zoom
| @k(A-)@k(<) | Switch to previous buffer in list of visited buffers | /input jump_previously_visited_buffer
| @k(A-)@k(>) | Switch to next buffer in list of visited buffers | /input jump_next_visited_buffer
+| @k(A-)@k(=) | Toggle filters on/off | /filter toggle
|========================================
[[key_bindings_search_context]]
@@ -518,26 +520,71 @@ Keys for "search" context
These keys are used in context "search" (when @k(C-)@k(r) is pressed to search
text in buffer).
-[width="100%",cols="^.^3,.^10,.^5m",options="header"]
+[width="100%",cols="^.^3,.^10,.^5l",options="header"]
|========================================
-| Key | Description | Command
-| @k(C-)@k(r) | Switch exact case for search | /input search_switch_case
-| @k(↑) | Search previous line | /input search_previous
-| @k(↓) | Search next line | /input search_next
-| @k(Enter) .3+| Stop search .3+| /input search_stop
+| Key | Description | Command
+| @k(C-)@k(r) | Switch exact case for search | /input search_switch_case
+| @k(↑) | Search previous line | /input search_previous
+| @k(↓) | Search next line | /input search_next
+| @k(Enter) .3+| Stop search .3+| /input search_stop
| @k(C-)@k(j)
| @k(C-)@k(m)
|========================================
-[[key_bindings_other]]
-Other keys
-^^^^^^^^^^
+[[key_bindings_cursor_context]]
+Keys for "cursor" context
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+These keys are used in context "cursor" (free movement of cursor on screen).
+
+[width="100%",cols="^.^3,^.^3,.^10,.^5l",options="header"]
+|========================================
+| Key | Area | Description | Command
+| @k(↑) | - | Move cursor one line up | /cursor move up
+| @k(↓) | - | Move cursor one line down | /cursor move down
+| @k(←) | - | Move cursor one column left | /cursor move left
+| @k(→) | - | Move cursor one column right | /cursor move right
+| @k(A-)@k(↑) | - | Move cursor one area up | /cursor move area_up
+| @k(A-)@k(↓) | - | Move cursor one area down | /cursor move area_down
+| @k(A-)@k(←) | - | Move cursor one area left | /cursor move area_left
+| @k(A-)@k(→) | - | Move cursor one area right | /cursor move area_right
+| @k(b) | nicklist | Ban nick | /ban ${nick}
+| @k(k) | nicklist | Kick nick | /kick ${nick}
+| @k(K) | nicklist | Kick and ban nick | /kickban ${nick}
+| @k(q) | nicklist | Open query with nick | /query ${nick};/cursor stop
+| @k(w) | nicklist | Do a whois on nick | /whois ${nick}
+| @k(Enter) .3+| - .3+| Stop cursor mode .3+| /cursor stop
+| @k(C-)@k(j)
+| @k(C-)@k(m)
+|========================================
+
+[[key_bindings_mouse_context]]
+Keys for "mouse" context
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+These keys are used in context "mouse", namely when a mouse event occurs.
-[width="100%",cols="^.^3,.^10,.^5m",options="header"]
+[width="100%",cols="^.^3,^.^3,^.^3,.^10,.^5l",options="header"]
|========================================
-| Key | Description | Command
-| @k(A-)@k(h) | Clear hotlist (activity notification on other buffers) | /input hotlist_clear
-| @k(A-)@k(=) | Toggle filters on/off | /filter toggle
+| Button | Gesture | Area | Description | Command
+| ◾◽◽ | left | chat | Switch to previous buffer | /buffer +1
+| ◾◽◽ | right | chat | Switch to next buffer | /buffer +1
+| ◾◽◽ | left (long) | chat | Switch to first buffer | /buffer 1
+| ◾◽◽ | right (long) | chat | Switch to last buffer | /input jump_last_buffer
+| wheel ⇑ | - | chat | Scroll up a few lines in buffer history | /window scroll_up
+| wheel ⇓ | - | chat | Scroll down a few lines in buffer history | /window scroll_down
+| ◾◽◽ | up | nicklist | Scroll up one page in nicklist | /bar scroll nicklist * -100%
+| ◾◽◽ | down | nicklist | Scroll down one page in nicklist | /bar scroll nicklist * +100%
+| ◾◽◽ | up (long) | nicklist | Go to the beginning of nicklist | /bar scroll nicklist * b
+| ◾◽◽ | down (long) | nicklist | Go to the end of nicklist | /bar scroll nicklist * e
+| ◾◽◽ | - | nicklist | Open query with nick | /query ${nick}
+| ◽◽◾ | - | nicklist | Do a whois on nick | /whois ${nick}
+| ◾◽◽ | left | nicklist | Kick nick | /kick ${nick}
+| ◾◽◽ | left (long) | nicklist | Kick and ban nick | /kickban ${nick}
+| ◽◽◾ | left | nicklist | Ban nick | /ban ${nick}
+| wheel ⇑ | - | any bar | Scroll bar by -10% | /bar scroll ${_bar_name} * -10%
+| wheel ⇓ | - | any bar | Scroll bar by +10% | /bar scroll ${_bar_name} * +10%
+| ◽◾◽ | - | anywhere | Start cursor mode at this point | /cursor go ${_x},${_y}
|========================================
[[command_line]]