5

ich viele Anrufe an diese show_panel Funktion mit einem args Objekt wie folgt sehen:Sublime Text (3) Plugin definieren neue Panel

{ 
    "keys": ["ctrl+shift+f"], 
    "command": "show_panel", 
    "args": {"panel": "find_in_files"} 
} 

Ich kann nicht finden, wo die show_panel Funktion definiert ist und fange an zu denken dass es nicht ausgesetzt ist. Ist es möglich ein neues Panel zu definieren?

+0

Es ist ein bisschen alt, aber als ich für meine sublime suche fand ich Ihren Beitrag ... Meinen Sie einen neuen Tab? Ich mache meine Git in einer toggleable neuen Registerkarte, wenn das hilft – Erik255

+0

Hey @ Erik255 Ich beziehe mich tatsächlich auf ein Panel wie, was erscheint, wenn Sie versuchen, eine Suche zu tun. Ich weiß, dass ich unten eine Eingabeaufforderung für eine einzelne Zeile anzeigen kann, aber ich wollte in der Lage sein, ein mehrzeiliges Formular zu erstellen. Lassen Sie es mich wissen, wenn Sie einen Weg finden, dies zu tun. –

Antwort

6

Ja. Es ist möglich.
In Sublime Text 2, im Grunde, was Sie brauchen, ist:

  1. eine Ausgangsplatte erstellen: window.get_output_panel ("paneltest"), ist diese Rückkehr ein < sublime.View Objekt >
  2. Ausgabe aktivieren: < sublime .View > Objekt .set_read_only (false)
  3. öffnen Puffer Editor: < sublime.View object> .begin_edit(), liefert dieser eine < sublime.Edit Objekt >
  4. Schreibe sehen Sie wollen: < sublime.View Objekt > .Insert (bearbeiten, pt.size(), "Writing ...")
  5. schließen Puffer Editor: < sublime.View object> .end_edit()
  6. Disable Ausgabe: < sublime.View Objekt > .set_read_only (True)
  7. Zeigen Sie Ihre Platte: window.run_command ("show_panel", { "Panel": "output.paneltest"})

Um zu testen, , geben Sie in der Konsolenansicht in Sublime nacheinander folgende Zeilen ein:

pt = window.get_output_panel("paneltest") 
pt.set_read_only(False) 
edit = pt.begin_edit() 
pt.insert(edit, pt.size(), "Writing...") 
pt.end_edit(edit) 
window.run_command("show_panel", {"panel": "output.paneltest"}) 

In Sublime Text 3, führen nicht die Schritte 3 und 5.

+0

Das beantwortet meine Frage. Ich nehme an, das führt mich dazu, mich zu fragen, ob dieses Panel gehäutet werden kann und ob Buttons hinzugefügt werden können oder ob wir auf Text und keine Interaktion beschränkt sind. –

+2

Wenn Sie die Schritte 3 und 5 nicht ausführen, wie schreiben Sie in das Bedienfeld in Schritt 4 ohne eine Bearbeitungsvariable? – Jon

+0

Gibt es Dokumentation für diese Art von Sache in erhaben? – pushplaybang

Verwandte Themen