EDITAR
Algo estava me incomodando com a sua pergunta: eu não me lembrava de ter esse problema, mas de alguma forma eu esqueci a maior parte do que eu sabia sobre TextMate (troquei para o Vim um ano atrás). Eu apenas re-licitei o TextMate para brincar com o TM2, então aqui está sua resposta:
Você está usando o atalho "errado".
Ctrl Deslocamento W é para agrupar o texto atualmente selecionado com as tags de abertura e fechamento .Como você bateu neste atalho sem uma seleção, você acaba com uma tag vazia. Como foi projetado para trabalhar com algum conteúdo pré-existente, é bastante lógico que ele não forneça a capacidade de editar o conteúdo ainda mais.
O caso de uso típico é quando você cola um texto bruto de um breve e passa por ele para adicionar formatação HTML adequada.
Esse atalho que insere um par de tags HTML vazio é uma espécie de miragem. Claro que faz isso, mas é um efeito colateral de não usá-lo corretamente.
O atalho correto é Ctrl < que é para inserir tags de abertura e fechamento, opcionalmente usando a palavra atual.
Você pode usá-lo de duas maneiras:
-
Se você tiver espaços em branco à esquerda do cursor, pressione Ctrl e para inserir
<p></p>
com o primeirop
selecionado. Você pode alterarp
para algo comoh1
e espelhar para a tag de fechamento ou pressionar a tecla Tab para mover o cursor entre as tags, assim:<p>|</p>
.Qual, eu acho, é exatamente o que você quer e, na verdade, o que eu sempre fiz. Daí o meu desconforto com a sua pergunta.
-
Se o seu cursor estiver posicionado logo após uma palavra, digamos
span
, pressione Ctrl < para substituirspan
por<span></span>
com o primeirospan
selecionado. Agora você tem exatamente as mesmas possibilidades do primeiro método.
END EDIT
Meus dias do TextMate acabaram, portanto, essa solução provavelmente não é a melhor, mas é muito fácil colocá-la em prática.
Basta criar um snippet com a letra t
como acionador e
<${1:tag}>$0</$1>
como conteúdo.
Quando estiver pronto, você só precisará digitar t<Tab>p<Tab>
e, em seguida, seu conteúdo.
Obviamente, como existe uma desvantagem bastante importante: se você adicionar atributos, eles serão espelhados na tag final.
Isso pode ser atenuado adicionando uma parada de tabulação extra:
<${1:tag}${2: }>$0</$1>