X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/49116ac071969bee7f129bf7ce725c7a5b0b0fc5..f37bbf08858a55f6fff15798cded0eafd3652c2e:/lisp/textmodes/bib-mode.el diff --git a/lisp/textmodes/bib-mode.el b/lisp/textmodes/bib-mode.el index 14ef2045a7..42de7459ee 100644 --- a/lisp/textmodes/bib-mode.el +++ b/lisp/textmodes/bib-mode.el @@ -1,11 +1,15 @@ -;; bib-mode, major mode for editing bib files. +;;; bib-mode.el --- bib-mode, major mode for editing bib files. + ;; Copyright (C) 1989 Free Software Foundation, Inc. +;; Maintainer: FSF +;; Keywords: bib + ;; This file is part of GNU Emacs. ;; GNU Emacs is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 1, or (at your option) +;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; GNU Emacs is distributed in the hope that it will be useful, @@ -14,16 +18,19 @@ ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to -;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +;; along with GNU Emacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. +;;; Commentary: -;; Bib-Mode ;; GNU Emacs code to help maintain databases compatible with (troff) ;; refer and lookbib. The file bib-file should be set to your ;; bibliography file. Keys are automagically inserted as you type, ;; and appropriate keys are presented for various kinds of entries. +;;; Code: + (defvar bib-file "~/my-bibliography.bib" "Default name of file used by `addbib'.") @@ -156,7 +163,7 @@ the car of an entry is followed by one beginning with the cdr. (if (and (not empty) bib-auto-capitalize (looking-at bib-capitalized-fields)) (save-excursion - (capitalize-title-region (+ (point) 3) end-current))) + (bib-capitalize-title-region (+ (point) 3) end-current))) (goto-char beg-current) (if empty (kill-line nil) @@ -188,17 +195,16 @@ named by variable `unread-bib-file'." (append-to-file (mark) (point) unread-bib-file))) -(defvar capitalize-title-stop-words +(defvar bib-capitalize-title-stop-words (concat "the\\|and\\|of\\|is\\|a\\|an\\|of\\|for\\|in\\|to\\|in\\|on\\|at\\|" "by\\|with\\|that\\|its") - "Words not to be capitialized in a title (unless they're the first word -in the title).") + "Words not to be capitalized in a title (unless the first word).") -(defvar capitalize-title-stop-regexp - (concat "\\(" capitalize-title-stop-words "\\)\\(\\b\\|'\\)")) +(defvar bib-capitalize-title-stop-regexp + (concat "\\(" bib-capitalize-title-stop-words "\\)\\(\\b\\|'\\)")) -(defun capitalize-title-region (begin end) +(defun bib-capitalize-title-region (begin end) "Like `capitalize-region', but don't capitalize stop words, except the first." (interactive "r") (let ((case-fold-search nil) (orig-syntax-table (syntax-table))) @@ -214,21 +220,22 @@ in the title).") (if (looking-at "[A-Z][a-z]*[A-Z]") (forward-word 1) (if (let ((case-fold-search t)) - (looking-at capitalize-title-stop-regexp)) + (looking-at bib-capitalize-title-stop-regexp)) (downcase-word 1) (capitalize-word 1))) )) (set-syntax-table orig-syntax-table)))) -(defun capitalize-title (s) +(defun bib-capitalize-title (s) "Like `capitalize', but don't capitalize stop words, except the first." (save-excursion (set-buffer (get-buffer-create "$$$Scratch$$$")) (erase-buffer) (insert s) - (capitalize-title-region (point-min) (point-max)) + (bib-capitalize-title-region (point-min) (point-max)) (buffer-string))) (provide 'bib-mode) +;;; bib-mode.el ends here