diff options
| author | Joakim Verona | 2013-07-02 22:46:17 +0200 |
|---|---|---|
| committer | Joakim Verona | 2013-07-02 22:46:17 +0200 |
| commit | 3718127221fbbc31f8ebd027ab7c95403dbe9118 (patch) | |
| tree | ef422898f3344c8f94f6ecf63eb583122bbf2bd8 /lisp/textmodes | |
| parent | 1ce45b902c67b8a0dda8d71bd2812de29a9988a6 (diff) | |
| parent | a3b49114c186d84404226af75ae7905bd1cd018f (diff) | |
| download | emacs-3718127221fbbc31f8ebd027ab7c95403dbe9118.tar.gz emacs-3718127221fbbc31f8ebd027ab7c95403dbe9118.zip | |
Merge branch 'trunk' into xwidget
Conflicts:
src/window.c
Diffstat (limited to 'lisp/textmodes')
| -rw-r--r-- | lisp/textmodes/bibtex.el | 14 | ||||
| -rw-r--r-- | lisp/textmodes/reftex.el | 2 | ||||
| -rw-r--r-- | lisp/textmodes/remember.el | 133 | ||||
| -rw-r--r-- | lisp/textmodes/rst.el | 4 |
4 files changed, 130 insertions, 23 deletions
diff --git a/lisp/textmodes/bibtex.el b/lisp/textmodes/bibtex.el index 01a126eb381..171f373317a 100644 --- a/lisp/textmodes/bibtex.el +++ b/lisp/textmodes/bibtex.el | |||
| @@ -1224,7 +1224,10 @@ Used by `bibtex-complete-crossref-cleanup' and `bibtex-copy-summary-as-kill'." | |||
| 1224 | (function :tag "Personalized function"))) | 1224 | (function :tag "Personalized function"))) |
| 1225 | 1225 | ||
| 1226 | (defcustom bibtex-generate-url-list | 1226 | (defcustom bibtex-generate-url-list |
| 1227 | '((("url" . ".*:.*"))) | 1227 | '((("url" . ".*:.*")) |
| 1228 | (("doi" . "10\\.[0-9]+/.+") | ||
| 1229 | "http://dx.doi.org/%s" | ||
| 1230 | ("doi" ".*" 0))) | ||
| 1228 | "List of schemes for generating the URL of a BibTeX entry. | 1231 | "List of schemes for generating the URL of a BibTeX entry. |
| 1229 | These schemes are used by `bibtex-url'. | 1232 | These schemes are used by `bibtex-url'. |
| 1230 | 1233 | ||
| @@ -1261,6 +1264,7 @@ The following is a complex example, see URL `http://link.aps.org/'. | |||
| 1261 | (\"volume\" \".*\" 0) | 1264 | (\"volume\" \".*\" 0) |
| 1262 | (\"pages\" \"\\`[A-Z]?[0-9]+\" 0)))" | 1265 | (\"pages\" \"\\`[A-Z]?[0-9]+\" 0)))" |
| 1263 | :group 'bibtex | 1266 | :group 'bibtex |
| 1267 | :version "24.4" | ||
| 1264 | :type '(repeat | 1268 | :type '(repeat |
| 1265 | (cons :tag "Scheme" | 1269 | (cons :tag "Scheme" |
| 1266 | (cons :tag "Matcher" :extra-offset 4 | 1270 | (cons :tag "Matcher" :extra-offset 4 |
| @@ -3400,9 +3404,6 @@ if that value is non-nil. | |||
| 3400 | (set (make-local-variable 'syntax-propertize-function) | 3404 | (set (make-local-variable 'syntax-propertize-function) |
| 3401 | (syntax-propertize-via-font-lock | 3405 | (syntax-propertize-via-font-lock |
| 3402 | bibtex-font-lock-syntactic-keywords)) | 3406 | bibtex-font-lock-syntactic-keywords)) |
| 3403 | (setq imenu-generic-expression | ||
| 3404 | (list (list nil bibtex-entry-head bibtex-key-in-head)) | ||
| 3405 | imenu-case-fold-search t) | ||
| 3406 | ;; Allow `bibtex-dialect' as a file-local variable. | 3407 | ;; Allow `bibtex-dialect' as a file-local variable. |
| 3407 | (add-hook 'hack-local-variables-hook 'bibtex-set-dialect nil t)) | 3408 | (add-hook 'hack-local-variables-hook 'bibtex-set-dialect nil t)) |
| 3408 | 3409 | ||
| @@ -3479,7 +3480,10 @@ LOCAL is t for interactive calls." | |||
| 3479 | (concat "^[ \t]*@[ \t]*\\(?:" | 3480 | (concat "^[ \t]*@[ \t]*\\(?:" |
| 3480 | (regexp-opt | 3481 | (regexp-opt |
| 3481 | (append '("String" "Preamble") | 3482 | (append '("String" "Preamble") |
| 3482 | (mapcar 'car bibtex-entry-alist))) "\\)")))) | 3483 | (mapcar 'car bibtex-entry-alist))) "\\)")) |
| 3484 | (setq imenu-generic-expression | ||
| 3485 | (list (list nil bibtex-entry-head bibtex-key-in-head)) | ||
| 3486 | imenu-case-fold-search t))) | ||
| 3483 | 3487 | ||
| 3484 | ;; Entry commands and menus for BibTeX dialects | 3488 | ;; Entry commands and menus for BibTeX dialects |
| 3485 | ;; We do not use `easy-menu-define' here because this gets confused | 3489 | ;; We do not use `easy-menu-define' here because this gets confused |
diff --git a/lisp/textmodes/reftex.el b/lisp/textmodes/reftex.el index 7fed4d0d021..ae8f94fd063 100644 --- a/lisp/textmodes/reftex.el +++ b/lisp/textmodes/reftex.el | |||
| @@ -2256,6 +2256,8 @@ IGNORE-WORDS List of words which should be removed from the string." | |||
| 2256 | (define-key reftex-mode-map [(shift mouse-2)] | 2256 | (define-key reftex-mode-map [(shift mouse-2)] |
| 2257 | 'reftex-mouse-view-crossref))) | 2257 | 'reftex-mouse-view-crossref))) |
| 2258 | 2258 | ||
| 2259 | (defvar bibtex-mode-map) | ||
| 2260 | |||
| 2259 | ;; Bind `reftex-view-crossref-from-bibtex' in BibTeX mode map | 2261 | ;; Bind `reftex-view-crossref-from-bibtex' in BibTeX mode map |
| 2260 | (eval-after-load | 2262 | (eval-after-load |
| 2261 | "bibtex" | 2263 | "bibtex" |
diff --git a/lisp/textmodes/remember.el b/lisp/textmodes/remember.el index 5782f25e48d..39f3acd2c4c 100644 --- a/lisp/textmodes/remember.el +++ b/lisp/textmodes/remember.el | |||
| @@ -382,8 +382,18 @@ Subject: %s\n\n" | |||
| 382 | ;; Remembering to plain files | 382 | ;; Remembering to plain files |
| 383 | 383 | ||
| 384 | (defcustom remember-data-file (locate-user-emacs-file "notes" ".notes") | 384 | (defcustom remember-data-file (locate-user-emacs-file "notes" ".notes") |
| 385 | "The file in which to store unprocessed data." | 385 | "The file in which to store unprocessed data. |
| 386 | When set via customize, visited file of the notes buffer (if it | ||
| 387 | exists) might be changed." | ||
| 386 | :type 'file | 388 | :type 'file |
| 389 | :set (lambda (symbol value) | ||
| 390 | (let ((buf (find-buffer-visiting (default-value symbol)))) | ||
| 391 | (set-default symbol value) | ||
| 392 | (when (buffer-live-p buf) | ||
| 393 | (with-current-buffer buf | ||
| 394 | (set-visited-file-name | ||
| 395 | (expand-file-name remember-data-file)))))) | ||
| 396 | :initialize 'custom-initialize-default | ||
| 387 | :group 'remember) | 397 | :group 'remember) |
| 388 | 398 | ||
| 389 | (defcustom remember-leader-text "** " | 399 | (defcustom remember-leader-text "** " |
| @@ -393,21 +403,20 @@ Subject: %s\n\n" | |||
| 393 | 403 | ||
| 394 | (defun remember-append-to-file () | 404 | (defun remember-append-to-file () |
| 395 | "Remember, with description DESC, the given TEXT." | 405 | "Remember, with description DESC, the given TEXT." |
| 396 | (let ((text (buffer-string)) | 406 | (let* ((text (buffer-string)) |
| 397 | (desc (remember-buffer-desc))) | 407 | (desc (remember-buffer-desc)) |
| 398 | (with-temp-buffer | 408 | (remember-text (concat "\n" remember-leader-text (current-time-string) |
| 399 | (insert "\n" remember-leader-text (current-time-string) | 409 | " (" desc ")\n\n" text |
| 400 | " (" desc ")\n\n" text) | 410 | (save-excursion (goto-char (point-max)) |
| 401 | (if (not (bolp)) | 411 | (if (bolp) nil "\n")))) |
| 402 | (insert "\n")) | 412 | (buf (find-buffer-visiting remember-data-file))) |
| 403 | (if (find-buffer-visiting remember-data-file) | 413 | (if buf |
| 404 | (let ((remember-text (buffer-string))) | 414 | (with-current-buffer buf |
| 405 | (set-buffer (get-file-buffer remember-data-file)) | 415 | (save-excursion |
| 406 | (save-excursion | 416 | (goto-char (point-max)) |
| 407 | (goto-char (point-max)) | 417 | (insert remember-text)) |
| 408 | (insert remember-text) | 418 | (if remember-save-after-remembering (save-buffer))) |
| 409 | (when remember-save-after-remembering (save-buffer)))) | 419 | (append-to-file remember-text nil remember-data-file)))) |
| 410 | (append-to-file (point-min) (point-max) remember-data-file))))) | ||
| 411 | 420 | ||
| 412 | (defun remember-region (&optional beg end) | 421 | (defun remember-region (&optional beg end) |
| 413 | "Remember the data from BEG to END. | 422 | "Remember the data from BEG to END. |
| @@ -551,4 +560,96 @@ the data away for latter retrieval, and possible indexing. | |||
| 551 | \\{remember-mode-map}" | 560 | \\{remember-mode-map}" |
| 552 | (set-keymap-parent remember-mode-map nil)) | 561 | (set-keymap-parent remember-mode-map nil)) |
| 553 | 562 | ||
| 563 | ;; Notes buffer showing the notes: | ||
| 564 | |||
| 565 | (defcustom remember-notes-buffer-name "*notes*" | ||
| 566 | "Name of the notes buffer. | ||
| 567 | Setting it to *scratch* will hijack the *scratch* buffer for the | ||
| 568 | purpose of storing notes." | ||
| 569 | :type 'string | ||
| 570 | :version "24.4") | ||
| 571 | |||
| 572 | (defcustom remember-notes-initial-major-mode nil | ||
| 573 | "Major mode to set to notes buffer when it's created. | ||
| 574 | If set to nil will use the same mode as `initial-major-mode'." | ||
| 575 | :type '(choice (const :tag "Same as `initial-major-mode'" nil) | ||
| 576 | (function :tag "Major mode" text-mode)) | ||
| 577 | :version "24.4") | ||
| 578 | |||
| 579 | (defcustom remember-notes-bury-on-kill t | ||
| 580 | "Whether to bury notes buffer instead of killing." | ||
| 581 | :type 'boolean | ||
| 582 | :version "24.4") | ||
| 583 | |||
| 584 | (defun remember-notes-save-and-bury-buffer () | ||
| 585 | "Saves and buries current buffer. | ||
| 586 | Buffer is saved only if `buffer-modified-p' returns non-nil." | ||
| 587 | (interactive) | ||
| 588 | (when (buffer-modified-p) | ||
| 589 | (save-buffer)) | ||
| 590 | (bury-buffer)) | ||
| 591 | |||
| 592 | |||
| 593 | |||
| 594 | (defvar remember-notes-mode-map | ||
| 595 | (let ((map (make-sparse-keymap))) | ||
| 596 | (define-key map "\C-c\C-c" 'remember-notes-save-and-bury-buffer) | ||
| 597 | map) | ||
| 598 | "Keymap used in remember-notes mode.") | ||
| 599 | |||
| 600 | (define-minor-mode remember-notes-mode | ||
| 601 | "Minor mode for the `remember-notes' buffer." | ||
| 602 | nil nil nil | ||
| 603 | (cond | ||
| 604 | (remember-notes-mode | ||
| 605 | (add-hook 'kill-buffer-query-functions | ||
| 606 | #'remember-notes--kill-buffer-query nil t) | ||
| 607 | (setq buffer-save-without-query t)))) | ||
| 608 | |||
| 609 | ;;;###autoload | ||
| 610 | (defun remember-notes (&optional switch-to) | ||
| 611 | "Creates notes buffer and switches to it if called interactively. | ||
| 612 | |||
| 613 | If a notes buffer created by a previous invocation of this | ||
| 614 | function already exist, it will be returned. Otherwise a new | ||
| 615 | buffer will be created whose content will be read from file | ||
| 616 | pointed by `remember-data-file'. If a buffer visiting this file | ||
| 617 | already exist, that buffer will be used instead of creating a new | ||
| 618 | one (see `find-file-noselect' function for more details). | ||
| 619 | |||
| 620 | Name of the created buffer is taken from `remember-notes-buffer-name' | ||
| 621 | variable and if a buffer with that name already exist (but was not | ||
| 622 | created by this function), it will be first killed. | ||
| 623 | \\<remember-notes-mode-map> | ||
| 624 | `remember-notes-mode' is active in the notes buffer which by default | ||
| 625 | contains only one \\[save-and-bury-buffer] binding which saves and | ||
| 626 | buries the buffer. | ||
| 627 | |||
| 628 | Function returns notes buffer. When called interactively, | ||
| 629 | switches to it as well. | ||
| 630 | |||
| 631 | Notes buffer is meant for keeping random notes which you'd like to | ||
| 632 | preserve across Emacs restarts. The notes will be stored in the | ||
| 633 | `remember-data-file'." | ||
| 634 | (interactive "p") | ||
| 635 | (let ((buf (or (find-buffer-visiting remember-data-file) | ||
| 636 | (with-current-buffer (find-file-noselect remember-data-file) | ||
| 637 | (and remember-notes-buffer-name | ||
| 638 | (not (get-buffer remember-notes-buffer-name)) | ||
| 639 | (rename-buffer remember-notes-buffer-name)) | ||
| 640 | (funcall (or remember-notes-initial-major-mode | ||
| 641 | initial-major-mode)) | ||
| 642 | (remember-notes-mode 1) | ||
| 643 | (current-buffer))))) | ||
| 644 | (when switch-to | ||
| 645 | (switch-to-buffer buf)) | ||
| 646 | buf)) | ||
| 647 | |||
| 648 | (defun remember-notes--kill-buffer-query () | ||
| 649 | (when (buffer-modified-p) | ||
| 650 | (save-buffer)) | ||
| 651 | (if remember-notes-bury-on-kill | ||
| 652 | (bury-buffer) | ||
| 653 | t)) | ||
| 654 | |||
| 554 | ;;; remember.el ends here | 655 | ;;; remember.el ends here |
diff --git a/lisp/textmodes/rst.el b/lisp/textmodes/rst.el index 01981175e1d..a841ec39314 100644 --- a/lisp/textmodes/rst.el +++ b/lisp/textmodes/rst.el | |||
| @@ -2419,8 +2419,8 @@ level to align." | |||
| 2419 | ;; for the numbers. | 2419 | ;; for the numbers. |
| 2420 | (if (cdr node) | 2420 | (if (cdr node) |
| 2421 | (setq fmt (format "%%-%dd" | 2421 | (setq fmt (format "%%-%dd" |
| 2422 | (1+ (floor (log10 (length | 2422 | (1+ (floor (log (length (cdr node)) |
| 2423 | (cdr node)))))))))) | 2423 | 10)))))))) |
| 2424 | 2424 | ||
| 2425 | (dolist (child (cdr node)) | 2425 | (dolist (child (cdr node)) |
| 2426 | (rst-toc-insert-node child | 2426 | (rst-toc-insert-node child |