mirage
mirage copied to clipboard
Vim-like bindings
Since this program is quite keyboard focused, a vim-like binding mode would be neat. I'm talking more about an insert mode for messages, normal mode lets you navigate with eaiser keybindings, not asking for vim bindings while editing messages. (mostly because pressing alt and ctrl for every command is uncomfortable) For an example of what im talking about, see qutebrowser.
I would love this honestly. My fingers are on the home row keys all the time and I use vim all the time.
There's some configuration for changing key functionality, but I do think it is quite limited a little bit. And, how do I make sure that when I hit j
or k
or other keys, it doesn't get inputted in my draft message-to-send? That's the part idk. I don't know qT or python that well to go in there and make a pull request, but if i did i would.
This client is the best one i've used so far, it's the least clunkiest lol
here's key config settings ~/.config/mirage/settings.json
"keys": {
"accountSettings": [
"Alt+A"
],
"addNewAccount": [
"Alt+Shift+A"
],
"addNewChat": [
"Alt+C"
],
"clearRoomFilter": [
"Alt+Shift+F"
],
"clearRoomMessages": [
"Ctrl+L"
],
"debugFocusedMessage": [
"Ctrl+Shift+D"
],
"focusAccountAtIndex": {
"01": "Ctrl+1",
"02": "Ctrl+2",
"03": "Ctrl+3",
"04": "Ctrl+4",
"05": "Ctrl+5",
"06": "Ctrl+6",
"07": "Ctrl+7",
"08": "Ctrl+8",
"09": "Ctrl+9",
"10": "Ctrl+0"
},
"focusNextMessage": [
"Ctrl+Down",
"Ctrl+J"
],
"focusPreviousMessage": [
"Ctrl+Up",
"Ctrl+K"
],
"focusRoomAtIndex": {
"01": "Alt+1",
"02": "Alt+2",
"03": "Alt+3",
"04": "Alt+4",
"05": "Alt+5",
"06": "Alt+6",
"07": "Alt+7",
"08": "Alt+8",
"09": "Alt+9",
"10": "Alt+0"
},
"forgetRoom": [
"Alt+Shift+Escape"
],
"goToLastPage": [
"Ctrl+Tab"
],
"goToNextAccount": [
"Alt+N"
],
"goToNextMentionedRoom": [
"Alt+M"
],
"goToNextRoom": [
"Alt+Shift+Down",
"Alt+Shift+J"
],
"goToNextUnreadRoom": [
"Alt+U"
],
"goToPreviousAccount": [
"Alt+Shift+N"
],
"goToPreviousMentionedRoom": [
"Alt+Shift+M"
],
"goToPreviousRoom": [
"Alt+Shift+Up",
"Alt+Shift+K"
],
"goToPreviousUnreadRoom": [
"Alt+Shift+U"
],
"inviteToRoom": [
"Alt+I"
],
"leaveRoom": [
"Alt+Escape"
],
"nextTab": [
"Alt+Shift+Right",
"Alt+Shift+L"
],
"openMessagesLinks": [
"Ctrl+O"
],
"openPresenceMenu": [
"Alt+P"
],
"previousTab": [
"Alt+Shift+Left",
"Alt+Shift+H"
],
"refreshDevices": [
"Alt+R",
"F5"
],
"reloadConfig": [
"Alt+Shift+R"
],
"removeFocusedOrSelectedMessages": [
"Ctrl+R",
"Alt+Del"
],
"replyToFocusedOrLastMessage": [
"Ctrl+Q"
],
"scrollDown": [
"Alt+Down",
"Alt+J"
],
"scrollPageDown": [
"Alt+Ctrl+Down",
"Alt+Ctrl+J",
"PgDown"
],
"scrollPageUp": [
"Alt+Ctrl+Up",
"Alt+Ctrl+K",
"PgUp"
],
"scrollToBottom": [
"Alt+Ctrl+Shift+Down",
"Alt+Ctrl+Shift+J",
"End"
],
"scrollToTop": [
"Alt+Ctrl+Shift+Up",
"Alt+Ctrl+Shift+K",
"Home"
],
"scrollUp": [
"Alt+Up",
"Alt+K"
],
"selectMessagesUntilHere": [
"Ctrl+Shift+Space"
],
"sendFile": [
"Alt+S"
],
"sendFileFromPathInClipboard": [
"Alt+Shift+S"
],
"signOutCheckedOrAllDevices": [
"Alt+S",
"Delete"
],
"startPythonDebugger": [
"Alt+Shift+D"
],
"toggleCollapseAccount": [
"Alt+O"
],
"toggleCompactMode": [
"Ctrl+Alt+C"
],
"toggleDebugConsole": [
"Alt+Shift+C",
"F1"
],
"toggleFocusMainPane": [
"Alt+F"
],
"toggleFocusRoomPane": [
"Alt+R"
],
"toggleHideRoomPane": [
"Ctrl+Alt+R"
],
"togglePresenceInvisible": [
"Alt+Ctrl+I"
],
"togglePresenceOffline": [
"Alt+Ctrl+O"
],
"togglePresenceUnavailable": [
"Alt+Ctrl+U",
"Alt+Ctrl+A"
],
"toggleSelectMessage": [
"Ctrl+Space"
],
"unfocusOrDeselectAllMessages": [
"Ctrl+D"
],
"zoomIn": [
"Ctrl++"
],
"zoomOut": [
"Ctrl+-"
],
"zoomReset": [
"Ctrl+="
]
},