Atalho de teclado Sublime Text 2 para abrir o arquivo no navegador especificado (por exemplo, Chrome)

109

Eu faço desenvolvimento web e estou experimentando o Sublime Text 2. Há um atalho de teclado para abrir o arquivo atual no navegador especificado (por exemplo, Chrome)?

Qualquer ajuda para configurar o Sublime Text para desenvolvimento web é apreciada!

wwwuser
fonte

Respostas:

168

Não tenho certeza se esta pergunta é apropriada aqui, mas você pode adicionar um novo "Sistema de Compilação" em Tools -> Build System -> New Build System...

Como toda configuração em Sublime Text é apenas JSON, então deve ser bastante simples. A principal coisa que você deseja configurar é a "cmd"chave / val. Aqui está a configuração de compilação para lançar o Chrome no meu mac.

{
    "cmd": ["open", "-a", "Google Chrome", "$file"]
}

Salve isso como Chrome.sublime-build, reinicie o Sublime Text e você verá uma nova Chromeopção na lista de construção. Selecione-o, e então você deve ser capaz de iniciar o Chrome com Cmd+ Bem um Mac (ou qualquer tecla de atalho que você configurou para compilar, talvez seu F7ou Ctrl+ Bem uma máquina Windows)

Pelo menos isso deve lhe dar um empurrão na direção certa.

Editar:

Outra coisa que acabo fazendo muito no Sublime Text 2 é se você clicar com o botão direito dentro de um documento, um dos itens do menu de contexto é Copy File Path, que coloca o caminho completo do arquivo atual na área de transferência para fácil colagem em qualquer navegador que você quiser.


Sublime Text 3 (exemplo de linux) "shell_cmd": "google-chrome '$ file'"

J. Holmes
fonte
5
Obrigado! Isso ajuda imensamente.
wwwuser
53
Para o Windows OS, use este cmd: {"cmd": ["PATH_TO_YOUR_CHROME", "$ file"]}
didxga
15
Cuidado com as barras invertidas no caminho do Windows, torne-as duplas ou irá considerá-las como sequência de escape inválida, portanto não funciona.
Angel
13
Também para linux é apenas{ "cmd": ["google-chrome", "$file"] }
lambda
13
No Sublime Text 3, o comando foi alterado para "shell_cmd": "open -a your_app '$file'".
Chris
48

"Abrir no menu de contexto do navegador para arquivos HTML" foi adicionado na última compilação (2207). A data de lançamento foi 25 de junho de 2012.

Aanton
fonte
2
Devo ter esquecido o menu de contexto com o botão direito. Obrigado por esta dica!
orschiro
17
E você pode facilmente atribuir um atalho para isso: Vá para Preferências> Atalhos de teclado - Usuário. em seguida, no arquivo .sublime-keymap que é aberto, adicione { "keys": ["ctrl+alt+b"], "command": "open_in_browser"}(ou qualquer outra combinação de teclas que desejar)
Jarón Barends
1
Jaron está certo, mas lembre-se de que a combinação de teclas não pode entrar em conflito com as existentes, caso contrário, simplesmente não funcionará e não há avisos de conflito de atalho em sublime, pelo que eu posso dizer
Philip007
1
[{"keys": ["super +;"], "command": "run_macro_file", "args": {"file": "Packages / User / Semicolon.sublime-macro"}}] aqui está o conteúdo em meu arquivo de configuração? como adiciono o seu à minha configuração existente? Obrigado!
Nicolas S.Xu
2
@NeilMonroe Ative os comandos de registro no console para ver possíveis errossublime.log_commands(True)
aanton
33

Windows7 FireFox / Chrome:

    {
       "cmd":["F:\\Program Files\\Mozilla Firefox\\firefox.exe","$file"]
    }

basta usar seu próprio caminho de firefox.exe ou chrome.exe para substituir o meu.

Substitua firefox.exe ou chrome.exe pelo seu próprio caminho.

boya
fonte
1
C:\\Users\\$User$\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exeé o caminho comum para o cromo no Windows (substitua $ User $ pelo seu nome de usuário).
Ben
1
Sim, mas usará a construção automática ou tenho que especificar a construção. Porque eu tenho muitas outras compilações e uso a opção de compilação Automática, então funcionará na compilação automática?
IGRACH
14

Isso funcionou no Sublime 3:


Para navegar em arquivos html com o aplicativo padrão pela tecla de atalho Alt + L:

Adicione esta linha ao Preferences -> Key Bindings - Userarquivo de abertura:

{ "keys": ["alt+l"], "command": "open_in_browser"}


Para navegar ou abrir com um aplicativo externo como o Chrome:

Adicione esta linha ao Tools -> Build System -> New Build System...arquivo de abertura e salve com o nome"OpenWithChrome.sublime-build"

"shell_cmd": "C:\\PROGRA~1\\Google\\Chrome\\APPLIC~1\\chrome.exe $file"

Em seguida, você pode navegar / abrir o arquivo selecionando Tools -> Build System -> OpenWithChromee pressionando a tecla F7ou Ctrl+B.

Mamadex
fonte
1
Esta é a maneira mais direta de fazer isso. Adicionar a linha às combinações de teclas é tudo o que a maioria das pessoas precisa.
Shawn Erquhart
1
Você também pode substituir os backshashes duplos \` with single slashaes / `que o Sublime Text também entende no Windows.
Kleinfreund
1
Isso funcionou, mas descobri que precisava do nome do arquivo entre aspas, caso meu arquivo estivesse em um diretório com espaços no nome. Ex: "C: \ Minha pasta \ test.html" faria com que duas guias do Chrome abrissem "C: \ Minha" e "Pasta \ test.html", o que está errado. Envolvendo a parte $ file com aspas de escape e isso funcionará bem (substitua $ file por \ "$ file \" no comando acima).
PancakesOwn
13

Instale o plug-in View In Browser usando Package Control ou baixe o pacote do github e descompacte este pacote na pasta de seus pacotes (a partir de pacotes de navegação)

depois disso, vá para Preferências, Ligações de teclas - Usuário, cole isso

[{"keys": ["f12"], "command": "view_in_browser"}]

agora F12 será sua tecla de atalho.

dicentiu
fonte
Eu também tive que mudar a última linha Preferences --> PackageSettings--> view in Browser -- > default settings; para "chrome 64" (era "firefox"). Funciona perfeitamente com qualquer atalho;)
kolboc
12

Você pode instalar o plugin SideBarEnhancements , que entre outras coisas lhe dará a capacidade de abrir o arquivo no navegador apenas clicando em F12.

Para abrir exatamente no Chrome, você precisará corrigir o arquivo “Side Bar.sublime-settings” e definir "default_browser"para ser "chrome".

Também recomendo aprender este tutorial em vídeo sobre Sublime Text 2.

Timofey Gorshkov
fonte
1
Errandir, onde exatamente está esse vídeo? Existem vários vídeos no link que você lista acima. Estou usando o Windows 7, não o Mac. Obrigado.
Chris22
8

No Windows que abre o navegador padrão com um url predefinido:

Ferramentas> Sistema de compilação> Novo sistema de compilação:

{
    "cmd": ["cmd","/K","start http://localhost/projects/Reminder/"]
}

ctrl+ Be voila!

Bluehipy
fonte
1
incrível, exatamente o que eu estava procurando. Obrigado!
jonschlinkert
8

Parece haver muitas soluções para o Windows aqui, mas esta é a mais simples:

Ferramentas -> Sistema de Compilação -> Novo Sistema de Compilação , digite o acima, salve como Browser.sublime-build:

{
    "cmd": "explorer $file"
}

Em seguida, volte para o arquivo HTML. Ferramentas -> Construir Sistema -> Navegador . Em seguida, pressione CTRL-Be o arquivo será aberto em qualquer navegador que seja o navegador padrão do sistema.

Simon Sarris
fonte
4

Aqui está outra solução se você deseja incluir navegadores diferentes no arquivo. Se você e um usuário de Mac, no menu sublime, vá para Ferramentas> Novo plug-in. Exclua o código gerado e cole o seguinte:

import sublime, sublime_plugin
import webbrowser


class OpenBrowserCommand(sublime_plugin.TextCommand):
   def run(self,edit,keyPressed):
      url = self.view.file_name()
      if keyPressed == "1":
         navegator = webbrowser.get("open -a /Applications/Firefox.app %s")
      if keyPressed == "2":
         navegator = webbrowser.get("open -a /Applications/Google\ Chrome.app %s")
      if keyPressed == "3":
         navegator = webbrowser.get("open -a /Applications/Safari.app %s")
      navegator.open_new(url)

Salve . Em seguida, abra User Keybindings. (Ferramentas> Paleta de comandos> "Atalhos de teclas do usuário") e adicione isso em algum lugar da lista:

{ "keys": ["alt+1"], "command": "open_browser", "args": {"keyPressed": "1"}},
{ "keys": ["alt+2"], "command": "open_browser", "args": {"keyPressed": "2"}},
{ "keys": ["alt+3"], "command": "open_browser", "args": {"keyPressed": "3"}}

Agora abra qualquer arquivo html no Sublime e use um dos atalhos de teclado, que abriria esse arquivo em seu navegador favorito.

egyamado
fonte
3

No mac e no sublime text 3, cuja versão é 3103, o conteúdo deve ser

{
    "shell_cmd": "open -a 'Google Chrome' '$file'"
}
clinyong
fonte
3

Ferramentas -> Sistema de Compilação -> Novo Sistema de Compilação. O tipo a seguir como seu sistema operacional, salve como Chrome.sublime-build

SO Windows

  {
        "cmd": ["C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe", "$file"]
  }

Mac OS

{
   "cmd": ["open", "-a", "/Applications/Google Chrome.app", "$file"]
}

Salve o arquivo - Chrome.sublime-build in location

C:\Users\xnivirro\Downloads\Software-Installed\Sublime-2\Data\Packages\User

Sublime View in Browswer - https://github.com/adampresley/sublime-view-in-browser ( testado com Linux e funciona)

J4cK
fonte
Certifique-se de salvar como .sublime-build como extensão Exemplo, se Firefox:Firefox.sublime-build
sameer tzar
1

A resposta de egyamado foi muito útil! Você pode aprimorá-lo para sua configuração específica com algo assim:

import sublime, sublime_plugin
import webbrowser

class OpenBrowserCommand(sublime_plugin.TextCommand):
   def run(self, edit, keyPressed, localHost, pathToFiles):  
      for region in self.view.sel():  
         if not region.empty():  
            # Get the selected text  
            url = self.view.substr(region)  
            # prepend beginning of local host url 
            url = localHost + url  
         else:
            # prepend beginning of local host url 
            url = localHost + self.view.file_name()
            # replace local path to file
            url = url.replace(pathToFiles, "")


         if keyPressed == "1":
            navigator = webbrowser.get("open -a /Applications/Firefox.app %s")
         if keyPressed == "2":
            navigator = webbrowser.get("open -a /Applications/Google\ Chrome.app %s")
         if keyPressed == "3":
            navigator = webbrowser.get("open -a /Applications/Safari.app %s")
         navigator.open_new(url)

E então em seus atalhos de teclado:

{ "keys": ["alt+1"], "command": "open_browser", "args": {"keyPressed": "1", "localHost": "http://nbrown.smartdestinations.com", "pathToFiles":"/opt/local/apache2/htdocs"}},
{ "keys": ["alt+2"], "command": "open_browser", "args": {"keyPressed": "2", "localHost": "http://nbrown.smartdestinations.com", "pathToFiles":"/opt/local/apache2/htdocs"}},
{ "keys": ["alt+3"], "command": "open_browser", "args": {"keyPressed": "3", "localHost": "http://nbrown.smartdestinations.com", "pathToFiles":"/opt/local/apache2/htdocs"}}

Armazenamos URLs de amostra na parte superior de todos os nossos modelos, portanto, a primeira parte permite que você destaque esse URL de amostra e inicie-o em um navegador. Se nenhum texto estiver destacado, ele simplesmente usará o nome do arquivo. Você pode ajustar as chamadas de comando nos atalhos de teclado para o url do seu host local e o caminho do sistema para os documentos em que está trabalhando.

Nabrown
fonte
1

Eu tenho situação semelhante como você. Eu não quero um editor aberto sublime para arquivos binários como jpg png. Em vez disso, o aplicativo padrão do sistema aberto é mais razoável.

  1. crie um Build . Assim como a resposta aceita. Mas ele irá abrir o aplicativo padrão e o editor hexadecimal.
  2. Pulgin OpenDefaultApplication https://github.com/SublimeText/OpenDefaultApplication Ele terá o menu contextual do botão direito do mouse OpenInDefaultApplication. Mas vai abrir o aplicativo padrão e o editor hexadecimal também
  3. Pulgin: Arquivos não textuais https://packagecontrol.io/packages/Non%20Text%20Files Adicionar configuração na configuração do usuário

    "binary_file_patterns": ["*.JPG","*.jpg", "*.jpeg", "*.png", "*.gif", "*.ttf", "*.tga", "*.dds", "*.ico", "*.eot", "*.pdf", "*.swf", "*.jar", "*.zip"],
    "prevent_bin_preview": true,
    "open_externally_patterns": [
       "*.JPG",
       "*.jpg",
       "*.jpeg",
       "*.JPEG",
       "*.png",
        "*.PGN",
       "*.gif",
        "*.GIF",
        "*.zip",
        "*.ZIP",
        "*.pdf",
        "*.PDF"
    ]
    

Eu escolho a terceira via, é bastante confiável para mim. Ele abrirá o arquivo jpg no aplicativo padrão do sistema e fechará rapidamente o modo de edição automaticamente ao mesmo tempo. Quanto às duas primeiras maneiras, você pode definir "preview_on_click": false, para parar de abrir automaticamente o editor hexadecimal.

Victor Choy
fonte