Commit graph

677 commits

Author SHA1 Message Date
Bjørn Erik Pedersen
4f66f790b1 Add readFile template func
This also includes a refactor of the hugofs package and its usage.

The motivation for that is:

The Afero filesystems are brilliant. Hugo's way of adding a dozen of global variables for the different filesystems was a mistake. In readFile (and also in some other places in Hugo today) we need a way to restrict the access inside the working dir. We could use ioutil.ReadFile and implement the path checking, checking the base path and the dots ("..") etc. But it is obviously better to use an Afero BasePathFs combined witha ReadOnlyFs. We could create a use-once-filesystem and handle the initialization ourselves, but since this is also useful to others and the initialization depends on some other global state (which would mean to create a new file system on every invocation), we might as well do it properly and encapsulate the predefined set of filesystems. This change also leads the way, if needed, to encapsulate the file systems in a struct, making it possible to have several file system sets in action at once (parallel multilanguage site building? With Moore's law and all...)

Fixes #1551
2016-03-31 21:24:18 +02:00
digitalcraftsman
a89035bdaa docs: Mention CLA in the showcase contribution guidelines 2016-03-30 18:01:50 +02:00
Rob Muhlestein
6a3a6f683d docs: Remove incorrent reference to list.html 2016-03-30 17:54:31 +02:00
digitalcraftsman
93e41a1fb2 docs: Fix typo in templates/functions.md 2016-03-28 17:04:29 +02:00
Rob Muhlestein
d65fbfe16c docs: Add surge.sh to main page of static site hosters
See #1994
2016-03-28 16:44:13 +02:00
Robert Basic
effaf6c2c9 docs: Document GitHub flavoured code fences
Fixes #1259
2016-03-28 16:38:28 +02:00
Robert Basic
e35a69216e docs: Document lastmod variable
Fixes #1351
2016-03-28 16:33:50 +02:00
Robert Basic
50506ebeac docs: Document the split function
Fixes #1997
2016-03-28 15:58:41 +02:00
Scopel Emanuele
4c95b70020 docs: Add silvergeko.it to the showcase 2016-03-28 14:48:01 +02:00
Robert Basic
79af7143c9 docs: Add robertbasic.com to the showcase 2016-03-27 19:52:07 +02:00
digitalcraftsman
977b0e342c docs: Adapt commit message for showcase additions 2016-03-25 12:32:46 +01:00
Bjørn Erik Pedersen
048e07422d Add Scratch to shortcode
Fixes #2000
2016-03-21 21:11:20 -04:00
Bjørn Erik Pedersen
e5e1bcc271 Add plainify template function
To strip away any HTML. May be useful for the .Title in head etc.

People may shoot themself in the foot with this, maybe ...

The replacement function is pretty fast.
2016-03-21 20:27:25 -04:00
Cameron Moore
f52b040ee1 docs: Draft of 0.16 release notes
Also included is an enhancement to the gh shortcode to support sending commit
hashes by prepending "0x" to the hash.
2016-03-21 14:08:39 +01:00
Cameron Moore
b0326a1c0f tpl: Treat booleans as set in default function
Booleans and `default` don't really make sense together, so we'll always treat
booleans as "set" and return the given value.
2016-03-16 20:05:48 +01:00
digitalcraftsman
b5c718a4de docs: Fix typos in functions.md and contributing.md 2016-03-16 13:04:41 +01:00
digitalcraftsman
612c61146d Docs: move tutorial screenshots in their own subfolder 2016-03-12 13:08:46 +01:00
JoeArizona
a103d58162 Docs: update Windows install instructions
- updated the instructions to account for Windows 10 path editor
- linked to third-party editors for pre-10 Windows
- separated instructions for technical and non-technical users changed
D drive paths to C drive since D is the default optical drive on most
Windows systems
- cut the assumption about 64-bit Windows since 32-bit binary is also available
- cut the assumption about command line since we're giving GUI instructions
to non-technical users
- cut a bug in the doc where we had people typing D: at the command prompt
*after* submitting `cd D:\Hugo\Sites.` Recommend snipping 386 and AMD from
ZIP file names, since they don't add useful info and will just confuse novices.
2016-03-12 13:02:54 +01:00
Jason Gowans
6fb4e0718a Docs: add Aerobatic as a deployment option in the Introduction 2016-03-12 12:19:56 +01:00
Jason Gowans
d9049752dc Docs: add tutorial for Hosting on Bitbucket 2016-03-12 12:19:31 +01:00
Daniel Compton
153dccc0e8 Add debugging steps for no variables defined 2016-03-12 21:44:50 +13:00
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
Salar Rahmanian
5926c6c8d5 Update showcase entry and article link to softinio.com 2016-03-11 22:31:59 +01:00
Cameron Moore
b8d3651242 tpl: Add replaceRE function
This commit addes a `replaceRE` template function.  Regexp patterns are compiled
once and cached.
2016-03-11 19:59:18 +01:00
Konstantin Kliakhandler
e9008b91fa Allow picking a specific file out of a gist 2016-03-11 18:29:07 +01:00
Avery Rosen
0667d8a0f5 Add engineering.mongodb.com to the showcase 2016-03-10 21:46:12 +01:00
Shekhar Gulati
6cb032b67e Docs: use Shekhar Gulati's Hugo tutorial as quickstart guide 2016-03-10 20:36:54 +01:00
Cameron Moore
f3f9763afd tpl: Add time note to default func description 2016-03-10 17:47:59 +01:00
Cameron Moore
09c8c17bf0 tpl: fix default function
This commit fixes a few things:

1. `given` is now a variadic parameter so that piping works properly
2. add separate template tests to make sure piping works
3. support time values
4. add more tests of the dfault function
2016-03-10 17:47:59 +01:00
Cameron Moore
0743646f32 docs: add better default example 2016-03-10 17:47:59 +01:00
Cameron Moore
ce9ee3cf49 tpl: Add default function 2016-03-10 17:47:59 +01:00
digitalcraftsman
94c3825e5b Add md5 and sha1 template funcs 2016-03-10 11:03:06 +01:00
Bjørn Erik Pedersen
9896cd0030 Add reference to parent shortcode
Fixes #1936
2016-03-09 11:06:40 +01:00
Steve Moser
866176be97 Docs: fix missing words, tense in datadrivencontent.md 2016-03-07 20:39:55 +01:00
Fabio Alessandro Locati
0f48631351 Add viglug website to showcase 2016-03-07 18:30:16 +01:00
Horst Gutmann
64ed64d93f Add h10n.me to the showcase 2016-03-07 18:09:01 +01:00
Fabio Alessandro Locati
2a75e9704e Add fale.io website to showcase 2016-03-07 18:03:09 +01:00
Bjørn Erik Pedersen
429b669a29 doc: Correct Scratch slice example 2016-03-06 16:38:38 +01:00
Bjørn Erik Pedersen
c7d2260420 doc: Add some Scratch slice samples 2016-03-06 16:36:46 +01:00
Bjørn Erik Pedersen
eaba04e82b Add list support in Scratch 2016-03-06 15:44:17 +01:00
Bjørn Erik Pedersen
435e996c4f Add jsonify template func 2016-03-06 15:01:14 +01:00
Samuel Debruyn
cc38a40f4e Docs: fix typo in tools section 2016-02-29 21:59:43 +01:00
digitalcraftsman
c1f8b188f7 Add template function slice 2016-02-27 17:04:45 +01:00
Thijs de Zoute
ff4ca99286 Press: add "Comparison site built with Hugo" 2016-02-26 21:32:54 +01:00
Shekhar Gulati
ac2eaca06d Press: add tutorial written by Shekhar Gulati 2016-02-24 20:07:16 +01:00
Marq Martí
c59bdc20af Press: add article from sitelabs.es 2016-02-24 19:57:35 +01:00
Akagi201
d1bf2f5435 Docs: fix typo in introduction.md 2016-02-24 19:43:05 +01:00
Wouter Spee
086d6540c3 Add cdnoverview.com to the showcase 2016-02-24 19:37:05 +01:00
Paul Koppen
060f0206ee Docs: remove .Taxonomies from Page variables
The property seems to have never existed on Pages.

Fixes #1865.
2016-02-24 19:22:53 +01:00
Thijs de Zoute
d607f4c7df Docs: fix small typos in functions.md 2016-02-24 19:14:04 +01:00