Contagem de palavras e tempo de leitura de artigos no blog Hexo.
A contagem de palavras é baseada no Anexo nº 29 do Padrão Unicode®. Assim, quando vários idiomas estão presentes no conteúdo da postagem, a contagem total de palavras pode ser contada com precisão.
Com o poder do Rust, este plugin é mais rápido do que quase todos os outros plugins Hexo que oferecem funcionalidade semelhante. Veja o benchmark abaixo.
npm install hexo-word-counter
hexo clean
Você pode definir opções de contador de palavras hexo no _config.yml
do Hexo (que está localizado no diretório raiz do seu blog):
symbols_count_time :
symbols : true
time : true
total_symbols : true
total_time : true
exclude_codeblock : false
wpm : 275
suffix : " mins. "
Se a opção symbols_count_time
não for especificada, os parâmetros padrão serão usados.
wpm
– Palavras por minuto. Padrão: 275
. Você pode verificar isso aqui.200
275
350
suffix
– Se o tempo de leitura for inferior a 60 minutos, adicionado sufixo como parâmetro de string.mins.
será usado como padrão.exclude_codeblock
– Permite excluir todo o conteúdo dentro de blocos de código para uma contagem de palavras mais precisa.false
será usado como padrão. Nota para usuários chineses: se você escrever postagens em chinês na maioria dos casos (sem inglês misto), é recomendado definir wpm
para 300
.
Mas se você costuma misturar suas postagens com inglês, definir wpm
para 275
será legal.
Este plugin está integrado no «NexT» e após o plugin ser habilitado na configuração principal do Hexo, você pode ajustar as opções na configuração do NexT:
post_meta :
item_text : true
symbols_count_time :
separated_meta : true
item_text_total : false
Você deve preparar o Node.js e o conjunto de ferramentas Rust para desenvolver este plugin.
git clone https://github.com/next-theme/hexo-word-counter.git
cd hexo-word-counter
npm install
Você pode executar testes com ou sem feedback de cobertura:
npm test
npm run test-cov
E você pode instalar a versão de desenvolvimento em seu blog:
cd blog
npm i ../path/to/hexo-word-counter
Se você é um desenvolvedor de temas, pode usar o código a seguir para integrar este plugin.
A sintaxe é diferente dependendo do mecanismo de modelagem do tema.
Para Nunjucks / Swig:
{{ symbolsCount(post) }}
Para Ejs:
<%- symbolsCount(post) %>
Para Pug/Jade:
span=symbolsCount(post)
Na última parte, usamos a sintaxe Nunjucks como exemplo.
{{ symbolsTime(post) }}
Ou com parâmetros predefinidos:
{{ symbolsTime(post, awl, wpm, suffix) }}
{{ symbolsCountTotal(site) }}
{{ symbolsTimeTotal(site) }}
Ou com parâmetros predefinidos:
{{ symbolsTimeTotal(site, awl, wpm, suffix) }}
Consulte ações do GitHub.
Plug-in instalado | Hora do hexo g |
---|---|
Linha de base | 19,48s |
contador de palavras hexo | 19,63s (+0,78%) |
tempo de contagem de hexo-símbolos | 19,86s (+1,99%) |
contagem hexadecimal | 21,44s (+10,08%) |
tempo de leitura hexo | 23,81s (+22,26%) |