Noah Campbell
a82efe5bb1
Merge remote-tracking branch 'origin/parser' into mrg_praser
...
Also brought in parse for github.com/noahcampbell/akebia
Conflicts:
hugolib/page.go
hugolib/page_test.go
2013-09-17 15:52:40 -07:00
Noah Campbell
6b0752e8c0
Move AbUrlify to post content transformation
...
Currently the a@href and script@src elements will have BaseUrl applied
to their elements prior to being written to disk.
2013-09-17 14:16:06 -07:00
Noah Campbell
c6fe87b14e
Add a transform step
...
This allows for the manipulation of the DOM. This is expected to be
applied after the templates are rendered.
2013-09-17 13:04:28 -07:00
Noah Campbell
c75da346e1
Fix alias documentation.
...
Fixes #79
2013-09-13 16:06:39 -07:00
Noah Campbell
172ff5ea7a
Initialize HTMLRedirectAlias before ShowPlan()
...
Without it, no alias information is generated when running --check
2013-09-13 15:06:37 -07:00
Noah Campbell
d45fb72f67
Add /index.html to unadorned alias paths
...
Bring code to be better in line with documentation.
2013-09-13 14:51:28 -07:00
Noah Campbell
803a0fce1e
Remove RenderedContent from page.
...
The output is written directly to disk after being written. Not
entirely sure why it was split into two steps.
2013-09-13 10:30:27 -07:00
Noah Campbell
2ebfb33fe0
Move alias logic to target module
...
I want to move all logic to writing aliases to target so I can pave the
way for writing aliases specific to other runtimes (like .htaccess for
apache or a script for updating AWS or symlinking on a filesystem).
2013-09-12 21:20:00 -07:00
Noah Campbell
2f10da1570
Move alias rendering to target
2013-09-12 16:18:30 -07:00
Noah Campbell
74b55fc7c8
Normalize paths within hugo
...
filepath was used inconsistently throughout the hugolib. With the
introduction of source and target modules, all path are normalized to
"/". This simplifies the processing of paths. It does mean that
contributors need to be aware of using path/filepath in any module other
than source or target is not recommended. The current exception is
hugolib/config.go
2013-09-12 10:48:59 -07:00
Nelson Silva
998b2f73f8
Added safeHtml template function
2013-09-10 17:19:45 -04:00
Noah Campbell
6274aa0a64
Homepage "/" respects PublishDir
...
It wasn't taking the value of PublishDir into consideration for the
special case of the homepage "/".
Fixes #75
2013-09-05 09:57:25 -07:00
Noah Campbell
610c06e658
Introduce source.Filesystem
...
This provides an abstraction over how files are processed by Hugo. This
allows for alternatives like CMS systems or Dropbox, etc.
2013-09-04 22:42:52 -07:00
Noah Campbell
d4d9da9f3a
Remove page module dependence on opening files
...
The site is responsible for reading files, page only operates on
buffers.
2013-09-04 19:36:06 -07:00
Noah Campbell
cb00917af6
Expand the ShowPlan functionality
2013-09-03 20:52:50 -07:00
Noah Campbell
4004687fb2
Move to target.Filesystem
...
Moving the ugly urls logic to the target. There is still UglyUrl logic
in page for the permlink but this is dealing with the generate of urls.
2013-09-03 20:01:55 -07:00
Noah Campbell
7919603fb5
Add Translate to target
...
Translate handles Ugly Urls.
2013-09-03 20:00:22 -07:00
Noah Campbell
c6ad532b94
Add file reporting to planner
2013-09-03 20:00:22 -07:00
Noah Campbell
13d2c55206
Adding Planner
2013-09-03 20:00:21 -07:00
Noah Campbell
79d9f82e79
Code reorg, helpers.go has been decomposed.
...
It started with wanting to move templates in template bundles and the
rest followed. I did my best to start grouping related functions
together, but there are some that I missed. There is also the method
Urlize that seems to be a special function used in both worlds. I'll
need to revisit this method.
2013-09-03 16:16:07 -07:00
Noah Campbell
207d8fb7af
Date rendering unit tests in pages
...
Tests to ensure rendering dates in templates is working correctly.
Actually, I was running into invalid templates not giving warnings when
I was trying to render a date.
2013-09-03 14:51:06 -07:00
Noah Campbell
3ecc698f5e
Remove hugolib.HTML and hugolib.URL types
...
These types were not be rendered correctly by the html/template package.
Removing them gets the correct behavior.
Fixes #74
2013-09-03 12:43:56 -07:00
Noah Campbell
a591a10626
Include building hugo docs as part of test.
...
If the building of the doc fails, tarvis will fail. This will help with
pull requests.
2013-09-03 11:29:43 -07:00
Noah Campbell
d841d522f1
Include building hugo docs as part of test.
...
If the building of the doc fails, tarvis will fail. This will help with
pull requests.
2013-09-01 20:03:10 -07:00
Fabrizio (Misto) Milo
ba82a20321
Add support for amber files
...
If a layout file ends with .amber it will interpreted as a Amber file
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-09-01 19:51:32 -07:00
Fabrizio (Misto) Milo
ee5865f239
Abstract html/template dependency
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-09-01 19:51:27 -07:00
Fabrizio (Misto) Milo
0a9dc705f3
Use s everywhere for consistency
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-09-01 19:51:21 -07:00
Noah Campbell
b268e639ba
Return an error (other than 0) when ./hugo fails
...
Being a good OS citizen so folks can compose hugo into their tool chain.
Also helps with git bisect run.
2013-09-01 11:39:32 -07:00
Mark Sanborn
6c8e7edbb4
The <!--more--> (summary divider) now works even if it is on the same line as content
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-09-01 07:44:29 -07:00
Noah Campbell
4349216deb
Small code cleanup
2013-08-31 20:00:57 -07:00
Noah Campbell
0fdea0c2c2
Return an error with WritePublic
2013-08-30 21:24:25 -07:00
Noah Campbell
097b782a80
Removing site.Directories.
...
Please revert if this is used somewhere.
2013-08-30 21:13:50 -07:00
Noah Campbell
b14b61af37
Externalize the writing of content to a target
...
Introducing the target module in hugo. This provides the simple
interface for writing content given a label (filename) and a io.Reader
containing the content to be written.
If site.Target is not set, it defaults back to the original behavior of
writing to file system.
In hugolib/site_url_test.go I have an InMemoryTarget for testing
purposes and use it to see if the final output of a render matches.
2013-08-30 20:45:42 -07:00
Noah Campbell
bc3c229002
Ensure Section is set before returning Page object.
2013-08-30 20:13:22 -07:00
Noah Campbell
c32f401b15
Revert "Return errors when rendering"
...
This reverts commit e66ba5d2a7
.
Fixed #69
2013-08-30 20:08:13 -07:00
Noah Campbell
a792ec09ce
Cleanup formatting - go fmt ./...
...
Remember to run go fmt ./... before committing. Looks sternly in mirror
2013-08-30 14:39:12 -07:00
Mark Sanborn
4ed43e8076
Fixed bug where Url specified in front matter as pretty url wouldnt render
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-08-30 14:39:11 -07:00
Daniel Alan Miller
71678a7183
Adding .Summary to page variables
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-08-29 10:08:03 -07:00
Fabrizio (Misto) Milo
3ab5245049
clean up logic
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-08-28 20:39:58 -07:00
Ross Lawley
1bb00b8c19
Refactored added RenderThingOrDefault and tests
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
Conflicts:
hugolib/site.go
2013-08-27 12:40:53 -07:00
Noah Campbell
554375b2ad
Using new parser.
2013-08-25 20:27:03 -07:00
Hugo Duncan
1de1992664
Return any error reported by RenderHomePage
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-08-23 16:55:40 -07:00
Ross Lawley
9930011ea2
Wordpress summaries
...
Allow full control of summaries which can be rendered as html rather
than text. Using a `<!--more-->` html comment in your markdown / rst
you can indiciate where the summary should end and have the summary
converted to html.
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
Conflicts:
hugolib/page_test.go
2013-08-23 16:46:19 -07:00
Ross Lawley
7b1f0960e3
Add 404.html for gh-pages
...
Signed-off-by: Noah Campbell <noahcampbell@gmail.com>
2013-08-23 16:38:35 -07:00
Noah Campbell
f28a8fa0c2
RenderThing test cases
...
Provide unit test support RenderThing.
One observation is that creating the site.Tmpl variable is a one time
event. site.Tmpl doesn't like additional templates with the same name.
This means that updating a template while in --watch mode requires
throwing away the entire Site object and creating a new one. Not that
this is a bad idea, but it is something I discovered while working on
these unit tests.
2013-08-23 16:21:28 -07:00
Noah Campbell
9d15262ee5
Test cases for ignoreDotFile
...
Meant to commit this earlier, but it's a basic unit test.
2013-08-23 14:57:21 -07:00
Noah Campbell
0fabd51ab1
Update .gitignore to ignore *.swo files
...
For the fellow vim user.
2013-08-23 14:57:21 -07:00
Noah Campbell
7461ed63ae
Fix benchmark so the buffer is read each time.
...
The bytes.Buffer was exhausted after the first read. Creating a new
reader each invocation catpures the correctly timing.
2013-08-23 14:16:37 -07:00
Noah Campbell
599e6672f7
Removing GetSection
...
Using GetXXX is not idiomatic to Go. Also added a bunch of unit testing
around this method.
2013-08-23 14:14:54 -07:00
Noah Campbell
ae7112977d
Skip "dot" files in layout
...
As a vim user, .filename.swp files pop up. This change prevents hugo
from reading those files.
2013-08-23 13:58:52 -07:00