So erhalten Sie (einfach) den aktuellen Dateipfad in Sublime Text 3

119

So erhalten Sie (einfach) den aktuellen Dateipfad in Sublime Text 3

Ich benutze die ST-Konsole nicht oft ( ich habe sie nur einmal verwendet, um den Paketmanager zu installieren ), aber ich nehme an, es könnte ein guter Weg sein, um:

  • Holen Sie sich den aktuellen Dateipfad wie einen pwd- Befehl.
  • Aber es funktioniert nicht.

Kennt jemand einen einfachen Weg, um den aktuellen Dateipfad zu erhalten?

  • in die Zwischenablage: Besser kein striktes Ziel in der Antwort
  • nicht erforderlich durch ST-Befehl, vielleicht Paket?
MacKentoch
quelle
2
Nur wenn Sie neugierig sind, erhalten Sie in der Konsole den Pfad mit view.file_name()und kopieren ihn mitsublime.set_clipboard(view.file_name())
sergioFC
Wenn Sie möchten , sehen Sie den Pfad, fahren Sie einfach mit der Maus über die Registerkarte und ein Tooltip mit dem Pfad wird sich zeigen.
Becko

Antworten:

227

Klicken Sie mit der rechten Maustaste irgendwo in die Datei (nicht auf die Registerkarte Titel) -> Dateipfad kopieren

Wenn Sie die Maus nicht verwenden möchten, können Sie eine Tastenkombination einrichten, wie hier erläutert: /superuser/636057/how-to-set-shortcut-for-copy-file-path-in -sublime-text-3

Railslide
quelle
1
Funktioniert auch in erhabenem Text 2. So großartig und doch so einfach
Beautifulcoder
1
Ein Rechtsklick Bilder scheinen nicht zu funktionieren aber: /
aug
2
@aug Schlüsselwort ist 'Text' im Namen Sublime Text.
Mike Kormendy
4
Ich war schon einmal hier ... verdammt, ich
klicke
3
Schade, dass es auf der Registerkarte nicht möglich ist, man muss vorher die Registerkarte wechseln, manchmal ist es ein bisschen nervig
Rafiki
21

Fügen Sie Folgendes hinzu, um den aktuellen Dateipfad einfach zu kopieren Key Bindings - User:

{ "keys": ["ctrl+alt+c"], "command": "copy_path" },

Quelle

Key Bindings - Userkann über die Befehlspalette ( command + punter OSX) geöffnet werden

Cheshireoctopus
quelle
3
Woher weißt du, dass copy_pathdas der richtige Befehl ist? Woher wissen wir, was verfügbar ist? Gibt es irgendwelche Dokumente, die ich vermisse?
Cyber8200
2
@ihue - gute Frage; konnte nicht copy_pathin den Dokumenten finden; Wenn Sie die oben angegebene Quelle überprüfen, hat dieser Benutzer die Befehlsprotokollierung über aktiviert sublime.log_commands(True).
Cheshireoctopus
13

Mit Bild leicht zu verstehen. Bei Rechtsklick erhalten Sie diese.

Geben Sie hier die Bildbeschreibung ein

Transkribierter Code im Bild zur Vereinfachung:

import sublime, sublime_plugin, os

class CopyFilenameCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        if len(self.view.file_name()) > 0:
            filename = os.path.split(self.view.file_name())[1]
            sublime.set_clipboard(filename)
            sublime.status_message("Copied file name: %s" % filename)

    def is_enabled(self):
        return self.view.file_name()...  # can't see
Suyash Kumar Bharti
quelle
4

Mac OS X - Erhabener Text 3

Klicken Sie mit der rechten Maustaste auf >Dateipfad kopieren

Geben Sie hier die Bildbeschreibung ein

cyber8200
quelle
2

Es gibt ein Sublime-Paket, das Ihren aktuellen Dateispeicherort in einer Statusleiste angibt. Ich habe sie gerade direkt in meinen Ordner / sublime-text-3 / Packages geklont.

git clone [email protected]:shagabutdinov/sublime-shell-status.git ShellStatus;

git clone [email protected]:shagabutdinov/sublime-status-message.git StatusMessage;

Sie müssen die Beschreibung auf GitHub überprüfen / lesen. Selbst wenn es in der Paketsteuerung aufgeführt ist, würde es für mich nicht richtig installiert werden. Sie können die Shell-Ausgabe tatsächlich nach Ihren Wünschen bearbeiten. Wenn Sie die richtigen Fähigkeiten mit Python / Shell haben.

Sieht so aus (Materialthema) Geben Sie hier die Bildbeschreibung ein

TecBeast
quelle
2

Wenn Sie wie ich sind und immer auf Elemente in der Seitenleiste klicken, um festzustellen , dass das Kopieren des Pfads nur funktioniert, wenn Sie in den Editorbereich klicken, sehen Sie sich das SideBarEnhancements- Paket an. Es gibt eine Vielzahl von Optionen zum Kopieren von Dateipfaden auf verschiedene Arten.

Die Installation ist über Package Control möglich (obwohl auf der Webseite nur die Installation per manuellem Download erwähnt wird).

Hinweis: Das Paket "sendet grundlegende, anonyme Statistiken" . Auf der Webseite wird erklärt, wie Sie dies deaktivieren können.

SublimeSideBarEnhancementsScreenshot

qqilihq
quelle
1

Gehen Sie zu diesem Link . Der Code im Link wird von robertcollier4 angegeben .

Erstellen Sie eine Datei mit dem Namen CpoyFileName.pyoder was auch immer Sie möchten mit der Erweiterung .py.

Speichern Sie die Datei im Sublime Text 3\Packages\UserOrdner. Fügen Sie dann die oben angegebenen Tastenkombinationen in Ihre Preferences: Key BindingsDatei ein.

Jetzt können Sie die angegebenen Tastenkombinationen verwenden, um nur den Dateinamen oder den gesamten (absoluten) Dateipfad zu kopieren.

Bitte beachten Sie, dass der Dateiname oder der Dateipfad eine Dateierweiterung enthält.

Bantya
quelle
0

Bei vielen dieser Antworten wird die Maus berührt. Hier erfahren Sie, wie Sie den Pfad mithilfe von SideBarEnhancements ohne Mausklicks abrufen

  1. Installieren Sie SideBarEnhancements mit PackageControl.
  2. Klicken Sie auf Super + Shift + P, um die Befehlspalette zu öffnen
  3. Beginnen pathSie in der Befehlspalette mit der Eingabe, bis Sie sehenFile: Copy Path
  4. Wählen File: Copy Path

Jetzt wird der Pfad zur Datei, in der Sie arbeiten, in Ihre Zwischenablage kopiert.

Aaron Dall
quelle