Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
I have used asciidoc for some time, but new to asciidoctor, ruby, markdown...
I'm at this point in the manual: http://asciidoctor.org/docs/user-manual/#author-and-email I came across a strange situation, the author is missing. Asciidoctor src: ----------------------------------------------------------------- = Document Title FirstName Lastname <email@domain.com> include::/path/asciidoctor.conf[] Author: {author} Author Initials: {authorinitials} ----------------------------------------------------------------- I get: ----------------------------------------------------------------- Document Title - email@domain.com Author: Author Initiials: FL ----------------------------------------------------------------- I tried the other method. ----------------------------------------------------------------- = Document Title :author: FirstName Lastname :email: <email@domain.com> include::/path/asciidoctor.conf[] Author: {author} Author Initials: {authorinitials} ----------------------------------------------------------------- I get: ----------------------------------------------------------------- asciidoctor: WARNING: skipping reference to missing attribute: authorinitials Document Title - email@domain.com Author: Author Initiials: {authorinitials} ----------------------------------------------------------------- If I put a blank line after the :email:, asciidoctor output for the author is correct, but the include is ignored. I noticed Asciidoctor is extremely sensitive in the document header. I basically copied my asciidoc file over and made a few changes to attributes, and after many hours, i found out that i cannot have any blank lines in the included file. Comments (//) are okay. For now, I commented all the ifdef-endif out of the included file because they were being dumped in the output's header section and some ifdef's ended up in the html meta data, and other strangeness. Glancing over the doc, I really like the experimental UI macros and the :hardbreaks: attribute. The time to convert a document to html5 is super fast. I'm really missing the ability to define all listing blocks as source so I don't need to add the line [source]. |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
It looks like you just need a blank line before your include directive.
see: http://asciidoctor.org/docs/user-manual/#include-partitioning Note the blank lines before and after the include directives. This practice is recommended whenever including AsciiDoc content to avoid unexpected results. e.g. Example.adoc = Rendered with Asciidoctor Ted Bergeron <ted@example.com> :icons: font include::chapter01.adoc[] == About the Author You can contact {author} at {email}. First name: {firstname} and Last name: {lastname}. Also supports Middle name: {middlename}. Author initals: {authorinitials}
- Ted
@TedAtCIS
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
In reply to this post by asciidocuser48
If I put a blank line between, I get an error: stylesheet does not exist or cannot be read.
If there is no blank line between, I do not get that error and the html contains the correct stylesheet. I just swapped the two lines, include and FirstName, and it worked. I did have blank lines in the include file (which only contains simple attribute assignments at this time) and got errors. I changed them all to comments (//) and it worked. I know blank lines are very important to separate blocks, but I didn't think it mattered if it was a list of attributes. |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
The include directive is not an attribute, so it should not be in the document header. Place the include where ever you want the content to be included. Hopefully this make more sense: e.g. = Rendered with Asciidoctor Ted Bergeron <ted@example.com> :icons: font == About the Author You can contact {author} at {email}. First name: {firstname} and Last name: {lastname}. Also supports Middle name: {middlename}. Author initals: {authorinitials} include::chapter01.adoc[] More content here. include::chapter02.adoc[] More content here.
- Ted
@TedAtCIS
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
I often group header attributes in an include file like this to enforce a common look across multiple documents, and it works fine. Is this a bad practice? |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Since it works, it does seem like a good idea. I totally missed what you and asciidocuser48 were trying to do. So can you post examples that work? I wonder if you could put the FirstName Lastname <email@domain.com> in your attributes file and include it, like this? = Document Title include::/path/AllAttributes.txt[] Author: {author} Author Initials: {authorinitials} It seems like as long as it was the first line of the included file it might work?
- Ted
@TedAtCIS
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
In reply to this post by rockyallen
> Ted wrote: > The include directive is not an attribute, so it should not be in the document header. This is not correct. The include directive can be used anywhere. Of course, what that include contributes to the document is important. You have to think about how the document would be parsed if the include is expanded in place, since that's what happens. > rockyallen wrote: > I often group header attributes in an include file like this to enforce a common look across multiple documents, and it works fine. Is this a bad practice? This is a perfectly good practice. In fact, I encourage it. > asciidocuser48 wrote > I did have blank lines in the include file (which only contains simple attribute assignments at this time) and got errors. I changed them all to comments (//) and it worked. The document header cannot have any blank lines (which includes lines in an include). The reason is that a blank line is what separates the header from the body. If you define attributes in the body, they only apply to the body. So, for instance, you cannot set the author or stylesheet from the body. -Dan On Wed, Jan 31, 2018 at 2:43 PM, rockyallen [via Asciidoctor :: Discussion] <[hidden email]> wrote: I often group header attributes in an include file like this to enforce a common look across multiple documents, and it works fine. Is this a bad practice? Dan Allen | @mojavelinux | https://twitter.com/mojavelinux |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
In reply to this post by rockyallen
I'm confident that the following document will work correctly as long as asciidoctor.conf has only attribute entries and no blank lines: = Document Title FirstName Lastname <[hidden email]> include::/path/asciidoctor. Author: {author} Author Initials: {authorinitials} -Dan On Thu, Feb 1, 2018 at 1:07 PM, Dan Allen <[hidden email]> wrote:
... [show rest of quote] Dan Allen | @mojavelinux | https://twitter.com/mojavelinux |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
In reply to this post by rockyallen
Since this issue about blank lines in the header often comes up, I think it's worth thinking about whether we can make the parser more lenient / forgiving. I'll propose some ideas in an issue. -Dan On Thu, Feb 1, 2018 at 1:09 PM, Dan Allen <[hidden email]> wrote:
... [show rest of quote] Dan Allen | @mojavelinux | https://twitter.com/mojavelinux |
Free forum by Nabble | Edit this page |