Hello, I was helping out "ablephar`" on IRC and they found that setting a file property `header-args:C++` does not work.
After some edebug magic, I discovered that org has a feature that lets you append property values! (Not the best way to discover a great feature, I must say! :-) The fix could either be a documentation fix. (I would've tried using cpp instead of C++, if I knew that was supported). But, this would still have some users seeing things broken and then looking up docs or trying out the alternative. OR a "hacky" fix, (better for the users ?), could be to consider KEY+ to be indicating appending, but KEY++ to not. Thoughts? Thanks, Puneeth
diff --git a/lisp/org.el b/lisp/org.el index e806440..fc850b8 100755 --- a/lisp/org.el +++ b/lisp/org.el @@ -15415,7 +15415,8 @@ Being in this list makes sure that they are offered for completion.") (defun org--update-property-plist (key val props) "Associate KEY to VAL in alist PROPS. Modifications are made by side-effect. Return new alist." - (let* ((appending (string= (substring key -1) "+")) + (let* ((appending (and (string= (substring key -1) "+") + (not (string= (substring key -2) "++")))) (key (if appending (substring key 0 -1) key)) (old (assoc-string key props t))) (if (not old) (cons (cons key val) props)