I watched a great webinar by RStudio the other day about RMarkdown. After the webinar they posted the code used in the demonstrations online and I wanted to check out one example. I took their code, put it in my RStudio (which says it's fully up-to-date, v0.98.978), installed or updated all the necessary packages and hit "Run Document"
I receive an error which I do not understand and for which Google has been very unhelpful. What is this mysterious <document start> and how do I include it? I assumed all necessary components would be included given the source of the code.
Error in yaml::yaml.load(front_matter) :
Parser error: did not find expected <document start> at line 2, column 1
Calls: <Anonymous> -> parse_yaml_front_matter -> <Anonymous> -> .Call
Execution halted
The issue came from copying the code from the browser to Rstudio.
The original header information was:
---
title: "Linked brushing"
output: html_document
runtime: shiny
---
the pasted text was:
---
title: "Linked brushing"
output: html_document
runtime: shiny
---
The missing <document start> was an unequal amount of white space before each element of the header. This can be fixed by adding white space to the 'output' and 'runtime' lines or by removing the white space of the 'title' line.
Another frequent cause of this error message is using tabs instead of spaces to indent your YAML code. You can only use SPACES to indent YAML, not TABS. I am writing this for my future self to find here.
title: "Initial Results"
output:
pdf_document:
toc: true
This is not the case but the same type of error can occur when using pkgdown::build_site or, more viciously, pkgdown::build_article. When using the latter to build a specific vignette for a package, I noticed that internally the headers of all the vignettes are parsed. Therefore, even if the specific vignette you are building is correct, the error occurs without specification of which file's header is corrupt. So, you might find yourself struggling to debug a header which is in fact correct, when the problem is in another file.
In my case, I needed to add a single space after the three dashes at the top of the YAML header:
---[single space here -without the squared brackets]
title: "Linked brushing"
output: html_document
runtime: shiny
Delete a file from the directory may cause a similar problem as well. Yaml, markdown, knitr should be reinstall after removing from where ever it is located .../R/library.
Related
I'm working on a project where YAMLs are used (among other use cases) for storing synonym lists. A file may look a little like this:
- "streifen,gestreift"
- "fleeceoverall,fleeceanzug"- "federball,badminton"
- "hochgarage,parkgarage"
In this case - "federball,badminton" is on the same row as - "fleeceoverall,fleeceanzug" which causes the build of the application to fail with an error stating
Unexpected characters near "- "federball,badminton".
I tried to configure a code style profile for code inspections as mentioned here in the PhpStorm documentation:
https://www.jetbrains.com/help/phpstorm/customizing-profiles.html?keymap=secondary_default_for_macos
But I don't know what to adjust here. I using the IDE-Standard which looks like this for wrapping and braces (which I guess is what I'm looking for ;) :
I also took a look at validating my YAML against a JSON file as mentioned here: https://www.jetbrains.com/help/phpstorm/yaml.html# but ultimately I don't understand how this works :/
So I guess I'm a little lost on how to avoid the errors at build time beforehand and would love some advice!
Revising the title since I figured out that the problem was totally different than what I thought it was. Should I delete this question or leave it out here in case someone else makes this same mistake?
Original title was: Some Sphinx cross-references don't recognize section title?
Original question:
I'm seeing some really odd behavior - I have cross-references in my Sphinx markup according to http://sphinx-doc.org/markup/inline.html#ref-role
but when I build the document (HTML or LaTEXPDF) I get these errors on some of them:
WARNING: undefined label: _unhiding (if the link has no caption the label must precede a section header)
Thing is, the working and nonworking ones look exactly the same to me.
Working:
.. _conditions:
Monitoring Conditions and Alerts
================================
Broken:
.. _performance:
Viewing System Performance
==========================
Also broken:
.. _unhiding:
Unhiding Conditions and Canceling Auto-Dismiss
-----------------------------------------------
I even copied the working one and replaced the reference term, but that didn't help.
I should be able to work around this by explicitly defining the captions, but this is mystifying....
AUGH! Never mind, the title warning was a red herring.
The problem was in the references - I was including the _ in the reference text, but it's secretly not part of the key. I forgot this since I used references a few weeks ago and it's not obvious from the documentation.
Doesn't work:
:ref:`_unhiding`
Does work:
:ref:`unhiding`
I've just installed SublimeLinter to help me manage my Python code. Currently it is flagging up blank lines as errors which is annoying so I wanted to disable that by writing some ignore settings in the user config file.
The config file is located in ~./config/sublime-test-2/Packages/User/SublimeLinter.sublime-settings
{
"pep8_ignore":
[
"W239"
]
}
If I try to add a comma after the square brackets I get "Trailing comma before closing brackets" when saving
If I try to add a comma after the curly brackets I get "unexpected trailing characters" when saving
If I leave it as it is above and close and reopen sublime I get the error message:
"Error trying to parse settings: Unexpected character, expected a
comma or closing bracket in
~/.config/sublime-text-2/Packages/SublimeLinter/SublimeLinter.sublime-settings:194:9
(despite the file only being a few lines long.
I've looked on here and other places to look for examples and it seems I'm doing it exactly as others have done. Any advice would be much appreciated. Sorry if my formatting isn't great, I'm getting use to the stackoverflow way of doing things.
From the error you're getting, you cut something out of the original settings file (~/.config/sublime-text-2/Packages/SublimeLinter/SublimeLinter.sublime-settings) when you made your Packages/User/SublimeLinter.sublime-settings file. Head over to the SublimeLinter GitHub site and download the original version.
Next, save that original version both in the Packages/SublimeLinter directory and and your Packages/User directory. The User one will override the other, but you need to remember that any keys you make changes to need to be replicated in full (please read the README in full to understand) in order for everything to work properly. Now, you can scroll down in the User copy to the "pep8_ignore": section and add "W239" on its own line, with commas , separating lines. So, the full section should look like this:
"pep8_ignore":
[
"E501",
"W239"
],
Feel free to add new errors/warnings as you want, but remember that others in the community will likely look more favorably on your code the more closely you follow PEP8. That being said, some of the warnings are rather silly, but over time I've found myself coding closer to the guidelines, and it really does result in cleaner, more easily-read code, especially if you come back to something after a while.
I am trying to create custom syntax highlighting for Kivy '.kv' files in the Geany editor. Although the specific filetype seems irrelavant to the issue I'm having, as any efforts I make at getting syntax highlighting to work for a custom filetype results in a completely non-highlighted file. I believe I have done my homework on this, and nothing seems to work.
I have added the following to ~/.config/geany/filetype_extensions.conf
Kivy=*.kv;
I also have a custom type definition file named 'filetypes.Kivy.conf' in ~/.config/geany/filedefs/. I have tried basing this file off several of the stock type definition files in /usr/share/geany/ and the file never gets any syntax highlighting applied in Geany. Right now, just for experimentation's sake, my 'filetypes.Kivy.conf' file looks like this:
# For complete documentation of this file, please see Geany's main documentation
[settings]
# default extension used when saving files
extension=kv
# single comments, like # in this file
comment_single=#
[keywords]
# all items must be in one line
primary=size canvas
secondary=pos size
[indentation]
width=4
# 0 is spaces, 1 is tabs, 2 is tab & spaces
type=0
This is very loosly based on the stock XML definition file, but like I said I've tried many other stock files. In many cases I only changed the 'extension=' value to kv and still no highlighting was applied, even though going to Document>Set Filetype in Geany and choosing virtually any random filetype (besides my custom entry) would yeild some sort of highlighting within my .kv file. This is even the case when using the unmodified contents of a stock definition which otherwise works fine on my .kv file when specifically selected in Geany!
Also, the Kivy filetype is listed and selected by default in Document>Set Filetype within Geany, so I must be doing something right here!
I realize this similar question has been asked, but the solutions seem irrelavent to my case, as I've tried every related topic on this and many other sites. My Geany version is 1.22 and I'm running Arch Linux. This is driving me nuts - any suggestions?
Thank you!
Set lexer_filetype= property in the [settings] section of your filetype file. Working highlighting requires that there is a lexer that could be used for highlighting the .kv-files.
For more info see http://www.geany.org/manual/#lexer-filetype
There are three important things to obey:
the configuration file should be placed in "~/.config/geany/filedefs"
the configuration file must have the extension ".conf" - otherwise it won't show up at all (the files in "/usr/share/geany/filesdefs", where I copied my base file from, do not have a ".conf" extension!)
you must set the "lexer_filetype" to an existing (presumably builtin) configuration; e.g. "lexer_filetype=Python"
make -C doc html latexpdf
yields this:
Package hyperref Message: Driver (autodetected): hpdftex.
(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty))
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/hypcap.sty))
(/usr/share/texlive/texmf-dist/tex/latex/multirow/multirow.sty)
Writing index file Arakoon.idx
(./Arakoon.aux)
Runaway argument?
{{1.10.3}{9}{Client side support\relax }{subsection.1.10.
! File ended while scanning use of \#newl#bel.
<inserted text>
\par
l.113 \begin{document}
?
If someone is still looking for this: For me usually, when a prior build had failed due to an error, subsequent builds would fail with this error. Solved it by deleting the main .aux file and building it again.
It is impossible to say with any confidence, but it looks like a fragile (non-robust) command in a subsubsection heading or a maths label (would be label 10.1.3), because:
It occurs at \begin{document}, when the .aux files are loaded,
The error indicates a malformed directive in the .aux file, and the presence of a \relax there - typically what command reduce to after having performed their side effect.
Two suggestions:
Generate an MWE by making a new document from this with all the body of your document except that heading/ equation (and perhaps the sentence following) deleted. Does this create the same error? If so, post it here. You might need some trial and error to find out which Lat3ex command is responsible, but it should contain the text Client side support.
Do read https://tex.stackexchange.com/questions/4736/what-is-the-difference-between-fragile-and-robust-commands - if I am right, you have a fragile command where it shouldn't be. Figure out what should be there instead.