Mercurial > emacs
comparison lisp/org/org-src.el @ 105341:2a8a3a69c1c7
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-set-tags-to): New command.
* org-latex.el (org-export-latex-set-initial-vars): Also check in
the plist.
* org.el (org-additional-option-like-keywords): Add LATEX_CLASS
keyword.
* org-exp.el (org-infile-export-plist): Add LATEX_CLASS keyword.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-inlinetask.el (org-inlinetask-export): Option removed.
(org-inlinetask-export-handler): Better export.
* org-xoxo.el (org-export-xoxo-final-hook): New hook.
(org-export-as-xoxo): Run the new hook.
* org-html.el (org-export-html-final-hook): New hook.
(org-export-as-html): Run the new hook.
* org-docbook.el (org-export-docbook-final-hook): New hook.
(org-export-as-docbook): Run the new hook.
* org-ascii.el (org-export-ascii-final-hook): New hook.
(org-export-as-ascii): Run the new hook.
* org-latex.el (org-export-latex-treat-sub-super-char): Allow a
space character as the character before the ^/_.
(org-export-latex-final-hook): New hook.
(org-export-as-latex): Run `org-export-latex-final-hook'.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-macs.el (org-if-unprotected-at): Fix docstring.
* org-agenda.el (org-agenda-change-all-lines): Handle invisible
text in the prefix (if category is a link).
* org-latex.el (org-export-latex-preprocess): Deal properly with
empty lines in verse environments.
* org.el (org-format-latex-header): Inline fullpage.sty.
* org-footnote.el (org-footnote-create-definition): Reveal context
to add a new footnote definition.
* org.el (org-ctrl-c-ctrl-c): Pass prefix arg to
org-table-recalculate when cursor is in TBLFM line.
* org-list.el (org-renumber-ordered-list): Fix cursor position
when bullet length has changed.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-format-latex): Mention `org-format-latex-options' in
the docstring.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-agenda-get): New function.
* org-agenda.el (org-agenda-post-command-hook): No longer move
point away from end of line.
(org-agenda-add-entry-text, org-agenda-collect-markers)
(org-finalize-agenda, org-agenda-mark-clocking-task)
(org-agenda-dim-blocked-tasks, org-agenda-entry-text-show-here)
(org-agenda-entry-text-show, org-agenda-highlight-todo)
(org-agenda-compare-effort, org-agenda-filter-apply)
(org-agenda-later, org-agenda-change-time-span)
(org-agenda-post-command-hook, org-agenda-show-priority)
(org-agenda-show-tags, org-agenda-goto, org-agenda-kill)
(org-agenda-archive, org-agenda-archive-to-archive-sibling)
(org-remove-subtree-entries-from-agenda, org-agenda-refile)
(org-agenda-open-link, org-agenda-copy-local-variable)
(org-agenda-switch-to, org-agenda-check-no-diary)
(org-agenda-tree-to-indirect-buffer, org-agenda-todo)
(org-agenda-add-note, org-agenda-change-all-lines)
(org-agenda-priority, org-agenda-set-tags)
(org-agenda-set-property, org-agenda-set-effort)
(org-agenda-toggle-archive-tag, org-agenda-date-later)
(org-agenda-show-new-time, org-agenda-date-prompt)
(org-agenda-schedule, org-agenda-deadline, org-agenda-action)
(org-agenda-clock-in, org-agenda-bulk-mark)
(org-agenda-bulk-unmark, org-agenda-show-the-flagging-note): Use
`org-get-at-bol'.
* org-colview.el (org-columns-display-here)
(org-columns-edit-allowed, org-agenda-columns): Use
`org-get-at-bol'.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-special-ctrl-a/e): Improve documentation and
customize type.
(org-end-of-line): Don't jump to after the ellipsis.
(org-mode-map): Bind <home> and <end> as well.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-fontify-meta-lines-and-blocks): Treat lines with a
space after #+ as comments.
(org-open-at-point): Run `org-follow-link-hook' always.
* org-latex.el (org-export-latex-emph-format): Use better commands
to insert special characters in verbatim snippets.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-faces.el (org-copy-face): New function. Use it to create
various faces formerly created by using `copy-face'.
* org-agenda.el (org-prepare-agenda): Don't officially mark this
window dedicated.
(org-agenda-quit): Kill the frame containing the agenda window if
that frame was created for the agenda.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-agenda.el (org-agenda-date-prompt): Mark the changed time
stamp in the agenda.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-agenda.el (org-prepare-agenda): Reset
`org-drawers-for-agenda'.
(org-prepare-agenda): Uniquify list of drawers.
* org.el (org-complex-heading-regexp-format): New variable.
(org-set-regexps-and-options): Define
`org-complex-heading-regexp-format'.
(org-drawers-for-agenda): New variable.
(org-map-entries): Bind `org-drawers-for-agenda'.
(org-prepare-agenda-buffers): Add to `org-drawers-for-agenda'.
* org-remember.el (org-go-to-remember-target)
(org-remember-handler): Use `org-complex-heading-regexp-format'.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-agenda.el (org-agenda-highlight-todo): Fix text property
problem.
* org.el (org-on-heading-p, org-at-heading-p): Make sure these are
always with `invisible-ok'.
(org-store-link): No error when there is nothing to link to in the
agenda.
* org-list.el (org-update-checkbox-count): Insert changed cookie
before the old, to avoid problems with invisibility at the end of
the line.
(org-update-checkbox-count): Insert changed cookie before the old,
to avoid problems with invisibility at the end of the line.
* org.el (org-sort-entries-or-items): Include the final newline.
(org-fontify-meta-lines-and-blocks): Add indented dynamic block
lines for fontification.
(org-dblock-start-re, org-dblock-end-re): Allow indentation.
(org-prepare-dblock): Store the current indentation of the BEGIN
line.
(org-update-dblock): Apply the indentation of the begin line to
the rest of the block.
(org-ctrl-c-ctrl-c): Also find indented dblock lines.
(org-startup-folded): New allowed value `showeverything'.
(org-startup-options): Add STARTUP keyword `showeverything'.
(org-set-startup-visibility): Respect value `showeverything' in
org-startup-folded.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-closest-date): Fix issue with past preference.
* org-archive.el (org-archive-set-tag)
(org-archive-subtree-default): New commands.
* org-clock.el (org-clock-clocktable-default-properties): New
option.
(org-clock-report): Use
`org-clock-clocktable-default-properties'.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-iswitchb-completing-read): Fix typo.
* org-crypt.el: New file.
* org.el: Add an entry for org-crypt.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-agenda.el (org-agenda-menu): Reorganize the menu for more
consistency.
(org-batch-store-agenda-views): New function.
(org-agenda-title-append): Define variable.
(org-write-agenda): New export to Org files.
(org-agenda-get-some-entry-text): New arguments INDENT and KEEP.
(org-agenda): Allow to keep the restricted file list if a special
variable is bound to t.
(org-agenda): Define a special agenda view for working on flagged
entries.
(org-agenda-get-restriction-and-command): List the new agenda
view.
(org-agenda-show-the-flagging-note): New command.
(org-agenda-mode-map): New key `?' for looking at the flagging
note.
* org.el (org-autoload): Autoload org-mobile.el.
(org-org-menu): Add menu commands for MobileOrg in the Org menu.
* org-mobile.el: New file.
* org-id.el (org-id-get): Fix bug with forcing ID on an item.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-table.el (orgtbl-line-start-regexp): Match also TBLNAME
statements.
(org-table-get-remote-range): Match indented #+TBLNAME
statements.
* org.el (org-convert-to-odd-levels)
(org-convert-to-oddeven-levels): Work also correctly if the file
is in outline-mode.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-store-link): When in agenda buffer, link to
referenced entry.
(org-add-planning-info): Remove spaces at eol.
* org-macs.el (org-with-point-at): Add a `lisp-indent-function'
property.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-latex.el (org-export-latex-first-lines): Fix problem with
LaTeX export of first line and selected subtree.
* org.el (org-shifttab): Interpret arg differently when using only
odd levels.
2009-10-01 Bastien Guerry <bzg@altern.org>
* org.el (org-check-agenda-file): Use a more explicit message
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-exp.el (org-export-remove-special-table-lines): Don't remove
normal lines.
2009-10-01 Bastien Guerry <bzg@altern.org>
* org.el (org-offer-links-in-entry): Don't use "Select link" as a
prompt in the temporary window.
* org-agenda.el (org-agenda-bulk-mark): Use a slightly soberer
prefix for marked entries in the agenda view.
2009-10-01 Andreas Burtzlaff <andy13@gmx.net> (tiny change)
* org.el (outline-end-of-subtree): Bugfix: advise this function in
a way that prevents any trailing character from being displayed.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-agenda.el (org-agenda-menu): Fix bugs in the bulk action
menu.
* org-exp.el (org-export-remove-special-table-lines): Remove bad
slow regexp match.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-latex.el (org-export-latex-preprocess): Do not protect in
the LaTeX header.
* org-src.el (org-edit-src-save): Save window setup while saving.
(org-edit-src-code): Use new buffer name construction scheme.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-agenda.el (org-agenda-entry-text-exclude-regexps): New
variable.
(org-agenda-entry-text-cleanup-hook): New hook.
(org-agenda-get-some-entry-text): Remove matches of
`org-agenda-entry-text-exclude-regexps' and run the hook
`org-agenda-entry-text-cleanup-hook'.
* org.el (org-offer-links-in-entry): New argument ZERO to
implement a link with index zero.
(org-cycle-show-empty-lines): Not keep empty line under header
hidden.
(org-iswitchb-completing-read): Bind `switchb-use-virtual-buffers'
to nil for special completion.
(org-store-link): Don't error before the first heading.
* org-agenda.el (org-agenda-open-link): Pass the prefix to
`org-offer-links-in-entry'.
2009-10-01 Carsten Dominik <carsten.dominik@gmail.com>
* org-agenda.el (org-agenda-quit): Provide the window argument for
`window-dedicated-p', Emacs 22 needs it.
(org-format-agenda-item): If the category is a link, arrange for
invisible text to replaced with spaces.
(org-compile-prefix-format): Add the extra space.
(org-prefix-category-length): New variable.
* org-exp.el (org-export-cleanup-toc-line): Remove footnote
references from TOC lines.
* org.el (org-selected-window): New variable.
* org-table.el (org-table-edit-formulas): Remember the selected
window.
(org-table-fedit-finish, org-table-fedit-abort): Select the window
that was originally selected.
* org-exp.el (org-export-preprocess-apply-macros): Scan the
expansion of a macro for more macro definitions.
* org-agenda.el (org-agenda-dim-blocked-tasks): Make sure the
invisibility overlay starts on the newline.
author | Carsten Dominik <dominik@science.uva.nl> |
---|---|
date | Thu, 01 Oct 2009 07:59:53 +0000 |
parents | 86b7fe7d1d8f |
children | b7d8222914b4 |
comparison
equal
deleted
inserted
replaced
105340:118ad0cdd9a8 | 105341:2a8a3a69c1c7 |
---|---|
5 ;; | 5 ;; |
6 ;; Author: Carsten Dominik <carsten at orgmode dot org> | 6 ;; Author: Carsten Dominik <carsten at orgmode dot org> |
7 ;; Bastien Guerry <bzg AT altern DOT org> | 7 ;; Bastien Guerry <bzg AT altern DOT org> |
8 ;; Keywords: outlines, hypermedia, calendar, wp | 8 ;; Keywords: outlines, hypermedia, calendar, wp |
9 ;; Homepage: http://orgmode.org | 9 ;; Homepage: http://orgmode.org |
10 ;; Version: 6.30c | 10 ;; Version: 6.31a |
11 ;; | 11 ;; |
12 ;; This file is part of GNU Emacs. | 12 ;; This file is part of GNU Emacs. |
13 ;; | 13 ;; |
14 ;; GNU Emacs is free software: you can redistribute it and/or modify | 14 ;; GNU Emacs is free software: you can redistribute it and/or modify |
15 ;; it under the terms of the GNU General Public License as published by | 15 ;; it under the terms of the GNU General Public License as published by |
108 You may want to use this hook for example to turn off `outline-minor-mode' | 108 You may want to use this hook for example to turn off `outline-minor-mode' |
109 or similar things which you want to have when editing a source code file, | 109 or similar things which you want to have when editing a source code file, |
110 but which mess up the display of a snippet in Org exported files.") | 110 but which mess up the display of a snippet in Org exported files.") |
111 | 111 |
112 (defcustom org-src-lang-modes | 112 (defcustom org-src-lang-modes |
113 '(("ocaml" . tuareg) ("elisp" . emacs-lisp) ("ditaa" . artist)) | 113 '(("ocaml" . tuareg) ("elisp" . emacs-lisp) ("ditaa" . artist) |
114 ("asymptote" . asy)) | |
114 "Alist mapping languages to their major mode. | 115 "Alist mapping languages to their major mode. |
115 The key is the language name, the value is the string that should | 116 The key is the language name, the value is the string that should |
116 be inserted as the name of the major mode. For many languages this is | 117 be inserted as the name of the major mode. For many languages this is |
117 simple, but for language where this is not the case, this variable | 118 simple, but for language where this is not the case, this variable |
118 provides a way to simplify things on the user side. | 119 provides a way to simplify things on the user side. |
183 (with-current-buffer buffer | 184 (with-current-buffer buffer |
184 (if (boundp 'org-edit-src-overlay) | 185 (if (boundp 'org-edit-src-overlay) |
185 (org-delete-overlay org-edit-src-overlay))) | 186 (org-delete-overlay org-edit-src-overlay))) |
186 (kill-buffer buffer)) | 187 (kill-buffer buffer)) |
187 (setq buffer (generate-new-buffer | 188 (setq buffer (generate-new-buffer |
188 (concat "*Org Src " (file-name-nondirectory buffer-file-name) "[" lang "]*"))) | 189 (org-src-construct-edit-buffer-name (buffer-name) lang))) |
189 (setq ovl (org-make-overlay beg end)) | 190 (setq ovl (org-make-overlay beg end)) |
190 (org-overlay-put ovl 'face 'secondary-selection) | 191 (org-overlay-put ovl 'face 'secondary-selection) |
191 (org-overlay-put ovl 'edit-buffer buffer) | 192 (org-overlay-put ovl 'edit-buffer buffer) |
192 (org-overlay-put ovl 'help-echo "Click with mouse-1 to switch to buffer editing this segment") | 193 (org-overlay-put ovl 'help-echo "Click with mouse-1 to switch to buffer editing this segment") |
193 (org-overlay-put ovl 'face 'secondary-selection) | 194 (org-overlay-put ovl 'face 'secondary-selection) |
229 (mouse-set-point e) | 230 (mouse-set-point e) |
230 (let ((buf (get-char-property (point) 'edit-buffer))) | 231 (let ((buf (get-char-property (point) 'edit-buffer))) |
231 (if buf (switch-to-buffer buf) | 232 (if buf (switch-to-buffer buf) |
232 (error "Something is wrong here")))) | 233 (error "Something is wrong here")))) |
233 | 234 |
235 (defun org-src-construct-edit-buffer-name (org-buffer-name lang) | |
236 "Construct the buffer name for a source editing buffer" | |
237 (concat "*Org Src " org-buffer-name "[ " lang " ]*")) | |
238 | |
234 (defun org-edit-src-find-buffer (beg end) | 239 (defun org-edit-src-find-buffer (beg end) |
235 "Find a source editing buffer that is already editing the region BEG to END." | 240 "Find a source editing buffer that is already editing the region BEG to END." |
236 (catch 'exit | 241 (catch 'exit |
237 (mapc | 242 (mapc |
238 (lambda (b) | 243 (lambda (b) |
239 (with-current-buffer b | 244 (with-current-buffer b |
240 (if (and (string-match "\\`*Org Edit " (buffer-name)) | 245 (if (and (string-match "\\`*Org Src " (buffer-name)) |
241 (local-variable-p 'org-edit-src-beg-marker (current-buffer)) | 246 (local-variable-p 'org-edit-src-beg-marker (current-buffer)) |
242 (local-variable-p 'org-edit-src-end-marker (current-buffer)) | 247 (local-variable-p 'org-edit-src-end-marker (current-buffer)) |
243 (equal beg org-edit-src-beg-marker) | 248 (equal beg org-edit-src-beg-marker) |
244 (equal end org-edit-src-end-marker)) | 249 (equal end org-edit-src-end-marker)) |
245 (throw 'exit (current-buffer))))) | 250 (throw 'exit (current-buffer))))) |
287 (when buffer | 292 (when buffer |
288 (with-current-buffer buffer | 293 (with-current-buffer buffer |
289 (if (boundp 'org-edit-src-overlay) | 294 (if (boundp 'org-edit-src-overlay) |
290 (org-delete-overlay org-edit-src-overlay))) | 295 (org-delete-overlay org-edit-src-overlay))) |
291 (kill-buffer buffer)) | 296 (kill-buffer buffer)) |
292 (setq buffer (generate-new-buffer "*Org Edit Src Example*")) | 297 (setq buffer (generate-new-buffer |
298 (org-src-construct-edit-buffer-name | |
299 (buffer-name) "Fixed Width"))) | |
293 (setq ovl (org-make-overlay beg end)) | 300 (setq ovl (org-make-overlay beg end)) |
294 (org-overlay-put ovl 'face 'secondary-selection) | 301 (org-overlay-put ovl 'face 'secondary-selection) |
295 (org-overlay-put ovl 'edit-buffer buffer) | 302 (org-overlay-put ovl 'edit-buffer buffer) |
296 (org-overlay-put ovl 'help-echo "Click with mouse-1 to switch to buffer editing this segment") | 303 (org-overlay-put ovl 'help-echo "Click with mouse-1 to switch to buffer editing this segment") |
297 (org-overlay-put ovl 'face 'secondary-selection) | 304 (org-overlay-put ovl 'face 'secondary-selection) |
472 (move-marker end nil))) | 479 (move-marker end nil))) |
473 | 480 |
474 (defun org-edit-src-save () | 481 (defun org-edit-src-save () |
475 "Save parent buffer with current state source-code buffer." | 482 "Save parent buffer with current state source-code buffer." |
476 (interactive) | 483 (interactive) |
477 (let ((p (point)) (m (mark)) msg) | 484 (save-window-excursion |
478 (org-edit-src-exit) | 485 (let ((p (point)) (m (mark)) msg) |
479 (save-buffer) | 486 (org-edit-src-exit) |
480 (setq msg (current-message)) | 487 (save-buffer) |
481 (org-edit-src-code) | 488 (setq msg (current-message)) |
482 (push-mark m 'nomessage) | 489 (org-edit-src-code) |
483 (goto-char (min p (point-max))) | 490 (push-mark m 'nomessage) |
484 (message (or msg "")))) | 491 (goto-char (min p (point-max))) |
492 (message (or msg ""))))) | |
485 | 493 |
486 (defun org-src-mode-configure-edit-buffer () | 494 (defun org-src-mode-configure-edit-buffer () |
487 (when org-edit-src-from-org-mode | 495 (when org-edit-src-from-org-mode |
488 (setq buffer-offer-save t) | 496 (setq buffer-offer-save t) |
489 (setq buffer-file-name | 497 (setq buffer-file-name |