Eu precisava encontrar todas as classes, etc, para descobrir o que alguns seletores CSS estavam tentando combinar - usei a seguinte coisa rápida (funciona com a versão do Bash do Fedora 21):
grep -Eoih class\=\"[^\"]*\" index.html | sed -e 's/"//g' -e 's/class=//g' | tr " " "\n" | sort -u
Substitua class
por id
por IDs
Qual:
-
grep -E
- Regexp estendido (provavelmente não necessário),-o
- mostra apenas correspondência,-i
sem distinção entre maiúsculas e minúsculas,-h
não imprime nomes de arquivos (para vários arquivos). - Entre
class\=\"
e"
, corresponde tudo que não é um"
-
sed
- remove"
e 'class=" -
tr
- Substitua espaços por novas linhas -
sort
- Ordena e remove dupes
É muito limitado (por exemplo, é projetado para itens que usam "
quotes).
Para remover o excesso de CSS, sugiro usar uncss
, que remove o CSS não usado para que você não precise fazer manualmente.
Você pode instalá-lo via npm install -g uncss
e usá-lo assim (para mais opções use uncss --help
):
uncss ./index.html > new-css.css
Anote os arquivos HTML etc para encontrar o javascript, classes e ids usados, então você precisa fornecer o HTML como entrada.