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?

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


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


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

4

Mac OS X - Erhabener Text 3

Klicken Sie mit der rechten Maustaste auf >Dateipfad kopieren

Geben Sie hier die Bildbeschreibung ein


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 git@github.com:shagabutdinov/sublime-shell-status.git ShellStatus;

git clone git@github.com: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


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


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.


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.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.