Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Map uniquely #260

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Map uniquely #260

wants to merge 1 commit into from

Conversation

benknoble
Copy link

@benknoble benknoble commented Mar 3, 2019

If a previous mapping using the provided key sequence is defined, the map will fail. silent! prevents this from being a problem (stopping execution or displaying annoying errors).

The long-term effect is to avoid overwriting user mappings in the qf window.

A second solution would be, for each {map} {lhs} {rhs} command, to use

try
  {map} <unique> {lhs} {rhs}
catch /E227/
endtry

which accomplishes the same effect less concisely.

This should obsolete #255 because it allows my mappings to take precedence.

On a final note, I considered something like

execute "{map} {lhs} {rhs}".maparg({lhs}, "n")

which basically makes the mapping do {rhs} and followed by whatever it originally did, but this has the side effect of potentially creating wonky mappings (e.g., :cclose<CR>:q<CR>) which are not intended. I thus rejected this idea.

If a previous mapping using the provided key sequence is defined, the
map will fail. silent! prevents this from being a problem (stopping
execution or displaying annoying errors).

The long-term effect is to avoid overwriting user mappings in the qf
window.

A second solution would be, for each `{map} {lhs} {rhs}` command, to use

    try
      {map} <unique> {lhs} {rhs}
    catch /E227/
    endtry

which accomplishes the same effect less concisely.
@benknoble
Copy link
Author

Tagging @ches when you get a chance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant