Copy the key settings of your MX Master3S and bow to 🙇 ♂ ️
by Poster
Apr 27, 2025
9
I have used 3S for two days and still can't get used to it. I can't remember the key settings for a short time. I judge that my personal settings are unreasonable
In addition, the accuracy is not accurate, it is always a short segment away from where I want to point
Replies
-
Anonymous9702 Apr 27, 2025Side keys Ctrl C and Ctrl V Thumb key Enter Then use it with strokesplus
-
Anonymous9847 Apr 27, 2025If you are not used to it, change it Good hardware basically knows it works as soon as you get started. If you don't feel comfortable for 2 days, that is, you have chosen the wrong model
-
Anonymous9703 Apr 27, 2025https://imgur.la/images/2025/04/27/Screen-Shot-2025-04-27-at-09.29.12.png I use 3, mainly changing the custom buttons at the thumb position, everything else is by default
-
Anonymous5442 Apr 27, 2025Mine is set with Mac Mouse Fix, the settings are as follows https://i.imgur.com/hcJtHuo.png
-
Anonymous9704 Apr 27, 2025https://i.imgur.com/HO00NdW.png Tie all the daily shortcut keys to the mouse The 3x4 combination is very exaggerated, but I already have muscle memory after I'm used to it
-
Anonymous2743 Apr 27, 2025bettermouse
-
Anonymous893 Apr 27, 2025I am implemented by hammerspoon ``` --Create a logger Locallogger = hs.logger.new ('MouseShortcuts', 'debug ') --Create a mouse event listener --Logitech Anywhere 2S Key Mapping local mouseButtons = { left = 0, right = 1, back = 3,--rear side key forward = 4,--front side key Wheel _ button = 2--The function key behind the wheel } --Declaring listener variables local mouseWatcher = nil local scrollWatcher = nil --Define shortcut behavior local function handleMouseButton (button, modifiers) --Function key behind the scroll wheel = Mission Control if button = = mouseButtons.wheel _ button then hs.task.new ("/usr/bin/open", nil, {"-a", "Mission Control"}): start () return true end --Front side key = return if button = = mouseButtons.forward then hs.eventtap.keyStroke ({"cmd"}, "[") return true end --Back side key = forward if button = = mouseButtons.back then hs.eventtap.keyStroke ({"cmd"}, "]") return true end return false end --Processing wheel lateral rolling local function handleScrollWheel (event) --Use axis2 to listen for horizontal scrolling local dx = event: getProperty (hs.eventtap.event.properties ['scrollWheelEventDeltaAxis2 ']) --Output wheel event log if dx ~ = 0 then logger.i (string.format ("Wheel lateral toggle-direction value:% d", dx)) end --If it's not horizontal scrolling, return directly if dx = = 0 then return false end --Trigger switching directly according to direction if dx < 0 then logger.i ("Switch to left desktop") hs.task.new ("/usr/bin/osascript", nil, {"-e", 'tell application "System Events" to keycode 123 using control down '}): start () return true elseif dx > 0 then logger.i ("Switch to right desktop") hs.task.new ("/usr/bin/osascript", nil, {"-e", 'tell application "System Events" to keycode 124 using control down '}): start () return true end return false end --A function to create a listener local function createWatchers () --Create mouse button event listening mouseWatcher = hs.eventtap.new ({ hs.eventtap.event.types.otherMouseDown, hs.eventtap.event.types.otherMouseUp, hs.eventtap.event.types.leftMouseDown, hs.eventtap.event.types.leftMouseUp, hs.eventtap.event.types.rightMouseDown, hs.eventtap.event.types.rightMouseUp, hs.eventtap.event.types.otherMouseDragged }, function (event) local eventType = event: getType () local button = event: getProperty (hs.eventtap.event.properties.mouseEventButtonNumber) local modifiers = event: getFlags () --Convert modifier keys to array form local modArray = {} for k, v in pairs (modifiers) do table.insert (modArray, k) end --Get the readable name of the event type local eventNames = { [hs.eventtap.event.types.otherMouseDown] = "other key presses", [hs.eventtap.event.types.otherMouseUp] = "other key release", [hs.eventtap.event.types.leftMouseDown] = "left button press", [hs.eventtap.event.types.leftMouseUp] = "left button release", [hs.eventtap.event.types.rightMouseDown] = "right-click", [hs.eventtap.event.types.rightMouseUp] = "Right Click Release", [hs.eventtap.event.types.otherMouseDragged] = "other key drag" } --Output mouse event log --logger.i (string.format ("Mouse Event-Type:% s, Button:% d, Modifier:% s", --eventNames [eventType] or eventType, --button or 0 --hs.inspect (modArray)) --Only perform action on press events if eventType = = hs.eventtap.event.types.otherMouseDown then return handleMouseButton (button, modArray) end return false end) --Create scroll wheel event monitoring scrollWatcher = hs.eventtap.new ({ hs.eventtap.event.types.scrollWheel }, handleScrollWheel) --Start listener mouseWatcher: start () scrollWatcher: start () end --Function to check and restart the listener local function checkWatchers if not mouseWatcher: isEnabled () or not scrollWatcher: isEnabled () then logger.w ("Listener stopped, try to restart...") --Stop existing listeners if mouseWatcher then mouseWatcher: stop () end if scrollWatcher then scrollWatcher: stop () end --Recreate and start the listener createWatchers () logger.i ("Listener restarted") end end --Create a timer to periodically check listener status local watcherChecker = hs.timer.new (5, checkWatchers) watcherChecker: start () --Initialize listener createWatchers () --Add a shortcut to manually restart the listener hs.hotkey.bind ({"cmd", "alt"}, "m", function () logger.i ("Manually restart mouse listener...") createWatchers () logger.i ("Mouse listener restarted") end) logger.i ("Mouse shortcut module loaded") ```
-
Poster Apr 27, 2025Thank you for your replies, I feel that this mouse is not suitable for me... nerve-racking
-
Anonymous9705 Apr 27, 2025https://i.imgur.com/TnMFfft.png