go vendor

This commit is contained in:
lealife
2017-11-30 19:55:33 +08:00
parent 2856da6888
commit 0fb92efbf3
670 changed files with 199010 additions and 0 deletions

View File

@ -0,0 +1,59 @@
# Ace
The [ACE](https://github.com/yosssi/ace) Templating Plugin
- Ace templates have full access to the revel.TemplateFuncs, any function
defined in there can be used by the this engine
- Ace files must be identified by using a `shebang` on the first line
(preferred method) or changing the file extension to home.ace.html.
By default the operation of revel assumes just a `.html` extension for
controller responses so it would make more sense to use the shebang
- Ace templates can be set to be case sensitive by setting
`ace.tempate.caseinsensitive=false`, default is not case sensitive. If case sensitivity
is off internal imports must be done using lower case
- All function registered in `revel.TemplateFuncs` are available for use
inside the ace framework
##### Details
Ace is a little different of a templating system, its output is a
standard go template but there is no concept of template sets,
instead you build a composite template using
a *base* template and an *inner* template. The
*inner* template can only contain items like :
```
= content main
h2 Inner Template - Main : {{.Msg}}
= content sub
h3 Inner Template - Sub : {{.Msg}}
```
The base template can contain items like
```
= doctype html
html lang=en
head
meta charset=utf-8
title Ace example
= css
h1 { color: blue; }
body
h1 Base Template : {{.Msg}}
#container.wrapper
= yield main
= yield sub
= include inc .Msg
= javascript
alert('{{.Msg}}');
```
You are allowed to include one *inner* template with the base template,
to do so in revel you can extend your controller from the ace controller
and call `RenderAceTemplate(base ,inner string)` which will insert
the inner template using the outer template.
The ace engine requires that you explicitly set the template type on the
template itself by either using the shebang method on the first line
like `#! ace` or having the file name like `template.ace.html`
either method will work.