Vscode: Ermöglichen Sie die Anpassung von Mauskürzeln

Erstellt am 18. Feb. 2016  ·  204Kommentare  ·  Quelle: microsoft/vscode

Einige Benutzer möchten nicht nur reine Tastaturkürzel, sondern auch Maus + Modifikator-Tastenkombinationen anpassen können. Diese sind derzeit fest codiert, z. B. Alt + Klicken, um eine Auswahl hinzuzufügen.

Weitere Informationen finden Sie unter

editor-core feature-request keybindings

Hilfreichster Kommentar

+1

Ich würde gerne shift+cmd+leftMouseButton für Peek Definition machen, wäre eine perfekte Kombination für mich.

Alle 204 Kommentare

+1

Ich würde gerne shift+cmd+leftMouseButton für Peek Definition machen, wäre eine perfekte Kombination für mich.

+1

Ich habe eine interessante Auswirkung auf die Leistung festgestellt, die sich aus den aktuellen Standardeinstellungen / mangelnder Konfigurierbarkeit ergibt. Betrachten Sie den fest codierten Modifikator, der der Funktionalität "Peek Definition" zugeordnet ist. Wenn ein Plugin einige Arbeit leisten muss, um die Definition bereitzustellen, fragt VSCode Plugins höchstwahrscheinlich nach Definitionsinformationen, auch wenn der Benutzer nicht beabsichtigt, diese zu erhalten. Wie ich in https://github.com/Microsoft/vscode-go/issues/257#issuecomment -198993769 beschreibe:

Wenn sich der Cursor beispielsweise noch im Editorbereich befindet, wird durch Drücken von ⌘ sofort der GoDefinitionProvider aufgerufen, auch wenn ⌘ sofort in einem Akkord für einen anderen Befehl verwendet wird (z. B. Kopieren, Einfügen, Öffnen der Befehlspalette usw.).

Dies bedeutet, dass Aufrufe von godef ausgeführt werden, wenn der Benutzer eine sehr häufige Taste drückt, ohne die Absicht zu haben, kontextbezogene Hover-Informationen abzurufen.

Bei Verwendung von vscode-go bedeutet dies einen erheblichen externen Energieverbrauch, der fast vollständig vermieden werden könnte, indem Modifikatorschlüsseleinstellungen für die "Peek-Definition" bereitgestellt werden. Die Funktion wäre nicht nur praktisch und würde eine bessere Integration der GUI des Host-Betriebssystems ermöglichen, sondern VSCode wäre auch für die allgemeine Verwendung CPU-effizienter.

+1 - Atom, Sublime und jsbin.com (vermutlich auch andere) ermöglichen die Erstellung mehrerer Cursor mit ⌘ + Klick (zumindest auf einem Mac). Es wäre gut, wenn Sie gezwungen wären, so wenige neue Verknüpfungen wie möglich zu lernen, wenn Sie zu einem neuen Editor wechseln.

Ich vermeide es nur, alt + click zu verwenden, um Cursor hinzuzufügen, bis ich mich anpassen kann, um Windows und Linux konsistent zu machen. Ich möchte kein Muskelgedächtnis aufbauen, wenn es sich später ändern wird.

@alexandrudima irgendwelche Gedanken darüber, wann du dazu kommen könntest? Es blockiert das Hinzufügen von Cursorn per Maus unter Linux . Ich kann es versuchen, wenn Sie einen hochrangigen Ansatz wählen.

+1 Ich habe gerade VS Code entdeckt und ich liebe ihn, aber als langjähriger Sublime Text-Benutzer unter Linux fehlt mir die Strg + Klick-Fähigkeit. Würde gerne in der Lage sein, Mauskürzel anzupassen.

Von @ChristopherHaws in # 6853

  • VSCode-Version: 1.1.1
  • Betriebssystemversion: Windows 10 Pro

In Visual Studio (Vollversion) deaktiviere ich normalerweise die Strg + LeftMouseClick-Funktion zur Definition. Ich persönlich bevorzuge es, wenn Strg + LeftMouseClick das gesamte Wort unter meinem Mauszeiger auswählt.

Soweit ich sehen kann, sind Mausereignisse derzeit nicht konfigurierbar und können (nach meinem besten Wissen) auch nicht mit Erweiterungen überschrieben werden. Es wäre wirklich schön, eine Konfigurationsdatei für die Mauszuordnung zu haben. Sublime Text hat dies (obwohl es eine Art verstecktes Feature ist, das nicht über die Benutzeroberfläche verfügbar gemacht wird). Nur als Beispiel sieht meine großartige Text-Mousemap-Datei folgendermaßen aus:

[
    {
        "button": "button1", "count": 1, "modifiers": ["ctrl"],
        "press_command": "drag_select",
        "press_args": {"by": "words"}
    }
]

+1 zur Anpassung.
Ich möchte STRG verwenden, um anstelle von Alt eine Mehrfachauswahl zu treffen.

Ich möchte darauf hinweisen, dass das Hinzufügen von Cursorn mit der Maus unter Linux nicht möglich ist, da alt+click bereits zum Verschieben des Fensters verwendet wird (zumindest bei KDE und XFCE) und daher das alt+click Verhalten erreicht den Code-Editor überhaupt nicht. Daher würde ich auch vorschlagen, die Standardbindung in etwas zu ändern, das nicht mit Schlüsselkombinationen der wichtigsten Fenstermanager in Konflikt steht. Ctrl+Alt+click könnte funktionieren,

Ich möchte darauf hinweisen, dass das Hinzufügen von Cursorn mit der Maus unter Linux nicht möglich ist, da Alt + Click bereits zum Verschieben des Fensters verwendet wird (zumindest bei KDE und XFCE) und daher das Alt + Click-Verhalten das nicht erreicht Code-Editor überhaupt. Daher würde ich auch vorschlagen, die Standardbindung in etwas zu ändern, das nicht mit Schlüsselkombinationen der wichtigsten Fenstermanager in Konflikt steht. Strg + Alt + Klicken könnte funktionieren,

Bitte ändern Sie nicht die Standardeinstellung. Die Verwendung von Alt zum Verschieben von Windows ist eine schlechte Standardeinstellung, z. B. hat Inkscape auch Probleme damit. Die Windows-Taste ist hierfür viel besser geeignet, da sie häufiger für Verknüpfungen zum "Fenstermanager" verwendet wird, z. B. unter Windows. Darüber hinaus macht auch der Name mehr Sinn: "Windows-Taste" -> "Fenster verschieben". Es ist auch die Standardeinstellung von GNOME.

IIRC Die Wahl, Alt als Standard zu verwenden, war ebenfalls eine Problemumgehung, da der Windows-Schlüssel nicht als echter "Meta" -Schlüssel fungierte. Als ich das letzte Mal nachgesehen habe, konnte ich den Windows-Schlüssel immer noch nicht zuordnen, um das Menü in XFCE zu öffnen und gleichzeitig Fenster damit zu verschieben.

@jhasse Ok, ich denke, dass Fenstermanager-Sachen alles mit dem Windows-Schlüsselmodifikator gemacht werden sollten, ist ein ziemlich gutes Argument. Aber was meinst du mit "Als ich das letzte Mal nachgesehen habe, konnte ich den Windows-Schlüssel immer noch nicht zuordnen, um das Menü in XFCE zu öffnen und gleichzeitig Fenster damit zu verschieben."? Möchten Sie, dass der Windows-Schlüssel gleichzeitig ein Modifikator und ein Nicht-Modifikator ist?

Aber was meinst du mit "Als ich das letzte Mal nachgesehen habe, konnte ich den Windows-Schlüssel immer noch nicht zuordnen, um das Menü in XFCE zu öffnen und gleichzeitig Fenster damit zu verschieben."? Möchten Sie, dass der Windows-Schlüssel gleichzeitig ein Modifikator und ein Nicht-Modifikator ist?

Ich möchte das Menü durch Drücken der Windows-Taste (nur) öffnen, während ich weiterhin Tastenkombinationen damit binden und Fenster verschieben kann.

Kommen wir aber nicht zum Thema. In diesem Problem geht es nur darum, Anpassungen zuzulassen, gegen die - ich nehme an - niemand Einwände erhebt.

Ok, solange wir uns hier alle einig sind, dass es schlecht ist, Mauskürzel nicht anpassen zu können, ist alles in Ordnung. Ich könnte trotzdem sagen, dass ich im Moment überhaupt keinen VS-Code mehr verwende und dieses Problem damit zusammenhängt.

Es gibt eine Möglichkeit, alt + Maus für Fenstermodifikatoren mit xfwm4-tweaks-settings zu überschreiben.
screenshot_2016-10-21_09-30-43

Aber worauf @jhasse hinweist , ist, was passieren sollte, wenn Sie es bereits getan habengebunden, um das xfce-Menü zu öffnen. Wenn Sie nur eine Tastenkombination für die Windows-Taste Super L wird nach dem Drücken nur dieses Ereignis ausgelöst und sonst nichts. Derzeit ist bei xfce-Standardeinstellungen nichts an Super L gebunden, und ctrl+esc ist an den Fenstermenübefehl xfce4-popup-whiskermenu gebunden.

Ich denke immer noch, dass es eine konfigurierbare Möglichkeit geben sollte, Mausbindungen in vscode direkt zu adressieren.

Im Moment besteht eine Problemumgehung darin, den Eingabehilfenschlüssel des Fenstermanagers wie im obigen Bild von alt auf super zu ändern.

@anchepiece Ich werde weder meine Fenstermanagereinstellungen ändern, noch denke ich, dass dies kaum als angemessene Problemumgehung angesehen werden kann. Dies als angemessene Problemumgehung zu betrachten, ist eine Beleidigung für alle Menschen, die sich jahrelang daran gewöhnt haben, mit diesem Setup zu arbeiten. Ich werde meine Systemverknüpfungen nicht ändern, nur weil ein dummer Texteditor in Konflikt mit diesen Schlüsseln gerät, vermeide ich lieber die Verwendung des Texteditors.

@ krux02 Stimme

Dies reparierte mein Xenial.
gsettings set org.gnome.desktop.wm.preferences mouse-button-modifier "<Super>"

Ich bin nicht sicher, wann diese Funktion hinzugefügt wurde, aber ich konnte Strg + Linksklick das Wort unter meinem Cursor auswählen lassen, anstatt zur Definition zu wechseln.

[
    { "key": "ctrl+[mouse button]",            "command": "cursorWordLeft",
                                               "when": "editorTextFocus" },
]

@ChristopherHaws eine Idee, wo die [mouse button] Definitionen deklariert sind? Oder wissen Sie vielleicht, was die Bindung für einen mittleren Mausklick ist? Ich würde gerne versuchen, die Spaltenauswahl auf mittleren Klick + Ziehen einzustellen.

+1

+1 Bitte ordnen Sie als Problemumgehung mindestens 'Mehrfachcursor' einer zusätzlichen Tastenkarte zu, bis etwas aussortiert ist. Dies wurde im Februar eröffnet und die meisten Leute brauchen wahrscheinlich nur eine Möglichkeit, mehrere Cursor unter Linux zu erstellen.

+1

Bitte fügen Sie eine Reaktion auf dieses Problem hinzu, anstatt "+1" zu posten.

Dies wurde im Februar eröffnet und die meisten Leute brauchen wahrscheinlich nur eine Möglichkeit, mehrere Cursor unter Linux zu erstellen.

Mehrere Cursor funktionieren bereits gut mit einigen DEs (wie GNOME 3) unter Linux. Weitere Informationen finden Sie unter https://github.com/Microsoft/vscode/issues/3130#issuecomment -255382002.

@jhasse Es tut mir leid, mich zu wiederholen, aber das ist eine sehr schlechte Problemumgehung, die überhaupt nicht als ok-ische Lösung angesehen werden kann. Es könnte nur als vorübergehende Lösung angesehen werden, um zu zeigen, dass theoretisch mehrere Cursor technisch möglich sind, aber nicht für etwas, das Sie in der Praxis jedem empfehlen könnten. Es tut mir wirklich leid, so zu reagieren, und es könnte ärgerlich sein: Entweder Sie sind ehrlich und sagen, es ist Ihnen egal genug, weil Sie nicht glauben, dass es genug Leute gibt, die von der Menge an Arbeit profitieren würden, oder Sie beheben es richtig. Verweisen Sie jedoch nicht auf solche Problemumgehungen und tun Sie so, als wäre sie behoben, wenn dies nicht der Fall ist. Ich bezahle nicht für dieses Produkt, also bin ich in Ordnung, wenn Sie sagen, dass es Ihnen egal ist, aber es ist mir wichtig, wenn Sie sich selbst belügen, dass dies kein wirkliches Problem ist.

@jhasse Als ich das letzte Mal nachgesehen habe, werden durch Hinzufügen einer Reaktion keine Aktualisierungen des Problems im Abschnitt "Teilnehmend" der GitHub-Benachrichtigungen angezeigt. Das Posten eines + 1-Kommentars diente mir zwei Zwecken.

@ krux02 Sie haben Recht, eine Problemumgehung ist nur eine vorübergehende Lösung. Ich wollte nur darauf hinweisen, dass die Aussage "Mehrere Cursor funktionieren unter Linux nicht" nicht korrekt ist. Es ist eher so, dass mehrere Cursor mit einigen DEs nicht funktionieren.
Wenn Sie unter Windows global die Alt-Taste drücken, funktioniert das Hinzufügen mehrerer Cursor mit der Maus auch dort nicht.

@sharwell Was ist mit dem Abonnieren des Problems zusätzlich zum Hinzufügen einer Reaktion?

@jhasse Durch Abonnieren wird die Benachrichtigung hier in die oberste Kategorie eingeordnet. Antworten bringt es in die unterste Kategorie:

image

Ich hatte keine der Problemumgehungen, die ich recherchiert habe, und ich wollte wirklich, dass sie es tun. Ich bin auf Linux Mint Sarah mit Cinnamon. Ehrlich gesagt ist die schnellste Problemumgehung, einfach zu meinem Atom-Setup zurückzukehren. Ich muss codieren, nicht mit Desktop-Einstellungen aufbocken und die Daumen drücken.

Ich habe eine schreckliche Problemumgehung für dieses Problem gefunden (zumindest für Windows). Sie können AutoHotKey installieren und das folgende Skript verwenden, mit dem nur Ctrl+Click und Alt+Click umgeschaltet werden .

; Switches the Left-Control-Click and Alt-Control-Click shortcut for VS Code.
; Setting for allowing dynamic titles
SetTitleMatchMode, 2

#If WinActive(" - Visual Studio Code")
  ^LButton::Send !{Click}
  !LButton::Send ^{Click}
  Return
#If

Ich bin damit einverstanden, dass Mausverknüpfungen in VSCode integriert werden sollten. Ich verlasse mich auch täglich darauf. Die Lösung, die ich gefunden habe, funktioniert nicht, wenn Sie auf Wörter mit einer verknüpften Definition klicken.

+1 für diejenigen, die von sublime / atom kommen und cmd + click verwenden möchten, wenn mehrere Cursor hinzugefügt werden, oder cmd + drag zum Ziehen von Cursorn

+1 das wäre super !!!

+1 Miss cmd + Klick für neue Cursor von sublime - lieber nicht Option + Klick verwenden

+1, damit ich die Maustasten 3 und 4 an workbench.action.navigate * binden kann

@ChristopherHaws das [mouse button] scheint heutzutage nicht zu funktionieren. Wie lautet die genaue Syntax des Befehls? https://github.com/Microsoft/vscode/issues/3130#issuecomment -263780725

@vferko Es scheint, dass diese

+1

Die Unfähigkeit, Maus + Modifikator-Steuerelemente neu zu binden, ist für mich ein Deal-Breaker. Ich kann vscode weder verwenden noch Personen empfehlen, die noch keine VStudio-Benutzer sind. Dies ist sehr unglücklich, da ich das schnelle und solide Gefühl von vscode wirklich mag. Bis ich dieses Problem fand, war ich vollständig verkauft und bereit, mit der Umstellung auf vscode zu beginnen.

Die Neuzuordnung des Muskelgedächtnisses für die grundlegendsten Plattformmodifikatoren ist zu erträglich. Ich werde bei Atom bleiben, bis dies behoben ist. Auf einem Mac: cmd-Klick fügt nicht zusammenhängende Auswahlen hinzu; Wenn Sie bei gedrückter Alt-Taste auf eine Auswahl ziehen, wird diese Auswahl kopiert. Andernfalls werden bei gedrückter Alt-Taste rechteckige Auswahlen erstellt. Hinweis: Wenn Sie rechteckige Auswahlen erstellen, wird die Auswahl standardmäßig NICHT von der vorherigen Einfügemarke aus erweitert. Diese Funktion sollte hinter einem Benutzereinstellungsflag platziert werden.

Vielen Dank für all Ihre bisherigen Arbeiten, vscode ist wirklich nett! Ich werde dieses Problem abonnieren und mit Warp-Geschwindigkeit zurückkehren, wenn es erfolgreich behoben wurde.

+1, ich verwende vscode in Arch Linux (Openbox). Ich kann die Mausnavigationsfunktion (vorwärts / rückwärts) nicht verwenden, aber diese Funktion funktioniert in Chrome und PCManFM File Manager einwandfrei. Ich denke, vielleicht ist die Tastenbelegung in vscode anders. Wenn ich also die Schaltflächenaktion neu zuordnen und ihr Verhalten manuell ändern kann, kann ich das Problem beheben. Es wäre das Beste.

Ich verwende vscode in Arch Linux (Openbox). Ich kann die Mausnavigationsfunktion (vorwärts / rückwärts) nicht verwenden, aber diese Funktion funktioniert in Chrome und im PCManFM-Dateimanager einwandfrei. Ich denke, vielleicht ist die Tastenbelegung in vscode anders. Wenn ich also die Schaltflächenaktion neu zuordnen und ihr Verhalten manuell ändern kann, ist dies die beste.

Das Beste wäre, wenn es sofort klappen würde, meinst du nicht auch?

Bitte abonnieren Sie dieses Problem, um es in der Warteschlange zu platzieren. Danke

: +1:

Ich möchte auch wirklich die Option, Mausklickereignisse neu zu binden ... dieser Optionsklick für mehrere Cursor steht in Konflikt mit all meiner anderen Software ...

Wenn es ein einfacheres Unterproblem ist, nur die Vorwärts- / Rückwärts-Maustasten an workbench.action.navigate ... zu binden, wäre es großartig, dies zunächst als Funktion zu haben

+1 - Wird zur Steuerung des Klickens verwendet, um ein Wort auszuwählen, das für mich immer ärgerlicher wird.

Das würde ich auch gerne sehen. Ich möchte "Gehe zur Definition" durch "Gehe zur Typdefinition" bei cmd + Klick ersetzen

Ein anderer Kandidat kann die gerade eingeführte Wischgeste über https://github.com/Microsoft/vscode/issues/4803 anpassen

+1, damit ich die Maustasten 3 und 4 an workbench.action.navigate * binden kann

Ich glaube nicht, dass ich mich für VSCode entscheiden werde, bis dieses Problem behoben ist.

Keine Ahnung, ob dies verwandt ist, aber ich möchte wirklich Strg + Klicken auf Links deaktivieren ... Wenn Sie derzeit Strg + Klicken auf einen Link in einer HTML-Datei klicken, wird der Link in Ihrem Standardbrowser geöffnet ... diese "Funktion" ist Wirklich ein Ärgernis für mich, ich möchte immer einen Link mit Strg + C kopieren und wenn ich es schnell mache, habe ich bereits Strg gedrückt, bevor ich auf den Link klicke, um ihn auszuwählen, und dann erscheint mein Browser und die Tragödie beginnt :(

+1 Wenn Sie eine Linux-VM auf meinem Mac ausführen, können Sie die Mausverknüpfungen nicht so zuordnen, dass sie denen außerhalb der VM ähneln

+1 Wesentliche Funktion

Ich brauche das, um auf change.org zu gehen? :Freude:

Ändern Sie die Drag-Fenster mit Alt für Kubuntu (16.04):
Einstellungen -> Systemeinstellungen -> Fensterverwaltung -> Fensterverhalten -> Fensteraktionen -> Modifikatortaste -> Wechsel zu "Meta"

Die Verwendung der Cmd-Taste zum Hinzufügen mehrerer Auswahlen funktioniert jetzt für Mac!

Dank an alle !!!

eh @ ajoslin103 das war eigentlich nicht die problemes .

Wir sollten versuchen, einen Weg zu finden, um die Interaktion anzupassen, anstatt einen fest codierten Standard zu erhalten.

Zum Beispiel wäre cmd + click für Peek wie bei den meisten anderen Editoren sehr nützlich.

Die Reduzierung der mentalen Steuern ist das, was wir mit Tastaturkürzeln anstreben sollten!

Obwohl ich Ihnen im Geiste vollkommen zustimme, war dieses einzigartige Problem das einzige, was sich von vsCode fernhielt, siehe diese vielen Monde - und es dauerte so lange, bis das Problem gefunden wurde, das in einem Problem am Ende einer Kette (hinter a) eingeschlossen war Tür markiert: Vorsicht vor dem Leoparden!)

Ich bin damit einverstanden, dass eine Möglichkeit zum Anpassen der Maus + Tasten-Interaktion fabelhaft wäre. Ich bin immer noch frustriert über das Verhalten der Auswahlerweiterung.

Aber zumindest bin ich endlich da und suche mich langsam durch den Wald der Erweiterungen und Optionen, um zu der [fast] „gedankenlosen Bearbeitung“ zurückzukehren, die ich mit meinem vorherigen Editor hatte.

Bitte verzeihen Sie meine Tunnelvision

Wie geht das?
Wann können wir mit einer Veröffentlichung dieser Funktion rechnen?
Ich würde gerne eine Verknüpfung wie Strg + Maj + Maus für die Blockauswahl in Alt + Maus ändern!

+1, möchte wirklich die Bindung "Strg + Klick => Zur Definition gehen" entfernen.

Ich möchte die Strg-Taste loswerden, indem ich auch zur Definition gehe und stattdessen das ganze Wort auswähle. Dies ist eine Funktion, die ich ständig in vs verwendet habe und die ich jeden Tag in vs-Code verwenden würde.

wie ist das noch nicht raus ....?

@lopugit Dies ist ein Open-Source-Projekt. Sie können

Als jemand, der selbst an einer Reihe von Projekten beteiligt ist, hilft es überhaupt nicht, wenn Leute Dinge wie "Warum ist das nicht in der Bibliothek?" "Warum gibt es das nicht? Es wird gebraucht!" usw.

Das Bereitstellen von konstruktivem Feedback zusammen mit +1 für das Grundproblem trägt zur Entwicklung bei.

Seien Sie nicht berechtigt, der Quellcode ist offen, ziehen Sie Ihre Tastatur heraus und senden Sie eine PR, wenn es so dringend ist.

Für die Aufzeichnung bin ich alle für diese Funktion, es ist nur ärgerlich zu sehen, dass Leute Funktionen für freie Software verlangen.

@oshalygin

Es tut mir leid, dass ich mit dem Titel "Es ist jetzt 7 Uhr morgens" geklungen habe. Ich war gerade die ganze Nacht wach und habe an meinen eigenen Projekten gearbeitet. Ich wusste nicht, dass dies Open Source ist. Ich dachte, es wäre ein Microsoft-Projekt.

Mein Kommentar kommt nur aus der Perspektive, Herrgott, Strg + Klick ist keine bearbeitbare Verknüpfung? Fühlst du dich?

Ich arbeite an ein paar Dingen, um zur Open-Source-Community beizutragen. Ich wollte hier nur meine Gedanken zu dieser Funktion hinzufügen. Jeder Kommentar kann als guter Diskurs angesehen werden.

Idk, ich bin super müde, Frieden;)

@lopugit Nun, da wir hier auf GitHub sind, ist dies Open Source. 😅

@ Tyriar Ich stelle fest, dass dies nach Ihrer Kenntnis als zurückgeblieben aufgeführt ist. Gibt es einen Zweig, in dem jemand damit begonnen hat, "Maus" -Bindungen als Anpassungsoptionen hinzuzufügen? Es scheint, dass die Konversation für diese Funktion schon eine Weile andauert, daher gehe ich davon aus, dass es sich um eine ziemlich komplexe Änderung handelt.

Kein Zweig AFAIK. Es hat eine kleine Bewegung dazu gegeben; Mit der Einstellung editor.multiCursorModifier können Sie den Multi-Cursor austauschen und den Definitions- / Link-Modifikatoren folgen. Es gibt keine keybinding.json-ähnliche Datei für Mausbindungen, wie ich mir vorstellen kann, dass die Lösung dafür aussehen wird. Ich denke, dies wird hauptsächlich blockiert, wenn @alexandrudima freigibt , wer viele konkurrierende Prioritäten hat.

Ich möchte Maus 4 + 5 (Seitentasten) für "Zurück navigieren" + "Vorwärts navigieren" verwenden. Funktioniert bereits im Browser und anderen IDEs. Fügen Sie also bitte Mauskürzel hinzu =)

+1

Wird jeder diese Feature-Anfrage gelesen ???
+1

Im Ernst, bitte fügen Sie Unterstützung für Maustasten in Tastaturkürzeln hinzu!

Es kommt jetzt auf 2 Jahre! Warum ist das noch kein Feature? Bitte erlauben Sie uns, Maustasten bei der Tastenbindung zu verwenden

Ich frage mich, ob es einfach wäre, eine temporäre Änderung hinzuzufügen, um die Spaltenauswahl unter Linux zu ermöglichen, so dass Strg + Alt + Klicken (nur nach dem Vorschlag von krux02) zusätzlich zu Alt + Klicken, das blockiert ist, auch eine Box- / Spaltenauswahl durchführte von den Linux Window Managern? Wenn irgendwann eine Anpassung der Maustaste hinzugefügt wird, könnte diese vorübergehende Änderung entfernt werden, aber in der Zwischenzeit würde dies die größte Frustration lindern, die ich bei der Verwendung von VS Code unter Linux hatte.

Wie lange sollten wir auf diese BASIC-Funktion warten? Ein weiteres Jahr? Es ist eine CORE BASIC COMMON-Funktion wie ENTER oder DELETE?
Oh mein Gott, was ist los ... Die Leute werden zum Mars fliegen und wir kämpfen um Tastenkombinationen für die Maus. Alle anderen Editoren haben diese Funktion an Bord. Aber das neue, coole Kind auf dem Block ist dahinter ...

Ich stimme zu, dies ist eine sehr grundlegende Funktion, ich verstehe nicht, was los ist ...
Wir brauchen diese Funktion

Ihr merkt, dass ihr ein völlig kostenloses Tool verwendet, zu dem ihr beitragen könnt, oder? Ich glaube nicht, dass irgendjemand in der Community gegen eine PR mit dieser "Grundfunktion" ist 📄

@Thargarius @DoCode

Wenn ich mich richtig erinnere, wird dieses Problem von Electron verursacht, nicht so sehr von VS
Codebasis selbst. Ein Fix würde also das Patchen des Electron-Quellcodes erfordern
Methoden = P.

Am Montag, den 4. Dezember 2017 um 10:49 Uhr Oleg Shalygin [email protected]
schrieb:

Ihr merkt, dass ihr ein völlig kostenloses Tool verwendet, das ihr könnt
dazu beitragen, richtig? Ich glaube nicht, dass jemand in der Community gegen a ist
PR mit dieser "Grundfunktion" 📄

@Thargarius https://github.com/thargarius @DoCode
https://github.com/docode

- -
Sie erhalten dies, weil Sie kommentiert haben.
Antworte direkt auf diese E-Mail und sieh sie dir auf GitHub an
https://github.com/Microsoft/vscode/issues/3130#issuecomment-349064344 ,
oder schalten Sie den Thread stumm
https://github.com/notifications/unsubscribe-auth/AD2MVQ9h6MIa7CdtLZcXTrvt5XxYn1-9ks5s9D6ygaJpZM4HdSg8
.

Ich bin kein perfekter Atom / Electron-Entwickler.
Jemand hier, der dieses Problem beheben oder damit beginnen kann, es zu beheben?

Ich denke hier ist der Atom Anhänger.

+1

Ich möchte Mouse2Click (mittlere Maustaste / Scrollrad) drücken, um anstelle von Strg-Mouse1Click zur Deklaration zu navigieren

Ich möchte Mouse2Click (mittlere Maustaste / Scrollrad) drücken, um anstelle von Strg-Mouse1Click zur Deklaration zu navigieren

Die Möglichkeit, mit der mittleren Maustaste auf die Definition einer Methode oder Variablen zu klicken, wäre schön. Daran habe ich mich in der GameMaker-IDE gewöhnt.

Es wäre großartig, die Option zu haben, die Doppelklick-Einfügefunktion mit der mittleren Maustaste zu deaktivieren.

Wenn VSCode über Makrofunktionen verfügt, könnte diese Funktion wahrscheinlich über ein Makro hinzugefügt werden.

BITTE gehen Sie zur Ausgabe Nr. 4490 und stimmen Sie ab (klicken Sie auf die Schaltfläche "Daumen hoch") und fügen Sie Ihre Unterstützung hinzu!

https://github.com/Microsoft/vscode/issues/4490

Ich möchte den Trackpoint auf meinem Thinkpad verwenden, um beim Drücken der Strg-Taste zu scrollen (z. B. Emulation mit mittlerem Klick, Ubnutu).

Ist es möglich, Shift + Befehl und Mausklick mit der linken Maustaste anstelle von Befehlstaste + Mausklick mit der linken Maustaste zu verwenden, oder müssen wir diese Funktion zuerst ausliefern?

Ich denke, das wäre eine nette Funktion. Ich möchte Strg + Mausrad binden, um vorwärts und rückwärts durch die Zeit zu scrollen

Ich denke das ist was ich suche ...

Ich möchte wirklich nur die Tasten "Zurück" und "Vorwärts" meiner Maus verwenden können, um den Tastenkombinationen "Zurück" bzw. "Vorwärts" zu entsprechen. Es scheint, dass ich diesen momentan die Maustasten nicht zuweisen kann. Ich würde mich sogar mit einer fest codierten Lösung zufrieden geben, damit ich durch meinen Code springen kann!

Hey @nerael , stimme vollkommen zu. Ich habe dieses Problem gelöst, indem ich meine Maustasten gebunden habe, um Tastaturkürzel auszugeben, die die Aktionen "Zurück" und "Vorwärts" in VSCode ausführen. Dies ist in der Logitech-Software einfach möglich. Unter Windows / OSX gibt es jedoch Möglichkeiten, dies zu tun, auch wenn dies vom Gerätehersteller nicht unterstützt wird.

Beachten Sie, dass dies nur eine persönliche Problemumgehung ist und die Unterstützung auf Softwareebene ideal wäre. Dies kann jedoch in der Zwischenzeit funktionieren.

@ jsonMartin

Danke ... das hat mich zu einer Problemumgehung geführt. Ich habe es so angenähert
https://thecrumb.com/2015/06/03/xbindkeys/index.html

BEARBEITEN - Dies war auch ein sehr hilfreiches Tutorial zum Konfigurieren von xbindkeys
https://blog.hanschen.org/2009/10/13/mouse-shortcuts-with-xbindkeys/

Meine ~ / .xbindkeysrc-Datei lautet:

# VSCODE MOUSE BINDINGS FOR CODE JUMPING
# 'Go Back'
"xte 'keydown Control_L' 'keydown Alt_L' 'key minus' 'keyup Alt_L' 'keyup Control_L'" 
b:8
# 'Go Forward'
"xte 'keydown Control_L' 'keydown Alt_L' 'key equal' 'keyup Alt_L' 'keyup Control_L'" 
b:9

Dies liegt daran, dass mein 'Vorwärts gehen' an Strg + Alt + Gleich gebunden ist. b: 8 und b: 9 sind Schlüsselcodes für meine Maustasten für Vorwärts und Rückwärts!

BEARBEITEN - falls es nicht klar war, verwende ich zum jetzigen Zeitpunkt das neueste Ubuntu LTS, nicht Windows oder OSX

Ich möchte nur in der Lage sein, meine Maustasten in Visual Studio Code daran zu hindern, irgendetwas zu tun, da ich eine davon für meine Push-to-Talk-Taste verwende.

Warum gibt es hier scheinbar keine Antwort oder keinen Fortschritt? (Ich habe keinen Kommentar von einem Mitarbeiter gesehen. Entschuldigung, wenn das nicht stimmt.)

Ist es eine vorgelagerte Frage des Elektrons? Ist es einfach kein wichtiges Merkmal der Roadmap?

+1

Hey @ mhh1422, nur eine freundliche Erinnerung daran, dass jeder Abonnierte eine E-Mail erhält, wenn Sie ein Github-Problem veröffentlichen.

Wenn Sie nichts Konstruktives hinzufügen möchten, aber das Bewusstsein stärken möchten, verwenden Sie bitte die Reaktionen.

Für alle, die ich mit dieser Nachricht gespammt habe, ❤️

@philiiiiiipp Ich mag es zu wissen, wie lange das dauert

+1

+1

@lopugit @ Nemesis19 @DeadByElpy

Bitte fügen Sie die +1 zur Originalausgabe oben hinzu.

Sie können ohne Kommentar benachrichtigt werden, indem Sie oben rechts auf dieser Seite auf die Schaltfläche "Abonnieren" klicken.

Dies kann nützlich sein, wenn Sie den Befehl zum Zurückgehen mit der Zurück-Taste in der Maus binden möchten. Diese Verknüpfung wird häufig im Webbrowser verwendet, und ich glaube, dass Visual Studio sie auch hat.

Es wäre wirklich schön, "Alt + Bildlauf nach oben / unten" zu verwenden, um Zahlen zu erhöhen / zu verringern oder durch Aufzählungen oder ähnliches zu schleifen.

Verdammt ja, wir müssen in der Lage sein, Maustasten in den Tastenkombinationen zu verwenden. Dies würde viele Probleme lösen, beispielsweise die Möglichkeit, die Müllverknüpfungen wie {
"key": "ctrl + pagedown",
"Befehl": "workbench.action.nextEditor"
}}
mit Strg + Mausrad runter etc ....

... Mousewheel Tab Switching gemacht ... so viel besser.

Bitte machen Sie weiter, es ist schon an der Zeit.

Hoffe, diese Aufgabe liegt noch auf dem Tisch. Ich möchte die SHIFT-ALT-LeftMouse-Kombination "Spaltenauswahl" in nur ALT-LeftMouse ändern ...

Ich wechsle aufgrund meiner Arbeit von JetBrains-Produkten und versuche, VSCode so weit wie möglich an meinen vorherigen Workflow anzupassen.

Ich habe alt+leftclick für jeden hervorgehobenen Text verwendet, um zum Menü QuickFix . Im anderen Editor handelt es sich um Dinge wie das Beheben von Tippfehlern bei der Rechtschreibprüfung, das Beheben fehlender Importe, das Vereinfachen von Code usw. All diese Aktionen sind unter dem - jetzt massiven - Rechtsklick-Menü vergraben.

Da ich wegen einer Behinderung eine Rollermaus benutze, wird dies schwieriger als normal, da ich jetzt eine seltsame Bewegung machen muss, um die gleichen Aktionen zu erreichen.

Die Möglichkeit, solche Dinge anzupassen, würde meinen Komfort erheblich verbessern.

Ich hoffe, jemand kommt dazu.

Schöne Ferien!

@silentwarrior Wenn Sie unter Windows arbeiten, können Sie als Problemumgehung vor der Implementierung in vscode so etwas wie Autohotkey verwenden

Als Referenz wird vscode im neuesten Update vorgestellt. Die meisten Leute haben sich daran gewöhnt, es mit Strg + Klick zu benutzen. Ich habe das gleiche versucht, aber es wird nicht unterstützt.
Es wäre dankbar, wenn die Mausverknüpfung bald eingeführt würde.

Es wäre sehr nützlich, Maus- und Tastaturtasten nativ in keybindings.json mischen zu können.
Eine weitere sehr nützliche Sache wäre, mehrere Kombinationen an einen einzigen Befehl binden zu können. Letzteres ist meiner Meinung nach ziemlich einfach.

@ mortinger91 Es ist bereits möglich, mehrere Schlüssel an denselben Befehl zu binden. Ich weiß nicht, was Sie gemeint haben.

@ mortinger91 Es ist bereits möglich, mehrere Schlüssel an denselben Befehl zu binden. Ich weiß nicht, was Sie gemeint haben.

Ist es? Ich habe nicht ausführlich darüber recherchiert, aber ich kann anscheinend keine Methode wie diese finden
<br i="9"/> {<br i="10"/> "key": "key1","key2",<br i="11"/> "command": "do something"<br i="12"/> }<br i="13"/>
oder eine ähnliche Syntax, die in settings.json verwendet werden soll, es sei denn, Sie meinen eine Art Makro oder verwenden eine Erweiterung, die ich nicht kenne.

@ mortinger91 du musst es mit mehreren Schlüsseln machen, so:

[
   {
      "key": "combination1",
      "command": "command1"
   },
   {
      "key": "combination2",
      "command": "command1"
   }
]

@ mortinger91 du musst es mit mehreren Schlüsseln machen, so:

[
   {
      "key": "combination1",
      "command": "command1"
   },
   {
      "key": "combination2",
      "command": "command1"
   }
]

ja Dankeschön. Ich habe das schon versucht, aber auf einen falschen Befehl hin bestätigt, dass es funktioniert.
Trotzdem sind die Maustasten gebunden

Auf dieses Problem (https://github.com/Microsoft/vscode/issues/5402) wurde bereits zuvor im Thread verwiesen, aber hier wurde jemand gefragt, ob sich dieses Problem aufgrund eines Upstream-Problems mit Electron nicht bewegt hat Ich kann sehen, dass dieses Problem nicht damit zusammenhängt, da Atom eine Erweiterung hat, die dieses Verhalten zulässt.

Wenn dieses Verhalten mit einem Plugin in Atom repliziert werden könnte, wäre es in vscode möglich?

Hat hier jemand darüber nachgedacht, die Atom-Erweiterung auf vscode zu portieren?

Ich habe versucht, "Zurück" an meine Maustaste 3 zu binden, und am Ende ein besseres Touch-Tool eingestellt, um die Tastenkombination aufzurufen, wenn ich die Maustaste in VSCode drücke. Könnte in der Zwischenzeit eine nützliche Problemumgehung sein! 👍

Ich erkannte, dass das Scrollen langsam ist, suchte nach einer Einstellung, um es zu ändern, und bemerkte "schnelle Bildlaufempfindlichkeit" und dass "Alt" tatsächlich ein Multiplikator für die Bildlaufgeschwindigkeit ist. Ich habe nach Möglichkeiten gesucht, "Alt" in diesem speziellen Fall in "Super" zu ändern, konnte aber leider nichts finden. :(

Ich habe versucht, "Zurück" an meine Maustaste 3 zu binden, und am Ende ein besseres Touch-Tool eingestellt, um die Tastenkombination aufzurufen, wenn ich die Maustaste in VSCode drücke. Könnte in der Zwischenzeit eine nützliche Problemumgehung sein! 👍

Wie würde ich das machen? Ich möchte verhindern, dass die Maustaste 4 in Visual Studio Code "Zurück" aufruft, aber ich möchte es weiterhin an anderer Stelle verwenden können.

@ Tyriar Dies ist seit 3 ​​Jahren geöffnet. Wie können wir helfen, dies voranzutreiben? :) :)

@ george-cz Ich möchte Go back an meine Maustaste 3 binden. Wie würde ich das tun?

@stereokai Laut einem kürzlich von @egamma gehaltenen Vortrag besteht die Möglichkeit darin, das Thema hier so zu bewerten, dass es nach oben sprudelt.

@ foxx1337 meinst du mit 👍 auf den Kommentar des Problems reagieren?

Es hat fast 500 Daumen hoch. Wie viel verdammte Stimmen @egamma braucht es

Warum nicht einfach Leute einstellen, die Ahnung haben, was getan werden muss, um den Workflow zu verbessern?

Nachdem ich mich ein wenig damit befasst habe, glaube ich, dass hier folgende Probleme auftreten:

  • Der "richtige" Weg, dies zu tun, wäre, die Ereignisse von Chrom / Elektron aufzunehmen. Ich glaube nicht, dass sie ausgesetzt sind. (Beachten Sie, dass dies eine lange nachgefragte Funktion in Electron ist, bei der sie im Grunde genommen mit den Schultern zucken und auf die nächste Schicht im Tech-Stack zeigen.)
  • Der nächste Weg wäre, native npm-Pakete zu schreiben, die diese Ereignisse "von der Seite" aufnehmen und durchschreiben können. Dies kann auf allen 3 Betriebssystemen (auf sehr unterschiedliche Weise) durchgeführt werden und fällt in die Kategorie "unappetitlicher Hack".
  • Und der wahre Showstopper: Erweiterungen können dies nicht, da der Code "in Bearbeitung" der Haupt-App von VSCode ausgeführt werden muss. und es ist unwahrscheinlich, dass MS (imo) und Patches akzeptiert, die dies implementieren (siehe 'unappetitlich' oben).

Also ... Könnte es in einer Erweiterung gemacht werden? In Windows ja, aber es würde eine hackige DLL-Injektion erfordern - an diesem Punkt ist es viel besser, ein betriebssystemspezifisches Dienstprogramm eines Drittanbieters zu installieren, das die zusätzlichen Maustasten Tastenanschlägen zuordnen kann.

Ich könnte mich also in allen oben genannten Punkten irren, aber das ist meine Vermutung bezüglich der Situation.

Ach du lieber Gott. Also eine einfache Funktion von Windows, aber sooo kompliziert ...

Es ist 3 Jahre her, seit der Thread gestartet wurde, und vs Code sieht so aus, als hätte er während der gesamten Zeit praktisch keine Funktionen / ergonomischen Änderungen erfahren.

Die überwiegende Mehrheit der Kommentare hier ist bestenfalls nicht konstruktiv. Könnten die Repo-Besitzer erwägen, dieses Problem zu beheben?

@ KevinMGranger Schlechte Einstellungen machen die Notwendigkeit oder Relevanz dieses Problems nicht ungültig.

@stereokai Ich weiß, es ist einer meiner Top-

@KevinMGranger Leider verhindert das Sperren dieses Problems auch : +1: Reaktionen auf den ersten Beitrag, wodurch die tatsächliche Anzahl der an diesem Problem interessierten Personen unbekannt wird (obwohl dies angesichts der aktuellen Anzahl von Reaktionen möglicherweise nicht erforderlich ist, aber ich bevorzuge es trotzdem es weiter geöffnet) ..

Wenn Sie sich in Mint befinden, können Sie einfach den Alt-Klick deaktivieren, indem Sie zu Systemeinstellungen, Fenster, Verhalten wechseln und dann die "Sondertaste zum Verschieben und Ändern der Fenstergröße" ändern. Auf diese Weise funktioniert Alt + Click in vscode.

Für die Aufzeichnung der Beitrag von @ncesar , der für alle gilt, die Zimt verwenden (z. B. Zimt auf Fedora)

+1, ein Alt-Rechtsklick zum Kopieren relativer Pfade wäre fantastisch! (Noch besser wäre die Fähigkeit zum Binden in die aktuelle Datei, um einen Relpath einzufügen, aber das ist eine andere Sache.)

+1, ein Strg + Rechtsklick, um die Definition zu überprüfen, wäre praktisch zum Lesen des Quellcodes!

In Windows verwende ich Strg + Klick für den folgenden Link und Alt + Klick für das Hinzufügen des Cursors
aber unter linux muss ich es in alt ändern, aber alt + klick für folge links funktioniert nicht.

Ich würde gerne in der Lage sein, die mittlere Maustaste so zuzuordnen, dass sie auf meinem Mac "an der Stelle des Mauszeigers einfügen" ist. Ich bin an dieses Verhalten von meinem Linux-Boxen gewöhnt.

Können Sie den Entwicklern gegenüber dieses Problem als Fehler oder ähnliches kennzeichnen? Mit diesen Tags haben Sie das Gefühl, dass die Lösung dieses Problems völlig optional ist. Bei diesem Problem handelt es sich jedoch um ein großes Kompatibilitätsproblem, das wichtige Funktionen von VSCode für einige Plattformen völlig unbrauchbar macht.

Dies wurde irgendwo in den doppelten Threads erwähnt, denke ich. Für die Aufzeichnung werde ich es auch hier sagen.

Ich bin auf diesen Thread gestoßen, weil ich mich gefragt habe, ob ich eine Maus mit mehr Tasten kaufen soll, damit ich Dinge in Code binden kann. Beispiel: Zuordnen von 3 Seitentasten zum Über- und Ein- und Aussteigen beim Debuggen. Sie verwenden die Maus, um zu untersuchen, was sich in der Debug-Seitenleiste befindet. Daher wäre es sehr praktisch, die Ausführung damit voranzutreiben.

Neben dem erneuten Binden des Links- / Rechtsklicks wäre auch das erneute Binden anderer Mauseingaben hilfreich.

+1. Diese Funktionalität wird wirklich benötigt, um Strg + Klick für die Wortauswahl unterstützen zu können. Strg + Klick ist keine Definition, egal wie viele Leute denken, dass es sein sollte. Diese Funktion allein ist der Grund, warum ich VSCode nicht verwenden kann, obwohl ich möchte.

Aus Sicht der Leistung möchte ich "Middle Click" an "Goto Definition" binden. Webstorm hat dies standardmäßig und erleichtert das Navigieren im Code erheblich.

Wenn ich Leistung meine, meine ich Entwicklerleistung

Aus Sicht der Leistung möchte ich "Middle Click" an "Goto Definition" binden. Webstorm hat dies standardmäßig und erleichtert das Navigieren im Code erheblich.

Solange dies eine Einstellung ist, gut von mir. Auf meinem System würde es den Einfügemechanismus stören.

Ich denke an dieser Stelle ist es ziemlich sinnlos, tiefer in die Diskussionen einzusteigen. Die Entwickler haben durch Unwissenheit ziemlich deutlich gemacht, dass ihnen dieses Problem egal ist.

@ krux02 du könntest immer mit code statt snark beitragen. Oder einfach nicht kommentieren.

Wären Sie motiviert, an FOSS-Projekten zu arbeiten, wenn sich Ihre Benutzer wie Sie verhalten würden? Halten Sie es höflich, diese "Dummköpfe" auf der anderen Seite des Issue-Trackers sind Leute wie Sie und ich, und sie haben auch Gefühle.

@jrial , ich arbeite an kostenloser Open-Source-Software und trage auch zu anderen Projekten bei. Sie können dies überprüfen, indem Sie mein Github-Profil besuchen. Und ja, ich muss mich auch mit nervigen Benutzern auseinandersetzen. Dies ist jedoch nicht nur Snark. Wenn Sie sich meine früheren Kommentare ansehen, habe ich in der Vergangenheit positive Rückmeldungen gegeben. Aber nach mehr als 3 Jahren Schweigen seitens der Entwickler und ohne Verbesserung. Sie könnten sich zumindest entschuldigen und erklären, warum es schwierig ist, dies zu beheben, aber nein, es gibt überhaupt keine Reaktion. Meine einzige Schlussfolgerung ist, dass es den Entwicklern einfach egal ist.

Und nein, ich trage auch nicht dazu bei, dies zu beheben. Grund Nummer 1 ist, dass ich wegen solcher Probleme keinen VSCode verwende.

Ich habe mich letztes Jahr kurz mit der Behebung befasst, konnte aber nicht herausfinden, wie VS-Code lokal aus dem Quellcode erstellt und gestartet werden kann, damit ich ihn debuggen und testen kann. Ich verwende VS Code wirklich nur für einige kleine Nebenprojekte, daher ist die Zeit, die ich für eine solche Änderung verwenden muss, begrenzt. Es würde mich nicht wundern, wenn ich eine oder mehrere andere Personen, die sich für dieses Thema interessieren, im selben Boot finden würde.

Wir möchten bei gedrückter Strg-Taste auf ein ausgewähltes Wort klicken , anstatt zur Definition zu gehen, aber diese Funktion ist nicht vorhanden!

Eine vollständige Mausintegration wäre fantastisch. Jede Kombination aus Strg / Umschalt / Alt und den häufigsten Maustasten (Rechts- / Linksklick, Bildlauf nach oben / unten, mittlerer Klick / Rechts / Links und die übliche Maustaste 4/5 / Vorwärts / Rückwärts) wäre erstaunlich.

Fast 4 Jahre seit Eröffnung des Tickets. Noch nichts am Horizont?

Gab es eine Regression in Bezug auf # 71318, da Back / Forward unter MacOS unter 1.39 nicht zu funktionieren scheint, kann dies auch unter Linux überprüft werden.

Sie sollten dies als Neujahrsresolution 2020 setzen! Es ist fast 4 Jahre her und immer noch keine Unterstützung für die Klick-Tastenkombination.

Aus diesem Grund glaube ich nicht, dass ich VSCODE verteidigen oder Leute motivieren kann, mehr zu verwenden: /

Ich würde wirklich gerne die mittlere Maustaste besser verwenden, um beispielsweise das Handbuch zu öffnen, aber keinen Text einzufügen.

Gibt es ein Update, wann diese Funktion aktiviert wird?

Ich würde wirklich gerne die mittlere Maustaste besser verwenden, um beispielsweise das Handbuch zu öffnen, aber keinen Text einzufügen.

Ich hätte nichts dagegen, solange es optional bleibt und keine Standardverknüpfungen die mittlere Maustaste überall dort verwenden, wo man Text einfügen kann. Dies soll die * nix-Benutzer nicht entfremden, denen die mittlere Maus gleich "Einfügen aus sekundärem Puffer" ist und die dies nach Jahren des Gebrauchs dem Muskelgedächtnis verpflichtet haben.

Ich denke, diese Ausgabe besteht eigentlich aus zwei:

  1. Hinzufügen weiterer Anpassungen zu Verknüpfungen, dh zum Definieren benutzerdefinierter Verknüpfungen für Aktionen wie die Wortauswahl.
  2. Wenn Sie zulassen, dass "Tastaturkürzel" nicht nur Tastaturkürzel, sondern auch Mauskürzel sind, dh nur um zu demonstrieren, anstatt F5 zuzuweisen, um den Debugging-Befehl zu starten, können Sie dafür Strg + Umschalt + Mittlere Maustaste zuweisen.

Wenn diese beiden Probleme gelöst würden, würden wir dieses Problem vollständig lösen.
Ich möchte dieses Problem jedoch aufgreifen:
Ich kann das zweite Problem selbst lösen. Aber zum ersten Mal brauche ich eine Liste mit weiteren Verknüpfungen, die Sie möchten. Und weil ich denke, dass dies ein separates Thema ist, werde ich jetzt nur zum zweiten Problem beitragen. Ich denke, wir sollten dieses Problem aufteilen.

Wie ich es kompromittiert habe, habe ich den zweiten Teil implementiert - jetzt können Sie in meinem Zweig Maustasten Befehlen zuordnen, einschließlich Modifizierertasten und Akkorden.

Bevor ich eine Pull-Anfrage abschicke, möchte ich, dass Sie mir eine Liste allgemeiner Aktionen senden, die Sie mit der Maus verknüpfen möchten.

Der Vorgang ist eigentlich einfach: Extrahieren Sie für jede Aktion die Einbettung in den Code als separaten Befehl, fügen Sie (falls erforderlich) neue Kontexte hinzu, um zu markieren, wann dieser Befehl aktiviert ist, und definieren Sie schließlich eine Standardverknüpfung dafür. anstelle der vorherigen mit der Maus.

Ich werde ungefähr eine Woche warten und dann eine PR mit den gesammelten Befehlen einreichen. Ich möchte nach dieser Woche keine weiteren Aktionen erhalten (ich brauche auch etwas Zeit für mich selbst), aber es kann einige Zeit dauern, bis ich die bereits gesammelten implementiert habe. Hoffentlich werde ich bald enden - ich sehe die Hoffnung in deinen Augen 👀

Natürlich können Sie weitere Aktionen erwähnen - solange die PR akzeptiert wird, ist es relativ einfach, neue Befehle anzupassen. Und Sie können sie immer selbst beisteuern - wie immer sind Beiträge willkommen!

Hier ist, was ich jetzt habe, du bist eingeladen, deine eigenen hinzuzufügen. Kommentar in dieser Ausgabe.

  • Zur Definition gehen (Strg + Klick)
  • Ganzes Wort auswählen (Doppelklick)

Ein Hinweis zu "Ganzes Wort auswählen": Ich habe es nicht überprüft (hoffentlich bald), aber obwohl es mir ziemlich einfach und sogar wichtig erscheint, dies als Befehl zu duplizieren - dh einen Befehl bereitzustellen, der die Seite unterstützt und kann (zum Beispiel) wie hier angegeben Strg + Klick zugewiesen werden. Ich denke, es ist schwierig und vielleicht sogar unmöglich, dies zu extrahieren , dh in der Lage zu sein, Doppelklicks für einen anderen Zweck zuzuweisen. Dies liegt daran, dass diese Funktion (ich habe sie noch nicht überprüft) Teil des Kerneditors ist und (möglicherweise erneut) die Umgestaltung von Hunderten von Codezeilen erforderlich macht. Ich werde es jedoch versuchen und Ihnen die Ergebnisse melden, solange sie verfügbar sind 🎉 🎉 🎉

Vielen Dank!

Ich würde hinzufügen:

  • Peek-Definition (zum Beispiel als Umschalt-Strg-Klick hinzufügen)
  • Peek-Referenzen (Strg-Klick macht bereits den Trick, wenn sich der Cursor auf der Variablendefinition befindet)

@benoitmasson Gibt es eine Verknüpfung für "Peek Definition"? Ich kenne keinen (natürlich mit der Maus).

  • mittlere Schaltfläche = "Zwischenablage einfügen" oder vorzugsweise "Cursor an diesen Punkt bewegen und Zwischenablage einfügen"
  • linke Taste über Text ziehen = "Text auswählen und in Zwischenablage kopieren"

@benoitmasson Nach einigen Recherchen habe ich festgestellt, dass Ihre sogenannte Verknüpfung "Peek-Referenzen" nicht real ist. Der Befehl "Gehe zur Definition" macht das, was Sie beschrieben haben, als Sie in der Deklarationszeile aufgerufen wurden. Wenn dies ein Problem ist, liegt es am Befehl - ich werde das nicht behandeln.

Sie verstehen anscheinend nicht: Ich werde die Standard-Tastenkombinationen nicht ändern. Ich denke sogar Microsoft wird eine solche PR nicht genehmigen. Was ich tue, ist das Extrahieren von Aktionen in Befehle anstelle des eingebauten Verhaltens, damit SIE mit ihnen ganz einfach Ihre eigenen Mausverknüpfungen erstellen können.

OK, ich bin nicht sicher, ob ich Ihren Standpunkt genau verstehe, aber ich werde versuchen, meinen Kommentar zu klären. Wahrscheinlich ist nicht alles für Sie relevant. Wählen Sie dort also aus, was Sie möchten:

  • Peek-Definition und Peek-Referenzen sind bereits VS-Code-Befehle (siehe https://code.visualstudio.com/Docs/editor/editingevolved#_peek). Vielleicht möchten Sie sich also nicht speziell mit ihnen befassen (soweit ich weiß, Ihre Mit PR können Sie von Tastaturbelegungen zu Mausbindungen wechseln (was großartig ist).

  • Genauer gesagt, ich würde gerne eine Mausbindung zu Go to Definition AND Peek Definition haben (beide sind Befehle, beide sind bereits mit der Maus seit Version 1.43 möglich, aber Sie müssen einen auswählen, möchte ich sein beides mit nur einem Tastaturmodifikator + Klick)

  • Schließlich hat der Befehl Peek references bereits eine Mausbindung, wenn Sie bei gedrückter Strg-Taste auf die Definition klicken (ich brauche dort nichts, nur um Sie zu informieren).

Und wenn dies alles außerhalb des Rahmens liegt, stören Sie sich nicht und entschuldigen Sie den Lärm…

Für Peek-Referenzen würde ich denken, dass, da Strg / cmd- "Linksklick" bereits daran gebunden ist (aber fest codiert), es wahrscheinlich so geändert werden sollte, dass Strg / cmd- "Linksklick" eine Standardbindung mit dieser neuen PR ist kann aber geändert werden.

Ich würde mir vorstellen, dass dies für alle vorhandenen Zuordnungen gelten sollte, die derzeit fest codierte Mausverknüpfungen haben.

Ich persönlich möchte die anderen Tasten meiner Maus neu programmieren. Schaltflächen wie Zurück, Vorwärts, horizontaler Bildlauf und mittlere Maustaste.

@AndreasBackx Middle Button Click - Ich habe diese Funktionalität bereits implementiert.
Zurück, vorwärts - ich kenne diese Tasten nicht. Kannst du bitte erklären?
Horizontales Scrollen - Wenn Sie das Scrollen mit dem Mausrad meinen, können Sie es mit meiner Implementierung nicht anpassen, und ich möchte dies nicht implementieren, da das Mausrad im Gegensatz zu anderen Funktionen eine kontinuierliche Kommunikation zwischen dem Tastenkombinationsdienst und dem Befehl an erfordert ausgeführt werden, dh nicht nur wenn der Bildlauf beendet ist, sollten wir den Befehl aufrufen, sondern auch in der Mitte. Die Einführung würde meiner Meinung nach API-Änderungen erfordern, um eine solche Kommunikation zu ermöglichen (tatsächlich ein neuer Befehlstyp, der sich auf neue Methoden zum Registrieren und Aufrufen auswirkt, sogar neue Protokolle - nicht so schön), und ich möchte dieses Thema nicht eingeben. Dies ist auch der Grund, warum ich kein allgemeines Ziehen mit der Maus implementiert habe. Das heißt, meine PR ermöglicht das Anpassen des Ziehens über den Editortext oder die Auswahl, aber nicht das allgemeine Ziehen wie im Datei-Explorer, wenn Sie eine Datei in einen Ordner ziehen , da diese Art des Ziehens wiederum eine kontinuierliche Kommunikation erfordert, um dem Benutzer das visuelle Feedback zu geben (in meinem Beispiel der Dateiname, der gezogen wird). Wenn die Community jedoch positive Rückmeldungen zu diesen Funktionen gibt, bin ich damit einverstanden, meine Entscheidung zu überdenken, jedoch innerhalb eines separaten Problems und einer Diskussion mit einem Microsoft-Mitarbeiter (aufgrund der API-Änderungen).

@ ChayimFriedman2 Die Tasten "Zurück" und "Vorwärts" sind zusätzliche Tasten, die bei einigen Mäusen normalerweise unter dem Daumen zu finden sind. Diese werden als zusätzliche Schaltflächen angezeigt. Einige Mäuse haben dort anstelle oder zusätzlich zu diesen Tasten ein zusätzliches Scrollrad. Einige haben noch mehr Tasten.

Das Scrollen sollte nichts anderes als normale Maustasten erfordern, da jedes diskrete Klicken des Scrollrads vom Betriebssystem als Tastendruck angesehen wird. Das Scrollrad fügt nur 2 zusätzliche Tasten hinzu, die Signale senden, wenn das Rad gedreht wird. Beispielsweise meldet xev unter Linux Folgendes, wenn eine einzelne Stufe nach unten gescrollt wird:

ButtonPress event, serial 38, synthetic NO, window 0x9800001,
    root 0x255, subw 0x0, time 1417460611, (103,113), root:(1285,747),
    state 0x10, button 5, same_screen YES

ButtonRelease event, serial 38, synthetic NO, window 0x9800001,
    root 0x255, subw 0x0, time 1417460611, (103,113), root:(1285,747),
    state 0x1010, button 5, same_screen YES

Während das Scrollen nach oben so aussieht:

ButtonPress event, serial 38, synthetic NO, window 0x9800001,
    root 0x255, subw 0x0, time 1417468067, (103,113), root:(1285,747),
    state 0x10, button 4, same_screen YES

ButtonRelease event, serial 38, synthetic NO, window 0x9800001,
    root 0x255, subw 0x0, time 1417468067, (103,113), root:(1285,747),
    state 0x810, button 4, same_screen YES

Vergleichen Sie mit einem normalen linken Mausklick:

ButtonPress event, serial 38, synthetic NO, window 0x9800001,
    root 0x255, subw 0x0, time 1417598246, (135,115), root:(1317,749),
    state 0x10, button 1, same_screen YES

ButtonRelease event, serial 38, synthetic NO, window 0x9800001,
    root 0x255, subw 0x0, time 1417598297, (135,115), root:(1317,749),
    state 0x110, button 1, same_screen YES

@jrial Kannst du mir bitte sagen, wie lauten die MouseEvent.button Codes für Hin- und Her?

@jrial Und wenn du kannst, hast du gesagt, dass es noch mehr gibt - bitte sende mir eine Liste mit Namen / Code im Browser.

@jrial Aber ich habe nicht vor, Räder zu implementieren. Ich mache mir auch Sorgen über die Auswirkungen dieser Funktion auf die Leistung - das Scrollen ist ein schneller Vorgang, im Gegensatz zu Mausklick und Tastendruck. Das heißt, wir müssen den Befehl viele Male auslösen.

@jrial Kannst du mir bitte sagen, wie lauten die MouseEvent.button Codes für Hin- und Her?

Ich bin kein JS-Typ, aber eine schnelle Suche scheint darauf hinzudeuten, dass Sie über WheelEvent auf Räder zugreifen. Siehe https://www.w3.org/TR/DOM-Level-3-Events/#events -wheelevents

Informationen zu den Schaltflächen Zurück und Vorwärts finden Sie unter https://www.javascripture.com/MouseEvent und https://www.w3.org/TR/DOM-Level-3-Events/#dom -mouseevent-button

@jrial Kannst du mir bitte sagen, wie lauten die MouseEvent.button Codes für Hin- und Her?

Überprüfen Sie dies, es werden Schaltflächen zum Zurück- und Weiterleiten erwähnt:

Gehe zur Implementierung wäre eine großartige Möglichkeit, eine Mausverknüpfung zu haben. https://code.visualstudio.com/Docs/editor/editingevolved#_go -to-Implementierung

Das ideale Szenario ist natürlich, wenn die Mausverknüpfungen so konfiguriert werden können, dass sie eine beliebige Tasten- und / oder Tastenkombination verwenden. Wenn dies IMO nicht möglich ist, wäre es eine Schande, wenn für eine Verknüpfung bestimmte Maustasten erforderlich wären, die nicht immer verfügbar sind.

Ich denke, und alle von meinen Colleges, dass das Standardverhalten von Visual Studio 20xx (Strg + Klicken) eine enorme Verbesserung wäre: Wählen Sie das zugrunde liegende Wort unter dem Cursor aus, und wenn Sie vorwärts oder rückwärts bewegt werden, werden auch die nächsten Wörter ausgewählt.

Ich möchte noch einmal erwähnen: Behalten Sie es im Hinterkopf: Ich werde das aktuelle Verhalten nicht ändern .

Möchten Sie andere Verknüpfungen als die Standardeinstellungen? Sicher! Erstellen Sie Ihre eigene Schlüsselbindungserweiterung (wenn Sie möchten
Um es für andere zu teilen, ändern Sie einfach Ihre keybindinbgs.json oder verwenden Sie den keybinding-Editor.

Die Verwendung von Mausverknüpfungen wird dank meiner Arbeit möglich, aber die Standardverknüpfungen werden nicht geändert. Entwickler mögen keine Änderungen.

Ich denke, angesichts des Titels der Anfrage möchten die meisten Leute, die darauf folgen, nur die Möglichkeit haben, das Klickverhalten zu ändern, und geben Beispiele dafür, wie das Verhalten in ihren Setups diese Fähigkeit erhalten wird.

Ich weiß, dass meine Posts / Anfragen dies erwartet haben.

- -
Alan Hoyle - [email protected] - alanhoyle.com


Von: Chayim Refael Friedman [email protected]
Gesendet: Samstag, 21. März 2020, 13:56:19 Uhr
An: microsoft / vscode [email protected]
Cc: Alan Hoyle [email protected] ; Kommentar [email protected]
Betreff: Betreff: [microsoft / vscode] Ermöglicht die Anpassung von Mauskürzeln (# 3130)

Ich möchte noch einmal erwähnen: BEHALTEN SIE ES IM VERSTAND: Ich werde das aktuelle Verhalten nicht ändern.

Möchten Sie andere Verknüpfungen als die Standardeinstellungen? Sicher! Erstellen Sie Ihre eigene Schlüsselbindungserweiterung (wenn Sie möchten
Um es für andere zu teilen, ändern Sie einfach Ihre keybindinbgs.json oder verwenden Sie den keybinding-Editor.

Die Verwendung von Mausverknüpfungen wird dank meiner Arbeit möglich, aber die Standardverknüpfungen werden nicht geändert. Entwickler mögen keine Änderungen.

- -
Sie erhalten dies, weil Sie kommentiert haben.
Antworten Sie direkt auf diese E-Mail, zeigen Sie sie auf GitHub https://github.com/microsoft/vscode/issues/3130#issuecomment-602079576 an oder kündigen Sie https://github.com/notifications/unsubscribe-auth/AACGX4ZLQHZA2FMDCUYI3DTRIT5UAN .

@ Alanhoyle Was meinst du für mich zu sagen? (oder du willst nur erwähnen)

Ich hatte ein kleines Problem - wenn jemand helfen könnte, wäre ich sehr glücklich.

Am Anfang habe ich bereits gesehen, dass ich Befehle nicht an einen doppelten linken oder rechten Mausklick binden kann.

Warum? weil wir nicht zwischen einem Einzelklick und einem Doppelklick unterscheiden können. Siehe https://stackoverflow.com/questions/5497073/how-to-differentiate-single-click-event-and-double-click-event. Die rechte Schaltfläche ist am problematischsten: Sie löst ein Kontextmenü aus. Aber auch die Linke kann auf Knöpfe usw. einwirken.

Wie in der entsprechenden SO-Antwort vorgeschlagen (ich habe auch selbst darüber nachgedacht), können Sie eine Zeitüberschreitung verwenden. Dies kann jedoch nicht an das Betriebssystem-Zeitlimit für Doppelklicks angepasst werden.

Ich ging mit zwei Optionen:

  • Wenn das Ereignis dblclick für die rechte Schaltfläche ausgelöst wird, wird das Kontextmenü ausgeblendet. Das ist ein zu kniffliger und hässlicher Ansatz (IMHO), und es werden keine Fälle wie das Drücken einer Taste mit der linken Taste behandelt - Sie können die vom Klick-Handler ausgeführte Aktion nicht abbrechen!
  • Verwenden Sie eine Auszeit, wie ich dachte. Dieser Ansatz hat zwei Probleme:

    • Das Zeitlimit muss mit den Betriebssystemeinstellungen übereinstimmen. Dies ist lösbar, da wir uns in Node.js befinden und das Betriebssystem kommunizieren können (im Gegensatz zu js, die vom Browser ausgeführt werden), aber ich kenne keine Electron-API, die uns das angeforderte Timeout bringt. Natürlich können wir entweder npm nach einem solchen Modul durchsuchen oder sogar ich kann mein eigenes schreiben, aber dieses Modul muss ein natives Modul sein (dh in C ++ geschrieben), und das Hinzufügen eines nativen Moduls zum Build sollte erst nach Diskussion mit a erfolgen Microsoft-Mitglied.

    • Es wird dem UX schaden, da er eine Weile auf das Kontextmenü warten muss (nicht so viel Zeit, bis zu einer Sekunde, aber das schadet der Produktivität kaum).

In der Zwischenzeit (und wahrscheinlich wird es auch so bleiben) wird nur eine Fehlermeldung angezeigt, wenn der Benutzer versucht, diese Verknüpfungen zu verwenden. Das funktioniert sehr gut.

Ich möchte eine Diskussion eröffnen: Wenn wir Ihrer Meinung nach eine Auswahlverknüpfung ausführen (eine Verknüpfung verwendet diese Mausauswahl), wenn der Befehl (z. B. "Kopieren") ausgeführt wurde, was sollen wir tun und warum?

  • Stellen Sie die zuvor ausgewählte wieder her (Ich glaube nicht, dass der Benutzer dies erwartet: Er wählt Text aus, er wird hervorgehoben, und sobald er seine Auswahl abgeschlossen hat, springt die Auswahl an einen anderen Ort ...)
  • Bleiben Sie mit dem ausgewählten Text.
  • Bewegen Sie den Cursor zum Auswahlende.
  • Bleiben Sie mit dem Cursor am Auswahlbeginn (wie # 1, da sich der Cursor bei der Auswahl am Ende befindet).

Ich würde gerne Ihre Meinung hören 😃

@ ChayimFriedman2 Ich würde es nicht dazu bringen, etwas extra zu tun. Ist es nicht möglich, eine Liste von Befehlen zu definieren? Man könnte also zuerst einen Kopierbefehl ausgeben und danach die Auswahl löschen, wenn dies gewünscht wird.

Ich unterstütze die Möglichkeit, bei gedrückter Strg-Taste "Gehe zur Implementierung" auszuführen. Ich bin tatsächlich in diesem Thread gelandet, weil ich diese Option wollte. Das Aufrufen eines Menüs, in dem der Benutzer gefragt wird, ob er die Importanweisung in genau derselben Datei oder in der tatsächlichen Implementierung anzeigen möchte, war schon immer meine Nummer. 1 Ärger in VScode.

@kasvtv Im Ctrl+Alt+z , um zur Implementierung zu gelangen, da ich mit einer Hand arbeiten kann (wenn ich mich nicht irre, ist der Standard Ctrl+F12 ), aber ich würde trotzdem eine bevorzugen Ctrl+click oder Ctrl+Alt+click Ansatz.

Bitte, bitte, bitte, geben Sie einfach eine Möglichkeit an, [Strg] [Klicken] zu verwenden, um das gesamte Wort auswählen zu können, wie dies in Visual Studio der Fall ist. Es ist mir egal, wie du es machst, aber bitte, bitte, bitte, mach es einfach. Wenn Sie es jemals benutzt haben, wissen Sie, wie einfach es das Leben eines Programmierers macht. Programmierer wie ich lieben es so sehr, weil wir beim Hinzufügen einer neuen Funktion oft mit einer Vorlage beginnen und dann die Details für unsere Zwecke ändern. Zu diesem Zweck ändern wir Wörter in der Funktion mehrmals in andere Wörter. Mit [Strg] [Klicken] ist das WIRKLICH schnell und einfach: Füllen Sie die Zwischenablage [Strg] [Klicken], [Strg] C ... und ändern Sie dann ein Wort. Es ist nur [Strg] [Klicken], [Strg]. V. V. Was es so großartig macht, ist, dass Sie die [Strg] -Taste die ganze Zeit gedrückt halten. Es ist so nützlich und natürlich, dass Sie schnell davon abhängig werden, wenn Sie es ein paar Mal verwenden, und wenn es weggenommen wird, sinkt Ihre Produktivität erheblich.

Bitte.

Geben Sie einfach eine Möglichkeit an, mit [Strg] [Klicken] das gesamte Wort auszuwählen, wie dies in Visual Studio der Fall ist.

Doppelklicken Sie einfach auf das Wort. Das ist Muskelgedächtnis, das Ihnen in weitaus mehr Situationen helfen wird, da es mehr oder weniger eine plattformübergreifende standardisierte Methode zur Auswahl ganzer Wörter ist. Anscheinend hat das Visual Studio-Team eine etwas seltsame Konvention gewählt, und Sie haben jetzt eine unkonventionelle Angewohnheit angenommen. Die Antwort ist nicht, alles so zu ändern, dass es dem Ausreißer ähnelt. Die Antwort ist, den Standard zu akzeptieren, der überall funktioniert.

Außerdem: Dies ist ein Issue-Tracker für eine IDE. Geschrieben von und für Softwareentwickler. Ich glaube nicht, dass Sie eine Novelle schreiben müssen, in der erklärt wird, warum die Auswahl ganzer Wörter für "Programmierer wie mich" nützlich sein könnte. Wir wissen... ;)

Doppelklicken Sie einfach auf das Wort. Das ist Muskelgedächtnis, das Ihnen in weitaus mehr Situationen helfen wird, da es mehr oder weniger eine plattformübergreifende standardisierte Methode zur Auswahl ganzer Wörter ist. Anscheinend hat das Visual Studio-Team eine etwas seltsame Konvention gewählt, und Sie haben jetzt eine unkonventionelle Angewohnheit angenommen. Die Antwort ist nicht, alles so zu ändern, dass es dem Ausreißer ähnelt. Die Antwort ist, den Standard zu akzeptieren, der überall funktioniert.

Ich habe dieses Muskelgedächtnis nicht, aber ich denke, die Kraft, solche Dinge zu ändern, ist ziemlich wichtig. Es fällt mir schwer zu glauben, dass es viele Leute gibt, die schon eine Weile programmiert haben und nicht ein oder zwei nicht standardmäßige Gewohnheiten aufgegriffen haben - meine ist insbesondere, wie großartig Alt + Drag für rechteckige Auswahl ist. Nach über einem Jahr mit vscode habe ich das Muskelgedächtnis gebrochen, aber immer noch die Funktionalität vermisst.

Ich möchte hier nicht sagen, dass mein Problem wichtiger ist oder so etwas (obwohl es keine gute "Standard" -Alternative gibt, die auf einem Trackpad funktioniert), aber dass eine standardisierte Form vorhanden ist, ist kein wirklich gutes Argument für etwas nicht zu unterstützen.

Das heißt, dies kommt wahrscheinlich vom Thema ab, also ist es am besten, wenn wir diese Trommel nicht viel weiter schlagen ...

Doppelklicken Sie einfach auf das Wort. Das ist Muskelgedächtnis, das Ihnen in weitaus mehr Situationen helfen wird, da es mehr oder weniger eine plattformübergreifende standardisierte Methode zur Auswahl ganzer Wörter ist.

🤨

Strg + Klicken ist eine Geste, bei der Wörter anstelle von Zeichen ausgewählt werden, nicht ein einzelnes Wort . Mit einem viel langsameren Doppelklick kann man nie so viel machen.

Es würde bereits helfen, einzelne Wörter besser auszuwählen, aber das ist nur ein Teil der Geschichte. (Was ich befürchte, kann nicht dadurch behoben werden, dass nur Verknüpfungen neu zugeordnet werden dürfen, da Gesten komplexer sind.)

So geht Visual Studio vor:

  • Shift Down Startet die Tastaturauswahl
  • Mouse Button 1 Down Startet die Mausauswahl / Wenn Shift down ist, wird der Auswahlstart an der vorherigen Position des Bearbeitungscursors festgelegt.
  • Ctrl Ab + Auswahl Ändert das Auswahlverhalten wortweise (dynamisches Umschalten für die Tastaturauswahl)
  • Alt Nach unten + Auswahl Ändert das Auswahlverhalten in Spalte / Feld (Kann nicht durch Loslassen der Taste deaktiviert werden, kann aber dynamisch für die Tastaturauswahl aktiviert werden)

Der Kern davon ist, dass Ctrl und Alt (und möglicherweise andere / zukünftige Modifikatoren) unabhängig von der Herkunft der Auswahl (Maus oder Tastatur) weitgehend konsistent als Modifikatoren für das Auswahlverhalten fungieren. .
Es gibt offensichtlich Unterschiede zwischen Maus- und Tastaturauswahlmodi in einigen Eckfällen, aber das würden Sie nicht bemerken, wenn Sie nicht speziell danach suchen.

Vergleichen Sie dies jedoch mit der Art und Weise, wie VS Code (tief) gebrochen ist, wenn es um die Konsistenz zwischen Tastatur- und Mausauswahl geht:

  • Die Spaltenauswahl lautet Shift + Alt + Mouse Button 1 mit der Maus, wird jedoch zu Shift + Ctrl + Alt + Arrow Keys mit der Tastatur. Ein zusätzlicher Schlüssel, einfach so. 🤷‍♂️
  • Die Wortauswahl wird Shift + Ctrl + Arrow Keys mit der Tastatur sein und ... Oh, schade, wir haben die Maus vergessen! 😐

Es scheint, dass es nur Sonderfälle bei der Implementierung der Textauswahl von VS Code gibt. Ich weiß nicht, wie wir dazu gekommen sind, aber das ist wirklich schlimm.

Ich wünschte wirklich, die Tasten für Auswahlmodifikatoren könnten angepasst werden, um dies zu beheben, aber angesichts des Alters aller damit zusammenhängenden Probleme befürchte ich, dass dies niemals passieren wird… 😟

@GoldenCrystal VS Code implementiert das gängige Paradigma von Terminals und Textbereichen, bei denen ein Einzelklick-Ziehen durch Glyphen, ein Doppelklick-Ziehen durch ein Wort und als Bonus ein Dreifach-Ziehen durch eine Linie erfolgt.

Wenn Sie in Rom sind, genießen Sie die lokalen Traditionen und beachten Sie bitte, dass Nicht-Code-VS die seltsame ist.

Geben Sie einfach eine Möglichkeit an, mit [Strg] [Klicken] das gesamte Wort auszuwählen, wie dies in Visual Studio der Fall ist.

Doppelklicken Sie einfach auf das Wort. Das ist Muskelgedächtnis, das Ihnen in weitaus mehr Situationen helfen wird, da es mehr oder weniger eine plattformübergreifende standardisierte Methode zur Auswahl ganzer Wörter ist. Anscheinend hat das Visual Studio-Team eine etwas seltsame Konvention gewählt, und Sie haben jetzt eine unkonventionelle Angewohnheit angenommen. Die Antwort ist nicht, alles so zu ändern, dass es dem Ausreißer ähnelt. Die Antwort ist, den Standard zu akzeptieren, der überall funktioniert.

Außerdem: Dies ist ein Issue-Tracker für eine IDE. Geschrieben von und für Softwareentwickler. Ich glaube nicht, dass Sie eine Novelle schreiben müssen, in der erklärt wird, warum die Auswahl ganzer Wörter für "Programmierer wie mich" nützlich sein könnte. Wir wissen... ;)

Versuchen Sie einfach, den ganzen Tag auf Dinge zu doppelklicken ... Sie werden feststellen, dass die Maus oder Ihr Finger oft nicht das Richtige getan haben und Sie einfach geklickt haben, anstatt doppelt geklickt zu haben. Drücken Sie dann bei gedrückter Strg-Taste genau dort ein neues Fenster und sehen Sie, wie oft Sie das versehentlich geöffnete Fenster schließen müssen. Ein Klick ist 100x einfacher und weniger fehleranfällig.

Ich bin seit 35 Jahren Softwareentwickler. Wenn es wirklich so schwierig ist, eine Option einzufügen, mit der wir angeben können, ob wir dieses Verhalten oder diese "Peek-Definition" wünschen, dann behaupte ich, dass das Programm nicht sehr gut gestaltet ist. Warum uns zwingen, etwas zu tun, das so viel weniger optimal und fehleranfälliger ist? Mach es einfach und hör auf darüber zu streiten. Microsoft hat dies sowohl für Visual Studio als auch für SQL Server Management Studio durchgeführt. Wir lieben es, weil es so natürlich und effizient ist.

Ich stehe kurz davor, "F VS Code" zu sagen und meinen eigenen zu schreiben oder einen anderen Editor zu finden, der dies unterstützt. So wertvoll ist es.

Vielleicht können Sie nicht verstehen, warum es für uns so wertvoll ist, weil Sie vielleicht nicht sehen, dass es ein wesentlicher Bestandteil der Aktivitäten ist, die wir jeden Tag den ganzen Tag durchführen. Eines der häufigsten Dinge, die viele Programmierer den ganzen Tag tun, ist, ein Wort auszuwählen, es zu kopieren und dann an anderer Stelle durch ein anderes Wort zu ersetzen. Mit [Strg] [Klicken], um das Wort auszuwählen, ist es WIRKLICH effizient. Wenn Sie die [Strg] -Taste gedrückt halten, drücken Sie einfach [Klicken], c, um das Wort zu kopieren, und [Klicken] v, um das Zielwort zu ersetzen. Ohne [Strg] [Klicken], um das Wort auszuwählen, müssen Sie mindestens zweimal doppelklicken, einmal, um das Quellwort auszuwählen, und dann jedes Mal, um das Zielwort auszuwählen. Doppelklicken ist eine sehr fehleranfällige Operation. Ist es wirklich so schwer, eine Konfigurationseinstellung einzugeben, um dies zu tun, anstatt "Peek Definition". Sie haben bereits eine Einstellung zum Ausschalten. Wie schwer könnte es sein?

Gibt es zumindest eine Möglichkeit, die Strg-Klick-Aktion einfach zu deaktivieren, damit Sie nicht zur Definition gelangen?

Ich unterstütze die Möglichkeit, bei gedrückter Strg-Taste "Gehe zur Implementierung" auszuführen. Ich bin tatsächlich in diesem Thread gelandet, weil ich diese Option wollte. Das Aufrufen eines Menüs, in dem der Benutzer gefragt wird, ob er die Importanweisung in genau derselben Datei oder in der tatsächlichen Implementierung anzeigen möchte, war schon immer meine Nummer. 1 Ärger in VScode.

Diese! IMO "Gehe zur Implementierung" ist viel natürlicher, wenn es als Point-and-Click ausgeführt wird. Es ist eine logische Erweiterung von "Gehe zur Definition", z. B. wie es in ReSharper funktioniert - STRG + ALT + LMB

Gibt es noch keine Möglichkeit, Strg + Klick in Visual Studio zu machen?

@thedrean du meinst Visual Studio Code (VS Code) oder? Visual Studio ist eine völlig andere IDE https://visualstudio.microsoft.com

Gibt es noch keine Möglichkeit, Strg + Klick in Visual Studio zu machen?

Noch nicht

+1 Das muss gestern passieren. Ich habe in Google nach Möglichkeiten zum Entfernen der Standard-Strg + Klick-Funktion gesucht, da dies das Frustrierendste an VSCode ist und sehr enttäuscht ist. Wie @CCurl hervorhob , tun Entwickler dies nicht nur täglich, sondern auch minutiös, und die Standardeinstellung "Gehe zu Definition" ist nur äußerst ärgerlich. Ich möchte nur schnell ein bisschen Text auswählen. Ist das zu viel, um in einer IDE nachzufragen?!

Warum sollte Microsoft Benutzer effektiv auf eine Reihe von Tastaturkürzeln (Visual Studio) schulen und dann scheinbar als Scherz diese Bindungen in VSCode ändern? Scheint mir eine verrückte User Experience-Abteilung zu sein.

Eine andere gebräuchliche Option ist Strg + K + D, um Dinge zu formatieren. Bitte geben Sie uns die Option, eine "Vorlage" für die Tastaturbindung auszuwählen, die eng mit Visual Studio übereinstimmt.

Noch einer! Strg +. ist so nah an Strg +, dass Sie es häufig falsch eingeben und das Einstellungsfenster geöffnet wird. Nervig.

Es ist wichtig zu bedenken, dass es viele Benutzer von VSCode gibt, die Visual Studio zuvor nicht verwendet haben. Ich kann zwar verstehen, dass Benutzer, die von dort kamen, dieselben Tastatur- und Mausbindungen erwarten würden, aber es wäre kurzsichtig, die Funktionalität einzuschränken, um die Visual Studio-Bindungen einfach nachzuahmen.

Das Zulassen von Anpassungen ist der Schlüssel. Ich stelle mir vor, dass es eine Vielzahl von Erweiterungen geben könnte, sobald die Anpassung zulässig ist: eine zur Nachahmung der Visual Studio-Mausbindungen, eine zur Nachahmung der generischen X / Unix / Linux-Bindungen (z. B. "Middle Click Paste") usw. Es gibt bereits ähnliche Erweiterungen Das Gleiche gilt für die Tastaturbindungen, um andere Editoren (Sublime, Emacs, VIM usw.) nachzuahmen, und diese können auch mit Mausbindungen erweitert werden.

Nicht nur "nie verwendet VS", sondern auch "verwendet \".
Dh Strg + Klick = Peek-Definition ist (war) auch bei Borland-IDEs üblich.

Darüber hinaus winke ich häufig mit der Maus, um den aktuell geöffneten Tab zu schließen. Muskelgedächnis…

Hin und wieder probierte ich den VS-Code aus, nachdem ich einige gute Verbesserungen im Änderungsprotokoll festgestellt hatte. Aber das erste, was mich beeindruckt hat, ist, dass ich Alt + Click immer noch als Peek-Definition anpasse. Dann bin ich wieder bei IntelliJ. Ich denke, viele andere würden genauso denken, wenn sie den Mausklick nicht neu zuordnen könnten.

Die Strg + Klick-Taste zum Auswählen des gesamten Wortes (und das Ziehen, um die wortweise Auswahl fortzusetzen) ist ebenfalls eine weitreichende Eingabehilfenfunktion.

Es ist nicht nur einfacher und bequemer, sondern auch gesünder (oder weniger schädlich).

Also fand ich eine (vielleicht unvollständige, aber immer noch) Umgehung, mit der ich ein Wort mit einem einzigen Tastendruck auswählen / kopieren und ein anderes Wort durch das zuletzt kopierte ersetzen kann. Es verwendet die VIM-Erweiterung und benutzerdefinierte Tastenkombinationen im normalen Modus.

Jetzt kann ich auf eine beliebige Stelle in einem Wort klicken und [drücken, um das gesamte Wort zu kopieren. Dann kann ich auf eine beliebige Stelle in einem anderen Wort klicken und] drücken, um dieses Wort durch das gerade kopierte Wort zu ersetzen.

Es ist nicht perfekt und ich lerne immer noch die VIM-Methode zum Bearbeiten von Dateien, aber ich denke, es wird mir gefallen. VIM ist sehr leistungsfähig.

image

Ein weiterer Workaround zumKlicken Sie auf Problem ... installieren Sie die Erweiterung "Makros" von "geddski". Fügen Sie dies dann in Ihre Datei settings.json ein:

"macros": {
    "copyWord": [
        "cursorWordEndRight",
        "cursorWordStartLeft",
        "cursorWordEndRightSelect",
        "editor.action.clipboardCopyAction"
    ],
    "replaceWord": [
        "cursorWordEndRight",
        "cursorWordStartLeft",
        "cursorWordEndRightSelect",
        "editor.action.clipboardPasteAction"
    ]
}

Binden Sie sie dann an die gewünschten Schlüssel in Ihrer keybindings.json:

{
    "key": "F9",
    "command": "macros.copyWord",
    "when": "editorTextFocus"
},
{
    "key": "F10",
    "command": "macros.replaceWord",
    "when": "editorTextFocus"
}

Jetzt kann ich klicken, F9, klicken, F10. Nicht genau das gleiche wieklicken,C,klicken,V, aber verdammt nah dran.

Unterstützung! Sogar Visual Studio kann die Schriftgröße über "Strg + Mauslauf" anpassen.

VS Code kann genauso gut mit der Maus zoomen. Ich weiß nicht, warum Sie DAS erwähnt haben, ohne es zu überprüfen.

+1

Gibt es eine Chance, dass dieses Problem jemals untersucht wird? Es ist jetzt 4 Jahre alt und hat über 800 Upvotes ... Es ist das Hauptproblem, das mich daran hindert, zu VS Code zu wechseln. Insbesondere möchte ich in der Lage sein, Strg + Klicken von "Gehe zu Definition" zu "Wort auswählen" wie Visual Studio zu deaktivieren / neu zuzuordnen. Während ich die Anfrage nach einer vollständigen Mauskonfiguration erhalte, würde ich mich über eine einfache boolesche Konfiguration für diese Einstellung als vorübergehende Problemumgehung freuen.

Geben Sie hier https://github.com/microsoft/vscode/issues/71817#issuecomment -482754429 Punkte ein, damit ich fragen kann: Gibt es eine Möglichkeit, mittlere Mausklicks (PASTE) durch das Terminal zu lassen?

Ich bin auf MasOS Catalina mit einem Bash-Terminal, das sich im Standalone-Modus korrekt verhält, aber mittlere Mausklicks ignoriert / nicht empfängt, wenn sie in VSCode eingebettet sind.

Terminal> Integriert: Middle Click-Verhalten
Steuert, wie das Terminal auf einen mittleren Klick reagiert.
(Dropdown-Werte: Gleichbedeutend mit Rechtsklickverhalten, sofern es "Einfügen" enthält)

Ich möchte nur einen mittleren Klick einfügen, es ist auf Terminals (z. B. Mac, verschiedene Linux) häufig genug, dass es als Option in VS Code angeboten werden sollte

Noch eine Stimme von mir, um mit einem mittleren Klick einfügen und automatisch kopieren zu können, wenn Sie einen Text im Terminal auswählen

@KrisPetkov automatische Kopie bei Auswahl ist bereits eine Option
screenshot_2020-10-12_at_14 12 58

Beachten Sie auch in den obigen Einstellungen, dass Sie das Einfügen mit Rechtsklick aktivieren können. Dies ist zwar kein Einfügen mit mittlerem Klick, kann aber in der Zwischenzeit verwendet werden

Irgendein Fortschritt?

Strg + Rad -> vorwärts und rückwärts navigieren

Ich möchte die mittlere Maustaste implementieren, um zur Definition zu gelangen, anstatt Strg + Klick oder F12 drücken zu müssen.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen