ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π½ΠΈΠ·ΠΊΠΈΠΌ ΡΠΏΡΠΎΡΠΎΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ Π½Π΅ ΠΎΠΆΠΈΠ΄Π°Π» ΡΠ²ΠΈΠ΄Π΅ΡΡ Π΅Π΅ Π² Π²ΡΠΏΡΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ.
_ ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ @ mrmr1993 Π² https://github.com/philc/vimium/issues/874#issuecomment -63235870_
ΠΡΠΈΠ²Π΅Ρ, Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π²Ρ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ ΠΌΠ½Π΅, ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ? Π― Ρ ΠΎΡΠ΅Π» Π±Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π»ΠΊΠ½ΡΡΡ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ ΡΡΡΠ»ΠΊΡ Π² vimium. Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ!
Π― Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π» Π½Π°Π΄ Vimium ΠΏΠΎΡΡΠΈ Π³ΠΎΠ΄, Π½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ ΡΡΠΎ Π°Π΄ΡΠ΅ΡΠΎΠ²Π°Π½ΠΎ ΠΌΠ½Π΅ ...
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ Chrome, Ρ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ ΡΡΠΎ Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΡΡΠ° Π²Π΅ΡΠ²Ρ Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΠΈΡΠΈΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²Π°ΡΠΊΡΠΈΠΏΡ Π½Π°Π±ΠΎΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠ° click
/ mousedown
/ mouseup
ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π»Ρ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΡΡΠΈ ΠΈΠ»ΠΈ contextmenu
ΡΠΎΠ±ΡΡΠΈΠΉ.
ΠΡΠ»ΠΈ ΡΡΠΎ ΡΠΎ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±Π΅Π³Π»ΠΎΠ³ΠΎ Π²Π·Π³Π»ΡΠ΄Π° Π½Π° ae829c8cf8d2bc507653451d9ad940dc5e47d96f (ΡΠΈΠΊΡΠ°ΡΠΈΡ Π² ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅) ΠΈ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΌΠ°ΡΡΠ΅ΡΠ°, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅:
background_scripts/commands.coffee
Π½Π°ΠΏΡΡΠΌΡΡsimulateContextMenuEvent
, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ΅ ΠΊ lib/dom_utils.coffee
simulateClick
(ΠΊΠ°ΠΊ Π² ΡΡΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΠΉΡΠ΅ Π΅Π³ΠΎ Π² simulateMouseEvent
, Π³Π΄Π΅ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ 0
Π½Π° mouseEvent.initMouseEvent
button == 0
Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ Π² ΡΡΠΎΠΌ ΡΡΠ»ΠΎΠ²Π½ΠΎΠΌcontent_scripts/link_hints.coffee
ΡΡΠ΄ΠΎΠΌ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΡ
ΠΎΠΆΠΈΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ:RIGHT_CLICK =
name: "right-click"
indicator: "Right click"
linkActivator: (link) ->
DomUtils.simulateClick(link, {
altKey: false,
ctrlKey: false,
metaKey: false }, 2)
DomUtils.simulateContextMenuEvent link
RIGHT_CLICK
Π² available_modes
Π² content_scripts/link_hints.coffee
activateModeToTriggerRightClickAction (count) -> <strong i="37">@activateMode</strong> count, mode: RIGHT_CLICK
ΡΡΠ΄ΠΎΠΌ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΡ
ΠΎΠΆΠΈΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ Π² content_scripts/link_hints.coffee
ΠΠ½Π΅ Π½Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΡΠΎΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π½Π΅ Π±ΡΠ΄Ρ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΡΠ²Π΅ΡΠ°ΡΡ, Π½ΠΎ ΡΠ΄Π°ΡΠΈ!
+1 Π₯ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. Π― ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π²Π΅Π±-Π²Π΅ΡΡΠΈΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ vimium Π΄Π»Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ· Π½ΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΅Π»ΡΠΎΠΊ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ (Π³Π»ΡΠ΄Ρ Π½Π° Π²Π°Ρ, Spotify).
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Π― Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π» Π½Π°Π΄ Vimium ΠΏΠΎΡΡΠΈ Π³ΠΎΠ΄, Π½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ ΡΡΠΎ Π°Π΄ΡΠ΅ΡΠΎΠ²Π°Π½ΠΎ ΠΌΠ½Π΅ ...
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ Chrome, Ρ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ ΡΡΠΎ Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΡΡΠ° Π²Π΅ΡΠ²Ρ Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΠΈΡΠΈΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²Π°ΡΠΊΡΠΈΠΏΡ Π½Π°Π±ΠΎΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ°
click
/mousedown
/mouseup
ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π»Ρ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΡΡΠΈ ΠΈΠ»ΠΈcontextmenu
ΡΠΎΠ±ΡΡΠΈΠΉ.ΠΡΠ»ΠΈ ΡΡΠΎ ΡΠΎ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±Π΅Π³Π»ΠΎΠ³ΠΎ Π²Π·Π³Π»ΡΠ΄Π° Π½Π° ae829c8cf8d2bc507653451d9ad940dc5e47d96f (ΡΠΈΠΊΡΠ°ΡΠΈΡ Π² ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅) ΠΈ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΌΠ°ΡΡΠ΅ΡΠ°, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅:
background_scripts/commands.coffee
Π½Π°ΠΏΡΡΠΌΡΡsimulateContextMenuEvent
, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ΅ ΠΊlib/dom_utils.coffee
simulateClick
(ΠΊΠ°ΠΊ Π² ΡΡΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΠΉΡΠ΅ Π΅Π³ΠΎ Π²simulateMouseEvent
, Π³Π΄Π΅ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ0
Π½Π°mouseEvent.initMouseEvent
button == 0
Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ Π² ΡΡΠΎΠΌ ΡΡΠ»ΠΎΠ²Π½ΠΎΠΌcontent_scripts/link_hints.coffee
ΡΡΠ΄ΠΎΠΌ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ:RIGHT_CLICK
Π²available_modes
Π²content_scripts/link_hints.coffee
activateModeToTriggerRightClickAction (count) -> <strong i="37">@activateMode</strong> count, mode: RIGHT_CLICK
ΡΡΠ΄ΠΎΠΌ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ Π²content_scripts/link_hints.coffee
ΠΠ½Π΅ Π½Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΡΠΎΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π½Π΅ Π±ΡΠ΄Ρ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΡΠ²Π΅ΡΠ°ΡΡ, Π½ΠΎ ΡΠ΄Π°ΡΠΈ!