Como (facilmente) obter o caminho do arquivo atual em Sublime Text 3

120

Como (facilmente) obter o caminho do arquivo atual em Sublime Text 3

Não costumo usar o console ST ( usei-o apenas uma vez para instalar o gerenciador de pacotes ), mas acho que pode ser uma boa maneira de:

  • obtém o caminho do arquivo atual como algum tipo de comando pwd .
  • Mas não funciona.

Alguém conhece uma maneira fácil de obter o caminho do arquivo atual?

  • para a área de transferência: melhor não um objetivo estrito na resposta
  • não é necessário pelo comando ST, talvez pacote?
MacKentoch
fonte
2
Se você estiver curioso, no console você obtém o caminho usando view.file_name()e copia para a área de transferência usandosublime.set_clipboard(view.file_name())
sergioFC
Se quiser ver o caminho, basta passar o mouse sobre a guia e uma dica de ferramenta com o caminho aparecerá.
becko

Respostas:

229

Clique com o botão direito em algum lugar do arquivo (não na guia do título) -> Copiar caminho do arquivo

Se não quiser usar o mouse, você pode configurar um atalho de teclado conforme explicado aqui /superuser/636057/how-to-set-shortcut-for-copy-file-path-in -sublime-text-3

Railslide
fonte
1
Também funciona no texto sublime 2. Tão incrível, mas tão simples
belo
1
Clicar com o botão direito nas imagens parece não funcionar: /
agosto
2
@aug palavra-chave sendo 'texto' no nome Sublime Text.
Mike Kormendy
4
já estive aqui antes ... caramba, continuo clicando na guia de título para obtê-lo
zok
3
pena que não é possível na guia, você tem que mudar de guia antes de fazer isso, às vezes é um pouco chato
Rafiki
21

Para copiar facilmente o caminho do arquivo atual, adicione o seguinte a Key Bindings - User:

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

Fonte

Key Bindings - Userpode ser aberto através da paleta de comandos ( command + pno OSX)

cheshireoctopus
fonte
3
Como você sabe que copy_pathé o comando correto? Como sabemos o que está disponível? Há algum documento que eu sinto falta?
cyber8200 de
2
@ihue - boa pergunta; não foi capaz de localizar copy_pathnos documentos; se você verificar a fonte fornecida acima, esse usuário ativou o registro de comandos via sublime.log_commands(True).
cheshireoctopus
13

Fácil de entender usando imagem. Com o botão direito você obterá isso.

insira a descrição da imagem aqui

Código transcrito em imagem para conveniência:

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

Mac OS X - Sublime Text 3

Clique com o botão direito em >Copiar caminho do arquivo

insira a descrição da imagem aqui

cyber8200
fonte
2

Existe um Pacote Sublime que fornece a localização do arquivo atual dentro de uma barra de status. Acabei de cloná-los diretamente para minha pasta / sublime-text-3 / Packages.

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

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

Você deve verificar / ler a descrição no GitHub. Mesmo estando listado no controle de pacote, ele não seria instalado corretamente para mim. Você pode realmente editar a saída do shell como quiser. Se você tiver as habilidades certas com python / shell.

É assim (tema material) insira a descrição da imagem aqui

TecBeast
fonte
2

Se você é como eu e sempre clica nos itens da barra lateral apenas para perceber que copiar o caminho só funciona ao clicar na área do editor, dê uma olhada na Barra Lateral. pacote . Ele tem um monte de opções para copiar caminhos de arquivos de várias maneiras diferentes.

A instalação está disponível via Package Control (apesar da página da web mencionar apenas a instalação via download manual).

Nota: O pacote “envia estatísticas básicas anônimas” . A página da web explica como desativar isso.

SublimeSideBarEnhancementsScreenshot

qqilihq
fonte
1

Vá para este link . O código no link é fornecido por robertcollier4 .

Crie um arquivo chamado CpoyFileName.pyou o que quiser com a extensão .py.

Salve o arquivo na Sublime Text 3\Packages\Userpasta. Em seguida, cole as combinações de teclas fornecidas acima em seu Preferences: Key Bindingsarquivo.

Agora, você pode usar as combinações de teclas especificadas para copiar apenas o nome do arquivo ou o caminho de arquivo total (absoluto).

Observe que o nome do arquivo ou caminho do arquivo contém a extensão do arquivo.

bantya
fonte
0

Muitas dessas respostas envolvem tocar o mouse. Veja como obter o caminho sem nenhum clique do mouse usando SideBarEnhancements

  1. Instale SideBarEnhancements usando PackageControl.
  2. Clique em super + shift + P para abrir a paleta de comandos
  3. Na paleta de comandos, comece a digitar pathaté verFile: Copy Path
  4. Selecione File: Copy Path

Agora, o caminho para o arquivo em que você está trabalhando é copiado para a área de transferência.

Aaron Dall
fonte