* lisp/ob-tangle.el (org-babel-tangle-file): Use the new argument list
to org-babel-tangle.
(org-babel-tangle): Now when called with a prefix argument, only the
current code block is tangled.
* lisp/org-list.el (org-list-parse-list): replace transitional
check-boxes with "[CBTRANS]" string during parsing.
(org-list-to-generic): use the new property `:cbtrans' to configure
export string for transitional check-boxes.
* lisp/org-agenda.el (org-agenda-add-entry-to-org-agenda-diary-file):
Use stable internal `org-anniversary' instead of diary-anniversary.
(org-class): New function.
(org-diary-class): Use `org-class'.
(org-anniversary, org-cyclic, org-date, org-block): New functions.
This patch provides stable alternatives for a number of diary
functions to be used in diary sexp entries. The corresponding diary-*
functions swap around their input arguments depending on
`calendar-date-style', which is unstable and evil. The functions
provided here have a fixed order of arguments, the ISO order: year
month day.
Also, the `i a' key in the agenda now uses `org-anniversary' instead of
diary-anniversary.
Now *all* code blocks which either are named `ref-name' or have the
:noweb-ref header argument value `ref-name' will have their bodies
concatenated when resolving the noweb reference <<ref-name>>.
* lisp/ob.el (org-babel-expand-noweb-references): Concatenating all
bodies with the appropriate name or :noweb-ref header argument.
* lisp/org.el (org-find-dblock):
(org-clocktable-try-shift): Make regexp work also when #+begin
line is indentex.
Achim Gratz writes:
It wasn't possible to use S-up/down/left/right on the clocktable BEGIN
line when the whole table was indented. Interestingly enough calling
the function directly would work, it turned out to be a regexp in org.el
that was still pinned to bol. There was a second one further down that
is used to recognize dynamic blocks that got the same treatment.
TINYCHANGE
* lisp/org.el (mailcap-parse-mailcaps): Declaring functions used by
`org-open-file'.
(mailcap-extension-to-mime): Declaring functions used by
`org-open-file'.
(mailcap-mime-info): Declaring functions used by `org-open-file'.
* lisp/org-agenda.el (org-agenda-redo): Replacing call to now-defunct
function `interactive-p'.
(org-agenda-show-1): Replacing call to now-defunct function
`interactive-p'.
(org-agenda-set-tags): Replacing call to now-defunct function `interactive-p'.
* lisp/org-ascii.el: Replacing call to now-defunct function
`interactive-p'.
(org-export-as-latin1): Replacing call to now-defunct function
`interactive-p'.
(org-export-as-latin1-to-buffer): Replacing call to now-defunct
function `interactive-p'.
(org-export-as-utf8): Replacing call to now-defunct function
`interactive-p'.
(org-export-as-utf8-to-buffer): Replacing call to now-defunct function
`interactive-p'.
(org-export-region-as-ascii): Replacing call to now-defunct function
`interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-docbook.el: Replacing call to now-defunct function
`interactive-p'.
(org-export-region-as-docbook): Replacing call to now-defunct function
`interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-html.el: Replacing call to now-defunct function
`interactive-p'.
(org-export-region-as-html): Replacing call to now-defunct function
`interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-latex.el: Replacing call to now-defunct function
`interactive-p'.
(org-export-region-as-latex): Replacing call to now-defunct function
`interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-macs.el: Replacing call to now-defunct function
`interactive-p'.
(org-called-interactively-p): Replacing call to now-defunct function
`interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-table.el: Replacing call to now-defunct function
`interactive-p'.
(org-table-blank-field): Replacing call to now-defunct function
`interactive-p'.
(org-table-current-column): Replacing call to now-defunct function
`interactive-p'.Replacing call to now-defunct function
`interactive-p'.
(org-table-current-dline): Replacing call to now-defunct function
`interactive-p'.Replacing call to now-defunct function
`interactive-p'.
(org-table-sort-lines): Replacing call to now-defunct function
`interactive-p'.
(org-table-sum): Replacing call to now-defunct function
`interactive-p'.
(org-table-rotate-recalc-marks): Replacing call to now-defunct
function `interactive-p'.
(org-table-eval-formula): Replacing call to now-defunct function
`interactive-p'.
(orgtbl-send-table): Replacing call to now-defunct function `interactive-p'.
* lisp/org.el: Replacing call to now-defunct function `interactive-p'.
(org-mode): Replacing call to now-defunct function `interactive-p'.
(org-copy-subtree): Replacing call to now-defunct function
`interactive-p'.
(org-paste-subtree): Replacing call to now-defunct function
`interactive-p'.
(org-store-link): Replacing call to now-defunct function
`interactive-p'.
(org-todo): Replacing call to now-defunct function `interactive-p'.
(org-occur): Replacing call to now-defunct function `interactive-p'.
* lisp/ob-R.el (ess-local-process-name): This variable wasn't known to
be defined.
* lisp/ob-lisp.el (org-babel-lisp-dir-fmt): This defcustom now has a
group specified.
* lisp/ob-tangle.el (org-bracket-link-regexp): This variable wasn't
known to be defined.
(org-babel-tangle-combine-named-blocks): Roll my own version of a
forbidden common lisp function.
* lisp/ob.el (org-babel-sha1-hash): Using a non-deprecated version of
called-interactively.
This brings the behavior inline with the documentation.
* lisp/org-latex.el (org-export-latex-tables): Check for the
"multiline" option and set the `floatp' option to true when
multicolumn tables are requested.
* lisp/org-agenda.el (org-agenda-bulk-action): Fix bug caused by
`days-to-time, converting relative to 1 BC, while the code assumed it
would return a time relative to 1970.
For more information, see
http://thread.gmane.org/gmane.emacs.orgmode/42531
Thanks to Neeum Zawan for suggesting this behavior
* lisp/ob-tangle.el (org-babel-tangle-named-block-combination): Block
combination can now take a number of values.
(org-babel-tangle-combine-named-blocks): More sophisticated block
combination behavior.
* lisp/ob-tangle.el (org-babel-tangle-do-combine-named-blocks):
Switch to turn on the combination of code blocks of the same name.
(org-babel-tangle-combine-named-blocks): Combine blocks of the same
name.
Thanks to Avdi Grimm for suggesting this addition
* lisp/ob-ruby.el (xmp): Declaring this function to appease the
compiler.
(org-babel-execute:ruby): "xmp" result option for outputting
annotated source code.
* lisp/org-list.el (org-list-to-latex): the enumerate environment in
latex increments the counter before using it. Therefore, org-mode
should set the enumeration counter to the desired value minus one.
Patch from Darlan Cavalcante Moreira
TINYCHANGE
Fix the format specification for clock tables.
Niels writes:
Bernt was right in that there were more arguments to format than the
format string specified. I guess I must not have noticed that there was
a call to format (all the other times properties columns are 'maybe
inserted' go directly to `insert-before-markers'), and I must have
forgotten to test the multifile case (I never used multifile clock
reports myself).
However, to keep the layout of the table consistent the *File time*
cells should be in the Headline column. Attached patch fixes this by
putting the (empty) properties cells *before* the *File time* cell.
* lisp/org-taskjuggler.el (org-taskjuggler-clean-effort): handle any
effort that is accepted by `org-duration-string-to-minutes´.
* doc/org.texi (TaskJuggler export): Modified the example to reflect
the new effort durations.
The Effort property previously had no unit attached. With release 7.5
of orgmode you can now attach units to it such as 4h, 2d or 2m. This
patch enhances the exporter to accept the same effort specifications.
Note: This change is NOT BACKWARDS COMPATIBLE. Where the exporter
previously assumed a plain number was meant to be days, it now assumes
it to mean minutes. You will have to change existing effort
specifications from e.g. '2' to '2d'. A simple M-x
query-replace-regexp should do.
Hi,
When evaluating shell code blocks in org-babel, the execution seems to hang
indefinitely. The following patch is trying to fix this problem by modifying
the way shell code is send to comint and the way the end-of-evaluation
indicator is looking for.
As I am far from an emacs lisp expert and as the patch modifies the widely use
org-babel-comint-with-output function, it certainly needs some testing. I've
made some tests with shell and R code blocks, but I'm not sure it's enough.
Thanks !
Julien
Fix sh block execution in a session
* lisp/ob-sh.el (org-babel-sh-evaluate) : when sending input to comint, wait
until previous line execution is finished
* lisp/ob-comint.el (org-babel-comint-with-output) : when looking for
end-of-evaluation indicator, search forward for the indicator before searching
forward for the prompt
* lisp/org.el (org-auto-align-tags): change docstring.
(org-update-parent-todo-statistics): keep tags aligned even when
statistics cookies are shifting them.
* lisp/org-list.el (org-update-checkbox-count): keep tags aligned even
when statistics cookies are shifting them.
* lisp/ob.el (org-babel-sha1-hash): Don't modify info argument by
side-effect when sorting result-params list.
copy-sequence only does shallow copies, so if we're going to modify a
sub-list, we need to make sure we copy it first.
* lisp/ob.el (org-babel-result-regexp): Use non-shy group around
org-babel-data-names.
By default regexp-opt returns a shy group around its arguments. But
users of org-babel-result-regexp expect the third match-string to
contain the hash. With a shy group, the second match-string contains
the hash.
Once again, thanks to Mark Cox for raising these issues.
* lisp/ob-lisp.el (org-babel-lisp-dir-fmt): Defcustom for use in
changing how/if the current directory is represented to lisp code.
(org-babel-execute:lisp): More general handling of the default
directory value.
Thanks to Mark Cox for suggesting this change.
* lisp/ob-lisp.el (org-babel-execute:lisp): Setting the value of
*default-pathname-defaults* to either the value of the :dir header
argument or the directory of the containing Org-mode file.
* org.el (org-mode-flyspell-verify): This is useful when using
flyspell with a non-English dictionary, or if some of your
keywords are in another language.
Signed-off-by: Julien Danjou <julien@danjou.info>
* org-exp.el (org-export): Use new compatibility function
`org-activate-mark'.
* org-compat.el (org-activate-mark): New function. Provide
`activate-mark' if not present (e.g. Emacs22).
Emacs 22 misses this function. Defun copied from Emac23's
`active-mark' but removed reference to customization variable
`select-active-regions' which is not present in Emacs22.
* org-bibtex.el (org-bibtex-headline): Don't use equalp at run-time,
compare downcased strings.
Compiler complains about using `equalp' because other than for example
`concatenate' it is not declared 'inline.
Cf. [[info:cl#Declarations]] about the 'inline declaration
...
`inline'
The `inline' DECL-SPEC lists one or more functions whose bodies
should be expanded "in-line" into calling functions whenever the
compiler is able to arrange for it. For example, the Common Lisp
function `cadr' is declared `inline' by this package so that the
form `(cadr X)' will expand directly into `(car (cdr X))' when it
is called in user functions, for a savings of one (relatively
expensive) function call.
The following declarations are all equivalent. Note that the
`defsubst' form is a convenient way to define a function and
declare it inline all at once.
(declaim (inline foo bar))
(eval-when (compile load eval) (proclaim '(inline foo bar)))
(defsubst foo (...) ...) ; instead of defun
*Please note:* this declaration remains in effect after the
containing source file is done. It is correct to use it to
request that a function you have defined should be inlined, but it
is impolite to use it to request inlining of an external function.
In Common Lisp, it is possible to use `(declare (inline ...))'
before a particular call to a function to cause just that call to
be inlined; the current byte compilers provide no way to implement
this, so `(declare (inline ...))' is currently ignored by this
package.
...
Thus other than `concatenate' `equalp' is stored as a function call at
run-time.
* org-id.el (org-id-locations): Fix docstring, remove reference to
non-existent option.
The configuration option `org-id-use-hash' does not exist. Git bisect
and grepping for 'org-id-use-hash' showed that this string never ever
occured more than once, hence it was never there..
* org.el (org-self-insert-command): Use `delete-char' instead of
`delete-backward-char'.
* org-table.el (orgtbl-self-insert-command): Dto.
According to the doc string `delete-backward-char' "is meant for
interactive use only; from Lisp, better use `delete-char' with a
negated argument."
* lisp/org-latex.el (org-export-latex-preprocess): add
`original-indentation' property to footnotes so they cannot possibly
end a list by being less indented than the item they belong to.
Thanks to Mark Cox for suggesting this patch
* lisp/ob-lisp.el (org-babel-expand-body:lisp): No longer wraps
biddies in `progn'.
(org-babel-execute:lisp): Wraps bodies in `progn' as they are passed
to swank.
* doc/org.texi (The clock table): Document the :properties and :inherit-props
arguments for the clocktable.
* lisp/org-clock.el (org-clocktable-write-default): Implement adding property
columns to the clock table.
Patch by Niels Giesen.
* lisp/org.el (org-default-priority):
(org-priority-start-cycle-with-default): Improve docstring.
(org-priority): Throw error when priority is out of range.
Patch by Michael Brand.
* lisp/org.el (org-toggle-heading): region should be considered as
made of full lines, without the last one if region-end is at bol.
Removed unused variables. Refactored and commented code.
* lisp/org-list.el (org-list-to-subtree): if the list is before first
heading and `org-odd-levels-only' is non-nil, the first item gets
two stars instead of one.
* lisp/org.el (org-reduced-level): a level of 0 was reduced to 1 with
`org-odd-levels-only' non-nil.
* lisp/org.el (org-toggle-item): converting an heading to an item
would sometimes insert unnecessary spaces before it, and unwanted
space with `org-indent-mode' on. Changing some text into an item
wouldn't always preserve indentation.
Hello,
Here is a patch which allows one to change the (currently) hard-coded DIV name
in which the page contents is being inserted.
It currently is "content", but some prefer "container" or "wrapper".
If accepted, my next patch will be to make this a per-project variable.
Best regards,
Seb
* lisp/org-capture.el (org-capture-current-plist): Improve docstring.
(org-capture-put): Add docstring.
(org-capture-get): Add docstring.
(org-capture-member): Add LOCAL argument. Add docstring.
(org-capture-set-target-location): Store the time received from a date
prompt into the :prompt-time property.
When using the file+datetree+prompt target for capture, the time set
by the prompt is now stored in the :prompt-time property.
* lisp/org-exp.el (org-export-mark-list-properties): even if context
is invalid, mark list item with `list-context' property.
* lisp/org-list.el (org-list-forbidden-blocks): add exporters specific
blocks to the list of forbidden blocks.
Thanks to Jai Bharat Patel for reporting this.
* lisp/ob-sh.el (ob-ref): Uses ob-ref to resolve the value of the
:stdin header argument.
(org-babel-execute:sh): Use the :stdin header argument.
(org-babel-sh-var-to-sh): Split the bulk of this function off into a
new sub-function.
(org-babel-sh-var-to-string): New function for converting elisp
values to strings that make sense for parsing with sh.
(org-babel-sh-evaluate): Adding "stdin" option to session and
external evaluation options.
* lisp/org-html.el (org-export-as-html): Don't expand non-data
lines of table.el tables.
(org-html-expand): Removed the (buggy) test for non-data lines
in table.el tables. The test is now done as part of
org-export-as-html.
(org-format-table-table-html-using-table-generate-source):
Added test for spanning of cells in table.el tables using
table.el's own library routine. Optionlly Suppress export of
simple table.el tables.
(org-format-table-html): Removed the (buggy) test for spanned
table.el tables. The test is now done as part of
org-format-table-table-html-using-table-generate-source.
* lisp/org-exp.el (org-export-define-heading-targets): Use dash instead
of underscore to make labels valid.
Currently, the section number (a string of the form "X.Y.Z") is used
to manufacture a section label of the form sec-X_Y_Z. Underscores are
overloaded however, both in org and in LaTeX, and cause conflicts with
some packages. This patch changes underscores to hyphens in section
labels.
TINYCHANGE
Slight modification of patch by Christophe Rhodes
* lisp/ob-R.el (org-babel-R-write-object-command): Ensure that all
data is written to the results file before Emacs notices that the file
exists.
* lisp/ob-exp.el (org-babel-exp-do-export): Use `org-babel-exp-code'
to generate code block output.
(org-babel-exp-code): Re-create the code block body for exporting
source code.
* lisp/org-list.el (org-list-separating-blank-lines-number): fix
confusion between point and item beginning. Now, if no information
is avalaible, truly follow user preference when it inserts blank
lines manually.
(org-list-insert-item): send correct argument to the preceding
function.