Plug-in oficial do Emmet para Sublime Text.
Aviso: este plugin pode não funcionar em alguns sistemas operacionais, pois foi escrito em JavaScript e usa binários PyV8 e Google V8 para ser executado. Se você tiver problemas ou travamentos do editor, preencha um problema.
Com controle de pacote:
Emmet
.Manualmente:
AVISO : Quando o plugin é instalado, ele baixará automaticamente o binário PyV8 necessário, então você terá que esperar um pouco (consulte Carregando a mensagem binária do PyV8 na barra de status). Se você tiver problemas com o carregador automático PyV8, tente instalá-lo manualmente.
Ações de incrementar/diminuir número:
Você pode estender facilmente o Emmet com novas ações e filtros ou personalizar os existentes. Em Emmet.sublime-settings
, defina a configuração extensions_path
e o Emmet carregará todos os arquivos .js
e .json
na pasta especificada na inicialização.
O valor padrão de extensions_path
é ~/emmet
, que aponta para a pasta emmet dentro da pasta pessoal do usuário do sistema operacional.
Além disso, você pode criar seções nomeadas como arquivos de extensão (por exemplo, snippets
, preferences
e syntaxProfiles
) dentro do arquivo Emmet.sublime-settings
do usuário e escrever suas personalizações lá. Veja o arquivo de configurações original para exemplos.
Sublime Text é um ótimo editor de texto com muitos recursos e ações. A maioria dessas ações está vinculada a atalhos de teclado, por isso é quase impossível fornecer atalhos de plug-in convenientes para plug-ins de terceiros.
Se não estiver satisfeito com o mapa de teclado padrão, você pode desabilitar atalhos de teclado individuais com a preferência disabled_keymap_actions
do arquivo Emmet.sublime-settings
.
Use uma lista separada por vírgulas de nomes de ações cujos atalhos de teclado padrão devem ser desativados. Por exemplo, se você deseja liberar os atalhos Ctrl+E (“Expandir Abreviação”) e Ctrl+U (“Atualizar Tamanho da Imagem”), você deve definir o seguinte valor:
"disabled_keymap_actions": "expand_abbreviation, update_image_size"
Você deve consultar o arquivo Default (Your-OS-Name).sublime-keymap
para obter IDs de ação (procure por args/action
key).
Para desativar todos os atalhos padrão, defina o valor como all
:
"disabled_keymap_actions": "all"
Não que se você desativou qualquer ação como esta e criou seu próprio atalho de teclado, você não deve usar o contexto emmet_action_enabled.ACTION_NAME
pois esta é a chave que desativa a ação.
Emmet expande abreviações apenas em sintaxes limitadas: HTML, CSS, LESS, SCSS, Stylus e PostCSS. O motivo para restringir o manipulador Tab a uma lista de sintaxe limitada é porque ele quebra trechos nativos do Sublime Text.
Se você deseja abreviar Tab em outras sintaxes (por exemplo, JSX, HAML etc.), você deve ajustar as configurações de atalhos do teclado: adicione o comando expand_abbreviation_by_tab
para a tecla tab
para os seletores de escopo de sintaxe necessários. Para obter o seletor de escopo de sintaxe atual, pressione ⇧⌃P (OSX) ou Ctrl+Alt+Shift+P , ele será exibido na barra de status do editor.
Vá para Preferences
> Key Bindings — User
e insira o seguinte snippet JSON com o seletor de escopo configurado corretamente em vez do token SCOPE_SELECTOR
:
{
"keys" : [ "tab" ] ,
"command" : "expand_abbreviation_by_tab" ,
// put comma-separated syntax selectors for which
// you want to expandEmmet abbreviations into "operand" key
// instead of SCOPE_SELECTOR.
// Examples: source.js, text.html - source
"context" : [
{
"operand" : "SCOPE_SELECTOR" ,
"operator" : "equal" ,
"match_all" : true ,
"key" : "selector"
} ,
// run only if there's no selected text
{
"match_all" : true ,
"key" : "selection_empty"
} ,
// don't work if there are active tabstops
{
"operator" : "equal" ,
"operand" : false ,
"match_all" : true ,
"key" : "has_next_field"
} ,
// don't work if completion popup is visible and you
// want to insert completion with Tab. If you want to
// expand Emmet with Tab even if popup is visible --
// remove this section
{
"operand" : false ,
"operator" : "equal" ,
"match_all" : true ,
"key" : "auto_complete_visible"
} ,
{
"match_all" : true ,
"key" : "is_abbreviation"
}
]
}
O plugin Emmet permite expandir abreviações com a tecla Tab , assim como trechos normais. Por outro lado, devido à natureza dinâmica e à sintaxe extensa, às vezes você pode obter resultados inesperados. Esta seção descreve como o manipulador de guias funciona e como você pode ajustá-lo.
Por padrão, o manipulador Tab funciona em escopos de sintaxe limitados: HTML, XML, HAML, CSS, SASS/SCSS, LESS, PostCSS e strings em linguagens de programação (como JavaScript, Python, Ruby etc.). Isso significa:
line
que gera a saída como uma única linha. Para ajustar o manipulador da tecla Tab, você pode usar as seguintes configurações no arquivo Emmet.sublime-settings
do usuário:
disable_tab_abbreviations_for_scopes
— uma lista separada por vírgulas de escopos de sintaxe onde o manipulador da tecla Tab deve ser desabilitado. Por exemplo, se você quiser desabilitar o manipulador dentro de strings de linguagens de programação e sintaxe HAML, sua configuração ficará assim: "disable_tab_abbreviations_for_scopes" : " text.haml, string "
disabled_single_snippet_for_scopes
— uma lista separada por vírgulas de escopos de sintaxe onde o manipulador Tab deve ser desabilitado ao expandir uma única abreviação. Atualmente, ST não fornece API para obter lista de trechos nativos. Então, por exemplo, se você tentar expandir uma abreviatura php
, ela será passada para Emmet, que gera
em vez do bloco PHP conforme definido nos snippets ST nativos. Como solução alternativa, se você estiver tentando expandir uma única abreviação dentro do escopo definido na configuração disabled_single_snippet_for_scopes
, o Emmet procurará seu nome dentro de seu próprio catálogo de snippets primeiro, dentro da known_html_tags
depois e, se não for encontrado, permitirá que ST o manipule e expanda a abreviatura nativa, se houver correspondência.known_html_tags
— uma lista separada por espaços de todas as tags HTML conhecidas usadas para pesquisa conforme descrito acima. Se não estiver satisfeito com o comportamento do manipulador de guias Emmet, você pode desativá-lo: basta adicionar "disable_tab_abbreviations": true
no arquivo Preferences.sublime-settings
do usuário.
Se o seu fluxo de trabalho já inclui uma tarefa automatizada para prefixação de fornecedor CSS (como Autoprefixer), você pode desativar a inserção automática de prefixos de fornecedor do Emmet adicionando esta opção ao arquivo Emmet.sublime-settings
do seu usuário:
{
"preferences" : {
"css.autoInsertVendorPrefixes" : false
}
}