Cómo obtener (fácilmente) la ruta del archivo actual en Sublime Text 3

120

Cómo obtener (fácilmente) la ruta del archivo actual en Sublime Text 3

No suelo usar la consola ST (la usé solo una vez para instalar el administrador de paquetes ), pero supongo que podría ser una buena manera de:

  • obtener la ruta del archivo actual como algún tipo de comando pwd .
  • Pero no funciona.

¿Alguien conoce una manera fácil de obtener la ruta del archivo actual?

  • al portapapeles: mejor no un objetivo estricto en la respuesta
  • no es necesario por comando ST, tal vez paquete?
MacKentoch
fuente
2
Solo si tiene curiosidad, en la consola obtiene la ruta usando view.file_name()y la copia al portapapeles usandosublime.set_clipboard(view.file_name())
sergioFC
Si desea ver la ruta, simplemente pase el mouse sobre la pestaña y aparecerá una información sobre herramientas con la ruta.
becko

Respuestas:

229

Haga clic derecho en algún lugar del archivo (no en la pestaña de título) -> Copiar ruta de archivo

Si no desea usar el mouse, puede configurar un atajo de teclado como se explica aquí /superuser/636057/how-to-set-shortcut-for-copy-file-path-in -sublime-text-3

Railslide
fuente
1
Funciona también en sublime text 2. Tan impresionante, pero tan simple
beautifulcoder
1
Sin embargo, hacer clic derecho en las imágenes no parece funcionar: /
agosto
2
La palabra clave @aug es 'texto' en el nombre Sublime Text.
Mike Kormendy
4
estado aquí antes ... maldita sea, sigo haciendo clic en la pestaña del título para obtenerlo
zok
3
Lástima que no sea posible en la pestaña, tienes que cambiar de pestaña antes de hacer eso, a veces es un poco molesto
Rafiki
21

Para copiar fácilmente la ruta del archivo actual, agregue lo siguiente a Key Bindings - User:

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

Fuente

Key Bindings - Userse puede abrir a través de la paleta de comandos ( command + pen OSX)

pulpo cheshire
fuente
3
¿Cómo sabe que copy_pathes el comando correcto? ¿Cómo sabemos lo que está disponible? ¿Hay algún documento que me pierda?
cyber8200
2
@ihue - buena pregunta; no se pudo localizar copy_pathen los documentos; Si consulta la fuente que proporcioné anteriormente, ese usuario activó el registro de comandos a través de sublime.log_commands(True).
Cheshireoctopus
13

Fácil de entender usando imágenes. Al hacer clic derecho obtendrá esto.

ingrese la descripción de la imagen aquí

Código transcrito en imagen para mayor comodidad:

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
fuente
4

Mac OS X - Sublime Text 3

Haga clic derecho en >Copiar ruta de archivo

ingrese la descripción de la imagen aquí

cyber8200
fuente
2

Hay un paquete sublime que le da la ubicación actual de su archivo dentro de una barra de estado. Los cloné directamente en mi carpeta / sublime-text-3 / Packages.

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

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

Tienes que comprobar / leer la descripción en GitHub. Incluso si aparece en el control de paquetes, no se instalaría correctamente para mí. De hecho, puede editar la salida del shell como desee. Si tiene las habilidades adecuadas con python / shell.

Se ve así (Tema material) ingrese la descripción de la imagen aquí

TecBeast
fuente
2

Si eres como yo y siempre haces clic en los elementos de la barra lateral solo para darte cuenta de que copiar la ruta solo funciona al hacer clic en el área del editor, echa un vistazo a SideBarEnhancements paquete . Tiene un montón de opciones para copiar rutas de archivos de diferentes formas.

La instalación está disponible a través de Package Control (a pesar de que la página web solo menciona la instalación mediante descarga manual).

Nota: El paquete "envía estadísticas básicas y anónimas" . La página web explica cómo optar por no participar.

SublimeSideBar Mejoras Captura de pantalla

qqilihq
fuente
1

Vaya a este enlace . El código del enlace lo proporciona robertcollier4 .

Crea un archivo llamado CpoyFileName.py o lo que quieras con la extensión .py.

Guarde el archivo en la Sublime Text 3\Packages\Usercarpeta. Luego pegue los enlaces de teclas dados anteriormente en su Preferences: Key Bindingsarchivo.

Ahora, puede usar las combinaciones de teclas especificadas para copiar solo el nombre de archivo o la ruta de archivo total (absoluta).

Tenga en cuenta que el nombre del archivo o la ruta del archivo contienen la extensión del archivo.

bantya
fuente
0

Muchas de estas respuestas implican tocar el mouse. A continuación, le mostramos cómo obtener la ruta sin ningún clic del mouse usando SideBarEnhancements

  1. Instale SideBarEnhancements mediante PackageControl.
  2. Haga clic en super + shift + P para abrir la paleta de comandos
  3. En la paleta de comandos, comience a escribir pathhasta que veaFile: Copy Path
  4. Seleccione File: Copy Path

Ahora, la ruta al archivo en el que está trabajando se copia en su portapapeles.

Aaron Dall
fuente