Skip to content

Allow configuration of the "Alt" modifier to force open link in new tab #100

Description

@Delgan

Problem

Hi!

I'm considering LinkHints as an alternative to Vimium, and I like the approach of "focus on link hinting and do it really well". Thanks for maintaining such extension.

After displaying the links hints (Alt+J by default), you can open them in a separate window by typing the last letter with the Alt modifier:

LinkHints tip

This is an must-have feature for me. However, I have a problem with the Alt modifier is that it conflicts with my browser shortcuts. For example, if I set Alt+H in my browser to switch to the right tab, it'll take precedence and will prevent me from opening a link ending with "H" in a new tab.

I could reduce the set of hint letters to avoid conflicts, but that's sub-optimal.

Suggestion

Would that be possible to configure the modifier?

I would personally like to use "Shift", because I know it won't conflict with any other browser shortcut.
That's also the modifier used by Vimium for the same feature.

I can open a PR if the suggestion seems appropriate.

Debug info

Debug info
{
  "version": "1.3.2",
  "browser": "chrome",
  "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",
  "platformInfo": {
    "arch": "x86-64",
    "nacl_arch": "x86-64",
    "os": "linux"
  },
  "storage.sync": {
    "hints.alt-F": "ExitHintsMode",
    "hints.alt-f": "ExitHintsMode",
    "normal.alt-F": "EnterHintsMode_ManyClick",
    "normal.alt-J": null,
    "normal.alt-f": "EnterHintsMode_Click",
    "normal.alt-g": "EnterHintsMode_BackgroundTab",
    "normal.alt-j": null,
    "normal.alt-k": null,
    "normal.alt-l": null
  },
  "storage.local": {
    "tutorialShown": true
  },
  "language": "en-US",
  "layout": {
    "KeyK": "k",
    "KeyG": "g",
    "Digit2": "é",
    "Digit0": "à",
    "KeyV": "v",
    "KeyA": "q",
    "Backquote": "²",
    "KeyL": "l",
    "IntlBackslash": "<",
    "Quote": "ù",
    "KeyW": "z",
    "Digit8": "_",
    "KeyM": ",",
    "KeyH": "h",
    "Period": ":",
    "Digit7": "è",
    "Digit1": "&",
    "KeyP": "p",
    "KeyD": "d",
    "KeyF": "f",
    "KeyO": "o",
    "KeyQ": "a",
    "KeyC": "c",
    "KeyN": "n",
    "BracketLeft": "^",
    "KeyZ": "w",
    "KeyY": "y",
    "Digit3": "\"",
    "Digit6": "-",
    "Digit5": "(",
    "KeyX": "x",
    "Slash": "!",
    "Backslash": "*",
    "Comma": ";",
    "Minus": ")",
    "Digit4": "'",
    "KeyB": "b",
    "KeyT": "t",
    "Digit9": "ç",
    "KeyS": "s",
    "KeyI": "i",
    "KeyU": "u",
    "Equal": "=",
    "KeyJ": "j",
    "Semicolon": "m",
    "KeyR": "r",
    "BracketRight": "$",
    "KeyE": "e"
  }
}

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions