Projetos
A maneira mais efetiva de trabalhar com múltiplos arquivos no Sublime Text é agrupá-los em projetos. Um projeto nada mais é que a informação que o Sublime Text armazena sobre um conjunto de arquivos e pastas que têm alguma relação entre si.
Por exemplo, quando estamos criando um site, geralmente temos um conjunto de arquivos HTML, CSS e JavaScript que o compõem. Quando agrupados em um projeto do Sublime Text, é possível navegar entre eles usando o recurso Goto Anything (Ctrl+P
) mesmo quando estão fechados ou em pastas diferentes daquela em que está o arquivo aberto no momento.
Criando um projeto
Adicione uma ou mais pastas com a opção Project | Add folder to project…
A estrutura das pastas abertas aparecerá na barra lateral do Sublime Text. Caso a barra não esteja visível, ative-a com a opção View | Sidebar | Show sidebar (figura 31)
A partir daí, o Goto Anything e os recursos de busca avançada passam a funcionar em relação aos arquivos contidos nessas pastas

Fig. 31 Estrutura das pastas do projeto na barra lateral
Salvando um projeto
Selecione a opção Project | Save project as…
O Sublime Text abrirá uma caixa de diálogo para que você informe o nome do arquivo que conterá as informações do projeto. Este arquivo deve ter a extensão
.sublime-project
.
Nota
Uma dica: se possível, salve o arquivo de projeto fora das pastas do projeto, principalmente se você pretende compartilhá-las ou colocá-las sob controle de versão (Git, Mercurial, Subversion etc.). Compartilhar o arquivo de projeto só faz sentido se todos também estiverem usando Sublime Text. Além disso, junto com o arquivo de projeto é criado um arquivo de workspace que, como veremos mais adiante, contém informações sobre o ambiente local do usuário.
Abrindo projetos salvos
Selecione a opção Project | Open project… e procure o arquivo do tipo
.sublime-project
correspondente ao projeto desejado, ouCaso seja um projeto aberto recentemente, selecione-o com a opção de menu Project | Recent projects ou ainda pelo atalho
Ctrl+Alt+P
(figura 32)

Fig. 32 Alternando entre projetos salvos com Ctrl+Alt+P
Configuração de preferências por projeto
Muitas vezes o código de um projeto é compartilhado por mais de uma pessoa da equipe. Por isso, nem sempre é possível utilizar nossas preferências pessoais sem interferir no padrão de organização de código que foi convencionado. Para estes casos, entra em cena a capacidade do Sublime Text de manter um arquivo de configuração específico para cada projeto.
Os arquivos de projeto são escritos no formato JSON e possuem a extensão .sublime-project
. Neles, podemos configurar quais pastas devem fazer parte do projeto, inclusive filtrando os arquivos que devem ou não aparecer na barra lateral. Também é possível sobrepor as preferências de usuário, bem como o sistema de build [1] utilizado.
Estrutura de um arquivo de projeto
Um arquivo de projeto pode ter as seguintes seções:
folders
settings
build_systems
folders
A seção folders
contém um ou mais caminhos para as pastas que fazem parte do projeto. Seus atributos são:
path
: indica o caminho para uma pasta que deve fazer parte do projetoname
: especifica o nome que será exibido na barra lateral no lugar do nome do diretóriofile_exclude_patterns
: indica quais arquivos devem ser ocultados na barra lateralfolder_exclude_patterns
: indica quais pastas devem ser ocultadas na barra lateralfollow_symlinks
: indica se o projeto deve considerar links simbólicos (atalhos) para arquivos que estejam em outras pastas
Exemplo 1
{
"folders":
[
{
"path": "src",
"folder_exclude_patterns": ["imagens"],
"follow_symlinks": true
},
{
"path": "docs",
"name": "Documentação",
"file_exclude_patterns": ["*.css", "*.png"]
}
]
}
No exemplo acima, a pasta src
foi incluída como parte do projeto, sendo que a pasta imagens
que está dentro dela não será exibida na barra lateral. Do mesmo modo, a pasta docs
também fará parte do mesmo projeto, sendo que seu nome será exibido como Documentação na barra lateral e os arquivos com extensão .css e .png não serão exibidos.
Vale lembrar que no exemplo acima os caminhos das pastas são relativos à localização do arquivo de projeto, mas também é possível informar um caminho absoluto.
settings
A seção settings
permite que você coloque qualquer configuração de preferências válida em um arquivo do tipo .sublime-settings
. Fazendo isso, essas preferências irão sobrepor as que estão definidas no arquivo de preferências do usuário (Preferences | Settings - User).
build_systems
A seção build_systems
permite definir sistemas de build específicos para o projeto.
Abaixo um exemplo de arquivo de projeto com todas as seções que falamos aqui.
Exemplo 2
{
"folders":
[
{
"path": "src",
"folder_exclude_patterns": ["imagens"],
"follow_symlinks": true
},
{
"path": "docs",
"name": "Documentação",
"file_exclude_patterns": ["*.css", "*.png"]
}
],
"settings":
{
"tab_size": 4,
"font_size": 14,
"line_numbers": true
},
"build_systems":
[
{
"cmd": ["make"]
}
]
}
Workspaces
No Sublime Text, enquanto um project serve para agrupar recursos que pertencem a um projeto, podemos considerar que um workspace serve para armazenar informações sobre o estado de uma janela.
Na prática, os workspaces são responsáveis por memorizar os arquivos abertos, a disposição dos painéis no layout tela que está sendo utilizado, o histórico dos vários tipos de modificações efetuadas, entre outras informações.
Essas informações ficam gravadas em um arquivo de extensão .sublime-workspace
.
É possível ter mais de um workspace por projeto. Isso é útil para os casos nos quais é preciso trabalhar com diferentes funcionalidades em um mesmo projeto. Desse modo, podemos fazer com que apenas os arquivos referentes à funcionalidade desejada fiquem abertos, bem como apenas as configurações e o histórico relevantes para o contexto daquela funcionalidade.
Diferentemente dos arquivos de projeto, os arquivos de workspace não foram concebidos para serem editados manualmente. Todas as informações gravadas nele são feitas automaticamente pelo Sublime Text e são reflexo das ações do usuário dentro do workspace ativo.
Também é importante lembrar que, ao contrário dos arquivos de projeto, não é recomendado que os arquivos de workspace sejam compartilhados ou versionados. O motivo é que eles armazenam informações referentes ao ambiente do usuário, podendo expor a terceiros informações privadas.
Criando um novo workspace
Ao criarmos um projeto, automaticamente é criado o seu arquivo .sublime-workspace
correspondente.
Quando queremos adicionar um novo workspace ao projeto, selecionamos a opção Project | New Workspace for Project. Ao fazer isso, uma nova janela é aberta para o mesmo projeto, porém sem nenhum arquivo aberto.
Tudo o que for feito nesse novo workspace será registrado. Para salvá-lo, vá em Project | Save Workspace As… e grave o arquivo com o nome desejado, sem esquecer de manter a extensão .sublime-workspace
.
Alternando entre workspaces
Para alternar entre workspaces, é só fazer o mesmo que fazemos com os projetos. Basta ir em Project | Quick Switch Project… (Ctrl+Alt+P
) e escolher o arquivo de workspace desejado na caixa de seleção.