aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog64
-rw-r--r--lisp/align.el23
2 files changed, 48 insertions, 39 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 601bb5edc37..c827a9d3835 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,7 +1,13 @@
12011-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * align.el: Try to generate fewer markers (bug#10047).
4 (align--set-marker): New macro.
5 (align-region): Use it.
6
12011-11-29 Michael McNamara <mac@mail.brushroad.com> 72011-11-29 Michael McNamara <mac@mail.brushroad.com>
2 8
3 * progmodes/verilog-mode.el (verilog-pretty-expr): Rework 9 * progmodes/verilog-mode.el (verilog-pretty-expr):
4 verilog-pretty-expr to handle new assignment operators in system 10 Rework verilog-pretty-expr to handle new assignment operators in system
5 verilog, such as += *= and the like. 11 verilog, such as += *= and the like.
6 (verilog-assignment-operator-re): Regular expression to find the 12 (verilog-assignment-operator-re): Regular expression to find the
7 assigment operator in a verilog assignment. 13 assigment operator in a verilog assignment.
@@ -44,26 +50,26 @@
44 (verilog-auto-reset-blocking-in-non): Fix AUTORESET including 50 (verilog-auto-reset-blocking-in-non): Fix AUTORESET including
45 temporary signals in reset list if 51 temporary signals in reset list if
46 verilog-auto-reset-blocking-in-non is nil, and match assignment 52 verilog-auto-reset-blocking-in-non is nil, and match assignment
47 style to each signal's assignment type, bug381. Reported by 53 style to each signal's assignment type, bug381.
48 Thomas Esposito. 54 Reported by Thomas Esposito.
49 (verilog-sk-uvm-class, verilog-uvm-begin-re, verilog-uvm-end-re) 55 (verilog-sk-uvm-class, verilog-uvm-begin-re, verilog-uvm-end-re)
50 (verilog-uvm-statement-re): Support UVM indentation and 56 (verilog-uvm-statement-re): Support UVM indentation and
51 highlighting, with old OVM keywords only. 57 highlighting, with old OVM keywords only.
52 (verilog-auto-tieoff, verilog-auto-tieoff-declaration): Support 58 (verilog-auto-tieoff, verilog-auto-tieoff-declaration):
53 AUTOTIEOFF creating non-wire data types. Suggested by Jonathan 59 Support AUTOTIEOFF creating non-wire data types. Suggested by Jonathan
54 Greenlaw. 60 Greenlaw.
55 (verilog-auto-insert-lisp, verilog-delete-to-paren) 61 (verilog-auto-insert-lisp, verilog-delete-to-paren)
56 (verilog-forward-sexp-cmt, verilog-forward-sexp-ign-cmt) 62 (verilog-forward-sexp-cmt, verilog-forward-sexp-ign-cmt)
57 (verilog-inject-sense, verilog-read-inst-pins) 63 (verilog-inject-sense, verilog-read-inst-pins)
58 (verilog-read-sub-decls, verilog-read-sub-decls-line): Fix 64 (verilog-read-sub-decls, verilog-read-sub-decls-line):
59 mismatching parenthesis inside commented out code when deleting 65 Fix mismatching parenthesis inside commented out code when deleting
60 AUTOINST, bug383. Reported by Jonathan Greenlaw. 66 AUTOINST, bug383. Reported by Jonathan Greenlaw.
61 (verilog-auto-ascii-enum): Fix AUTOASCIIENUM one-hot with 67 (verilog-auto-ascii-enum): Fix AUTOASCIIENUM one-hot with
62 non-numeric vector width. Reported by Alex Reed. 68 non-numeric vector width. Reported by Alex Reed.
63 (verilog-auto-ascii-enum): Add "onehot" option to work around not 69 (verilog-auto-ascii-enum): Add "onehot" option to work around not
64 detecting signals with parameter widths. Reported by Alex Reed. 70 detecting signals with parameter widths. Reported by Alex Reed.
65 (verilog-auto-delete-trailing-whitespace): With 71 (verilog-auto-delete-trailing-whitespace):
66 `verilog-auto-delete-trailing-whitespace' remove trailing 72 With `verilog-auto-delete-trailing-whitespace' remove trailing
67 whitespace in auto expansion, bug371. Reported by Brad Dobbie. 73 whitespace in auto expansion, bug371. Reported by Brad Dobbie.
68 (verilog-run-hooks, verilog-scan-cache-flush, verilog-syntax-ppss): 74 (verilog-run-hooks, verilog-scan-cache-flush, verilog-syntax-ppss):
69 Fix verilog-scan-cache corruption when running user AUTO expansion 75 Fix verilog-scan-cache corruption when running user AUTO expansion
@@ -77,8 +83,8 @@
77 "C-c?" to report differences in AUTO expansion, ignoring spaces. 83 "C-c?" to report differences in AUTO expansion, ignoring spaces.
78 (verilog-backward-syntactic-ws-quick, verilog-beg-of-defun-quick) 84 (verilog-backward-syntactic-ws-quick, verilog-beg-of-defun-quick)
79 (verilog-in-paren-quick, verilog-re-search-backward-quick) 85 (verilog-in-paren-quick, verilog-re-search-backward-quick)
80 (verilog-re-search-forward-quick, verilog-syntax-ppss): Fix 86 (verilog-re-search-forward-quick, verilog-syntax-ppss):
81 calling `syntax-ppss' when inside auto expansions as the ppss hook 87 Fix calling `syntax-ppss' when inside auto expansions as the ppss hook
82 is disabled and its cache will get corrupt, causing AUTOS not to 88 is disabled and its cache will get corrupt, causing AUTOS not to
83 expand. Instead use only -quick functions. 89 expand. Instead use only -quick functions.
84 (verilog-scan-region): Fix scanning over escaped quotes. 90 (verilog-scan-region): Fix scanning over escaped quotes.
@@ -87,20 +93,20 @@
87 (verilog-re-search-forward-quick, verilog-scan): verilog-scan and 93 (verilog-re-search-forward-quick, verilog-scan): verilog-scan and
88 related functions now ignore strings, to fix misparsing of strings 94 related functions now ignore strings, to fix misparsing of strings
89 with magic comments embedded in them. 95 with magic comments embedded in them.
90 (verilog-read-auto-template): Fix 96 (verilog-read-auto-template):
91 'verilog-auto-inst-template-numbers' with extra newline before (. 97 Fix 'verilog-auto-inst-template-numbers' with extra newline before (.
98 Reported by Brad Dobbie.
99 (verilog-read-auto-template):
100 Fix 'verilog-auto-inst-template-numbers' with comments.
92 Reported by Brad Dobbie. 101 Reported by Brad Dobbie.
93 (verilog-read-auto-template): Fix
94 'verilog-auto-inst-template-numbers' with comments. Reported by
95 Brad Dobbie.
96 (verilog-auto-inst, verilog-auto-inst-param) 102 (verilog-auto-inst, verilog-auto-inst-param)
97 (verilog-auto-inst-sort): Add 'verilog-auto-inst-sort' to reduce 103 (verilog-auto-inst-sort): Add 'verilog-auto-inst-sort' to reduce
98 merge conflicts with AUTOINST, bug358. Reported by Brad Dobbie. 104 merge conflicts with AUTOINST, bug358. Reported by Brad Dobbie.
99 (verilog-auto-inst-template-numbers): Add 'lhs' policy for 105 (verilog-auto-inst-template-numbers): Add 'lhs' policy for
100 debugging templates without merge conflicts, bug357. Reported by 106 debugging templates without merge conflicts, bug357.
101 Brad Dobbie. 107 Reported by Brad Dobbie.
102 (verilog-read-auto-template): Fix 108 (verilog-read-auto-template):
103 verilog-auto-inst-template-numbers with multiple templates. 109 Fix verilog-auto-inst-template-numbers with multiple templates.
104 Reported by Brad Dobbie. 110 Reported by Brad Dobbie.
105 (verilog-define-abbrev): Fix verilog-mode abbrevs to be system 111 (verilog-define-abbrev): Fix verilog-mode abbrevs to be system
106 abbrevs so user won't be asked to save. 112 abbrevs so user won't be asked to save.
@@ -121,15 +127,15 @@
121 structure to represent SystemVerilog concepts. 127 structure to represent SystemVerilog concepts.
122 (verilog-auto-ascii-enum, verilog-auto-logic, verilog-auto-reg) 128 (verilog-auto-ascii-enum, verilog-auto-logic, verilog-auto-reg)
123 (verilog-auto-reg-input, verilog-auto-tieoff, verilog-auto-wire) 129 (verilog-auto-reg-input, verilog-auto-tieoff, verilog-auto-wire)
124 (verilog-auto-wire-type, verilog-insert-definition): Add 130 (verilog-auto-wire-type, verilog-insert-definition):
125 verilog-auto-wire-type and AUTOLOGIC to support using 131 Add verilog-auto-wire-type and AUTOLOGIC to support using
126 SystemVerilog "logic" keyword instead of "wire"/"reg". 132 SystemVerilog "logic" keyword instead of "wire"/"reg".
127 (verilog-auto-reg-input, verilog-decls-get-signals): Fix AUTOWIRE 133 (verilog-auto-reg-input, verilog-decls-get-signals): Fix AUTOWIRE
128 to declares outputs that also have assignments (presumably in an 134 to declares outputs that also have assignments (presumably in an
129 ifdef or generate if so there's not a driver conflict). Reported 135 ifdef or generate if so there's not a driver conflict).
130 by Matthew Myers. 136 Reported by Matthew Myers.
131 (verilog-auto-declare-nettype, verilog-insert-definition): Add 137 (verilog-auto-declare-nettype, verilog-insert-definition):
132 verilog-auto-declare-nettype to fix declarations using 138 Add verilog-auto-declare-nettype to fix declarations using
133 `default_nettype none. Reported by Julian Gorfajn. 139 `default_nettype none. Reported by Julian Gorfajn.
134 (verilog-read-always-signals-recurse, verilog-read-decls) 140 (verilog-read-always-signals-recurse, verilog-read-decls)
135 (verilog-read-sub-decls-gate): Fix infinite loop with (*) and 141 (verilog-read-sub-decls-gate): Fix infinite loop with (*) and
@@ -263,8 +269,8 @@
263 269
2642011-11-23 Eli Zaretskii <eliz@gnu.org> 2702011-11-23 Eli Zaretskii <eliz@gnu.org>
265 271
266 * emacs-lisp/autoload.el (autoload-generate-file-autoloads): On 272 * emacs-lisp/autoload.el (autoload-generate-file-autoloads):
267 MS-DOS and MS-Windows, compare with loaddefs.el 273 On MS-DOS and MS-Windows, compare with loaddefs.el
268 case-insensitively. 274 case-insensitively.
269 275
2702011-11-23 Mark Lillibridge <mark.lillibridge@hp.com> (tiny change) 2762011-11-23 Mark Lillibridge <mark.lillibridge@hp.com> (tiny change)
diff --git a/lisp/align.el b/lisp/align.el
index 8767b6ff306..0d9f351b9da 100644
--- a/lisp/align.el
+++ b/lisp/align.el
@@ -1246,6 +1246,11 @@ have been aligned. No changes will be made to the buffer."
1246 (car props) (cdr props))))))))))) 1246 (car props) (cdr props)))))))))))
1247 (setq areas (cdr areas)))))) 1247 (setq areas (cdr areas))))))
1248 1248
1249(defmacro align--set-marker (marker-var pos &optional type)
1250 `(if ,marker-var
1251 (move-marker ,marker-var ,pos)
1252 (setq ,marker-var (copy-marker ,pos ,type))))
1253
1249(defun align-region (beg end separate rules exclude-rules 1254(defun align-region (beg end separate rules exclude-rules
1250 &optional func) 1255 &optional func)
1251 "Align a region based on a given set of alignment rules. 1256 "Align a region based on a given set of alignment rules.
@@ -1370,8 +1375,8 @@ aligner would have dealt with are."
1370 (if (not here) 1375 (if (not here)
1371 (goto-char end)) 1376 (goto-char end))
1372 (forward-line) 1377 (forward-line)
1373 (setq end (point) 1378 (setq end (point))
1374 end-mark (copy-marker end t)) 1379 (align--set-marker end-mark end t)
1375 (goto-char beg))) 1380 (goto-char beg)))
1376 1381
1377 ;; If we have a region to align, and `func' is set and 1382 ;; If we have a region to align, and `func' is set and
@@ -1467,10 +1472,9 @@ aligner would have dealt with are."
1467 ;; test whether we have found a match on the same 1472 ;; test whether we have found a match on the same
1468 ;; line as a previous match 1473 ;; line as a previous match
1469 (if (> (point) eol) 1474 (if (> (point) eol)
1470 (setq same nil 1475 (progn
1471 eol (save-excursion 1476 (setq same nil)
1472 (end-of-line) 1477 (align--set-marker eol (line-end-position))))
1473 (point-marker))))
1474 1478
1475 ;; lookup the `repeat' attribute the first time 1479 ;; lookup the `repeat' attribute the first time
1476 (or repeat-c 1480 (or repeat-c
@@ -1504,10 +1508,9 @@ aligner would have dealt with are."
1504 (progn 1508 (progn
1505 (align-regions regions align-props 1509 (align-regions regions align-props
1506 rule func) 1510 rule func)
1507 (setq last-point (copy-marker b t) 1511 (setq regions nil)
1508 regions nil 1512 (setq align-props nil)))
1509 align-props nil)) 1513 (align--set-marker last-point b t)
1510 (setq last-point (copy-marker b t)))
1511 1514
1512 ;; restore the match data 1515 ;; restore the match data
1513 (set-match-data save-match-data) 1516 (set-match-data save-match-data)