annotate comment.el @ 19:6b0fab5e8eea

*** empty log message ***
author yuuji
date Thu, 07 Jul 1994 16:37:05 +0000
parents
children b1e036697b20
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
1 ;;; -*- Emacs-Lisp -*-
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
2 ;;; comment/uncomment region for emacs.
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
3 ;;; comment.el rev.0.0
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
4 ;;; (c ) 1992 by Hirose Yuuji.(yuuji@ae.keio.ac.jp)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
5 ;;; Last modified Sat Jan 29 16:55:22 1994 on gloria
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
6
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
7 (provide 'comment)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
8
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
9 (defvar current-comment-prefix "> "
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
10 "default prefix string")
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
11
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
12 (defun cite-region nil
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
13 (save-excursion
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
14 (if (< (point) (mark)) (exchange-point-and-mark))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
15 (if (bolp)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
16 (forward-line -1))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
17 (if (string= string "") (setq string current-comment-prefix)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
18 (setq current-comment-prefix string))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
19 (save-restriction
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
20 (narrow-to-region (point) (mark))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
21 (goto-char (point-min))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
22 (while (re-search-forward "^" nil t)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
23 (message "%s" string)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
24 (replace-match string))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
25 ))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
26 )
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
27
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
28 (defun comment-region (string &optional once)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
29 "Inserts STRING at the beginning of every line in the region.
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
30 Called interactively, STRING defaults to comment-start (or '> ' if
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
31 none is defined) unless a prefix argument is given, in which case it
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
32 prompts for a string. Optional second argument ONCE is only for
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
33 compatibility for uncomment-region. It has no means now."
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
34 (interactive
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
35 (list (if current-prefix-arg
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
36 (read-string
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
37 (concat "String to insert"
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
38 (format "(default \"%s\")" current-comment-prefix
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
39 " ")
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
40 ": "))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
41 current-comment-prefix
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
42 )))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
43 (if (not (stringp string)) (setq string current-comment-prefix))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
44 (cite-region)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
45 )
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
46
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
47
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
48 (defun uncomment-region (string &optional once)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
49 "Deletes STRING from the beginning of every line in the region.
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
50 Called interactively, STRING defaults to comment-start (or '> ' if
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
51 none is defined) unless a prefix argument is given, in which case it
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
52 prompts for a string. Optional second argument ONCE restricts
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
53 deletion to first occurance of STRING on each line."
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
54 (interactive
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
55 (list (if current-prefix-arg
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
56 (read-string
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
57 (concat "String to delete"
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
58 (format "(default \"%s\")" current-comment-prefix
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
59 " ")
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
60 ": "))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
61 current-comment-prefix
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
62 )))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
63 (if (not (stringp string)) (setq string current-comment-prefix))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
64 (save-excursion
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
65 (if (< (point) (mark)) (exchange-point-and-mark))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
66 ; (if (bolp)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
67 ; (forward-line -1))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
68 (save-restriction
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
69 (narrow-to-region (point) (mark))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
70 (goto-char (point-min))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
71 (while (re-search-forward (concat "^" string) nil t)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
72 (replace-match "")
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
73 (if once (end-of-line)))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
74 ))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
75 )
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
76
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
77 (defun cite-file (filename)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
78 "insert the file with citation string."
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
79 (interactive "FCite-file: ")
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
80 (let*
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
81 ((string
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
82 (read-string
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
83 (format "Citation string (default \"%s\"): " current-comment-prefix)
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
84 ))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
85 (ins-tail (car (cdr (insert-file-contents filename)))))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
86 (save-excursion
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
87 (push-mark (+ (point) ins-tail))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
88 (cite-region)))
6b0fab5e8eea *** empty log message ***
yuuji
parents:
diff changeset
89 )

yatex.org