hugo/hugolib
Bjørn Erik Pedersen cafb784799 Add emoji support
This uses the Emoji map from https://github.com/kyokomi/emoji -- but with a custom replacement implementation.

The built-in are fine for most use cases, but in Hugo we do care about pure speed.

The benchmarks below are skewed in Hugo's direction as the source and result is a byte slice,
Kyokomi's implementation works best with strings.

Curious: The easy-to-use `strings.Replacer` is also plenty fast.

```
BenchmarkEmojiKyokomiFprint-4  	   20000	     86038 ns/op	   33960 B/op	     117 allocs/op
BenchmarkEmojiKyokomiSprint-4  	   20000	     83252 ns/op	   38232 B/op	     122 allocs/op
BenchmarkEmojiStringsReplacer-4	  100000	     21092 ns/op	   17248 B/op	      25 allocs/op
BenchmarkHugoEmoji-4           	  500000	      5728 ns/op	     624 B/op	      13 allocs/op
```

Fixes #1891
2016-03-11 15:51:37 -06:00
..
author.go
benchmark_test.go
datafiles_test.go
handler_base.go
handler_file.go
handler_meta.go
handler_page.go Add emoji support 2016-03-11 15:51:37 -06:00
handler_test.go Create template clone for late template execution 2016-03-09 14:37:58 +01:00
hugo.go
media.go
menu.go
menu_test.go Fix for page in multiple menus 2016-03-10 10:31:12 +01:00
node.go
node_test.go
page.go Fix for page in multiple menus 2016-03-10 10:31:12 +01:00
page_permalink_test.go
page_taxonomy_test.go
page_test.go
page_time_integration_test.go
pageCache.go
pageCache_test.go
pageGroup.go
pageGroup_test.go
pageSort.go
pageSort_test.go
pagesPrevNext.go
pagesPrevNext_test.go
pagination.go
pagination_test.go
path_separators_test.go
path_separators_windows_test.go
permalinks.go
permalinks_test.go
planner.go Unexport the target handlers 2016-03-05 20:56:38 +01:00
redis.cn.md
robotstxt_test.go Create template clone for late template execution 2016-03-09 14:37:58 +01:00
rss_test.go Create template clone for late template execution 2016-03-09 14:37:58 +01:00
scratch.go Add list support in Scratch 2016-03-06 15:44:17 +01:00
scratch_test.go Add list support in Scratch 2016-03-06 15:44:17 +01:00
shortcode.go Add reference to parent shortcode 2016-03-09 11:06:40 +01:00
shortcode_test.go Create template clone for late template execution 2016-03-09 14:37:58 +01:00
shortcodeparser.go
shortcodeparser_test.go
site.go Use default sitemap configuration for homepage 2016-03-10 11:02:00 +01:00
site_show_plan_test.go Unexport the target handlers 2016-03-05 20:56:38 +01:00
site_test.go Create template clone for late template execution 2016-03-09 14:37:58 +01:00
site_url_test.go Create template clone for late template execution 2016-03-09 14:37:58 +01:00
siteinfo_test.go Create template clone for late template execution 2016-03-09 14:37:58 +01:00
siteJSONEncode_test.go
sitemap.go
sitemap_test.go Create template clone for late template execution 2016-03-09 14:37:58 +01:00
summary.go
taxonomy.go Try both prepped and unprepped taxonomy keys 2016-03-03 22:01:09 +01:00
taxonomy_test.go