Em artigos anteriores, falamos um pouco sobre como instalar e utilizar o gerenciador de pacotes (Package Control). Legal! Mas, se você chegou até aqui, é porque quer conhecer um pouco mais a fundo o que são e como funcionam os pacotes no Sublime Text, certo? Então vamos lá!
Para que servem os pacotes?
Um pacote nada mais é que uma pasta que contém arquivos de configuração ou scripts que, por sua vez, servem para personalizar e estender as funcionalidades do Sublime Text. A finalidade de um pacote é apenas organizar o conjunto de arquivos necessários para implementar uma funcionalidade.
Quais os tipos de arquivos que um pacote contém?
Cada tipo de arquivo que pode estar contido em um pacote é responsável por definir um aspecto da funcionalidade. Alguns desses tipos de arquivo são:
- Configurações (
.sublime-settings
) - Temas (
.sublime-theme
) - Plugins (
.py
) - Snippets (
.sublime-snippet
) - Macros (
.sublime-macro
) - Menus (
.sublime-menu
) - Mapeamentos de teclas (
.sublime-keymap
) - Definições de sintaxe (
.tmLanguage
) - Preferências de sintaxe (
.tmPreferences
) - Configurações de build (
.sublime-build
)
Um pacote pode conter um ou mais tipos de arquivos acima, a depender do que for necessário para implementar os novos recursos personalizados. Para entender melhor, vale a pena dar uma olhada nos arquivos dos diversos pacotes disponíveis no Package Control.
Onde encontro os pacotes na minha instalação?
Os pacotes ficam guardados na pasta <pasta_de_dados_do_sublime>/Packages
. Para saber qual é pasta correspondente na sua instalação, selecione o menu Preferences > Browse packages. Dentro desta pasta os arquivos de cada pacote estão agrupados em seu subdiretório correspondente.
Outro jeito de guardar os pacotes
Para facilitar a distribuição, os arquivos que formam um pacote também podem ser armazenados em um único arquivo do tipo .sublime-package
. Arquivos desse tipo nada mais são que um arquivo compactado no formato zip
contendo a estrutura de pastas do pacote.
Para os pacotes zipados, ou seja, do tipo .sublime-package
, a localização dos pacotes muda. Nesse caso, eles ficam na pasta <pasta_de_dados_do_sublime>/Installed Packages
.
Pacotes especiais
Packages/Default
: Contém os pacotes padrão que acompanham a instalação do Sublime Text.Packages/User
: Normalmente, arquivos avulsos são armazenados nesse pacote. Se você tem pequenas macros ou snippets soltos, este pode ser o lugar ideal para colocá-los.
O que torna esses pacotes especiais é a ordem em que cada um deles é processado pelo Sublime Text. O pacote Packages/Default
é sempre lido primeiro, enquanto que Packages/User
é sempre lido por último.
Na prática, isso significa que o Sublime sempre leva em consideração, por exemplo, um arquivo de configuração que esteja em Default
, a menos que haja outro com o mesmo nome em outro pacote. Por sua vez, se este arquivo estiver em User
suas configurações sempre prevalecem sobre todas as demais.
Então quer dizer que também posso criar meus próprios pacotes?
Claro! Não só pode como você vai ver que é muito fácil. Basta criar uma nova pasta dentro de <pasta_de_dados_do_sublime>/Packages
e colocar nele os arquivos, scripts e demais recursos que fazem parte do pacote. Para entender melhor, experimente criar um snippet simples e colocá-lo em um pacote.
Conclusão
- Pacotes são pastas que contém os arquivos de configuração ou scripts necessários para implementar funcionalidades no Sublime Text.
- Essas pastas podem ser transformadas em arquivos compactados do tipo
.sublime-package
para facilitar a distribuição. - Os pacotes normalmente ficam localizados na pasta
<pasta_de_dados_do_sublime>/Packages
. Default
eUser
são pacotes especiais que diferem entre si pela ordem de precedência com a qual o Sublime Text os processa.- Você pode criar seus próprios pacotes colocando os arquivos e scripts em uma nova pasta dentro da pasta
Packages
.
Tem mais alguma dúvida ou sugestão sobre este assunto? Deixe seu recado nos comentários!
* * *
Gostou do conteúdo? Crie seu próprio site com a Hostinger!
Hospedagem confiável, preços acessíveis e suporte de qualidade. Tudo que você precisa para montar seu site com rapidez e facilidade. Clique no link abaixo e aproveite o desconto especial de 20% para novos clientes! ⬇️
Quero criar meu site!
Comece sua jornada online agora mesmo!
Link permanente
Que bom que encontrei esse blog e, melhor ainda, em português.
Até agora, tenho utilizado o Emacs e o Evil. Mas disseram-me que o Emacs é um editor antigo e que os editores mais modernos fazem muito mais coisas. Outras pessoas disseram que não há nenhum editor como o Emacs. Segundo esses defensores do Emacs, esse editor é uma Lisp machine, um sistema operacional completo, capaz de servir páginas na Internet, traduzir pinyin para ideogramas chineses, fazer outlines, organizar tarefas, realizar integrações e diferenciações, gerar figuras, etc. Então, alguns dizem maravilhas do Emacs, outros dizem que é um dinossauro. Resolvi verificar.
Não faço plugins ou qualquer coisa complicada. Simplesmente utilizo o que está pronto. Basicamente, preciso de um org mode ou qualquer outro sistema de organização para fazer outline do meu trabalho e exportar os documentos para html, odt(docx), pdf, tex, etc. O org mode deve funcionar em modo texto. Assim, preciso de uma spread sheet (como a excel), mas em formato texto, como no org mode. Os documentos devem ter agenda automática, TODO listas, tarefas da semana, etc.
Finalmente, uso o emacs como servidor de Internet de minha página. Basicamente, coloco o emacs –daemon no ar e disparo um emacsclient para cada visitante. O emacsclient leva 7ms para cold startup no meu hostservice. O mean time request leva, mais ou menos 1.8ms. Comparei com servidores especializados e o desempenho do Emacs está bastante bom. Por exemplo, o Gambit-C (que é o campeão) leva 6ms para cold startup e 1.632ms de mean time request em meu host service. Os lanterninhas, que se chamam Tornado e Cyclone têm mais de 9ms de mean time request. O snap, o node e o thin têm entre 3.5 e 4.5ms. Quanto tempo leva um client do Sublime Text para entrar, quando está no modo de servidor da Internet?
Além de servir páginas de Internet, o editor precisa de cuidar de meus emails também, então o servidor de email e o email client do editor, como o do Emacs, precisa fazer um anti-spam e um outline dos emails mais importantes. Tudo processado em batch.
O programa de análise de texto de minha página está em Common Lisp (o vendedor disse que todos os programas de Inteligência Artificial estão em Common Lisp). Pelo que me informaram, o Lisp do Emacs não é Common Lisp, mas algo como elisp. Parece que há duas soluções no Emacs para resolver esse problema e já tentei as duas. A primeira é colocar um (require ‘cl) no .emacs configuration file. A outra é disparar um asynchronous process, assim:
(start-process “sbcl” “–script” “(my-process)” “100”)
Mas suponho que, se o Lisp do Sublime já é Common Lisp, o processamento deve ser mais rápido. Isso está correto? Como todo mundo hoje tem de ter negócios com a China, esses programas em Common Lisp devem pegar os documentos em Chinês e fazer um outline que eu possa compreender, em pinyin. Meu chinês é básico, então quero que o editor passe meus textos de pinyin para ideogramas. Não encontrei nenhum plugin no Sublime Text que passa de 拼音 (pinyin) para ideograma.
As vezes uso o Evil do Emacs, que simula o Vim. Qualquer comando que uso no Vim, ponho no Evil, e funciona exatamente como no Vim. Então vi que o Sublime Text tem … um emulador do Vim também, tal como o Emacs. Maravilha, como sei Vim, posso fazer tudo no Sublime Text, modo Vim. Mas nada funcionou.
Nem mesmo coisas básicas do Vim, que funcionam impecavelmente no Emacs, parecem funcionar no Sublime Text. Por exemplo, não consegui fazer uma busca do tipo /[0-9]+ ou /\(\\).
Tentei entrar no Forum para perguntar como fazer isso tudo, mas preciso de uma palavra chave para entrar e ainda não me deram a palavra chave. Então desculpe-me incomoda-lo.