@@ -318,7 +318,7 @@ blockHeaderStart :: OrgParser (Int, String)
318318blockHeaderStart = try $ (,) <$> indent <*> blockType
319319 where
320320 indent = length <$> many spaceChar
321− blockType = map toLower <$> (stringAnyCase "#+begin_" *> many orgArgWordChar)
321+ blockType = map toLower <$> (stringAnyCase "#+begin_" *> orgArgWord)
322322
323323withRaw' :: (String -> F Blocks) -> BlockProperties -> OrgParser (F Blocks)
324324withRaw' f blockProp = (ignHeaders *> (f <$> rawBlockContent blockProp))
@@ -422,16 +422,23 @@ rundocBlockClass :: String
422422rundocBlockClass = rundocPrefix ++ "block"
423423
424424blockOption :: OrgParser (String, String)
425−blockOption = try $ (,) <$> orgArgKey <*> orgArgValue
425+blockOption = try $ (,) <$> orgArgKey <*> orgParamValue
426+
427+inlineBlockOption :: OrgParser (String, String)
428+inlineBlockOption = try $ (,) <$> orgArgKey <*> orgInlineParamValue
426429
427430orgArgKey :: OrgParser String
428431orgArgKey = try $
429432 skipSpaces *> char ':'
430433 *> many1 orgArgWordChar
431434
432−orgArgValue :: OrgParser String
433−orgArgValue = try $
434− skipSpaces *> many1 orgArgWordChar <* skipSpaces
435+orgParamValue :: OrgParser String
436+orgParamValue = try $
437+ skipSpaces *> many1 (noneOf "\t\n\r ") <* skipSpaces
438+
439+orgInlineParamValue :: OrgParser String
440+orgInlineParamValue = try $
441+ skipSpaces *> many1 (noneOf "\t\n\r ]") <* skipSpaces
435442
436443orgArgWordChar :: OrgParser Char
437444orgArgWordChar = alphaNum <|> oneOf "-_"
@@ -1067,7 +1074,7 @@ inlineCodeBlock :: OrgParser (F Inlines)
10671074inlineCodeBlock = try $ do
10681075 string "src_"
10691076 lang <- many1 orgArgWordChar
1070− opts <- option [] $ enclosedByPair '[' ']' blockOption
1077+ opts <- option [] $ enclosedByPair '[' ']' inlineBlockOption
10711078 inlineCode <- enclosedByPair '{' '}' (noneOf "\n\r")
10721079 let attrClasses = [translateLang lang, rundocBlockClass]
10731080 let attrKeyVal = map toRundocAttrib (("language", lang) : opts)