1 2007-06-06 Eric M. Ludlam <zappo@gnu.org>
3 * semantic-decorate.el (semantic-momentary-highlight-pulse-flag):
4 Wrap logic on condition-case.
6 * wisent/Makefile (VERSION): Regress to 2.0 prerelease 4
8 * tests/testsubclass.hh (deer::alces):
9 Updated for testsubclass.cpp changes.
11 * tests/testsubclass.cpp (animal::moose::doNothing):
12 Add some completable code.
13 (deer::alces::doLatinStuff): Add args and such.
14 (deer::alces::createMoose): New test fcn for completion engine.
16 * tests/Makefile, doc/Makefile (VERSION): Regress to 2.0 prerelease 4
18 * doc/lang-support-guide.texi (Tag Structure):
19 Add description of ATTRIBUTES. Fix names property
22 * bovine/Makefile (VERSION): Regress to 2.0 prerelease 4
24 * semantic-sort.el (semantic-tag-external-member-parent-default):
27 * semantic-lex-spp.el: Add ToDo item.
29 * semantic.el (semantic-version): Regress to 2.0 pre 4.
30 (Commentary): Update doc.
32 * Project.ede ("semantic"): Regress version to prerelease 4.
34 * Makefile (VERSION): Regress to 2.0 prerelease 4
36 2007-06-05 Eric M. Ludlam <zappo@gnu.org>
38 * semantic-complete.el (semantic-complete-inline-exit):
39 Restore original window configuration
40 (semantic-complete-inline-tag-engine): Store window configuration
41 (semantic-complete-inline-analyzer-displayor-class): New option.
42 (semantic-complete-inline-analyzer): Create a display based on the above.
44 2007-06-04 Eric M. Ludlam <zappo@gnu.org>
46 * semanticdb-find.el (semanticdb-find-default-throttle): Add 'unloaded.
48 2007-05-31 Eric M. Ludlam <zappo@gnu.org>
50 * doc/installation.texi (Canned Configuration):
51 Update code-helpers w/ MRU bookmarks
53 * doc/minor-modes.texi (Code Helpers): Addd below
54 (MRU Bookmarks Mode): New node on new minor-mode.
56 * semantic-load.el (semantic-load-enable-code-helpers):
57 Add semantic-mru-bookmark-mode.
59 * semanticdb-ebrowse.el (semanticdb-ebrowse-get-ebrowse-structure):
61 (semanticdb-project-database-ebrowse::semanticdb-create-database): Add c-mode
62 (semanticdb-ebrowse-dump): Use adebug.
64 * Makefile (tools_LISP): Add semantic-mru-bookmark.el
66 * Project.ede ("semantic"): Add semantic-mru-bookmark.el
68 * semantic-mru-bookmark.el (semantic-mru-bookmark-mode): Update doc.
70 * semantic-decorate.el (semantic-momentary-highlight-pulse-flag):
72 (semantic-momentary-highlight-one-tag-line)
73 (semantic-momentary-highlight-tag): Only pulse based on option.
75 2007-05-22 Eric M. Ludlam <zappo@gnu.org>
77 * tests/testspp.c: Added sections for:
81 for macro parsing testing.
83 * bovine/c.by (DEFINE, UNDEFINE): Removed.
84 (define): Fix default value to correct token.
86 * bovine/semantic-c.el (semantic-c-end-of-macro): Moved.
87 (semantic-lex-cpp-define): Move end point to the end of the macro.
88 (semantic-c-skip-conditional-section): New function
89 (semantic-lex-c-if): Skip only subsets of a #if section.
90 Add warnings when we skip.
91 (semantic-lex-c-macrobits): Remove if handling.
92 (semantic-lex-c-macro-else): New lexer.
93 (semantic-c-lexer): Add semantic-lex-c-macro-else.
95 * semantic-lex-spp.el (define-lex-spp-macro-declaration-analyzer):
96 Support shifting lex-end-point.
97 (edebug-setup-hook): Add edebug knowledge about these new macros.
99 * semantic.el (semantic-clear-toplevel-cache): Clear parser warnings
100 (semantic-fetch-tags): Keep parser warnings during full parse.
101 (semantic-parser-warnings): New local variable
102 (semantic-clear-parser-warnings, semantic-push-parser-warning)
104 (semantic-dump-parser-warnings): New Command
106 2007-05-21 Eric M. Ludlam <zappo@gnu.org>
108 * bovine/semantic-c.el (semantic-c-add-preprocessor-symbol):
109 Allow resetting of values in the
112 * semantic-lex-spp.el (semantic-lex-spp-symbol-set):
113 Treat value of "" as nil.
114 (semantic-lex-make-spp-table): Pass value directly to new symbol.
116 * bovine/c.by (__ATTRIBUTE__): New symbol
117 (opt-attribute): Optional gcc attribute thingy.
118 (type,fun-or-proto-end): Use opt-attribute
120 2007-05-20 Eric M. Ludlam <zappo@gnu.org>
122 * semantic-texi.el (document):
123 Stop requiring this. Causes fail in Makefile build.
125 * semantic-fw.el (semantic-subst-char-in-string): Remove sample impl.
126 Moved to cedet-compat.
128 * semanticdb-file.el (cedet-files): New requirement.
129 (semanticdb-dir-sep-char): Moved to here.
130 Marked for later deletion.
131 (semanticdb-fix-pathname): Moved to here.
132 Replaced body w/ `file-name-as-directory'.
133 Marked for later deletion.
134 (semanticdb-project-database-file::semanticdb-file-name-directory):
135 Replace inner path conversion to a call to `semanticdb-file-name-directory'.
137 * semanticdb.el (semanticdb-dir-sep-char, semanticdb-fix-pathname):
140 2007-05-19 Eric M. Ludlam <zappo@gnu.org>
142 * semantic-decorate.el:
143 (semantic-tag-highlight-start-face, semantic-tag-highlight-face):
145 (semantic-decorate-int-to-hex, semantic-color-values-to-hex):
146 New fcns copied from Drew Adams.
147 (semantic-pulse-iterations): New configurable variable.
148 (semantic-lighten-highlight, semantic-highlight-reset-face):
149 (semantic-decorate-pulse, semantic-decorate-test-pulse):
150 New core color pulsing functions
151 (semantic-highlight-tag): Change default face
152 to 'semantic-tag-highlight-face.
153 (semantic-momentary-highlight-one-tag-line)
154 (semantic-momentary-highlight-tag): Use tag pulsing if no face is provided.
156 * doc/installation.texi (Installation):
157 New name. Many new sections w/ basic configuration advice.
159 * doc/user-guide.texi (Semanticdb Search Configuration):
161 (Search Throttle): Add example.
163 * doc/semantic.texi (top): Copyright
164 (Installation/Basic Configuration): New name.
166 * semantic-adebug.el:
167 (semantic-adebug-insert-property-list, semantic-adebug-insert-stuff-list):
170 2007-05-17 Eric M. Ludlam <zappo@gnu.org>
172 * semantic-analyze.el (semantic-analyze-select-best-tag):
173 Prefer tags w/ type info.
175 * bovine/semantic-c.el (semantic-lex-c-if):
176 Support #if defined() type syntax.
179 Add #if defined() and #if !defined() macros for testing SPP.
181 * semantic-tag.el (semantic-tag-with-position-p):
182 If it has an overlay, it must be live.
184 * bovine/semantic-c.el (semantic-c-add-preprocessor-symbol):
187 * semantic-tag-file.el (semantic-dependency-tag-file):
190 * semantic-load.el (semantic-load-enable-minimum-features): doc fix.
193 (semantic-add-system-include, semantic-remove-system-include):
194 Force passed in dirs to be directory names.
195 (semantic-reset-system-include): New command
197 * semanticdb-find.el (semanticdb-find-load-unloaded-default):
199 (semanticdb-find-test-translate-path,semanticdb-brute-deep-find-tags-for-completion):
200 Add autoload cookies.
202 * semanticdb-file.el:
203 (semanticdb-project-database-file::semanticdb-save-db):
204 Make robust to various types of errors that may occur.
206 * semanticdb.el (semanticdb-dump-all-table-summary):
207 Convert to use adebug.
209 * semanticdb-ebrowse.el (semanticdb-ebrowse-C-file-p):
210 make robust to itty-bitty files
211 (semanticdb-create-ebrowse-database): Force / to tail of dir names.
212 (semanticdb-ebrowse-get-ebrowse-structure): Turn off undo.
214 2007-05-16 Eric M. Ludlam <zappo@gnu.org>
216 * doc/user-guide.texi:
217 Add new section about configuring semanticdb search routines.
219 2007-05-10 Eric M. Ludlam <zappo@gnu.org>
221 * semantic-mru-bookmark.el (semantic-mrub-completing-read):
222 Fix case of only one entry in ring.
223 (set-mark-command): Advise better function.
225 * semantic-mru-bookmark.el: New bookmark/mru tag mode.
227 * semantic-tag.el (semantic-tag-copy): Enhance doc string.
229 * semantic-adebug.el (semantic-adebug-insert-tag-parts):
230 Make tag start/end display more robust.
231 (semantic-adebug-insert-ring-contents)
232 (semantic-adebug-insert-ring-items-from-point)
233 (semantic-adebug-insert-ring-button): New ring debug support.
234 (semantic-adebug-insert-thing): Add rings.
235 (semantic-adebug-analyze): Fix buffer name.
236 (semantic-adebug-edebug-expr): New command to be bound into EDEBUG support.
238 * semantic-adebug-eieio.el (semantic-adebug-insert-object-fields):
241 2007-05-01 Eric M. Ludlam <zappo@gnu.org>
243 * semantic-complete.el (semantic-complete-do-completion):
244 Support 'displayend option.
245 Use exactmatch completion list if we have it, otherwise the full list.
246 If displayend, then always use the fulll list.
247 (semantic-complete-next-action): Allow displayor and collector to both
249 (semantic-collector-abstract::semantic-collector-next-action):
250 When the exact-match list is 1 long, but there are lots of regular
251 completions, then don't say done on second matching keystroke.
252 (semantic-displayor-focus-abstract::semantic-displayor-next-action):
253 When the focus cycles, return 'displayend.
255 2007-04-15 Eric M. Ludlam <zappo@gnu.org>
257 * doc/tags.texi (Tag Hooks): Added unlink-copy-hook.
258 (Creating Tags): Updated semantic-tag-copy w/ unlink-copy-hook.
260 * semantic-decorate.el (semantic-tag-create-secondary-overlay):
261 Add an unlink-copy-hook.
262 (semantic--tag-unlink-copy-secondary-overlays): New function
263 (semantic--tag-unlink-secondary-overlays): Remove unlink-copy-hook.
265 * semantic-tag.el (semantic-tag-copy):
266 Run unlink-copy-hook on the copied tag.
267 Added comments a bout trying to do special copy things to the tag members.
269 2007-04-03 Eric M. Ludlam <zappo@gnu.org>
271 * semantic-tag-file.el (semantic-dependency-tag-file):
272 Save point location when calculating a
273 filename for a given include tag.
275 2007-03-26 Eric M. Ludlam <zappo@gnu.org>
277 * semanticdb-find.el (semantic-adebug): Remove requirement.
279 * semantic-adebug.el (semantic-adebug-new-buffer): autoload cookie.
281 2007-03-25 Eric M. Ludlam <zappo@gnu.org>
283 * semanticdb-find.el (require): Add semantic-adebug during compile
284 (semanticdb-find-table-for-include-default): Take out special stuff
285 for omniscient databases. Simplify case where we know where the file is.
286 (semanticdb-find-test-translate-path): Convert to use adebug.
288 * semanticdb-find.el:
289 (semanticdb-strip-find-results, semanticdb-find-results-p)
290 (semanticdb-find-result-with-nil-p)
291 (semanticdb-find-reslut-nth, semanticdb-find-result-nth-in-buffer):
294 2007-03-23 Eric M. Ludlam <zappo@gnu.org>
296 * semanticdb-find.el (semanticdb-find-throttle-custom-list):
298 (semanticdb-find-result-prin1-to-string): Fix doc.
300 2007-03-19 Eric M. Ludlam <zappo@gnu.org>
302 * doc/user-guide.texi (Analyzer): Update various command strings.
303 (Smart Idle Completion): new section
305 * semanticdb.el: Add comment.
307 * semanticdb-ebrowse.el (semanticdb-project-database-ebrowse):
310 * semantic-adebug.el (semantic-adebug-bovinate): Doc updates.
312 * doc/app-dev-guide.texi: (top)
314 (Tag Completion Convenience Functions)
315 (Custom Tag Completion Functions)
324 (Semanticdb in Programs)
326 (DB Basic Name Search)
327 (DB Basic Brute Search)
329 (DB Generic Brute Search)
335 (Analysis Overview): Update @defun's from source.
336 (App Debugger): New Section
338 * semantic-complete.el: (semantic-collector-abstract)
339 (semantic-collector-buffer-abstract)
340 (semantic-collector-buffer-deep)
341 (semantic-collector-project-abstract)
342 (semantic-displayor-abstract)
343 (semantic-displayor-traditional)
344 (semantic-displayor-traditional-with-focus-highlight)
345 (semantic-complete-read-tag-analyzer)
346 (semantic-complete-inline-analyzer): Doc Enhancements.
348 2007-03-18 Eric M. Ludlam <zappo@gnu.org>
350 * wisent/Makefile (LOADPATH): Strip out duplicates
351 (wy_SEMANTIC_GRAMMER_EL, dist): Spelling fix
353 * bovine/Makefile (LOADPATH): Remove duplicates
354 (by_SEMANTIC_GRAMMAR_EL,dist): Spelling fix.
356 * semantic-ede-grammar.el:
357 (semantic-ede-proj-target-grammar::ede-proj-makefile-insert-variables):
358 Use `ede-proj-makefile-insert-loadpath-items'.
360 * Makefile (LOADPATH): Remove duplicates
362 * Makefile (metagrammar_SEMANTIC_GRAMMAR_EL, dist): Spelling fix.
363 (tools_LISP): Add adebug files.
365 * Project.ede ("tools"): Add adebug files.
367 * semantic-analyze.el (semantic-analyze-possible-completions-default):
370 * bovine/semantic-c.el (semantic-c-reconstitute-token):
373 * semantic-analyze.el (semantic-analyze-possible-completions-default):
375 stripping. Strip operators, destructor/constructor.
377 * semantic-adebug.el (semantic-adebug-insert-find-results-from-point):
380 * semantic-adebug-eieio.el: Adebug support for EIEIO objects.
382 * semantic-adebug.el: Basic debugger for Semantic data structures.
384 2007-03-17 Eric M. Ludlam <zappo@gnu.org>
386 * doc/tags.texi (Tag Attributes Internals, Tag Properties Internals):
390 * semanticdb-system.el:
391 (semanticdb-project-database-system::semanticdb-load-system-database):
392 use oref-default for major-modes. Thanks Jamie Macbeth.
394 * document.el (document-texify-elisp-docstring): Fix @dots replacement.
396 2007-03-13 Eric M. Ludlam <zappo@gnu.org>
398 * bovine/semantic-c.el (semantic-c-reconstitute-token):
399 Use `semantic-tag-new-type'
400 when fabricating the :type of a constructor.
402 2007-03-12 Eric M. Ludlam <zappo@gnu.org>
404 * document.el (document-texify-elisp-docstring):
405 Fix byte-comp found warning.
407 * document.el (document-massage-to-texinfo):
408 Do not @var the variable 'a'.
409 (document-texify-elisp-docstring): Add @dots.
411 * doc/tags.texi (Tag Basics): Added a few extra blurbs.
412 (Tag Query): Rearranged, sorted, added subsections.
413 (Tag Overlay, Tag Hooks, Misc Tag Functions,Tag Attributes Internals)
414 (Tag Properties Internals,Tag Overlay Internals,Creating Tags):
415 Updated doc of @defuns from the source.
417 * bovine/semantic-c.el (c-mode::semantic-format-tag-type): Move fcn.
418 Do not print 'class' if the type is of type class.
420 * semantic-format.el (semantic-test-all-format-tag-functions):
422 Universal argument now prints the text w/out color.
423 (semantic-format-tag-type-default): Obey the color argument.
426 (semantic-tag-name, semantic-tag-overlay, semantic-equivalent-tag-p)
427 (semantic-tag-of-type-p, semantic-tag-new-variable)
428 (semantic-tag-new-function, semantic-tag-new-type)
429 (semantic-tag-new-include,semantic-tag-new-package,
430 semantic-tag-new-code,semantic-tag-modifiers,semantic-tag-include-filename)
431 (semantic-tag-components,semantic-narrow-to-tag):
432 Updated doc strings with more details.
434 * semantic-texi.el (semantic-texi-update-doc-from-texi):
435 Use a deep search to find fcns
437 (semantic-texi-update-doc-from-source)
438 (semantic-texi-goto-source): Use `semanticdb-with-match-any-mode' and
439 a brutish deep search.
441 * semanticdb.el (semanticdb-match-any-mode): New variable
442 (semanticdb-with-match-any-mode): New macro
443 (semanticdb-equivalent-mode-for-search): Obey semanticdb-match-any-mode.
445 * semantic-tag.el (semantic-tag-file-name): Update doc.
447 2007-03-11 Eric M. Ludlam <zappo@gnu.org>
449 * semantic-analyze.el (semantic-analyze-tag-type):
450 When finding a tag for a type, ask for
451 only tags that are class 'type.
452 (semantic-analyze-possible-completions-default): When matching name
453 matching completions loop over each one, and validate the type name is
454 the same, or that the symbol is a compound type. Compound type
455 detection is now looked up. (Thanks Jamie Macbeth.)
457 2007-03-10 Eric M. Ludlam <zappo@gnu.org>
460 (semanticdb-project-database-emacs-lisp::semanticdb-get-database-tables):
462 (semanticdb-project-database-emacs-list::semanticdb-find-translate-path):
464 (semanticdb-table-emacs-lisp::semanticdb-equivalent-mode): Doc fix.
466 * semanticdb-find.el (semanticdb-find-translate-path-includes-default):
468 omniscient system databases to our load path.
469 (semanticdb-find-load-unloaded): New override function for loading in
470 a database that is currently not in any databases.
471 (semanticdb-find-table-for-include-default): Use above.
473 2007-03-08 Eric M. Ludlam <zappo@gnu.org>
476 (Grammar format, Compiling a grammar, Conflicts, Iterative style)
477 (Bison style): Minor language changes.
479 * bovine/c.by (opt-template-equal): Support =SYM and not just =<SYM>
480 (func-decl): Add support for arg-listless function that has a TRY
482 (fun-or-proto-end): Use fun-try-end.
483 (fun-try-end): new for try blocks.
484 (fun-try-several-catches): Multiple stacked catch blocks after a try.
485 (function-call): Add more function call options.
487 * bovine/semantic-el.el (semantic-elisp-form-to-doc-string):
488 Add TODO comment about Lisp.
490 * semantic-ede-grammar.el:
491 (semantic-ede-proj-target-grammar::ede-proj-makefile-insert-variables)
492 (semantic-ede-proj-target-grammar::ede-proj-makefile-insert-dist-dependencies):
493 Fix spelling error of SEMANTIC_GRAMMAR_EL. Thanks Tetsurou Okazaki.
495 * semantic-lex.el (define-lex):
496 Override `parse-sexp-lookup-properties' so that
497 text properties can't screw up our modified syntax table.
499 * tests/test.py: Added test cases for implicity joining.
501 * wisent/wisent-python.wy: (function_parameter_list, paren_class_list):
502 Set wisent-python-EXPANDING-block to t when expanding the sub-block.
504 * wisent/wisent-python.el (wisent-python-EXPANDING-block):
505 New lexical state variable.
506 (wisent-python-implicit-line-joining-p): Use above, no searching.
507 (wisent-python-end-of-block): Fix doc string.
509 * INSTALL: Fix counting.
511 * semantic-load.el (noninteractive):
512 Do not load minimum features by default.
514 2007-02-23 Eric M. Ludlam <zappo@gnu.org>
516 * semantic-analyze.el (semantic-analyze-dereference-metatype): Moved
517 (semantic-analyze-type-parts): Moved.
518 (semantic-analyze-select-best-tag): New fcn
519 (semantic-analyze-find-tag): Replace comple mess at end w/
520 `semantic-analyze-select-best-tag'.
521 (semantic-analyze-tag-type): Replace FIXME comment with
522 `semantic-analyze-select-best-tag'.
523 (semantic-analyze-find-tag-sequence): Replace `should be smarter'
524 comment with `semantic-analyze-select-best-tag'.
525 Replace `semantic-find-first-tag-by-name' with the plural version.
526 Replace "should be smarter" comment with
527 `semantic-analyze-select-best-tag'.
529 * bovine/c.by (typesimple):
530 Class/struct w/ no body is considered a prototype.
532 2007-02-22 Eric M. Ludlam <zappo@gnu.org>
534 * semanticdb-ebrowse.el (semanticdb-create-ebrowse-database):
535 Load file should use the helper.
536 (semanticdb-load-ebrowse-caches): Remove comments
537 (semanticdb-ebrowse-load-helper): New function. Check for obsolete files.
539 * semantic-ia.el (semantic-ia-complete-symbol-menu):
540 Use senator if semantic gets nothing.
542 * semantic-analyze.el (semantic-analyze-dereference-metatype):
543 Add scope argument, pass down.
544 (semantic-analyze-tag-type): Add scope argument, pass down.
545 (semantic-analyze-find-tag-sequence): Pass scope through to above.
546 (semantic-analyze-scoped-tags): For any namespace, search for all
547 other occurances and merge.
549 * bovine/semantic-c.el (c-mode::semantic-analyze-dereference-metatype):
552 * semantic-complete.el (semantic-complete-self-insert):
553 Handy function for doing completion
554 when typing in a key that needs to insert itself.
556 * semanticdb-ebrowse.el (semanticdb-ebrowse-add-tree-to-table):
557 Fixed bugs found when run
560 2007-02-21 Eric M. Ludlam <zappo@gnu.org>
562 * semanticdb-ebrowse.el (semanticdb-ebrowse-file-match): New variable
563 (semanticdb-ebrowse-C-file-p): New predicate
564 (semanticdb-create-ebrowse-database): Use new predicate instead of old code.
566 2007-02-19 Eric M. Ludlam <zappo@gnu.org>
568 * semanticdb-ebrowse.el (comments): Deleted
569 (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-method)
570 (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-regexp-method)
571 (semanticdb-table-ebrowse::semanticdb-find-tags-for-completion-method)
572 (semanticdb-table-ebrowse::semanticdb-find-tags-external-children-of-type-method):
573 Updated various to describe new methods.
575 (jvebrowse-find, fvebrowse-find2, jvebrowse-find-name): Deleted
577 * semanticdb-ebrowse.el (ebrowse):
578 Add eval-and-compile to fix byte-comp warnings.
579 (semanticdb-project-database-ebrowse): Remove the 'globals' slot.
580 (semanticdb-project-database-ebrowse::semanticdb-create-database):
581 Track default-directory. Don't track the 'globals'.
582 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-strip-trees):
585 (semanticdb-ebrowse-strip-tables)
586 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-add-etree-to-table)
587 (semanticdb-table-ebrowse::semanticdb-file-table-add)
588 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-extract-globals)
589 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-extract-globals-from-sublist):
592 (semanticdb-normalize-tag): Renamed.
593 (semanticdb-table-ebrowse::semanticdb-get-tags): Deleted.
594 (semanticdb-ebrowse-add-globals-to-table): New fcn
595 (semanticdb-ebrowse-add-tree-to-table): New fcn
598 (semanticdb-table-ebrowse::semanticdb-ebrowse-find-tags-by-name-method)
599 (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-regexp-method)
600 (semanticdb-table-ebrowse::semanticdb-find-tags-for-completion-method)
601 (semanticdb-find-tags-by-class-method)
602 (semanticdb-table-ebrowse::semanticdb-find-tags-external-children-of-type-method):
603 Revamped to use `call-next-method'.
605 * semanticdb-find.el (eieio): Add require
606 (semanticdb-find-translate-path-brutish-default):
607 Use `semanticdb-equivalent-mode-for-search'.
608 Only get the baseDB's dir if there is a base DB.
609 (semanticdb-find-translate-path-includes-default):
610 Use `semanticdb-equivalent-mode-for-search'.
611 (semanticdb-find-table-for-include-default):
612 Revamp how explicitly identified file's tables are loaded to also
613 go through system style databases, if available.
614 Obey the 'unloaded' throttle as well.
615 (semanticdb-strip-find-results): Use 'semanticdb-normalize-tags'.
617 * semanticdb-el.el (semanticdb-table-emacs-lisp::semanticdb-normalize-tags):
620 * semanticdb.el (semanticdb-abstract-table::semanticdb-normalize-tags):
622 Takes and returns a list.
623 (semanticdb-equivalent-mode-for-search): New function.
624 Allows some modes to search in any other modes buffers.
626 * semantic-ctxt.el (semantic-command-separation-character):
629 * semantic-complete.el (semantic-complete-inline-force-display):
632 * wisent/wisent.el (wisent-char-p): Fix byte-comp warnings.
634 * wisent/wisent-debug.el (wisent-debug-pp-to-string):
635 Fix byte-comp warning.
637 * wisent/wisent-comp.el (wisent-check-$N): Use string-to-number.
639 * bovine/semantic-java.el (semantic-doc): add require
640 (semantic-java-expand-tag): Add a variable to a let statement.
642 * bovine/semantic-el.el:
643 (emacs-lisp-mode::semantic-documentation-for-tag):
644 Use documentation-property as documented.
646 * bovine/semantic-c.el (semantic-lex-c-if):
647 Remove erroneous debug message.
648 (semantic-c-end-of-macro): Remove byte-comp warning.
650 * bovine/semantic-bovine.el: Doc fix.
651 (bovine-debug): Add require
652 (semantic-bovinate-nonterminal-check-obarray): Add autoload cookie.
654 * bovine/erlang-edoc.el (document-vars): Add require
655 (erlang-edoc-type-spec, erlang-edoc-desc-spec): Add customize group.
657 * bovine/bovine-grammar.el (bovine-grammar-expand-form):
659 (bovine-grammar-parsetable-builder): Fix format string.
661 * senator.el (semanticdb-find): add require.
663 * semantic-util-modes.el (semantic-stickyfunc-indent-string):
664 Add to customize group.
666 * semantic-util.el (semantic-assert-valid-token):
667 Fix a message w/ not enough arguments.
669 * semantic-tag-file.el:
670 Remove ede require. It had some wierd byte-comp issues.
672 * semantic-sb.el (semantic-sb-detail-parent): Use string-to-number.
674 * semantic-lex.el (semantic-flex):
675 Add noisy message to encourage conversion.
677 * semantic-imenu.el: Add some autoload cookies.
679 * semantic-html.el (semantic-default-html-setup):
680 Fix typo for imenu support.
682 * semantic-fw.el (string-to-number): Add alias if we have an old emacs.
684 2007-02-18 Eric M. Ludlam <zappo@gnu.org>
686 * semantic-tag-file.el (ede): Require in EDE during byte-comp.
688 * semantic-tag.el (semantic--tag-expand):
689 Explain why there is a byte-comp warning.
691 * semantic-grammar.el (semantic-idle): Add require.
692 (semantic-grammar-mode::senator-add-log-tags): Use newer name.
694 * semantic-fw.el (semantic-alias-obsolete):
695 Do not throw warning if within the CEDET
696 tool suite. I have to use those fns for compatibility issues.
698 * semantic.el (semantic): Add semantic group to 'lisp' group.
700 * semantic-edit.el (semantic-edits-verbose-flag): Add autoload cookie.
702 * semantic-dep.el (semantic--dependency-find-file-on-path):
705 * semantic-decorate.el (semantic-momentary-highlight-one-tag-line):
706 Use semantic-make-overlay.
708 * semantic-complete.el (semanticdb-find):
709 Require it. Fix byte-comp warnings
710 (minibuffer-contents): Fix byte-comp warnings
712 * document.el (ede): Try to get it loaded for byte-comp.
713 (document-get-date-time-string): Use string-to-number
715 2007-02-15 Eric M. Ludlam <zappo@gnu.org>
717 * semanticdb-ebrowse.el (semanticdb-create-ebrowse-database):
719 (semanticdb-ebrowse-file-for-directory): Expand the dirname
720 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-add-etree-to-table):
723 * semanticdb.el (semanticdb-current-database-list):
724 Remove erroneous test before
726 (semanticdb-kill-hook): Doc fix.
727 (semanticdb-file-table-object): Add dontload argument.
729 2007-02-08 Eric M. Ludlam <zappo@gnu.org>
731 * semantic-grammar.el (semantic-grammar-batch-build-packages):
732 Add msg when batch compiling
733 to debug the source of the compiler function.
735 * semantic-load.el (compat vars):
736 Do not use compatibility variables in batch mode.
738 * wisent/wisent-java-tags.wy (unicode):
739 Quote in the \ for the syntax regexp.
741 2007-02-08 David Ponce <david@dponce.com>
743 * wisent/wisent-java-tags.wy (<unicode>):
744 add missing `syntax' property.
745 (epilogue): Replace `wisent-java-tags-unicode-analyzer'
746 declaration by auto-generated declaration of
747 `wisent-java-tags-wy--<unicode>-regexp-analyzer'.
749 2007-02-08 Eric M. Ludlam <zappo@gnu.org>
751 * wisent/wisent-java-tags.wy (wisent-java-tags-unicode-analyzer):
752 New lexical analyzer.
753 (wisent-java-tags-lexer): Added unicode support.
755 2007-02-06 Eric M. Ludlam <zappo@gnu.org>
757 * semantic-ia.el (semantic-ia-complete-symbol):
758 Fix case when the context's prefix
759 is a tag, not a string.
761 2007-02-05 Eric M. Ludlam <zappo@gnu.org>
763 * semanticdb.el: (semanticdb-abstract-table::semanticdb-normalize-tag):
764 Changed the baseclass this derives from.
766 2007-02-03 Eric M. Ludlam <zappo@gnu.org>
768 * Project.ede (tools): Added semantic-utest.el
770 * Makefile (tools_LISP): Added semantic-utest.el
773 (class3::method1_for_class3, namespace1, funny_prototype):
774 Added various features for testing code the analyzer.
776 * doc/tags.texi (Tag Query):
777 Add semantic-tag-type-compound-p and semantic-tag-faux-p.
779 * semantic-utest.el (semantic-utest-Python-buffer-contents):
780 Change from setq to defvar.
782 * semantic-format.el:
783 (semantic-format-tag-uml-protection-to-string-default):
784 Copy our protection strings so fonts that are applied don't change
785 the original stored string.
787 2007-01-28 Eric M. Ludlam <zappo@gnu.org>
789 * semantic-analyze.el (semantic-analyze-merge-namespaces):
791 (semantic-analyze-find-tag): Merge namespaces if a tag found is a namespace.
793 * tests/testsubclass.cpp, tests/testsubclass.hh (deer::alces):
794 Adding new namespace and class for testing this case in
797 2007-01-25 Eric M. Ludlam <zappo@gnu.org>
799 * semantic-analyze.el (semantic-analyze-inherited-tags):
800 Child classes can see protected
803 * bovine/semantic-c.el (c-mode::semantic-analyze-split-name):
804 Use older interface to split-string.
806 * semantic-format.el (semantic-format-tag-prototype-default):
807 Remove display of a compound
808 type's contents. Big and messy.
810 * tests/testsubclass.hh, tests/testsubclass.cpp:
811 Test case for subclasses in C++ for the semantic analyzer.
813 * bovine/semantic-c.el (c-mode::semantic-analyze-split-name):
814 New implementation for C.
816 * semantic-analyze.el (semantic-analyze-split-name):
817 New overload function.
818 (semantic-analyze-find-tag): Test if NAME is splittable.
819 Use alternate lookup method if it is.
820 (semantic-analyze-find-tag-sequence): Handle the case if the first
821 entry in the sequence is a type we can use directly.
823 2007-01-24 Eric M. Ludlam <zappo@gnu.org>
825 * semantic-utest.el: Unit tests.
827 2007-01-23 David Ponce <david@dponce.com>
829 * wisent/semantic-wisent.el (wisent-parse-stream):
830 Signal when wisent-parse-max-stack-size
831 might need to be increased.
833 2007-01-23 Eric M. Ludlam <zappo@gnu.org>
835 * tests/testspp.c: Test various states of SPP lexing.
837 * bovine/c.by (BOOL): New token for C++. Sadly, also added for C.
838 (macro, macro-or-include, define): Use new SPP token symbols.
839 (builtintype-types): Added BOOL.
841 * bovine/semantic-c.el (semantic-lex-spp): new requirement
842 (semantic-lex-c-preprocessor-symbol-map): Change the customize format.
843 (semantic-lex-c-preprocessor-dynamic-symbol-map)
844 (semantic-lex-c-preprocessor-p, semantic-lex-c-define)
845 (semantic-lex-c-preprocess-replace-or-symbol-or-keyword)
846 (semantic-lex-c-if-0, semantic-lex-c-if): Deleted.
847 (semantic-lex-cpp-define, semantic-lex-cpp-undef)
848 (semantic-lex-c-if, semantic-lex-c-macrobits): New functions
849 (semantic-c-lexer): Use SPP instead of previously hacked preprocessor stuff.
850 (c-mode::semantic-dependency-system-include-path):
851 (semantic-default-c-path): New value is nil.
852 (semantic-dependency-system-include-path): New variable
853 (semantic-default-c-setup): Add the SPP reset hook.
855 * semantic-lex.el (semantic-lex-reset-hooks): new variable.
856 (define-lex): Call the lexical reset hooks.
858 * semantic-lex-spp.el (semantic-lex-spp-reset-hook):
859 New function to use as a hook.
860 (semantic-lex-spp-describe): Improve the layout a little.
862 * semantic-lex-spp.el (semantic-lex-spp-reset-dynamic-table): New fcn.
864 * semanticdb-ebrowse.el:
865 (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-method):
867 (jvebrowse-find2): Add comment about last fix.
869 * semantic-format.el: (semantic-format-tag-name-from-anything):
870 If anything is a tag, and that tag has no name, then use the type
873 * semanticdb-find.el (semanticdb-find-translate-path-includes-default):
875 semanticdb to find tags in a table, use the method, not the generic
876 search term. This avoids recursion.
878 2007-01-22 Eric M. Ludlam <zappo@gnu.org>
880 * semanticdb-ebrowse.el (semanticdb-create-ebrowse-database):
881 Fix post loading of a created
884 2007-01-21 Eric M. Ludlam <zappo@gnu.org>
886 * semanticdb-ebrowse.el (ebrowse): Catch errors while loading.
887 (semanticdb-table-ebrowse): Add 'global-extract' slot.
888 (semanticdb-project-database-ebrowse): Remove 'mytables' slot.
889 Add a 'globals' slot.
890 (semanticdb-get-database-tables): Deleted
891 (semanticdb-ebrowse-get-ebrowse-structure): Block ebrowse from
892 displaying a progress bar.
893 (semanticdb-project-database-ebrowse::semanticdb-create-database):
894 Search for globals. Apply globals to constructed tables.
895 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-strip-tables):
897 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-add-etree-to-table):
898 Use `semanticdb-create-table' to construct new tables.
899 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-extract-globals)
900 (semanticdb-project-database-ebrowse::semanticdb-ebrowse-extract-globals-from-sublist)
901 (semanticdb-project-database-ebrowse::semanticdb-normalize-tag)
903 (semanticdb-table-ebrowse::semanticdb-equivalent-mode)
904 (semanticdb-table-ebrowse::semanticdb-find-translate-path):
906 (semanticdb-table-ebrowse::semanticdb-find-tags-by-name-method):
908 Constructed tags are marked as 'faux', since they are not tightly
911 * semantic-load.el: (semantic-load-enable-minimum-features):
912 Add support for loading in ebrowse caches.
913 No ebrowse cache loading on XEmacs.
915 * semantic-dep.el (semantic--dependency-find-file-on-path):
919 * semanticdb-find.el: (semanticdb-strip-find-results):
920 Allow each table in which a match was found to convert the found
921 tags into something better.
923 * semanticdb.el: (semanticdb-table::semanticdb-normalize-tag):
926 * semantic-analyze.el: (semantic-analyze-current-context-default):
927 Don't do scope analysis if there are no bounds to a symbol to analyze
930 2007-01-13 Eric M. Ludlam <zappo@gnu.org>
932 * semantic-fw.el (semantic-fw-font-lock-keywords):
933 Add two spp lexical macros.
935 * bovine/semantic-bovine.el (semantic-bovinate-stream):
936 Use `semantic-lex-token-end' and
937 `semantic-lex-token-start' instead of directly referencing into the
938 lexical tokens w/ car and cdr.
940 2007-01-12 Eric M. Ludlam <zappo@gnu.org>
942 * semantic-lex-spp.el (semantic-lex-spp-describe):
943 Fix compiler warning.
945 * semantic-lex.el (semantic-lex-keyword-symbol): Update doc.
946 (semantic-lex-test): Add timing information
947 (semantic-lex-token): Allow an optional string to be added to a token.
948 (semantic-lex-token-bounds): If a token has a string (it's a macro),
949 then bounds are in a different place.
950 (semantic-lex-token-start): When a token contains a string return that
951 instead of extracting the string from the current buffer.
953 * semantic-lex-spp.el (semantic-lex-make-spp-table):
954 Fix some argument calls.
956 * Makefile (semantic_LISP, tolls_lisp): Added new files.
958 * Project.ede: Add semantic-dep.el and semanticdb-ebrowse.el
960 * semanticdb-find.el (semanticdb-find-translate-path-brutish-default):
963 (semanticdb-find-translate-path-includes-default):
964 When recursing into dependency files for more dependencies, do a
965 semanticdb specific search if the found table is based on semanticdb.
966 (semanticdb-find-test-translate-path): Be robust to tables that do no
967 provide a raw list of tags.
969 * semantic-decorate.el (semantic-momentary-unhighlight-one-tag-line):
972 * semantic-tag-file.el (semantic-dependency-tag-file):
973 Move some parts to semantic-dep.el.
974 Use routines in semantic-dep.el.
976 * semantic-dep.el: Functions for dependency lookup (include tags).
977 Contains the search path that was in semantic-tag-file.
979 * semanticdb-ebrowse.el (semanticdb-create-ebrowse-database):
981 Force load of created loader file.
982 (semanticdb-ebrowse-database-list): deleted.
983 (semanticdb-project-database-ebrowse): Remove tracking symbol.
984 Add system-include-p flag.
985 (c++-mode::semanticdb-find-default-throttle): Change to `project system recursive'.
986 (semanticdb-project-database-ebrowse::semanticdb-create-database):
987 Recycled ebrowse database objects that are pointing at the same place.
988 (semanticdb-project-database-ebrowse::semanticdb-file-table):
989 Search the table list with only the filename.
991 2007-01-09 Eric M. Ludlam <zappo@gnu.org>
994 (semanticdb-table-emacs-lisp::semanticdb-find-tags-by-name-method):
997 * semantic-edit.el (semantic-edits-change-over-tokens):
998 When searching end-of-buffer tags
999 for hits, do not compare against next tag unless there is a next tag.
1001 2007-01-08 Eric M. Ludlam <zappo@gnu.org>
1003 * semanticdb-ebrowse.el: Merge in changes from Joakim Verona.
1005 (semanticdb-create-ebrowse-database, semanticdb-load-ebrowse-caches):
1006 New user functions for setting up databases.
1007 (semanticdb-needs-refresh-p): New JV * EL.
1008 (semanticdb-ebrowse-file-for-directory): new utility.
1009 (semanticdb-ebrowse-database-list): Local tracker variable.
1010 (*): Updates from JV.
1012 2006-09-12 Eric M. Ludlam <zappo@gnu.org>
1014 * semantic-idle.el (semantic-idle-scheduler-function):
1015 Remove the kill/restart of the
1018 2006-08-07 Eric M. Ludlam <zappo@gnu.org>
1020 * semantic-decorate.el: (semantic-momentary-highlight-one-tag-line)
1021 (semantic-momentary-unhighlight-on-tag-line): New fcns
1022 (semantic-momentary-highlight-tag): If a tag has no overlay,
1025 2006-07-29 Eric M. Ludlam <zappo@gnu.org>
1027 * senator.el (senator-find-tag-for-completion):
1028 Add semantic-analysis mode as an
1029 option for finding completions. Add semanticdb results stripping here.
1030 (senator-complete-symbol): Removed semanticdb result stripping.
1031 (senator-completion-menu-item): Removed semanticdb result stripping.
1033 * semantic-tag-ls.el (semantic-tag-protection):
1034 Add extra check that the tag has an overlay.
1036 * semantic-sb.el (semantic-sb-token-jump):
1037 Add an extra means of extracting a file name
1040 * semantic-ia-sb.el (semantic-ia-speedbar):
1041 Set the active mode for tag-display
1042 (semantic-ia-sb-string-list): Better non-tag tag word.
1044 * semantic-edit.el (semantic-edits-verbose-flag): Make customizable.
1046 * semanticdb-skel.el:
1047 Removed refs to emacs-lisp, replace with generic terms
1049 * semanticdb-find.el: (semanticdb-find-translate-path-brutish-default):
1050 Only return tables in a DB of the same major mod as the current major-mode.
1052 * semanticdb.el: (semanticdb-get-buffer)
1053 (semanticdb-file-table-object): Pass extra option to
1054 find-file-noselect to avoid displaying warnings.
1056 2006-07-04 David Ponce <david@dponce.com>
1058 * semantic-ede-grammar.el:
1059 Fix recursive (require 'semantic-ede-grammar) error on Emacs 22.
1061 2006-05-31 David Ponce <david@dponce.com>
1063 * wisent/wisent-java.wy (wildcard, wildcard_1, wildcard_2, wildcard_3):
1065 keywords in the returned value.
1066 (method_declarator, constructor_declarator, annotation): Pass $I
1067 placeholder to SKIP-BLOCK.
1068 (method_header, constructor_declaration): Set :template-specifier
1069 as a string for now.
1070 (type_parameters, type_parameter_list, type_parameter_list_1)
1071 (type_parameter, type_parameter_1, type_bound_opt, type_bound)
1072 (type_bound_1, additional_bound_list_opt)
1073 (additional_bound_list, additional_bound_list_1)
1074 (additional_bound, additional_bound_1): Produce a string for now.
1076 * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-expand-tag):
1078 (wisent-java-default-setup): Use `semantic-java-expand-tag'.
1080 * wisent/wisent-grammar-macros.el (wisent-grammar-SKIP-BLOCK):
1081 Receive an optional $I placeholder
1084 * bovine/semantic-java.el:
1085 (semantic-java-dim, semantic-java-expand-tag)
1086 (semantic-java-type): New functions.
1087 (semantic-java-prototype-variable): Use `semantic-java-type'.
1088 (semantic-java-prototype-function): Likewise. Include
1089 :template-specifier.
1090 (semantic-java-prototype-type): Include :template-specifier.
1092 2006-05-19 David Ponce <david@dponce.com>
1094 * semantic-format.el (semantic--format-tag-arguments): Fix last change.
1096 2006-04-06 Eric M. Ludlam <zappo@gnu.org>
1098 * semantic-ctxt.el: (semantic-get-local-variables-default)
1099 (semantic-get-local-arguments): Add a :filename property to
1100 every found tag so the source buffer can be found later.
1102 2006-03-27 David Ponce <david@dponce.com>
1104 * wisent/wisent.el (wisent-parse-verbose-flag, wisent-recovering):
1107 * wisent/wisent-comp.el:
1108 (wisent-debug-flag, wisent-new-log-flag, wisent-verbose-flag)
1109 (wisent-single-start-flag, wisent-compile-grammar): Doc fix.
1110 (wisent-automaton-lisp-form): New function renamed from
1111 `wisent-byte-compile-automaton'. Don't byte-compile here.
1112 (wisent-byte-compile-grammar): Use it. byte-compile here.
1114 2006-02-24 David Ponce <david@dponce.com>
1116 * wisent/wisent-java.wy (modifiers, modifier): Revert last change.
1117 (class_body_declaration)
1118 (interface_member_declaration): Use the SKIP-TOKEN macro.
1119 (enum_body, enum_arguments_opt)
1120 (constructor_body, array_initializer, block, switch_block)
1121 (dim_expr, annotation_type_body)
1122 (member_value_array_initializer): Use the SKIP-BLOCK macro.
1124 (constructor_declarator): Likewise. Improve recovery rule.
1125 (annotation): Return the annotation name.
1127 * wisent/wisent-grammar-macros.el: (wisent-grammar-SKIP-BLOCK)
1128 (wisent-grammar-SKIP-TOKEN): New functions.
1129 (wisent-grammar-mode::semantic-grammar-macros): Add SKIP-BLOCK and
1132 * wisent/wisent.el (wisent-skip-block):
1133 Accept the starting location of the block as
1134 an optional parameter.
1136 2006-02-24 Eric M. Ludlam <zappo@gnu.org>
1138 * semantic-lex-spp.el:
1139 Semantic Pre-processor, for emulating pre-processors and their symbols.
1141 2006-02-23 David Ponce <david@dponce.com>
1143 * wisent/wisent-java.wy (package_declaration):
1144 Simplify. Store package modifiers for
1146 (modifiers): Ignore nil values.
1147 (modifier): Don't store annotation for now.
1148 (formal_parameter, local_variable_declaration, foreach_statement)
1149 (foreach_statement_no_short_if): Handle annotations.
1151 2006-02-17 Eric M. Ludlam <zappo@gnu.org>
1153 * bovine/semantic-c.el (semantic-lex-c-preprocessor-symbol-map):
1155 (semantic-lex-c-preprocessor-dynamic-symbol-map): New var (unused)
1156 (semantic-lex-c-preprocessor-p): New fn
1157 (semantic-lex-c-define): New lexer (unused)
1158 (semantic-lex-c-preprocessor-replace-or-symbol-or-keyword): New lexer
1159 (semantic-c-lexer): Use new lexer
1161 2006-02-16 Eric M. Ludlam <zappo@gnu.org>
1163 * semantic-edit.el (semantic-edits-assert-valid-region): New macro
1164 (semantic-edits-incremental-parser-1): Protect against a bug where
1165 psrse-start is after parse-end.
1166 Added debugging assistance.
1167 Added some comments in some confusing code.
1169 * tests/test.py (HTTPServer.server_bind): Uncomment.
1171 * wisent/wisent-python.el (wisent-python-default-setup):
1172 Remove errant paren.
1174 * semantic-load.el (semantic-load-enable-semantic-debugging-helpers):
1178 * doc/user-guide.texi (Speed Debug): New node.
1180 2006-02-09 Eric M. Ludlam <zappo@gnu.org>
1182 * wisent/wisent-python.el (wisent-python-default-setup):
1183 Apply the semantic imenu override
1184 so we don't use the one in python.el.
1185 Add symbol-> name association lists.
1187 2006-02-08 Eric M. Ludlam <zappo@gnu.org>
1189 * doc/Project.ede (images): Added grammar-fw-ov.txt
1191 * wisent/Makefile, tests/Makefile, doc/Makefile, bovine/Makefile (VERSION):
1194 * semantic-load.el (semantic-load-enable-guady-code-helpers): Alias.
1196 * semantic.el (semantic-version): Updated
1198 * Project.ede (:version): updated
1200 * Makefile (VERSION): updated
1202 * semantic-ia.el (semantic-ia-show-summary): New fcn/example
1204 * senator.el (semantic-narrow-to-tag):
1205 Undo previous... already defined as narrow-to-defun
1207 * semantic-tag.el (semantic-narrow-to-tag): Make this interactive.
1209 * senator.el (senator-menu-bar): Add item for senator-narrow-to-tag.
1211 * semantic-load.el, INSTALL: Fix gaudy typo
1213 2006-01-12 David Ponce <david@dponce.com>
1215 * wisent/wisent-java-tags.wy (variable_declarators):
1216 Include the COMMA delimiter into compound
1219 2006-01-09 David Ponce <david@dponce.com>
1221 * wisent/wisent-java.wy (variable_declarators):
1222 Include the COMMA delimiter into compound
1225 * senator.el (senator-search-tag-name):
1226 Search the tag name between word
1227 delimiters, whitespaces, or punctuations.
1229 2006-01-03 David Ponce <david@dponce.com>
1231 * semantic-ctxt.el (semantic-ctxt-current-symbol-default):
1233 expressions around symbols.
1235 * bovine/semantic-c.el (c-mode::semantic-type-relation-separator-character):
1239 2005-12-07 Eric M. Ludlam <zappo@gnu.org>
1241 * bovine/semantic-c.el:
1242 (c-mode::semantic-type-relation-separator-character):
1243 Add simple Arrays as occuring between symbols.
1245 2005-11-22 David Ponce <david@dponce.com>
1247 * wisent/wisent-java.wy (static_initializer):
1248 Use :typemodifiers attribute.
1249 (block_statements): Use :members attribute.
1250 (method_declaration, constructor_declaration): Don't store the
1251 :body attribute to save place in the tag database.
1253 * senator.el (senator-previous-tag-or-parent): Don't use
1254 `semantic-find-tag-by-overlay-prev' which skips the current tag
1255 when point is at the end of a tag overlay.
1257 2005-11-17 David Ponce <david@dponce.com>
1259 * wisent/wisent-java.wy (local_variable_declaration):
1262 2005-11-03 David Ponce <david@dponce.com>
1264 * semantic-ia.el (semantic-ia-complete-symbol-menu):
1265 XEmacs `imenu--mouse-menu'
1268 2005-10-23 Eric M. Ludlam <zappo@gnu.org>
1270 * semantic-ia.el (semantic-ia-complete-symbol):
1271 Use `senator-complete-symbol' as backup
1272 technique if smart stuff fails.
1274 * semantic-ia.el (semantic-ia-complete-symbol-menu):
1275 Fix case with only one menu item.
1277 * bovine/semantic-c.el (semantic-expand-c-tag):
1278 Replace obsolete 'token-parent' call with
1279 'tag-type-superclasses' call instead.
1281 * bovine/c.by (typesimple): For typedef, pass 'parent' in as a list
1283 2005-09-30 Eric M. Ludlam <zappo@gnu.org>
1285 * tests/test.cpp (stdio.h): New include.
1286 (simple1): New function.
1288 (class3): Add operator^=
1289 (class3::method1_for_class3): Various smart completion testing changes.
1290 (class4): Add constructor initializers
1291 (Action): Add operator+=.
1293 * tests/test.c (fun1): New.
1295 * tests/gr-test.wy, doc/fdl.texi, wisent/wisent-python.wy, wisent/wisent-python.el, wisent/wisent-java.wy, wisent/wisent-java-tags.wy, wisent/wisent-java-tags.el, wisent/wisent-java.el, wisent/wisent-grammar-macros.el, wisent/wisent-grammar.el, wisent/wisent-expr.el, wisent/wisent.el, wisent/wisent-debug.el, wisent/wisent-c.wy, wisent/wisent-comp.el, wisent/wisent-cim.wy, wisent/wisent-c.el, wisent/wisent-calc.wy, wisent/wisent-calc.el, wisent/wisent-awk.wy, wisent/semantic-wisent.el, wisent/bison-wisent.el, bovine/skeleton.by, bovine/semantic-skeleton-by.el, bovine/semantic-skel.el, bovine/semantic-scm.el, bovine/semantic-make.el, bovine/semantic-java.el, bovine/semantic-erlang.el, bovine/semantic-el.el, bovine/semantic-c.el, bovine/semantic-bovine.el, bovine/scheme.by, bovine/make.by, bovine/erlang-edoc.el, bovine/erlang.by, bovine/c.by, bovine/bovine-grammar-macros.el, bovine/bovine-grammar.el, bovine/bovine-debug.el, senator.el, semantic-util-modes.el, semantic-util.el, semantic-texi.el, semantic-tag-ls.el, semantic-tag-file.el, semantic-tag.el, semantic-sort.el, semantic-sb.el, semantic-regtest.el, semantic-load.el, semantic-lex.el, semantic-inc.el, semantic-imenu.el, semantic-idle.el, semantic-ia-sb.el, semantic-ia.el, semantic-html.el, semantic-grammar-wy.el, semantic-grammar.wy, semantic-grammar.el, semantic-fw.el, semantic-format.el, semantic-fold.el, semantic-find.el, semantic-example.el, semantic.el, semantic-edit.el, semantic-ede-grammar.el, semantic-doc.el, semantic-decorate-mode.el, semantic-decorate.el, semantic-debug.el, semanticdb-system.el, semanticdb-skel.el, semanticdb.sh, semanticdb-search.el, semanticdb-mk.el, semanticdb-java.el, semanticdb-find.el, semanticdb-file.el, semanticdb-el.el, semanticdb.el, semanticdb-ebrowse.el, semantic-ctxt.el, semantic-complete.el, semantic-chart.el, semantic-cb.el, semantic-ast.el, semantic-analyze.el, document-vars.el, document.el:
1296 Update all GPL headers with script from savannah.gnu.org.
1298 2005-09-29 Eric M. Ludlam <zappo@gnu.org>
1300 * bovine/c.by (HAT): Fix regexp.
1302 * bovine/semantic-c.el (c-mode::semantic-format-tag-canonical-name):
1305 * document.el (document-find-file): Fix warning.
1307 * document.el (document): Fix doc.
1308 (document-inline): Use overlays to find the current tag.
1310 * semantic-doc.el (semantic-documentation-for-tag):
1311 Use below for getting a comment.
1312 (semantic-documentation-comment-preceeding-tag): New function.
1313 Like code taken from above, but using overlays to find boundaries
1314 between tags. Robust to functions with no preceeding comments.
1316 * semantic-debug.el (semantic-debug-interface::semantic-debug-highlight-rule):
1318 long rules visible when focus changes to the end of those rules.
1320 * semantic-find.el (semantic-find-tag-by-overlay-prev):
1321 Find stops at END of tags when
1323 (semantic-brute-find-first-tag-by-function): Fix doc string.
1324 (semantic-brute-find-tag-by-position): Fix doc string.
1326 2005-09-21 David Ponce <david@dponce.com>
1328 * senator.el: (semantic-insert-foreign-tag-default)
1329 (semantic-insert-foreign-tag): Move to semantic-tag.el.
1330 (senator-copy-tag, senator-yank-tag)
1331 (senator-copy-tag-to-register)
1332 (insert-register, jump-to-register): Use foreign tags.
1334 * semantic-texi.el (semantic-insert-foreign-tag):
1335 Receive a foreign tag. Use
1336 `semantic-tag-buffer'.
1338 * semantic-tag.el (semantic-tag-buffer):
1339 Handle tag with an originating file.
1341 (semantic-foreign-tag-invalid, semantic-foreign-tag-p)
1342 (semantic-foreign-tag-check, semantic-foreign-tag)
1343 (semantic-obtain-foreign-tag): New functions.
1344 (semantic-insert-foreign-tag-default)
1345 (semantic-insert-foreign-tag): Move from senator.el. Change
1348 * semantic-grammar.el: (semantic-ctxt-current-function)
1349 (semantic-ctxt-current-argument)
1350 (semantic-ctxt-current-assignment)
1351 (semantic-ctxt-current-class-list): Take into account the optional
1353 (semantic-ctxt-current-mode): New function.
1355 * semantic-ctxt.el: (semantic-ctxt-current-mode)
1356 (semantic-ctxt-current-mode-default): New functions.
1358 * document.el (document-massage-to-texinfo): Use `semantic-tag-mode'.
1360 2005-09-16 Eric M. Ludlam <zappo@gnu.org>
1362 * bovine/c.by (operatorsym):
1363 Move HAT EQUAL operatorysym to the end of the list.
1364 It breaks following rules.
1366 2005-09-07 David Ponce <david@dponce.com>
1368 * bovine/semantic-el.el (eval-and-compile, eval-when-compile):
1369 Make the nested form parser
1372 2005-09-01 Eric M. Ludlam <zappo@gnu.org>
1374 * senator.el (add-log-current-defun): Output canonical names too.
1375 Work harder at finding a parent to add to canonical name.
1377 * semantic-format.el (semantic-format-tag-functions):
1378 Add semantic-format-tag-canonical-name.
1379 (semantic-format-parent-separator): New option.
1380 (semantic--format-tag-arguments): Use below fcn
1381 (semantic-format-tag-name-from-anything): New function (from above)
1382 (semantic--format-tag-parent-tree): New unfinished function.
1383 (semantic-format-tag-canonical-name): New overload function.
1384 (semantic-format-tag-abbreviate-default): Use above.
1386 2005-08-27 David Ponce <david@dponce.com>
1388 * doc/tags.texi (Tag Overlay): Fix @strong{Note...} warning.
1390 2005-08-26 Eric M. Ludlam <zappo@gnu.org>
1392 * doc/tags.texi (Tag Query): New doc.
1394 * semantic-tag.el (semantic-tag-named-parent): New function
1395 (semantic-tag-function-parent): Use above.
1397 2005-08-15 Eric M. Ludlam <zappo@gnu.org>
1399 * semantic-fold.el (semantic-folding-click): doc update
1402 2005-07-14 David Ponce <david@dponce.com>
1404 * Makefile, wisent/Makefile, bovine/Makefile: Re-generate.
1406 * semantic-ede-grammar.el: (semantic-ede-grammar-compiler-wisent)
1407 (semantic-ede-grammar-compiler-bovine): Add quotes around EMACS.
1409 2005-06-30 Eric M. Ludlam <zappo@gnu.org>
1411 * semantic.el (semantic-version): Updated.
1413 * Project.ede (:version): Updated.
1415 * wisent/Makefile, tests/Makefile, doc/Makefile, bovine/Makefile, Makefile (VERSION):
1418 * senator.el: toplevel: ran checkdoc, cleaned up errant whitespace.
1419 (senantor-fold-tag,senator-unfold-tag,senator-fold-tag-toggle): Doc fix.
1420 (senator-go-to-up-reference): Error fix.
1421 (semantic-up-reference-default): Error fix.
1423 * semantic-util-modes.el:
1424 toplevel: ran checkdoc, cleaned up errant whitespace.
1426 * semantic-util.el (semantic-recursive-find-nonterminal-by-name):
1427 Doc change pending deletion.
1429 * semantic-tag-file.el:
1430 toplevel: ran checkdoc, cleaned up errant whitespace.
1432 * semantic-tag.el (semantic-tag-faux-p): Doc fix.
1435 toplevel: ran checkdoc, cleaned up errant whitespace.
1437 * semantic-sb.el: (semantic-sb-tag-set-buffer)
1438 (semantic-sb-insert-tag-table): Doc fix.
1440 * semantic-load.el (semantic-load-enable-minimum-features):
1441 Fix broken if statement.
1443 * semantic-lex.el (semantic-lex-expand-block-specs): Doc fix.
1445 * semantic-idle.el, semantic-grammar.el:
1446 toplevel: ran checkdoc, cleaned up errant whitespace.
1448 * semantic-fw.el: Copyright updated.
1450 * semantic-example.el: Checkdoc fixes.
1452 * semantic.el: toplevel: ran checkdoc, cleaned up errant whitespace.
1453 (semantic-parse-region): Doc fix.
1454 (semantic-parse-region-default): Error msg fixes.
1456 * semantic-decorate-mode.el: (global-semantic-decoration-mode):
1457 (semantic-decoration-mode): Checkdoc fixes.
1459 * semantic-decorate.el (semantic-set-tag-folded-isearch): Doc fix.
1461 * semantic-debug.el: (semantic-debug-find-parser-source)
1462 (semantic-debug-set-breakpoint)
1463 (semantic-debug-parser-fames): Various checkdoc fixes.
1465 * semanticdb-system.el: (semanticdb-load-system-database)
1466 (semanticdb-collect-matching-filenames): Doc fix.
1468 * semanticdb-find.el: Commentary: updated.
1469 (semanticdb-find-table-for-include-default): Add comment about cache loading.
1470 (semanticdb-find-test-translate-path): doc fix.
1471 (semanticdb-find-result-test): Fix error message.
1473 * semanticdb-file.el:
1474 toplevel: ran checkdoc, cleaned up errant whitespace.
1475 (semanticdb-file-name-directory): Doc fix.
1476 Renamed argument PATH to DIRECTORY for GNU conventions.
1479 toplevel: ran checkdoc, cleaned up errant whitespace.
1481 * semanticdb.el (semanticdb-file-table): Doc fix.
1484 toplevel: ran checkdoc, cleaned up errant whitespace.
1485 (semantic-ctt-current-argument-default): Doc fix.
1487 * semantic-complete.el, semantic-chart.el, semantic-analyze.el:
1488 toplevel: ran checkdoc, cleaned up errant whitespace.
1490 2005-06-13 David Ponce <david@dponce.com>
1492 * semantic-util-modes.el (semantic-stickyfunc-mode-setup):
1493 Fix last change. Thanks to
1494 Nicholas Sandow <njsand@internode.on.net>.
1496 2005-06-11 David Ponce <david@dponce.com>
1498 * semantic-util-modes.el (semantic-stickyfunc-old-hlf):
1499 No more automatically buffer local.
1500 (semantic-stickyfunc-mode-setup): Fix save/restore of previous
1503 2005-06-02 David Ponce <david@dponce.com>
1505 * semantic-grammar.el (semantic-grammar-mode):
1506 Use `semantic-run-mode-hooks'.
1508 * semantic-fw.el (semantic-run-mode-hooks): New compatibility function.
1509 (semantic-safe): Add the current buffer to the error message.
1511 * semantic-decorate-mode.el (semantic-build-decoration-mode-menu):
1512 Add autoload cookie.
1514 2005-05-19 David Ponce <david@dponce.com>
1516 * senator.el: (senator-search-ignore-tag-classes)
1517 (senator--search-filter): New variables.
1518 (senator-search-default-tag-filter): New function.
1519 (senator-search-tag-filter): Remove.
1520 (senator-search-tag-filter-functions): New hook.
1521 (senator-search): Use it.
1522 (senator-search-set-tag-class-filter): Likewise. Doc fix.
1524 2005-05-13 David Ponce <david@dponce.com>
1526 * senator.el (senator-search-tag-name):
1527 Don't fail if TAG name doesn't come
1528 from source. Doc fix.
1529 (senator-search): Likewise.
1531 2005-05-08 Suraj Acharya <sacharya@gmail.com>
1534 added a binding for overlay-size/extent-length to semantic-overlay-size
1536 2005-05-06 Eric M. Ludlam <zappo@gnu.org>
1538 * wisent/Makefile (VERSION): Update version number
1539 (tools, wisent, languages): Add quotes around EMACS.
1541 * tests/Makefile (VERSION): Update version number
1543 * semantic-fold.el (semantic-tag-folding-decoration):
1544 Disable folding style by default.
1546 * semantic-debug.el (semantic-debug-find-parser-source):
1547 Provide a useful error if the
1548 parser source was not found.
1550 * semantic-load.el (semantic-load-system-cache-loaded): New variable.
1551 (semantic-load-enable-minimum-features): Do not load system caches
1555 (semantic-idle-summary-current-symbol-info-context):
1556 Be robust to failures in analysis calculation.
1558 * semantic.el (semantic-version): Update version number
1560 * semanticdb-system.el (semanticdb-load-system-caches):
1561 Disable loading non cache files.
1562 This allows other types of files in the cache directory.
1564 * INSTALL: Added semantic-load-enable-guady-code-helpers.
1565 Add custom setup section.
1567 * Makefile (VERSION): Update version number
1568 (autoloads, maintenance, init, semantic, Languages, tools, senator):
1569 Add quotes around EMACS.
1571 * Project.ede ("semantic"): Update version number
1573 * bovine/Makefile (VERSION): Update version number
1574 (bovinator, languages): Add quotes around EMACS.
1576 * doc/Makefile (VERSION): Update version number
1577 (semantic-user_info_TEXINFOS): Added minor-modes.texi.
1579 * doc/Project.ede ("semantic-user.info"):
1580 Broke out minor modes section to new file.
1582 * doc/user-guide.texi (senator): Add some new keybindings
1583 (Analyzer): Replace 'token' with 'tag'.
1584 (Class Browser): Tidy up some text.
1585 (Idle Scheduler): Menu update.
1586 (Idle Summary Mode): Add new variable. Remove completions mode.
1587 (Idle Completions Mode): New section.
1588 (Minor Modes): Moved into a sub-file.
1590 * doc/minor-modes.texi: Doc for various minor modes.
1592 2005-05-01 Eric M. Ludlam <zappo@gnu.org>
1594 * semanticdb-ebrowse.el: Ebrowse semanticdb backend.
1596 2005-04-30 Eric M. Ludlam <zappo@gnu.org>
1598 * senator.el (senator-register-custom-menu):
1599 Add space to menu item name.
1600 (senator-menu-bar): Move some items.
1601 Add decoration sub-menu.
1603 * semantic-load.el (semantic-load-enable-code-helpers):
1605 (semantic-load-enable-guady-code-helpers): New
1606 (semantic-load-enable-excessive-code-helpers): Remove ref to old variable.
1608 * semantic-decorate-mode.el (semantic-decoration-style-enabled-p):
1610 (semantic-decoration-menu-cache, semantic-decoration-build-style-menu)
1611 (semantic-build-decoration-mode-menu): New.
1612 (define-semantic-decoration-style): Enable a set of optional flags.
1613 (semantic-tag-boundary-p-default): Remove minimum size constraint.
1614 (semantic-decoration-on-private-members)
1615 (semantic-decoration-on-protected-members): Disable by default.
1617 2005-04-23 Eric M. Ludlam <zappo@gnu.org>
1619 * semantic-util-modes.el (semantic-stickyfunc-mode-map):
1620 Add keypress for menu in header line.
1621 (semantic-stickyfunc-popup-menu): New variable and menu.
1622 (semantic-stickyfunc-menu): Command.
1624 2005-04-22 Eric M. Ludlam <zappo@gnu.org>
1626 * semantic-tag.el: Update Commentary.
1628 2005-04-20 Eric M. Ludlam <zappo@gnu.org>
1630 * semantic-load.el (semantic-load-enable-code-helpers):
1631 For code helpers, do not turn on
1632 completions mode if there are no tooltips.
1634 2005-04-19 Eric M. Ludlam <zappo@gnu.org>
1636 * semantic.el (semantic-version): Update version number.
1638 * wisent/Makefile, tests/Makefile, doc/Makefile, bovine/Makefile, Makefile (VERSION):
1641 * Project.ede ("semantic"): Update version number.
1643 * bovine/semantic-el.el (semantic-dependency-tag-file):
1644 Renamed from old not compatible name.
1646 * semantic-sort.el (semantic-tag-external-member-parent): Fix Typo.
1648 * NEWS: Add section on lexical debugging.
1650 2005-04-17 Eric M. Ludlam <zappo@gnu.org>
1652 * semantic-fold.el (semantic-tag-folding-decoration-p-default):
1654 Only show +/- if in folding mode.
1655 (semantic-tag-folding-decoration-highlight-default):
1658 2005-04-16 David Ponce <david@dponce.com>
1660 * semantic-tag.el (semantic-tag-faux-p, semantic-tag-set-faux):
1662 property to :faux-flag.
1664 * semantic-sort.el (semantic-adopt-external-members):
1665 Use `semantic-tag-set-faux'.
1667 * bovine/c.by (operatorsym): Fix previous change.
1669 2005-04-16 Eric M. Ludlam <zappo@gnu.org>
1671 * senator.el (senator-go-to-up-reference): New command.
1672 (semantic-up-reference[-default]): New override method.
1673 (senator-prefix-map): Add up-reference command.
1674 (senator-menu-bar): same.
1676 2005-04-15 Eric M. Ludlam <zappo@gnu.org>
1678 * bovine/semantic-c.el (semantic-tag-protection):
1679 Use tag equivalency, not eq.
1681 * bovine/c.by (MOD, HAT, OR): New tokens.
1682 (operatorsym): Add many more possible overloadable operators.
1684 * semantic-sort.el (semantic-adopt-external-members):
1685 Revamp to use 'faux' tag interface
1686 added to semantic-tag.el
1688 * semantic-tag.el (semantic-tag-faux-p, semantic-tag-set-faux):
1691 2005-04-01 Eric M. Ludlam <zappo@gnu.org>
1693 * bovine/c.by (fun-or-proto-end): Allow arguments after catch.
1695 * bovine/c.by (fun-or-proto-end): Allow initializers after TRY.
1697 * bovine/c.by (TRY, CATCH): New tokens
1698 (fun-or-proto-end): Add TRY/CATCH option to function body.
1700 * semantic-idle.el (semantic-idle-core-handler):
1701 Allow services to run if lexical unsafe.
1702 (semantic-idle-summary-current-symbol-info-context):
1703 Use new analyzer API call to get an interesting tag.
1705 * semantic-analyze.el: (semantic-analyze-interesting-tag):
1706 New methods for `semantic-analyze-context', `-functionarg', and
1709 * semantic-ctxt.el (semantic-end-of-context-default):
1710 Make robust to incomplete syntax.
1712 * semantic.el (semantic-refresh-tags-safe): New function.
1714 * semantic-lex.el (semantic-lex-debug-analyzers): New option.
1715 (semantic-lex-unterminated-syntax-protection): Debug syntax problems
1716 iff both lex debug and debug-on-error is active.
1718 2005-03-24 Eric M. Ludlam <zappo@gnu.org>
1720 * semantic-imenu.el: (semantic-imenu-index-directory)
1721 (semantic-imenu-auto-rebuild-directory-indexes): New default value is nil.
1723 2005-03-01 Eric M. Ludlam <zappo@gnu.org>
1725 * semantic-sb.el (semantic-sb-token-jump):
1726 Be sure to switch to the buffer being
1727 jumped to by `semantic-go-to-tag'.
1729 2005-02-20 Eric M. Ludlam <zappo@gnu.org>
1731 * semantic-tag-file.el (semantic-go-to-tag): Use `cond'.
1732 Use `semantic-tag-file-name' when applicable.
1733 If no position is found, use current buffer and re-search-forward.
1734 (semantic-dependency-tag-file): Switch to tag originating buffer
1735 before calling any override methods.
1736 Add caching mechanism around the override part.
1738 2005-02-17 Eric M. Ludlam <zappo@gnu.org>
1740 * bovine/semantic-el.el (semantic--elisp-parse-table):
1741 Fix reverse issue on tag lists.
1742 (semantic-elisp-setup-form-parser): New parser entity
1743 (defvar): Add defezimage.
1744 (defmethod): Don't specify parent of not specified in arg list.
1745 (define-mode-overload-implementation): Add obsolete comment.
1747 * tests/test.el: New test functions for Emacs Lisp.
1749 * semantic-util-modes.el (semantic-stickyfunc-mode-setup):
1750 Pass a second argument to
1753 2005-02-15 Klaus Berndl <klaus.berndl@sdm.de>
1755 * semantic-regtest.el: - Removed the semantic 1.4 support
1756 - Whitespace-normalizing of tag-name and tag-text
1757 - Added help-echos for semantic-regtest-mode
1758 - distinction between user-commands and internal-equivalents for being used
1760 - new option semantic-regtest-print-tag-boundaries
1762 2005-02-13 Eric M. Ludlam <zappo@gnu.org>
1764 * semantic-util-modes.el (semantic-stickyfunc-indent-string):
1765 New default value calculated from
1767 (semantic-stickyfunc-fetch-stickyline): Replace tabs with spaces
1768 before presenting the string.
1770 * semantic-tag-file.el (semantic-dependency-tag-file):
1771 Cache found dependency in tag
1772 property. If it isn't found, cache that too.
1774 * semantic-idle.el (semantic-idle-scheduler-verbose-flag): New option
1775 (semantic-idle-core-handler)
1776 (semantic-idle-scheduler-refresh-tags): Be verbose if flag is
1779 2005-02-04 Eric M. Ludlam <zappo@gnu.org>
1781 * semanticdb-system.el (semanticdb-system-database-warn-level):
1783 (semanticdb-system-db-directory-search-recursed): New state
1784 (semanticdb-load-system-database): Ask if files list is very long
1785 (semanticdb-collect-matching-filenames): Add not-recursive option.
1788 (semantor-fold-tag, senator-unfold-tag, senator-fold-tag-tooggle):
1790 (senator-prefix-map): Add folding commands.
1791 (senator-menu-bar): Add folding commands.
1793 2005-02-03 Eric M. Ludlam <zappo@gnu.org>
1795 * semantic-fold.el: Folding decoration/mode.
1797 * wisent/Makefile, tests/Makefile (VERSION): Updated version number.
1799 * tests/test.cpp (method1_for_class3):
1800 Added space where completion tests cn occur
1801 (method5_for_class3): Added 'doc' string in comment at top.
1803 * doc/user-guide.texi (semanticdb): Refer to updated install mechanism.
1804 (Semanticdb Search Configuration): Added throttle discussion.
1805 (Semanticdb System Backends): Mention the omniscience throttle key.
1807 * doc/app-dev-guide.texi (top): Add Tag Decoration node
1808 (Tag Decoration): New chapter with several subsections
1809 (Semanticdb Tag Queries): Fixed up first paragraph
1810 Remove path translation.
1811 (DB Results): Change "token" to "tag".
1812 (DB Search Paths): New section
1814 * doc/Makefile, bovine/Makefile (VERSION): Updated version number.
1816 * NEWS: Added folded tags to news.
1817 Fixed name of a function with -nonterminal-
1818 Added info about texi parser.
1820 * Makefile (VERSION): Updated version number.
1822 * Makefile (VERSION): Updated version number.
1823 (example_MISC): Added semanticdb-skel.el
1825 * Project.ede ("semantic"): Update version number.
1826 ("example"): Added semanticdb-skel.el
1828 * semantic-fold.el: A hack for a folding mode with +/- in the fringe.
1830 * semantic-decorate.el (semantic-set-tag-folded, semantic-tag-folded-p):
1832 (semantic-set-tag-folded-isearch): New callback
1834 2005-02-02 Eric M. Ludlam <zappo@gnu.org>
1836 * semanticdb-find.el (semanticdb-find-test-translate-path):
1837 Refer to the throttle
1838 variable in doc string.
1840 2005-02-01 Eric M. Ludlam <zappo@gnu.org>
1842 * semanticdb-skel.el:
1843 First pass at a skeleton for making new semanticdb system databases.
1845 2005-01-30 Eric M. Ludlam <zappo@gnu.org>
1847 * semanticdb-el.el (semanticdb-find-default-throttle):
1848 Rename 'omnipotent' to 'omniscience'
1850 * semanticdb-find.el: (semanticdb-find-throttle-custom-list)
1851 (semanticdb-find-default-throttle)
1852 (semanticdb-find-table-for-include-default): Rename 'omnipotent' to
1853 'omniscience', which is a better word.
1855 2005-01-29 Eric M. Ludlam <zappo@gnu.org>
1857 * bovine/semantic-c.el (semantic-default-c-path):
1858 Add to semantic custom group.
1860 * semantic-load.el (semantic-load-enable-minimum-features): Fix doc
1862 * semanticdb-system.el (semanticdb-load-system-caches):
1863 Don't load backup files.
1864 (semanticdb-load-system-database): Force tag parsing at load
1865 time since this is no longer guaranteed.
1867 * semanticdb-find.el (semanticdb-find-throttle-custom-list):
1869 (semanticdb-find-default-throttle): New user option.
1870 (semanticdb-find-throttle-active-p): New predicate
1871 (semanticdb-find-translate-path-includes-default):
1872 Only recurse if recursion is enabled.
1873 (semanticdb-find-table-for-include-default):
1874 Add throttling code.
1875 Re-enable old system database loading.
1876 Use new commnds to get system databases if available, then
1877 resort to a normal load.
1878 (semanticdb-find-test-translate-path): Update from Jan's input.
1880 * semanticdb-el.el (semanticdb-find-default-throttle):
1881 Specifiy an Emacs Lisp value.
1883 * semanticdb.el (semanticdb-dump-all-table-summary):
1884 New debugging command.
1885 (semanticdb-file-table-object): When loading a table, make sure
1886 we grab system databases too.
1888 2005-01-28 David Ponce <david@dponce.com>
1890 * semantic-tag.el (semantic-tag-buffer):
1891 Ensure the tag's overlay is living.
1893 * semantic-fw.el: (semantic-overlay-live-p) [XEmacs]: Align with Emacs'
1894 `overlay-buffer' behavior.
1896 2005-01-20 Eric M. Ludlam <zappo@gnu.org>
1898 * doc/user-guide.texi (Minor Modes): Update doc to many minor modes.
1899 highlight-by-attribute mode was replaced with decoration mode.
1900 (semanticdb): Update doc with doc-strings, usually by
1903 * semantic.el (semantic-version): Update to 2.0! Whoo Hoo!
1904 (semantic-repeat-parse-whole-stream): Add infinite loop detection.
1906 * semantic-cb.el: (semantic-cb-tag)
1908 (semantic-cb-add-incomplete-type)
1909 (semantic-cb-new-class-browser)
1910 (semantic-cb-complete-type)
1911 (semantic-cb-convert-type)
1912 (semantic-cb-convert-children)
1913 (initialize-instance)
1915 (eieio-speedbar-*): Replace all references to TOKEN with TAG.
1916 (semantic-cb-speedbar-key-map): Create an eieio-speedbar-key-map.
1918 * semanticdb.el (semanticdb-current-database-list):
1919 If no roots are found, use the
1920 current directory as the root.
1922 2005-01-20 David Ponce <david@dponce.com>
1924 * doc/internals.texi (Semanticdb): New section.
1926 * doc/semantic.texi: Copyright update.
1928 2005-01-17 Eric M. Ludlam <zappo@gnu.org>
1930 * semantic-complete.el (semantic-complete-inline-analyzer):
1931 Allow completion when the
1932 current symbol is empty, but there is an active parent symbol.
1934 2005-01-16 Eric M. Ludlam <zappo@gnu.org>
1936 * semantic-texi.el (semantic-sb-tag-children-to-expand): Delete.
1937 The semantic support file already does this.
1939 * bovine/semantic-el.el: Fix copyright.
1941 2005-01-13 Eric M. Ludlam <zappo@gnu.org>
1943 * semantic-edit.el, semantic-grammar.el, semantic-ia.el, semantic-sb.el, semanticdb-find.el:
1944 Fix copyright year listing
1946 2005-01-12 Eric M. Ludlam <zappo@gnu.org>
1948 * bovine/semantic-el.el (semantic-documentation-for-tag):
1949 For tags with no known
1950 documentation, cheat and snag some from the Emacs environment.
1952 * semanticdb.el (semanticdb-project-root-functions): Update doc.
1953 (semanticdb-current-database-list): Allow prev to return multiple
1956 * semanticdb-el.el (semanticdb-find-translate-path):
1957 Prevent the systemdb from being
1958 added when we recurse into this fcn.
1960 * semanticdb-find.el (semanticdb-find-test-translate-path): Fix doc
1961 (semanticdb-strip-find-results): Implement previously missing
1962 feature for `find-file-match'.
1963 (semanticdb-find-tags-collector): Reverse return results so they
1964 are in the same order as the input path.
1966 * doc/user-guide.texi (Smart Completion): Added semantic-ia-show-doc
1968 * semantic-ia.el (semantic-ia-sow-doc): New command.
1970 * semantic-sb.el: Update comment/TODO
1972 * semantic-sb.el (semantic-sb-tag-set-buffer, semantic-sb-with-tag-buffer):
1974 (semantic-sb-tag-children-to-expand-default)
1975 (semantc-sb-one-button, semantic-sb-insert-details)
1976 (semantic-sb-fetch-tag-table): Wrap calls to override methods
1979 2005-01-12 David Ponce <david@dponce.com>
1981 * wisent/wisent-grammar-macros.el (wisent-grammar-ALIAS-TAG):
1983 (semantic-grammar-macros): Add ALIAS-tAG.
1985 2005-01-11 Eric M. Ludlam <zappo@gnu.org>
1987 * semantic-sb.el (semantic-sb-one-button):
1988 Replace old logic with new override function.
1990 * semantic-grammar.el (semantic-grammar-syntax-help):
1993 * doc/lang-support-guide.texi (Incremental Parser Debugging):
1996 * semantic-edit.el (semantic-edits-verbose-flag): New flag.
1997 (semantic-parse-changes-failed, semantic-edits-incremental-fail)
1998 (semantic-edits-incremental-parser-1): Use above new flag.
2000 * doc/lang-support-guide.texi (Incremental Parser Debugging):
2001 Updated to changes in lisp code.
2003 * semantic-util-modes.el (semantic-show-parser-state-marker):
2004 change state symbol so it is
2007 * bovine/bovine-grammar-macros.el (bovine-grammar-ALIAS-TAG): New fcn
2008 (semantic-grammar-macros): Add above.
2010 2005-01-10 David Ponce <david@dponce.com>
2012 * semantic.el (semantic-parse-region-default):
2013 Try to reuse tokens from inside
2015 (semantic-fetch-tags): Initialize `semantic-lex-block-streams'.
2017 * semantic-lex.el: (semantic-lex-block-streams)
2018 (semantic-lex-block-stack): New variables.
2019 (define-lex): Use them. Improved error messages. Handle
2020 unterminated collapsed blocks.
2021 (semantic-lex-start-block, semantic-lex-end-block): New functions.
2022 (semantic-lex-expand-block-specs): New function.
2023 (semantic-lex-push-token): Use it. Doc fix.
2025 2005-01-07 Eric M. Ludlam <zappo@gnu.org>
2027 * semantic-html.el: (semantic-html-extract-section-name):
2029 Improve robustness of anchor text extraction.
2031 2005-01-06 David Ponce <david@dponce.com>
2033 * semantic-tag.el: (semantic-tag-new-alias, semantic-tag-alias-class)
2034 (semantic-tag-alias-definition): New functions.
2036 2005-01-06 Eric M. Ludlam <zappo@gnu.org>
2039 (semantic-describe-tag, semantic-add-label, semantic-show-label):
2040 Convert "token" names to "tag".
2042 2005-01-05 David Ponce <david@dponce.com>
2044 * wisent/wisent.el (wisent-production-bounds):
2045 Ensure i doesn't go beyond j.
2047 * bovine/semantic-el.el (defstruct):
2048 Don't put doc string in structure members. Handle
2049 defstruct name when it is a simple symbol.
2051 2005-01-04 Eric M. Ludlam <zappo@gnu.org>
2053 * semantic-cb.el (semantic-cb-speedbar-mode):
2054 Force a new class browser to be created
2055 before initializing speedbar.
2057 2004-12-18 Eric M. Ludlam <zappo@gnu.org>
2059 * semantic-complete.el (semantic-complete-default-to-tag):
2060 Get car of search results.
2061 (semantic-displayor-focus-request): Have match index be 1 based.
2063 2004-12-15 Eric M. Ludlam <zappo@gnu.org>
2065 * semanticdb-find.el (semanticdb-find-translate-path-brutish-default):
2067 (semanticdb-find-test-translate-path): New command.
2069 2004-12-01 David Ponce <david@dponce.com>
2071 * senator.el (senator-add-log-tags): Doc fix.
2072 (add-log-current-defun): Process tags in reverse order to examine
2073 the ones closest to point first (thanks to Alan Shutko
2074 <ashutko@express-scripts.com>). Minor code improvements.
2076 2004-10-26 Eric M. Ludlam <zappo@gnu.org>
2078 * semantic-fw.el (subst-char-in-string):
2079 Removed previous re-implementation.
2081 * semanticdb-file.el: (semanticdb-file-name-directory):
2082 Use compatible version of subst-char-in-string.
2084 * semantic-fw.el (subst-char-in-string):
2085 New alias/compat function. Thanks Andrey Slusar.
2086 (semantic-safe): Notes to self.
2088 2004-10-21 David Ponce <david@dponce.com>
2090 * semantic-imenu.el (working): Require it.
2091 (semantic-imenu-rebuild-directory-indexes): Use
2092 `working-temp-message' to not obscure other important messages.
2094 2004-10-19 David Ponce <david@dponce.com>
2096 * semantic-fw.el (subst-char-in-string):
2097 Define if not fboundp for compatibility
2100 2004-10-14 Eric M. Ludlam <zappo@gnu.org>
2102 * semantic-ia-sb.el (semantic-ia-sb-key-map): Fix name of info function
2103 (semantic-ia-sb-tag-info): Don't show info for non-tags.
2104 Remove use of old semantic-ia-sb-last-analysis.
2105 (semantic-ia-sb-line-path, semantic-ia-sb-complete):
2106 Remove use of old semantic-ia-sb-last-analysis.
2108 2004-10-05 David Ponce <david@dponce.com>
2110 * semantic-tag.el (semantic-tag-p): Fix last change.
2112 2004-10-04 David Ponce <david@dponce.com>
2114 * semantic-tag.el (semantic-tag-p): Return nil if an error occurs.
2116 2004-09-22 David Ponce <david@dponce.com>
2118 * bovine/skeleton.by (PERIOD):
2119 Replace \\b \\b by \\` \\' in token regexp.
2121 * bovine/make.by: (COLON, PLUS, EQUAL)
2122 (DOLLAR, BACKSLASH): Replace \\b \\b by \\` \\' in token regexp.
2124 * bovine/erlang.by: (HASH, PERIOD, COLON, SEMICOLON, STAR, AMPERSAND)
2125 (DIVIDE, PLUS, MINUS, BANG, WHY, EQUAL, LESS, GREATER)
2126 (COMA, VDE): Replace \\b \\b by \\` \\' in token regexp.
2128 * bovine/c.by: (HASH, PERIOD, COLON, SEMICOLON, STAR, AMPERSAND)
2129 (DIVIDE, PLUS, MINUS, BANG, EQUAL, LESS, GREATER)
2130 (COMA, TILDE): Replace \\b \\b by \\` \\' in token regexp.
2132 2004-09-21 David Ponce <david@dponce.com>
2134 * NEWS: Add note about Elisp parser improvement.
2136 * bovine/semantic-el.el (semantic-emacs-lisp-lexer): Move.
2137 (semantic-elisp-reuse-form-parser): New function.
2138 (semantic-elisp-setup-form-parser): New function.
2139 (semantic-elisp-use-read): Use it.
2140 (eval-and-compile, eval-when-compile, defun, defun*, defsubst)
2141 (defmacro, define-overload, defvar, defconst, defcustom)
2142 (defface, defimage, autoload, defmethod, defgeneric, defadvice)
2143 (defclass, defstruct, define-lex)
2144 (define-mode-overload-implementation, define-mode-local-override)
2145 (defvar-mode-local, require, provide): Setup form parsers.
2147 2004-09-15 David Ponce <david@dponce.com>
2149 * wisent/wisent-python.el (wisent-python-forward-line):
2150 Don't use forward-sexp to skip
2151 comment at end of line.
2152 (wisent-python-end-of-block): Include final newline in block.
2154 * wisent/wisent-python.wy:
2155 Reorder and cleanup token declarations to avoid warnings.
2156 Auto-generate symbol, keyword, number, block and punctuation
2158 Use %keyword to declare keywords.
2159 (class_declaration): Fix TYPE-TAG production.
2160 (paren_class_list): Return a list of class names.
2161 (paren_class): Handle dotted name.
2163 * wisent/wisent-python.el: Remove obsolete code and update comments.
2164 Use variable and function names consistent with the library name.
2165 Cleanup and improve lexical analysis code.
2167 (wisent-python-explicit-line-continuation): Remove.
2168 (wisent-python-string-re): Update from python 2.3 specs.
2169 (wisent-python-indent-stack): Rename from
2170 wisent-python-lexer-indent-stack. Move. All uses changed.
2171 (semantic-lex-python-pop-indent-stack): Remove.
2172 (wisent-python-implicit-line-joining-p)
2173 (wisent-python-forward-string)
2174 (wisent-python-forward-line-skip-indented)
2175 (wisent-python-end-of-block): New functions.
2176 (wisent-python-scan-lists, scan-lists): Remove.
2177 (wisent-python-forward-line): Rename from python-next-line.
2178 Simplify and make more robust.
2179 (wisent-python-lex-beginning-of-line): Rename from
2180 semantic-lex-python-beginning-of-line. All uses changed.
2181 Simplify with use of above new functions. Don't hard code too
2183 (semantic-lex-python-reset-continued-line): Remove.
2184 (wisent-python-lex-end-of-line): Rename from
2185 semantic-lex-python-newline. All uses changed. Does nothing if
2186 implicit line joining. No more handle what remains in the
2188 (wisent-python-lex-string): Rename from
2189 semantic-lex-python-string. All uses changed. Simplify with use
2190 of wisent-python-forward-string.
2191 (wisent-python-lex-ignore-backslash): Rename from
2192 semantic-lex-python-charquote, simplify. All uses changed.
2193 (semantic-lex-python-symbol, semantic-lex-python-number)
2194 (semantic-lex-python-blocks): Remove. Auto-generate.
2195 (wisent-python-lexer): Rename from semantic-python-lexer. All
2196 uses changed. Use updated and auto-generated analyzers.
2197 (semantic-parse-region): Remove.
2198 (semantic-lex): Override in python-mode to handle the indentation
2200 (semantic-get-local-variables): Move.
2201 (wisent-python-default-setup): Set parse-sexp-ignore-comments to
2202 non-nil. Remove unnecessary code.
2203 (wisent-python-lex-buffer): Code cleanup.
2205 * semantic-lex.el (semantic-lex-init): Code cleanup.
2206 (semantic-lex-unterminated-syntax-protection): Don't catch errors
2207 when debug-on-error is set.
2208 (semantic-lex-catch-errors): Code cleanup. Print the symbol on
2209 which lexical analysis failed.
2211 * semantic-idle.el (semantic-idle-core-handler):
2212 Ignore non file buffers. Check here
2213 if the idle scheduler is enabled in current buffer. Use dolist
2214 and with-current-buffer to simplify the code.
2215 (semantic-idle-scheduler-function): Let a chance to process other
2216 buffers even if the idle scheduler is not enabled in current
2217 buffer. Ensure to always resume the idle scheduler timer. Don't
2218 do unnecessary save match data.
2220 * semantic.el (semantic-new-buffer-fcn):
2221 Set semantic-new-buffer-fcn-was-run to
2222 non-nil before calling semantic functions. Remove unnecessary
2223 call to semantic-parse-tree-set-needs-rebuild.
2224 (semantic-parse-region-default): Fix messages. Remove obsolete
2227 2004-09-08 David Ponce <david@dponce.com>
2229 * bovine/semantic-c.el (semantic-tag-abstract-p):
2230 Also check for virtual modifier in
2233 2004-08-25 David Ponce <david@dponce.com>
2235 * wisent/wisent-java.wy (prologue): Define `wisent-java-wy--anons'.
2236 (field_declaration): Include definition of anonymous classes.
2237 (variable_declarator): Handle definition of anonymous classes.
2238 (class_instance_creation_expression): Ditto.
2240 * wisent/wisent-java.el (wisent-java-default-setup): Setup
2241 `semantic-imenu-expandable-tag-classes' to expand types and
2244 * doc/user-guide.texi (imenu):
2245 Document `semantic-imenu-expandable-tag-classes' in place
2246 of `semantic-imenu-expandable-tag-class'.
2248 * semantic-texi.el (semantic-default-texi-setup): Update to use
2249 `semantic-imenu-expandable-tag-classes'.
2251 * semantic-imenu.el (semantic-imenu-expandable-tag-classes):
2253 `semantic-imenu-expandable-tag-class'. Accept a list of tag
2254 classes. All uses changed.
2256 * semanticdb.el (semanticdb-file-table-object):
2257 After loading a file, ensure that
2258 the returned DB table contains tags.
2260 2004-08-09 Eric M. Ludlam <zappo@gnu.org>
2262 * semanticdb-mk.el (toplevel): Remove "compare" message.
2263 Add better per-file message reporting number of toplevel tags.
2264 Fix bug when jumping between subdirectories.
2266 2004-08-04 Eric M. Ludlam <zappo@gnu.org>
2268 * wisent/wisent-python.el (python-next-line):
2269 Fix hang on unterminated lists.
2271 2004-08-03 Eric M. Ludlam <zappo@gnu.org>
2273 * semantic-complete.el (initialize-instance):
2274 Make tooltip loading safe.
2276 * semanticdb-mk.el (semanticdb-mk-find-eieio): Deleted.
2277 ("Old setup code"): Replaced with
2278 ("New setup code"): load cedet.el from the usual place for a full seutp.
2279 ("Argument parser"): Stop if there are no files found.
2281 * semanticdb.sh: Add smarter auto-path setup.
2283 2004-07-30 Eric M. Ludlam <zappo@gnu.org>
2286 (semantic-html-set-endpoint, semantic-html-recursive-combobulate-list):
2287 Fix locatins still refering to "texinfo" files.
2289 * semanticdb-find.el (semanticdb-find-translate-path-brutish-default):
2290 Update code comments.
2292 2004-07-29 Eric M. Ludlam <zappo@gnu.org>
2294 * semantic-fw.el (semantic-fw-font-lock-keywords):
2295 Made Emacs 21.2 safe.
2297 2004-07-26 David Ponce <david@dponce.com>
2299 * doc/grammar-fw.texi (Editing grammars):
2300 Document `semantic-grammar-insert-keyword'.
2302 2004-07-23 Eric M. Ludlam <zappo@gnu.org>
2304 * bovine/semantic-c.el (semantic-tag-abstract-p):
2305 Fix bug referencing cs.
2307 2004-07-21 Eric M. Ludlam <zappo@gnu.org>
2309 * NEWS: Added `semantic-decoration-mode'.
2311 2004-07-20 Eric M. Ludlam <zappo@gnu.org>
2313 * wisent/Makefile (VERSION): Updated to beta3
2315 * tests/test.cpp (method1_for_class3, method4_for_class3):
2316 Various completion tests.
2318 * tests/test.c (funcptr): Test function pointer parsing.
2320 * tests/scopetest.cpp (amethod2):
2321 Added some entries to test completion.
2323 * tests/Makefile, doc/Makefile, bovine/Makefile, Makefile (VERSION):
2326 * semantic-fw.el (semantic-compile-warn):
2327 Make sure this alias is evaluated at compile time.
2329 * semantic-grammar.el (semantic-grammar-map, semantic-grammar-menu):
2331 semantic-grammar-insert-keyword function.
2332 (semantic-grammar-insert-keyword): New function.
2334 * semantic.el (semantic-version): Version change.
2336 * Project.ede ("semantic"): Version chane.
2338 * semanticdb-find.el (semanticdb-find-result-test): new function
2340 2004-07-16 Eric M. Ludlam <zappo@gnu.org>
2342 * semantic-complete.el (semantic-complete-default-to-tag):
2343 Extract tag from find-result-nth
2345 (semantic-collector-abstract): Change datatype of
2346 last-all-completions to allow nil.
2347 (semantic-collector-calculate-completions-raw): Break it up so
2348 it is easier to debug.
2349 (semantic-collector-calculate-completions): Only calculate
2350 last-completion slot if there is a value for `completion'.
2352 2004-07-15 Eric M. Ludlam <zappo@gnu.org>
2354 * semanticdb-file.el (semanticdb-persistent-path): doc fix.
2356 * semantic-ctxt.el (semantic-get-local-variables-default):
2357 Do nothing if there is no
2360 * semantic-html.el (html-helper-mode):
2361 Make this a child mode of html-mode.
2363 * semantic.el (semantic-parse-region-default):
2364 Do nothing if the parse table has a
2367 * bovine/semantic-c.el: (semantic-tag-expand-function)
2368 (semantic-dependency-include-path)
2369 (semantic-orphaned-member-metaparent-type)
2370 (semantic-symbol->name-assoc-list)
2371 (semantic-symbol->name-assoc-list-for-type-parts)
2372 (imenu-create-index-function)
2373 (semantic-type-relation-separator-character)
2374 (semantic-command-separation-character)
2375 (document-comment-start)
2376 (document-comment-line-prefix)
2377 (document-comment-end)
2378 (senator-step-at-tag-classes): New mode local variables
2379 (semantic-default-c-setup): Removed above from hook.
2381 * bovine/semantic-c.el:
2382 (semantic-format-tag-name, semantic-tag-protection)
2383 (semantic-tag-components, semantic-format-tag-type)
2384 (semantic-format-tag-concise-prototype)
2385 (semantic-format-tag-uml-prototype, semantic-tag-abstract-p)
2386 (semantic-analyze-dereference-metatype)
2387 (semantic-analyze-type-constants): Converted from semantic-c-* to
2388 methods created with `define-mode-local-override'.
2389 (semantic-default-c-setup): Remove old setup code
2390 (c++-mode): Declair as a mode-local child of c-mode.
2392 2004-07-13 Eric M. Ludlam <zappo@gnu.org>
2394 * INSTALL: Fix numbering issue.
2396 2004-06-29 David Ponce <david@dponce.com>
2398 * semantic-edit.el (working): Require.
2399 (semantic-parse-changes-failed): Use `working-temp-message'.
2400 (semantic-edits-incremental-fail)
2401 (semantic-edits-incremental-parser)
2402 (semantic-edits-incremental-parser-1): Likewise.
2404 * bovine/semantic-c.el (semantic-c-end-of-macro): New function.
2405 (semantic-lex-c-if): Use it.
2407 * semantic-decorate-mode.el (semantic-decoration-mode):
2408 Add autoload cookie.
2410 2004-06-28 David Ponce <david@dponce.com>
2412 * semantic-decorate-mode.el (semantic-decoration-styles):
2413 Remove duplicate definition.
2415 2004-06-28 Eric M. Ludlam <zappo@gnu.org>
2417 * semantic-idle.el: (global-semantic-idle-scheduler-mode)
2418 (define-semantic-idle-service): Added to semantic-modes group.
2420 * semantic-decorate-mode.el (semantic-decoration-styles): Moved
2421 (global-semantic-decoration-mode): Add to semantic-modes group.
2422 (define-semantic-decoration-style): Do not eval-and-compile in the macro.
2424 * semantic-util-modes.el (semantic-modes): New customization group
2425 (global-semantic-highlight-edits-mode)
2426 (global-semantic-show-unmatched-syntax-mode)
2427 (global-semantic-stickyfunc-mode): Add to new customization group.
2429 2004-06-28 David Ponce <david@dponce.com>
2431 * wisent/wisent-python.el (semantic-get-local-variables): New override.
2433 * semantic-decorate-mode.el (semantic-decoration-styles):
2434 Move before first use and make
2435 available at compilation time.
2437 2004-06-24 David Ponce <david@dponce.com>
2439 * bovine/Makefile, doc/Makefile, Makefile, tests/Makefile, wisent/Makefile:
2442 * semantic.el (semantic-new-buffer-fcn):
2443 Don't setup semantic again if buffer is
2444 already semantic-enabled.
2446 2004-06-24 Eric M. Ludlam <zappo@gnu.org>
2448 * semantic-load.el: (semantic-load-enable-minimum-features)
2449 (semantic-load-enable-code-helpers)
2450 (semantic-load-enable-excessive-code-helpers)
2451 (semantic-load-enable-semantic-debugging-helpers): New functions
2452 toplevel: Remove old enabling code, replace with call
2455 * Makefile (tools_LISP): Includese semantic-decorate-mode.el
2457 * Project.ede: ("tools") Added semantic-decoration-mode.el
2459 * semantic-format.el (semantic-format-tag-custom-list):
2460 Add autoload cookie.
2462 * bovine/semantic-el.el (semantic-format-tag-abbreviate):
2463 Remove trailing space from name.
2464 (semantic-format-tag-prototype): If there are no arguments, remove
2465 trailing space from name.
2467 * semantic-complete.el (semantic-complete-inline-analyzer):
2468 Enable inline completion if there
2469 is only one match, and that match is not the same as the input symbol.
2471 2004-06-22 David Ponce <david@dponce.com>
2473 * semantic-fw.el (defvar-mode-local, defconst-mode-local):
2475 lisp-indent-function property now in common/mode-local.el.
2477 * semantic-fw.el (semantic-fw-font-lock-keywords): Add
2478 `define-semantic-decoration-style'.
2480 2004-06-21 David Ponce <david@dponce.com>
2482 * semantic-fw.el (semantic-compile-warn): New function.
2483 (semantic-alias-obsolete): Use it to issue less intrusive
2485 (semantic-varalias-obsolete): Ditto.
2487 2004-06-19 Eric M. Ludlam <zappo@gnu.org>
2489 * semantic-util-modes.el:
2490 Note: The functionality moved to semantic-decoration-mode:
2492 (global-semantic-show-tag-boundaries-mode)
2493 (semantic-show-tag-boundaries-setup)
2494 (semantic-show-tag-boundaries-mode)
2495 (semantic-tag-boundary-p-default)
2496 (semantic-tag-boundary-overlay-p)
2497 (semantic-stb-flush-rogue-boundaries)
2498 (semantic-stb-clear-boundaries)
2499 (semantic-stb-after-full-reparse-hook)
2500 (semantic-stb-reparse-hook)
2501 (semantic-stb-highlight-tag-line1)
2502 (global-semantic-highlight-by-attribute-mode)
2503 (semantic-highlight-by-attribute-setup)
2504 (semantic-highlight-by-attribute-mode)
2505 (semantic-hba-clear-highlighting)
2506 (semantic-hba-reparse-hook)
2507 (semantic-hba-highlight-tag): Deleted functions
2508 (semantic-show-tag-boundaries-mode)
2509 (semantic-highlight-by-attribute-mode): Deleted variables
2510 (global-semantic-show-tag-boundaries-mode)
2511 (semantic-show-tag-boundaries-hook)
2512 (global-semantic-highlight-by-attribute-mode)
2513 (semantic-highlight-by-attribute-hook)
2514 (semantic-highlight-attribute-alist): Deleted custom vars.
2516 * senator.el (senator-register-custom-menu): New function.
2517 (senator-register-mode-menu-entry): Add `custom' argument.
2518 Add customization menu entries to the dynamic list.
2519 (senator-build-mode-sub-menu): Support Customization menu entries.
2520 ("Senator"): Add customize group entry.
2521 ("Highlight changes", "Highlight Unmatched Syntax"): Add customize face entry
2522 ("Idle Scheduler"): Add entry to customize two variables.
2523 ("Tag Decoration"): New entry.
2524 ("Show Tag Boundaries", "Highlight Tags by attribute"): Deleted.
2526 * doc/lang-support-guide.texi (Parsing a language file):
2527 Add space between paragraphs
2529 * semantic-decorate-mode.el (semantic-decorate-add-decorations):
2530 Support invalid entries in the
2532 (semantic-decoration-styles): Enable customization.
2534 2004-06-19 David Ponce <david@dponce.com>
2536 * doc/lang-support-guide.texi (Parsing a language file): Doc for
2537 `semantic-fetch-available-tags'.
2539 2004-06-18 David Ponce <david@dponce.com>
2541 * semantic-decorate-mode.el (semantic-decoration-mode-setup): Use
2542 `semantic-fetch-available-tags' to postpone parse till after the
2543 buffer is displayed.
2545 * semantic.el (semantic-fetch-available-tags): New function.
2547 2004-06-17 David Ponce <david@dponce.com>
2549 * semantic-decorate-mode.el (semantic-decorate, cl): Require.
2550 (semantic-decorate-style-predicate)
2551 (semantic-decorate-style-highlighter)
2552 (semantic-decoration-p)
2553 (semantic-decoration-set-property)
2554 (semantic-decoration-get-property)
2555 (semantic-decoration-set-face)
2556 (semantic-decoration-face)
2557 (semantic-decoration-set-priority)
2558 (semantic-decoration-priority)
2559 (semantic-decoration-move)
2560 (semantic-decorate-tag)
2561 (semantic-decorate-clear-tag)
2562 (semantic-decorate-tag-decoration)
2563 (semantic-decorate-flush-decorations)
2564 (semantic-decorate-clear-decorations)
2565 (semantic-decorate-add-decorations)
2566 (semantic-decorate-tags-after-full-reparse)
2567 (semantic-decorate-tags-after-partial-reparse): New functions.
2568 (semantic-decoration-styles): New variable.
2569 (global-semantic-decoration-mode): Doc fix.
2570 (semantic-decoration-mode-hook): Rename from
2571 `semantic-decoration-hook'. Callers updated.
2572 (semantic-decoration-mode-setup): Rename from
2573 `semantic-decoration-setup'. Callers updated. Use new functions.
2574 (semantic-decoration-mode): Doc fix.
2575 (semantic-decorate-tag-secondary-overlay-p)
2576 (semantic-dso-flush-rogue-overlays)
2577 (semantic-dso-clear)
2578 (semantic-dso-after-full-reparse-hook)
2579 (semantic-decorate-reparse-hook)
2580 (semantic-decoration-primary-alist)
2581 (semantic-decoration-secondary-alist)
2582 (define-semantic-decoration-on-primary-overlay)
2583 (define-semantic-decoration-on-secondary-overlay): Remove.
2584 (semantic-toggle-decoration-style): New command.
2585 (define-semantic-decoration-style): New macro.
2586 (semantic-tag-boundary-face): Doc fix.
2587 (semantic-tag-boundary-p-default): Doc fix and minor code change.
2588 (semantic-tag-boundary-highlight-default): Update doc and code.
2589 (semantic-decoration-on-private-members)
2590 (semantic-decoration-on-private-members-face)
2591 (semantic-decoration-on-private-members-p-default)
2592 (semantic-decoration-on-private-members-highlight-default) Rename
2593 from `semantic-decoration-private-*'. Update doc and code.
2594 (semantic-decoration-on-protected-members)
2595 (semantic-decoration-on-protected-members-face)
2596 (semantic-decoration-on-protected-members-p-default)
2597 (semantic-decoration-on-protected-members-highlight-default):
2598 Rename from `semantic-decoration-protected-*'. Update doc and
2601 2004-06-15 David Ponce <david@dponce.com>
2603 * wisent/wisent-java.wy (formal_parameter): Fix :typemodifiers value.
2604 (local_variable_declaration): Likewise.
2606 2004-06-14 David Ponce <david@dponce.com>
2608 * semantic-decorate-mode.el (global-semantic-decoration-mode):
2611 2004-06-13 Eric M. Ludlam <zappo@gnu.org>
2613 * semantic-decorate-mode.el:
2614 Define a major mode for managing tag decorations.
2615 Define a way for creating decoration styles on the primary overlay.
2616 Define a way for creating decoration styles using a secondary overlay.
2617 Define replacements for defaults in semantic-higlight-by-attribute-mode
2618 and a replacement for semantic-show-tag-boundaries-mode.
2620 2004-06-12 David Ponce <david@dponce.com>
2622 * semantic-edit.el (semantic-edits-incremental-parser):
2623 Schedule a full re-parse
2624 on error, when `debug-on-error' is not set.
2626 2004-06-11 David Ponce <david@dponce.com>
2628 * senator.el (senator-minor-mode-setup):
2629 Remove unnecessary `condition-case'.
2631 2004-06-10 Eric M. Ludlam <zappo@gnu.org>
2633 * senator.el (senator-minor-mode-setup):
2634 Do not parse buffer when enabling senator.
2636 * semantic-util-modes.el (semantic-show-unmatched-syntax-mode-setup):
2637 When enabling the mode,
2638 if the syntax is out of date, do not immediatly display.
2639 (semantic-show-tag-boundaries-mode): Doc fix
2640 (semantic-highlight-by-attribute-mode): Doc fix
2642 * semantic-util-modes.el: Remove History: comment block.
2644 * semantic-idle.el (semantic-idle-scheduler-function):
2645 Wrap body in `save-match-data'
2647 2004-06-09 David Ponce <david@dponce.com>
2649 * semantic-edit.el (semantic-edits-change-between-tokens):
2650 Fix error on change after
2652 (semantic-parse-changes-failed): Use `throw' instead of `signal'.
2653 (semantic-parse-changes-failed): Remove error condition.
2654 (semantic-edits-incremental-parser-1): Rename from
2655 `semantic-edits-incremental-parser'. Remove `condition-case'.
2656 (semantic-edits-incremental-parser): Call it safely.
2658 * semantic-edit.el (semantic-parse-changes-failed):
2659 New error condition.
2660 (semantic-parse-changes-failed): New function.
2661 (semantic-edits-incremental-parser): Use it.
2663 2004-06-08 David Ponce <david@dponce.com>
2665 * semantic-grammar.el (semantic-grammar-create-package):
2666 Use Unix EOLs, so that the
2667 generated file is portable to all platforms.
2669 2004-06-06 David Ponce <david@dponce.com>
2671 * semantic-idle.el (semantic-idle-summary):
2672 Move (require 'eldoc), which always
2673 returns non-nil, outside of the `or' condition.
2675 2004-05-26 David Ponce <david@dponce.com>
2677 * wisent/wisent-python.wy (suite): Fix last change.
2679 2004-05-25 David Ponce <david@dponce.com>
2681 * bovine/Makefile, tests/Makefile, wisent/Makefile, Makefile:
2682 Re-generated to start Emacs with --no-site-file.
2684 * semantic-ede-grammar.el (semantic-ede-grammar-compiler-wisent):
2686 --no-site-file option instead of -q.
2687 (semantic-ede-grammar-compiler-bovine): Likewise.
2689 2004-05-22 Eric M. Ludlam <zappo@gnu.org>
2691 * wisent/wisent-python.wy (suite):
2692 Do not reverse the list of items from the indented block.
2694 * semantic-idle.el (define-semantic-idle-service): Comment fixes.
2695 (semantic-idle-summary): Add require for eldoc in this function.
2697 * semantic-util-modes.el: (semantic-highlight-attribute-face-private)
2698 (semantic-highlight-attibute-face-protected): Convert light background
2699 from an overline to a background color.
2701 2004-05-12 David Ponce <david@dponce.com>
2703 * semantic.el: (semantic-symbol->name-assoc-list-for-type-parts)
2704 (semantic-expand-nonterminal, semantic--buffer-cache)
2705 (semantic-edits-are-safe, semantic--before-fetch-tags-hook)
2706 (semantic-after-toplevel-bovinate-hook)
2707 (semantic-after-toplevel-cache-change-hook)
2708 (semantic-init-db-hooks, semantic-parse-stream)
2709 (semantic-parse-region, semantic-parse-region-default)
2710 (semantic-clear-toplevel-cache, semantic-working-type)
2711 (semantic-bovinate-from-nonterminal): Doc fix.
2712 (bovinate): Fix message.
2714 2004-05-08 David Ponce <david@dponce.com>
2716 * semantic.el (semantic-inhibit-functions): New variable.
2717 (semantic-new-buffer-fcn): Use it.
2719 2004-04-29 David Ponce <david@dponce.com>
2721 * semantic-tag-ls.el (semantic-tag-abstract-p):
2722 Declare with `define-overload'.
2723 (semantic-tag-leaf-p): Likewise.
2724 (semantic-nonterminal-abstract): Make obsolete overload. Fix alias.
2725 (semantic-nonterminal-leaf): Likewise.
2726 (semantic-tag-abstract-p-default)
2727 (semantic-tag-leaf-p-default)
2728 (semantic-tag-static-p-default): Doc fix.
2729 (semantic-nonterminal-abstract-default)
2730 (semantic-nonterminal-leaf)
2731 (semantic-nonterminal-leaf-default)
2732 (semantic-nonterminal-static-default): Fix alias.
2734 * semantic-tag-file.el (semantic-prototype-file):
2735 Declare with `define-overload'.
2738 (semantic-fetch-overload, define-mode-overload-implementation)
2739 (semantic-with-mode-bindings, define-semantic-child-mode): Mark
2741 (semantic-fw-font-lock-keywords): Don't highlight them.
2743 * semantic-analyze.el (semantic-analyze-dereference-metatype):
2746 (semantic-analyze-type-constants): Likewise.
2748 * semantic-grammar.el: Rename `define-mode-overload-implementation' to
2749 `define-mode-local-override', and `semantic-with-mode-bindings' to
2752 * bovine/semantic-el.el:
2753 Rename `define-mode-overload-implementation' to
2754 `define-mode-local-override', and `define-semantic-child-mode' to
2755 `define-child-mode'.
2757 * bovine/semantic-java.el, bovine/semantic-make.el, bovine/semantic-scm.el, wisent/wisent-java-tags.el, wisent/wisent-java.el, wisent/wisent-python.el, semantic-html.el, semantic-texi.el, semanticdb-el.el:
2758 Rename `define-mode-overload-implementation' to
2759 `define-mode-local-override'.
2761 2004-04-28 David Ponce <david@dponce.com>
2763 * bovine/semantic-el.el (semantic-emacs-lisp-overridable-doc): Use
2764 `overload-docstring-extension'.
2765 (semantic-documentation-for-tag): Simplify.
2766 (semantic-insert-foreign-token): Rename to...
2767 (semantic-insert-foreign-tag): The right name.
2769 * senator.el (senator-insert-foreign-tag-default): Rename to...
2770 (semantic-insert-foreign-tag-default): Doc fix.
2771 (senator-insert-foreign-tag): Rename to...
2772 (semantic-insert-foreign-tag): Declare with
2773 `define-overload'. Doc fix. Update references.
2774 (semantic-insert-foreign-token): Declare obsolete overload.
2776 * semantic-texi.el (semantic-texi-expand-tag):
2777 Use `semantic-tag-components'.
2778 (semantic-sb-tag-children-to-expand): Likewise.
2779 (semantic-texi-components): Replace by...
2780 (semantic-tag-components): New mode local overload.
2781 (semantic-texi-insert-foreign-tag): Declare as mode local
2783 (semantic-default-texi-setup): Don't install overrides here.
2785 * semantic-tag-ls.el (semantic-tag-protection):
2786 Declare with `define-overload'.
2787 (semantic-tag-full-name): Likewise.
2788 (semantic-nonterminal-protection): Declare obsolete overload.
2789 (semantic-nonterminal-full-name): Likewise.
2791 * semantic-tag-file.el (semantic-go-to-tag):
2792 Declare with `define-overload'.
2793 (semantic-dependency-tag-file): Likewise.
2794 (semantic-find-nonterminal): Declare obsolete overload.
2795 (semantic-find-dependency): Likewise.
2797 * semantic-idle.el (semantic-eldoc-current-symbol-info): Use
2798 `make-obsolete-overload'.
2800 * semantic-ia-sb.el (semantic-ia-sb-complete): Fix comment.
2802 * semantic-fw.el (mode-local): Require.
2803 (semantic-overload-symbol-from-function): Move.
2804 (semantic-alias-obsolete): Detect and make obsolete overload too.
2805 (semantic-make-obsolete-overload)
2806 (semantic-obsolete-overload): Remove.
2807 (semantic-map-buffers): Use `mode-local-map-file-buffers'.
2808 (semantic-map-mode-buffers): Alias of `mode-local-map-mode-buffers'.
2809 (semantic-set-parent-mode, semantic-get-parent-mode)
2810 (semantic-symbol-table, semantic-bindings-active-mode)
2811 (semantic-new-bindings, semantic-bind, semantic-symbol)
2812 (semantic-symbol-value, semantic-set-local-variable)
2813 (semantic-activate-mode-bindings)
2814 (semantic-deactivate-mode-bindings): Remove.
2815 (semantic-fetch-overload): Alias of `fetch-overload'.
2816 (define-mode-overload-implementation): Alias of
2817 `define-mode-local-override'.
2818 (semantic-with-mode-bindings): Alias of `with-mode-local'.
2819 (define-semantic-child-mode): Alias of `define-child-mode'.
2820 (defvar-mode-local, defconst-mode-local)
2821 (define-overload): Now in mode-local.
2822 (semantic-install-function-overrides): Use `mode-local-bind'.
2823 (semantic--override, semantic--expand-overrides)
2824 (semantic--overload-body, semantic-function-overload-p)
2825 (semantic-overload-docstring-extension)
2826 (semantic-augment-function-help, describe-function)
2827 (semantic-print-binding, semantic-print-bindings)
2828 (semantic-describe-bindings-2, semantic-describe-bindings-1)
2829 (semantic-describe-buffer-bindings)
2830 (semantic-describe-mode-bindings): Remove.
2831 (semantic-fw-font-lock-keywords, edebug-setup-hook): Update.
2833 * semantic.el (semantic-new-buffer-fcn): Remove call to
2834 `semantic-activate-mode-bindings'.
2835 (mode-local-init-hook): Add above to it.
2836 (semantic-changed-mode-buffers)
2837 (semantic-post-change-major-mode-function)
2838 (semantic-change-major-mode-hook-function): Remove.
2840 * semantic-doc.el (semantic-documentation-for-tag):
2841 Declare with `define-overload'.
2842 (semantic-find-documentation): Declare obsolete overload.
2844 * semanticdb-el.el (semanticdb-equivalent-mode):
2845 Use `mode-local-active-mode'.
2847 * semantic-ctxt.el (semantic-up-context):
2848 Declare with `define-overload'.
2849 (semantic-get-local-variables): Likewise.
2850 (semantic-get-local-variables-default): Remove unnecessary
2851 optional argument. Doc fix.
2852 (semantic-get-local-arguments): Declare with `define-overload'.
2853 Save excursion. Improve error message.
2854 (semantic-get-local-arguments-default): Remove unnecessary
2855 optional argument. Doc fix.
2857 * semantic-analyze.el (semantic-analyze-current-context): Declare with
2859 (semantic-analyze-possible-completions): Likewise.
2861 2004-04-23 David Ponce <david@dponce.com>
2863 * semantic-fw.el (semantic-current-bindings): Remove.
2864 (semantic-new-bindings): Just return an empty symbol table.
2865 (semantic-bind): Updated.
2866 (semantic-symbol): Lookup for symbol into buffer local and/or
2867 hierarchy of modes bindings.
2868 (semantic-set-local-variable): Move definition.
2869 (define-mode-overload-implementation): Use
2870 `semantic-overload-symbol-from-function'. Doc fix.
2871 (semantic-with-mode-bindings): Doc fix.
2872 (semantic-print-bindings, semantic-print-binding)
2873 (semantic-describe-bindings-1, semantic-describe-bindings-2)
2874 (semantic-describe-buffer-bindings): New functions.
2875 (semantic-describe-mode-bindings): New commands.
2877 2004-04-20 David Ponce <david@dponce.com>
2879 * semantic-idle.el (semantic-idle-summary-current-symbol-info):
2881 (eldoc-current-symbol-info): Obsoleted by above overload.
2882 (semantic-idle-summary): Use above new overload.
2884 * semantic-fw.el: (semantic-make-obsolete-overload)
2885 (semantic-obsolete-overload): New function.
2886 (semantic-fetch-overload): Handle obsoleted overloads.
2887 (semantic--override, semantic--expand-overrides)
2888 (semantic--overload-body): New functions.
2889 (define-overload): Use them.
2890 (semantic-fw-font-lock-keywords): Add
2891 `semantic-make-obsolete-overload'.
2893 2004-04-13 David Ponce <david@dponce.com>
2895 * doc/lang-support-guide.texi, doc/semantic.texi, doc/user-guide.texi, doc/wisent.texi, doc/bovine.texi, doc/grammar-fw.texi, doc/app-dev-guide.texi:
2896 Add a table of contents.
2898 2004-04-11 Eric M. Ludlam <zappo@gnu.org>
2900 * Makefile (dist): Add autoloads
2902 * semanticdb-system.el (semanticdb-load-system-database):
2903 Fix variable name typo.
2905 * wisent/wisent.el (wisent-production-bounds): New function.
2907 2004-04-06 Eric M. Ludlam <zappo@gnu.org>
2909 * wisent/wisent-comp.el (wisent-check-$N):
2910 Return non-nil for valid $regionN symbols.
2911 Improve warning message.
2912 (wisent-semantic-action): Only bind referenced $regionN symbols.
2913 Compute $region directly from stack. Avoid to generate
2916 * semantic-lex.el (semantic-lex-push-token):
2917 Do not evaluate 'token twice.
2919 2004-04-06 David Ponce <david@dponce.com>
2921 * wisent/wisent.el (wisent-production-bounds): New function.
2923 * wisent/wisent-comp.el (wisent-check-$N):
2924 Return non-nil for valid $regionN symbols.
2925 Improve warning message.
2926 (wisent-semantic-action): Only bind referenced $regionN symbols.
2927 Compute $region directly from stack. Avoid to generate
2930 * semantic-lex.el (semantic-lex-push-token): Don't eval TOKEN twice.
2932 2004-04-06 Eric M. Ludlam <zappo@gnu.org>
2934 * doc/Makefile (clean): Clean all info files.
2936 * Makefile (dist): Distribute the autoload file
2938 2004-04-05 Eric M. Ludlam <zappo@gnu.org>
2940 * bovine/semantic-c.el (semantic-default-c-setup):
2941 Add modified syntax entries for < > which
2942 are list constituents in newer versions of C++ mode.
2944 * bovine/semantic-c.el (semantic-default-c-setup):
2945 New versions of c++-mode declare < and >
2946 to make a list. Disable it.
2948 2004-04-01 Eric M. Ludlam <zappo@gnu.org>
2950 * semantic.el (semantic-bovinate-toplevel):
2951 New function for backward compat.
2953 * bovine/semantic-make.el (semantic-make-expand-tag):
2954 Expand functions and includes the same way.
2956 2004-03-31 David Ponce <david@dponce.com>
2958 * bovine/semantic-make.el (semantic-make-expand-tag):
2959 Fix according to latest grammar
2962 2004-03-30 Eric M. Ludlam <zappo@gnu.org>
2964 * doc/Makefile (Documentation_TEXINFOS): Remove duplicate semantic.texi
2965 (all): New names for some info names.
2966 (semantic-user.info, semantic-appdev.info, semantic-langdev.info):
2968 (clean): Update info garbage pattern.
2969 (dist): New names for some info names.
2971 * doc/Project.ede (Documentation): Remove second copy of semantic.texi
2973 * doc/Makefile (Documentation_TEXINFOS):
2974 Remove second copy of semantic.texi
2976 * doc/Project.ede (Documentation): Remove second copy of semantic.texi
2978 * wisent/wisent.el, wisent/wisent-comp.el (wisent-verbose-flag):
2981 * doc/Makefile (images_MISC): New var
2983 (dist): Include images.
2985 * doc/Project.ede ("images"): new target.
2987 2004-03-30 David Ponce <david@dponce.com>
2989 * wisent/wisent.el (wisent-parse-verbose-flag): Add autoload cookie.
2991 * wisent/wisent-comp.el (wisent-verbose-flag): Add autoload cookie.
2993 * doc/Makefile: Rebuild.
2995 * doc/Project.ede ("images"): New target.
2997 2004-03-28 David Ponce <david@dponce.com>
2999 * semantic-grammar.el (semantic-grammar-mode):
3000 Merge `set' and `make-local-variable'.
3001 Make `semantic-format-face-alist' local to buffer.
3003 * wisent/Makefile: Rebuild.
3005 * wisent/Project.ede (taggers): Rename target to "wy".
3007 * wisent/wisent.el ($region, $nterm, $action): Initialize to nil to fix
3008 byte-compiler warnings in dependent libraries.
3010 * semantic-util.el (semantic-file-tag-table):
3011 Remove CHECKCACHE argument.
3012 (semantic-something-to-tag-table): Fix call to above.
3014 * semantic-html.el (semantic-html-recursive-combobulate-list): Use
3015 `assoc-ignore-case'. `assoc-string' is a new function in GNU
3018 2004-03-28 Eric M. Ludlam <zappo@gnu.org>
3020 * Makefile (misc_AUX): Add renamelist.txt
3022 * Project.ede ("semantic"): Add renamelist.txt.
3024 * doc/tags.texi (Semantic Tags):
3025 Replace "bovine" type named fns with new names.
3027 * doc/lang-support-guide.texi:
3028 (Language Support Overview, Semantic Parser Structure)
3029 (Writing Lexers, Writing Parsers, Parsing a language file):
3030 (Semantic 1.4 Doc): Replace "bovine" type named fns with new names.
3032 * bovine/semantic-make.el (require):
3033 Add semantic-format and semantic-analyze
3035 * bovine/semantic-c.el (require): Add semantic-tag-ls.
3037 * semantic.el (semantic-fetch-tags): Doc fix.
3039 * semantic-ede-grammar.el (semantic-ede-grammar-compiler-class):
3042 * semantic-ctxt.el (semantic-get-local-variables): Doc fix
3044 * semantic-complete.el (semantic-displayor-show-request): Note to self.
3046 * renamelist.txt: List of all functions that have been renamed.
3048 * doc/app-dev-guide.texi (Override Methods):
3049 Removed Local Context from override methods list.
3050 (Lexical Safety): Fix ref to semantic-fetch-tags.
3051 (Blocks): Updated all deffn with automatic command.
3052 (Local Variables): same
3053 (Derived Context): same
3054 (Analysis Overview): Teaked the diagram.
3056 2004-03-26 David Ponce <david@dponce.com>
3058 * wisent/wisent-java.wy:
3059 Major revision of the grammar to support Java 1.5 specifications.
3061 * wisent/wisent-java.el: Code reordered.
3062 (wisent-java-expand-tag)
3063 (semantic-get-local-variables-java-mode): Update for new grammar.
3064 (wisent-java-init-parser-context): New function.
3065 (wisent-java-default-setup): Use it. Doc fix.
3066 (wisent-java-parse-error): Remove.
3068 2004-03-25 David Ponce <david@dponce.com>
3070 * wisent/wisent-java.wy (constructor_declaration): Fix typo.
3072 * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (constructor_declaration):
3073 Add :contructor-flag.
3075 * semantic-tag.el (semantic-tag-function-constructor-p): New function.
3077 * doc/wisent.texi (Grammar format): Fix doc and style. Update example.
3078 (Compiling a grammar): Fix doc and style.
3079 (Grammar Debugging): Ditto. Add doc for
3080 `wisent-toggle-verbose-flag'.
3081 (Understanding the automaton): Fix style.
3082 (Wisent Parsing): Fix style and doc. Add variable indexes.
3083 (Writing a lexer): Add variable index.
3084 (Actions goodies): Fix doc.
3085 (Report errors): Add doc for `wisent-message',
3086 `wisent-token-to-string', `wisent-parse-verbose-flag' and
3087 `wisent-parse-toggle-verbose-flag'.
3088 (Error recovery): Fix doc and style.
3089 (Debugging actions): Ditto.
3090 (Wisent Lex): Ditto.
3092 2004-03-24 David Ponce <david@dponce.com>
3094 * wisent/semantic-wisent.el (wisent-error-function): Default to nil.
3096 * wisent/wisent.el (wisent-char-p): Move here from wisent-comp.el.
3097 (wisent-escape-sequence-strings): New constant.
3099 (wisent-pre-parse-hook, wisent-post-parse-hook)
3100 (wisent-loop): Move declaration.
3101 (wisent-parse-verbose-flag): New variable.
3102 (wisent-item-to-string, wisent-token-to-string)
3103 (wisent-parse-toggle-verbose-flag)
3104 (wisent-message): New function.
3105 (wisent-parse-max-stack-size)
3106 (wisent-parse-max-recover)
3107 (wisent-parse-lexer-function)
3108 (wisent-parse-error-function)
3109 (wisent-input, wisent-recovering)
3110 (wisent-errok, wisent-clearin, wisent-abort)
3111 (wisent-parse-action): Doc fix.
3112 ($region, $nterm): Remove default value and doc string.
3114 (wisent-skip-token): No more inlined. Doc fix. Inform about
3116 (wisent-skip-block): Doc fix. Return nil. Inform about skipped
3118 (wisent-parse): Use `wisent-message' as default error reporting
3119 function. Report expected tokens on syntax error. Inform about
3120 skipped tokens. Simplify (and fix?) error recovery code.
3122 * wisent/wisent-comp.el (wisent-char-p): Move to from wisent.el.
3123 (wisent-context-name, wisent-reduce-grammar)
3124 (wisent-add-lookback-edge, wisent-push-token)
3125 (wisent-push-var, wisent-parse-nonterminals)
3126 (wisent-parse-grammar): Fix error messages.
3127 (wisent-struct, wisent-debug-flag, wisent-new-log-flag)
3128 (wisent-verbose-flag, wisent-single-start-flag)
3129 (wisent-append-to-log-file, wisent-TC)
3130 (wisent-initialize-closure): Doc fix.
3131 (wisent-escape-sequence-tags): Remove.
3132 (wisent-tag): Use `wisent-item-to-string' from wisent.el.
3133 (wisent-map-goto): Fix doc and error message.
3134 (wisent-defcontext 'semantic-actions): Add NAME.
3135 (wisent-token-actions): Rename to...
3136 (wisent-state-actions): Fix working message. Callers updated.
3137 (wisent-goto-actions): Fix working message.
3138 (wisent-check-$N): Include action name in message.
3139 (wisent-semantic-action-expand-body): Doc fix. Rename $N-LIST
3141 (wisent-semantic-action): Share action name with called functions.
3143 * wisent/wisent-calc.wy (line): Add error recovery rule.
3145 * wisent/wisent-calc.el (wisent-calc):
3146 Use default syntax error reporting function.
3148 2004-03-21 David Ponce <david@dponce.com>
3150 * wisent/wisent-bovine.el: Renamed to semantic-wisent.el.
3152 * wisent/Makefile: Re-generated.
3154 * wisent/Project.ede (wisent):
3155 Include semantic-wisent instead of wisent-bovine.
3156 Add speedbar to aux packages to ensure that the cedet version of
3157 speedbar will be in the load-path.
3159 * wisent/wisent-java-tags.el, wisent/wisent-python.el, semantic-grammar.el, wisent/wisent-c.el, wisent/wisent-calc.el, wisent/wisent-java.el (semantic-wisent):
3160 Require instead of wisent-bovine.
3162 * wisent/semantic-wisent.el: Renamed from wisent-bovine.el.
3164 * semantic-util-modes.el, semantic-util.el: Commentary fix.
3166 * semantic-sb.el (semantic-sb-fetch-tag-table): Doc fix.
3168 * semantic-imenu.el: (semantic-create-imenu-index)
3169 (semantic-create-imenu-index-1): Doc fix.
3171 * semantic.el (semantic-fetch-tags): Doc fix.
3172 (semantic-bovinate-toplevel): Define as alias of the above.
3173 (semantic-repeat-parse-whole-stream): Doc fix. Use tag instead
3176 2004-03-20 Eric M. Ludlam <zappo@gnu.org>
3178 * bovine/semantic-scm.el (semantic-format): Add compile time require
3180 * bovine/erlang-edoc.el (erlang-edoc--tag-name): Moved and renamed.
3181 (erlang-edoc-inline)
3182 (erlang-edoc-insert-comment-new)
3183 (erlang-edoc-insert-comment)
3184 (erlang-edoc--function-template)
3185 (erlang-edoc--record-template)
3186 (erlang-edoc--strip-arity)
3187 (erlang-edoc--type-specs)
3188 (erlang-edoc--nonterm-comment)
3189 (erlang-edoc): Use new names, such as `semantic-tag-name'.
3191 2004-03-20 David Ponce <david@dponce.com>
3193 * semantic-grammar-wy.el: Re-generated.
3195 * semantic.el (semantic-bovination-working-type): Fix typo in alias.
3197 2004-03-20 Eric M. Ludlam <zappo@gnu.org>
3199 * wisent/wisent-grammar.el: (wisent-grammar-setupcode-builder):
3200 Use new names. See semantic.el V 1.177.
3202 * wisent/wisent-calc.el (wisent-calc):
3203 Use new names. See semantic.el V 1.177.
3205 * wisent/wisent-bovine.el: (wisent-parse-stream, wisent-parse-region):
3206 Use new names. See semantic.el V 1.177.
3208 * wisent/Makefile, doc/Makefile (Makefile):
3209 Updated from new EDE sources.
3211 * bovine/semantic-el.el (semantic-toplevel-elisp-bovine-table):
3213 (semantic--elisp-parse-table): new name.
3214 (semantic-toplevel-bovine-table): Renamed mode value to
3215 (semantic--parse-table): New name.
3217 * bovine/semantic-bovine.el (semantic-bovinate-nonterminal-check-obarray):
3219 (semantic-bovinate-stream): Use new names. See semantic.el V 1.177.
3221 * bovine/Makefile (Makefile): Updated from new EDE sources.
3223 * bovine/erlang-edoc.el: (erlang-edoc-inline):
3225 * bovine/bovine-grammar.el: (bovine-grammar-setupcode-builder):
3226 Use new names. See semantic.el V 1.177.
3228 * senator.el: (senator-parse, senator-try-expand-semantic):
3229 Use new names. See semantic.el V 1.177.
3231 * semantic-util-modes.el: (semantic-show-unmatched-syntax-mode-setup)
3232 (semantic-show-tag-boundaries-setup)
3233 (semantic-highlight-by-attribute-setup):
3234 Use new names. See semantic.el V 1.177.
3236 * semantic-util.el (semantic-describe-token): Renamed to
3237 (semantic-describe-tag): New name. Also use new names.
3238 (semantic-file-tag-table)
3239 (semantic-something-to-tag-table)
3240 (semantic-recursive-find-nonterminal-by-name)
3241 (semantic-read-symbol, semantic-add-label, semantic-show-label)
3242 (semantic-hack-search, semantic-sanity-check):
3243 Use new names. See semantic.el V 1.177.
3245 * semantic-texi.el (semantic-texi-bovinate-headings): Rename to
3246 (semantic-texi-parse-headings): New name.
3247 (semantic-texi-parse-region, semantic-default-texi-setup)
3248 (semantic-texi-find-documentation)
3249 (semantic-texi-update-doc-from-texi)
3250 (semantic-texi-update-doc-from-source)
3251 (semantic-texi-goto-source): Use new names. See semantic.el V 1.177.
3253 * semantic-tag-file.el (semantic-go-to-tag): Update comments.
3255 * semantic-tag.el: (semantic--tag-unlink-cache-from-buffer)
3256 (semantic--tag-link-cache-to-buffer):
3257 Use new names. See semantic.el V 1.177.
3259 * semantic-sb.el (semantic-sb-maybe-token-to-button): Doc fix.
3260 (semantic-insert-bovine-list): Rename to
3261 (semantic-sb-insert-tag-table): New name.
3262 (semantic-fetch-dynamic-bovine): Rename to
3263 (semantic-sb-fetch-tag-table): new name.
3264 (semantic-sb-insert-details): Use new names above.
3265 (speedbar-dynamic-tags-function-list): Use new names. See semantic.el V 1.177.
3267 * semantic-imenu.el: (semantic-create-imenu-index)
3268 (which-function): Use new names. See semantic.el V 1.177.
3270 2004-03-19 Eric M. Ludlam <zappo@gnu.org>
3272 * semantic-idle.el: (semantic-idle-scheduler-refresh-tags):
3273 Use new names. See semantic.el V 1.177.
3275 * semantic-html.el: (semantic-default-html-setup):
3276 Use new names. See semantic.el V 1.177.
3278 * semantic-grammar-wy.el: (semantic-grammar-wy--install-parser):
3279 Use new names. See semantic.el V 1.177.
3281 * semantic-grammar.el (semantic-grammar-create-package):
3282 Use new names. See semantic.el V 1.177.
3284 * semantic-format.el: (semantic-test-all-format-tag-functions):
3285 Use new names. See semantic.el V 1.177.
3287 * semantic-find.el: (semantic-brute-find-tag-by-position):
3288 Use new names. See semantic.el V 1.177.
3290 * semantic-example.el (se-jump):
3291 Use new names. See semantic.el V 1.177.
3293 * semantic-debug.el (semantic-debug):
3294 Use new names. See semantic.el V 1.177.
3296 * semanticdb-search.el (semanticdb-refresh-table): Update doc string.
3298 * semanticdb-file.el (object-write):
3299 Use new names. See semantic.el V 1.177.
3302 (semanticdb-refresh-table, semanticdb-semantic-init-hook-fcn)
3303 (semanticdb-kill-hook): Use new names. See semantic.el V 1.177.
3304 (semanticdb-post-bovination): Renamed to
3305 (semantic-synchronize-table): New name.
3306 (semanticdb-hooks): Use new name above
3308 * semantic-ctxt.el: (semantic-get-local-variables)
3309 (semantic-get-local-variables-default): Use new names.
3310 See semantic.el V 1.177.
3312 * Makefile: misc_AUX: Add ONEWS.
3314 * Project.ede ("misc"): Add ONEWS.
3316 * document.el (document, document-inline, document-update-comment):
3318 See semantic.el V 1.177.
3320 * semantic-edit.el (semantic-edits-change-function-handle-changes):
3321 Move call to set that
3322 the parse tree needs update up one level.
3323 (semantic-edits-change-between-tokens)
3324 (semantic-edits-change-over-tokens, semantic-edits-incremental-parser)
3325 (semantic-edits-splice-remove, semantic-edits-splice-insert):
3326 Use new names. See semantic.el V 1.177.
3328 * semantic.el (semantic-after-toplevel-bovinate-hook):
3329 Fix obsoletion call.
3331 * semantic.el (Commentary): Rewrite last paragraph.
3332 (semantic-toplevel-bovine-table): Renamed to
3333 (semantic--parse-table): New name
3334 (semantic-toplevel-bovine-cache): Renamed to
3335 (semantic--buffer-cache): New name
3336 (semantic-edits-are-safe): Doc update
3337 (semantic-bovinate-nonterminal-check-obarray):
3338 Removed to bovine/semantic-bovine.el
3339 (semantic-before-toplevel-bovination-hook): Rename to
3340 (semantic--before-fetch-tags-hook): New name
3341 (semantic-after-toplevel-bovinate-hook): Made obsolete
3342 (semantic-bovine-unmatched-syntax-refresh-needed-p): Renamed to
3343 (semantic--umatched-syntax-needs-refresh-p): New name
3344 (semantic-new-buffer-fcn): Use new names.
3345 (semantic-rebovinate-quickly-hook): Renamed to
3346 (semantic-fetch-tags-fast): New name.
3347 (eval-defun-hooks): Use new function name above.
3348 (semantic-edebug): Doc change.
3349 (bovinate): New doc. Use new names where apropriate.
3350 (bovinate-debug): Deleted.
3351 (semantic-parse-stream): New names in doc.
3352 (semantic-bovinate-unmatched-syntax): Renamed to
3353 (semantic-unmatched-syntax-tokens): New name. Use new names.
3354 (semantic-clear-toplevel-cache): Use new names.
3355 (semantic-set-toplevel-bovine-cache): Renamed to
3356 (semantic--set-buffer-cache): New name. Use new names.
3357 (semantic-bovination-working-type): Renamed to
3358 (semantic-working-type): New name.
3359 (semantic-bovinate-toplevel): Renamed to
3360 (semantic-fetch-tags): New name.
3361 (semantic-repeat-parse-whole-stream): Use new names.
3363 * semanticdb-find.el:
3364 (semanticdb-find-translate-path-includes-default):
3365 Add `semantic-throw-on-input' while looping over include tags.
3367 2004-03-15 David Ponce <david@dponce.com>
3369 * wisent/wisent-java.wy:
3370 Re-introduce rules to fully parse language constructs.
3371 Add Java 1.4 assert statement.
3372 First attempt to produce tags for declarations inside blocks.
3374 * semantic-lex.el (semantic-lex-preset-default-types):
3375 Fix punctuation regexp.
3377 2004-03-11 David Ponce <david@dponce.com>
3380 Info style fixes. Use lowercase in @var markups. Fix doc
3381 strings with renamed tag attributes.
3383 * doc/wisent.texi (Debugging actions): Fix doc string style.
3384 (Iterative style, Bison style): Fix examples with renamed tag
3387 * doc/bovine.texi (Optional Lambda Expression):
3388 Fix renamed tag attributes.
3390 * document.el (document-massage-to-texinfo):
3391 Use lowercase in @var markup.
3393 2004-03-11 Eric M. Ludlam <zappo@gnu.org>
3395 * semantic-grammar.el:
3396 (semantic-ctxt-current-function, semantic-ctxt-current-argument):
3397 New overload implementations.
3398 (semantic-analyze-possible-completions): Use
3399 `semantic-with-mode-bindings' and recurse when in lisp code.
3401 * semantic-format.el: (semantic-test-all-format-tag-functions):
3402 Remove doc about semantic-token->text-functions.
3404 * semantic-example.el (se-show):
3405 Removed ref to semantic-token->text-functions.
3407 * semanticdb-el.el (semanticdb-equivalent-mode): Also pay attention to
3408 `semantic-bindings-active-mode'.
3409 (semanticdb-find-translate-path): New overload for
3410 `emacs-lisp-mode'. Always includes the system database
3411 since all Emacs programs also include the system database.
3413 * semantic-analyze.el (semantic-analyze-current-context):
3414 make input arg optional.
3415 (semantic-analyze-current-context-default):
3416 Calculate the assignment tag in `condition-case'.
3417 (semantic-analyze-possible-completions-default):
3418 Uniquafy by name instead of by position and name.
3420 * semantic-sb.el: (semantic-sb-tag-children-to-expand)
3421 (semantic-sb-tag-children-to-expand-default):
3422 New override fcn and the default.
3423 (semantic-sb-one-button): Use above to choose to expand a tag.
3424 (semantic-sb-insert-details): If there is no built in way
3425 to show a child details, instead ask it for it's components
3426 and do something smiple to show them.
3428 * semantic-texi.el: (semantic-sb-tag-children-to-expand)
3429 (semantic-ctxt-current-class-list)
3430 (semantic-format-tag-abbreviate, semantic-format-tag-prototype)
3431 (semantic-analyze-current-contet)
3432 (semantic-analyze-possible-completions): New overloads
3433 (semantic-texi-command-completion-list): New variable.
3435 * Makefile (Languages_LISP): Added semantic-html.el
3436 (Makefile): New friendlier message if makefile out of date.
3438 * Project.ede (Languages): Added semantic-html.el.
3440 * NEWS (Smart Completion): New section.
3441 (HTML parser): New section added.
3442 (Makefile parser): Description of smart completion.
3444 2004-03-10 David Ponce <david@dponce.com>
3446 * wisent/wisent-java.wy:
3447 (goal, class_declaration, interface_declaration)
3448 (constructor_declaration, method_declaration)
3449 (formal_parameter, field_declarations_opt, field_declaration)
3450 (abstract_method_declaration): Rename attributes.
3452 * wisent/wisent-java-tags.wy:
3453 (class_declaration, interface_declaration)
3454 (constructor_declaration, method_declaration)
3455 (formal_parameter, field_declaration): Rename attributes.
3457 * wisent/wisent-java.el (wisent-java-expand-tag): Rename attribute.
3459 * wisent/wisent-c.wy: (declaration, parameter-declaration)
3460 (function-definition): Rename attribute.
3462 * wisent/wisent-c.el (wisent-c-expand-tag): Rename attributes.
3464 * bovine/semantic-el.el: (semantic-elisp-clos-args-to-semantic)
3465 (semantic-elisp-use-read)
3466 (semantic-tag-static-p): Rename attributes.
3467 (semantic-tag-protection): Ditto. Doc fix.
3469 * bovine/semantic-c.el:
3470 (semantic-expand-c-tag, semantic-c-reconstitute-token)
3471 (semantic-c-reconstitute-template, semantic-c-format-tag-name)
3472 (semantic-c-format-tag-type, semantic-c-tag-template)
3473 (semantic-c-tag-template-specifier)
3474 (semantic-c-analyze-dereference-metatype)
3475 (semantic-c-tag-abstract-p): Rename attributes.
3477 * bovine/erlang.by (macro-def-list): Rename attribute.
3479 * bovine/c.by: (macro-or-include, define, enumsubparts)
3480 (typesimple, template-type, variablearg)
3481 (fun-or-proto-end): Rename attributes.
3483 * semantic-util-modes.el (semantic-tag-boundary-p-default):
3486 * semantic-texi.el (semantic-texi-update-doc-from-texi):
3489 * semantic-tag.el: (semantic-tag-modifiers)
3490 (semantic-tag-function-throws)
3491 (semantic-tag-function-parent)
3492 (semantic-tag-function-destructor-p)
3493 (semantic-tag-variable-constant-p): Rename attribute.
3495 * semantic-sort.el (semantic-tag-external-member-parent-default):
3497 (semantic-tag-external-member-p): Doc fix.
3499 * semantic-format.el (semantic-format-tag-prototype-default):
3501 (semantic-format-tag-concise-prototype-default): Ditto.
3503 * semanticdb-el.el (semanticdb-elisp-sym->tag): Rename attribute.
3505 * semantic-analyze.el (semantic-analyze-tag-prototype-p-default):
3508 * document.el (document-insert-texinfo): Rename attribute.
3510 2004-03-09 David Ponce <david@dponce.com>
3512 * doc/bovine.texi (Optional Lambda Expressions): Fix info style.
3513 (Bovine Examples): Fix info style and update examples according to
3514 BY grammar specifications.
3516 * doc/grammar-fw.texi (start Decl): Fix inforef.
3518 * senator.el (senator-isearch-search-fun): New function.
3519 (senator-isearch-mode-hook): Use it when possible.
3520 (boundp 'isearch-search-fun-function): Don't advice built-in
3522 (isearch-mode-end-hook): Add `senator-isearch-mode-hook'.
3524 2004-03-08 David Ponce <david@dponce.com>
3526 * semantic-fw.el (semantic-activate-mode-bindings):
3527 Fix parent modes & mode order.
3529 * semantic-fw.el (semantic-activate-mode-bindings):
3530 Activate mode local bindings
3532 (semantic-activate-mode-bindings): Deactivate mode local bindings
3535 * semantic-fw.el (semantic-with-mode-bindings): Call
3536 semantic-[de]activate-mode-bindings with an explicit mode.
3537 (semantic-activate-mode-bindings): Revert previous change.
3538 (semantic-deactivate-mode-bindings): Use current major mode as
3541 * semantic-fw.el (semantic-current-bindings): Fix last change.
3542 (semantic-symbol): Don't change the local symbol table when
3543 `semantic-bindings-active-mode' is non-nil.
3545 2004-03-07 Eric M. Ludlam <zappo@gnu.org>
3547 * semantic-html.el: HTML support.
3549 2004-03-06 Eric M. Ludlam <zappo@gnu.org>
3551 * semantic-sb.el (semantic-sb-one-button):
3552 Format the string in the context of the
3555 * semantic-analyze.el: (semantic-analyze-current-context)
3556 (semantic-analyze-possible-completions):
3557 Only execute with the current modified syntax table.
3559 * bovine/semantic-make.el (semantic-ctxt-current-class-list):
3560 Variables can have functions, not
3562 (semantic-format-tag-abbreviate)
3563 (semantic-format-tag-prototype): file -> filename confusion
3564 (semantic-analyze-possible-completions): Only calc file list if
3565 filename is a possible class.
3567 * bovine/semantic-make.el (semantic-default-make-setup):
3568 Add "Files" to assoc list.
3569 (semantic-function-argument-separator): New mode variable
3570 (semantic-ctxt-current-class-list)
3571 (semantic-format-tag-abbreviate)
3572 (semantic-format-tag-prototype)
3573 (semantic-format-tag-concise-prototype)
3574 (semantic-format-tag-uml-prototype)
3575 (semantic-analyze-possible-completions): New override methods.
3577 * bovine/make.by (elements): Splice them together.
3579 * semantic-grammar.el (semantic-grammar-complete):
3580 use `semantic-grammar-in-lisp-p'
3581 (eldoc-current-symbol-info): Renamed
3582 (semantic-idle-summary-current-symbol-info): to this.
3583 (semantic-ctxt-current-class-list): New method.
3584 (semantic-analyze-current-context)
3585 (semantic-analyze-possible-completions): New methods.
3587 * doc/tags.texi (Creating Tags):
3588 Reran defun generation script on some entries.
3590 * doc/app-dev-guide.texi (Override Methods):
3591 Add semantic-with-mode-bindings.
3593 * semantic-ctxt.el (semantic-ctxt-current-class-list-default):
3594 Make robust when there
3595 is not tag under point.
3597 * semantic-fw.el (semantic-bindings-active-mode): New variable
3598 (semantic-current-bindings): Also pay attention to above var.
3599 (semantic-activate-mode-bindings): Do not use major-mode.
3600 (semantic-with-mode-bindings): New macro.
3602 * semantic-analyze.el (semantic-analyze-tags-of-class-list):
3604 (semantic-analyze-possible-completions): Turn input arg to a
3606 (semantic-analyze-possible-completions-default):
3607 Remove login in above.
3610 2004-03-05 Eric M. Ludlam <zappo@gnu.org>
3612 * doc/app-dev-guide.texi (Tag Details): Updated defuns via script.
3613 (Local Context): Updated defuns, and added
3614 `semantic-ctxt-current-class-list'.
3616 * semantic-texi.el (semantic-texi-update-doc-from-texi):
3617 Do not accept override-function
3618 tags to insert as doc. Always look for the original.
3620 * semantic-tag.el (semantic-equivalent-tag-p):
3621 Allow two tags to not have a buffer.
3623 * semantic-ctxt.el (semantic-ctxt-current-class-list):
3624 new override method.
3625 (semantic-ctxt-current-class-list-default): new override implementation.
3627 * bovine/semantic-el.el (semantic-ctxt-current-function):
3628 Don't use built-in anymore.
3630 (semantic-ctxt-current-class-list): New override.
3632 * semantic-analyze.el (semantic-analyze-context):
3633 Added PREFIXCLASS slot.
3634 (semantic-analyze-current-context-default): Find and store the prefixclass
3635 (semantic-analyze-type-constraint): Only calculate on TAG input.
3636 (semantic-analyze-possible-completions): Made into an override method.
3637 (semantic-analyze-possible-completions-default): Old body of above.
3638 Added desired-class filter on output.
3639 (semantic-analyze-princ-sequence): More logical flow.
3641 2004-03-04 Eric M. Ludlam <zappo@gnu.org>
3643 * semantic-analyze.el: (semantic-analyze-find-tags-by-prefix)
3644 (semantic-analyze-find-tag): Do not require that tags are
3645 only allowed if there is a file. If a file is there, load it.
3646 (semantic-analyze-find-tag-sequence): Allow non-variables to be found.
3647 (semantic-analyze-calculate-bounds): New function
3648 (semantic-analyze-current-context): Made an override function
3649 (semantic-analyze-current-context-default): Implementation from
3651 (semantic-analyze-princ-sequence): If a non-tag is being displayed,
3652 mark it so it is obvious.
3654 * semantic-idle.el (semantic-idle-summary-out-of-context-faces):
3657 * bovine/semantic-el.el (semantic-ctxt-current-assignment):
3658 Moved and Implemented.
3659 (semantic-ctxt-current-function): Improved.
3660 (semantic-format-tag-abbreviate, semantic-format-tag-prototype)
3661 (semantic-format-tag-concise-prototype)
3662 (semantic-format-tag-uml-prototype): New implementations.
3664 2004-03-03 David Ponce <david@dponce.com>
3666 * doc/overview.texi (Overview): Rewrite.
3667 (Semantic Components): Fix typos and style.
3669 2004-03-03 Eric M. Ludlam <zappo@gnu.org>
3671 * document.el (document-texify-elisp-docstring):
3672 Support `.' as a char after
3675 2004-03-03 David Ponce <david@dponce.com>
3677 * doc/grammar-fw.texi (Overview): Add ref. to sections...
3678 (BY grammars): Add note and ref. to the bovine manual.
3679 (WY grammars): Add note and ref. to the wisent manual.
3681 2004-03-03 Eric M. Ludlam <zappo@gnu.org>
3683 * semantic-complete.el: (semantic-displayor-window-edges):
3684 eval-AND-compile this block.
3686 * semantic-tag-ls.el:
3687 (semantic-tag-protection, semantic-tag-full-name):
3688 Add 'semantic-overload' property.
3689 (semantic-tag-abstract-p, semantic-tag-leaf-p):
3690 Fix call to default which was renamed.
3692 * doc/lang-support-guide.texi (Tag Structure):
3693 Renamed `semantic-expand-nonterminal' reference to
3694 `semantic-tag-expand-function'.
3695 (Writing Parsers): Added `Parser Backend Support' section.
3696 (Parsing a language file): Removed `semantic-bovinate-stream' as it is
3697 not a 2.0 compatible function.
3698 (Parser Backend Support): New node and subnodes.
3699 (Parser Output tools): Fixed formatting of a keymap table.
3701 * doc/glossary.texi (Glossary): Changed the format.
3704 * bovine/semantic-skel.el (semantic-skeleton-expand-tag): Renamed
3705 (semantic-default-skel-setup): Updated.
3707 2004-03-02 David Ponce <david@dponce.com>
3709 * doc/user-guide.texi (Contact information for Senator): Remove.
3711 Add common ending nodes.
3713 * doc/semantic.texi (top):
3714 Remove info ref from menu that produce bad URLs in HTML
3715 output. Move them into...
3716 (Semantic Manuals): New chapter with ref to other manuals.
3718 * doc/semanticheader.texi: Add common settings in this file.
3719 (obsolete): Improve readability.
3721 * doc/lang-support-guide.texi (direntry): Fix typo.
3722 (Compiling): Rename to...
3723 (Parsing a language file): Update definitions.
3724 (Writing Parsers): Add ref. to parser manuals. Remove from menu.
3725 (Grammar Programming Environment): Add ref. to grammar framework
3726 manual. Remove duplicated things.
3727 (Parser Output tools): Fix typo.
3729 Add common ending nodes.
3731 * doc/grammar-fw.texi (Editing grammars): Add note about
3732 semantic-grammar-create-package.
3734 * doc/bovine.texi (top): Update.
3735 (%start, %languagemode, %token): Remove.
3736 (Starting Rules): New.
3737 (Bovine Grammar Rules): Update.
3738 (How Lexical Tokens Match)
3739 (Grammar-to-Lisp Details)
3740 (Order of components in rules): New sections.
3742 Add common ending nodes.
3744 * doc/app-dev-guide.texi (top): Fix inforef.
3746 Add common ending nodes.
3748 2004-03-01 David Ponce <david@dponce.com>
3750 * doc/grammar-fw.texi (languagemode Decl): Use mode1 for consistency.
3751 (Querying grammars): New intro. Add...
3752 (Grammar Tags, Querying Declarations): New subsections.
3754 * doc/grammar-fw.texi (Editing grammars): Better @inforef.
3755 (Grammar Macros): Typo.
3756 (Adding a new grammar mode): Add...
3757 (Specialized Implementation, Querying grammars): New sections.
3759 2004-03-01 Eric M. Ludlam <zappo@gnu.org>
3761 * doc/app-dev-guide.texi (Context Analysis):
3762 Added new menu and three sub chapters.
3764 * semantic-format.el (semantic-format-tag-type): Autoload cookie.
3766 * doc/app-dev-guide.texi (Format Tag): Add `semantic-format-tag-type'.
3768 * doc/tags.texi (Tag Basics):
3769 Fix name of `semantic-tag-expand-function'.
3771 * bovine/semantic-el.el (semantic-tag-static): Renamed to
3772 (semantic-tag-static-p): New name.
3774 * bovine/semantic-c.el (semantic-c-tag-abstract): Renamed to
3775 (semantic-c-tag-abstract-p): New name. Use new name when
3776 deferring to the default.
3777 (semantic-default-c-setup): Use new name above.
3779 * semantic-format.el: (semantic--format-uml-post-colorize)
3780 (semantic-uml-attribute-string): Use new names for
3781 `semantic-tag-abstract-p', `semantic-tag-leaf-p',
3782 `semantic-tag-static-p'.
3784 * semantic-tag-ls.el (semantic-tag-abstract): Renamed to
3785 (semantic-tag-abstract-p): New name
3786 (semantic-tag-abstract-p-default): New name
3787 (semantic-tag-leaf): Renamed to
3788 (semantic-tag-leaf-p): New name.
3789 (semantic-tag-leaf-p-default): New name.
3790 (semantic-tag-static): Renamed to
3791 (semantic-tag-static-p): New name
3792 (semantic-tag-static-p-default): New name
3794 * doc/app-dev-guide.texi (Tag Details):
3795 Updated names of some functions.
3797 2004-02-29 Eric M. Ludlam <zappo@gnu.org>
3799 * doc/lang-support-guide.texi (Writing Parsers):
3800 Added menu item pointing to Grammar Framework.
3802 * INSTALL: Revamped. We are a part of a CEDET install now.
3804 2004-02-27 David Ponce <david@dponce.com>
3806 * doc/grammar-fw.texi (use-macros Decl): More things.
3807 (Editing grammars): Add note about
3808 semantic-grammar-find-macro-expander and semanticdb.
3809 (Grammar Macros): More things.
3810 (Common grammar macros): Add ref.
3812 2004-02-26 David Ponce <david@dponce.com>
3814 * semantic-idle.el (semantic-idle-scheduler-max-buffer-size):
3815 Declare before first
3816 use. Fix doc string.
3817 (define-semantic-idle-service): Use `eval-and-compile' to have
3818 generated declarations available at compile time.
3820 * semantic-ia-sb.el (semantic-ia-sb-string-list):
3821 Use `semantic-ia-sb-tag-info'
3822 instead of `semantic-ia-sb-token-info'.
3823 (semantic-ia-sb-completion-list): Ditto.
3824 (semantic-ia-sb-tag-info): Use `semantic-analyze-tag-type' instead
3825 of `semantic-analyze-token-type'.
3827 * semantic-complete.el (semantic-displayor-window-edges):
3828 New compatibility function.
3829 (semantic-displayor-point-position): Use it.
3831 * wisent/wisent-grammar.el (wisent-grammar-menu): New variable.
3832 (wisent-grammar-mode): Setup the grammar menu.
3834 * wisent/wisent-comp.el (wisent-toggle-verbose-flag): New command.
3836 * bovine/bovine-grammar.el (bovine-grammar-menu): New variable.
3837 (bovine-grammar-mode): Setup the grammar menu.
3839 * semantic-grammar.el (semantic-grammar-recreate-package): New command.
3840 (semantic-grammar-menu): New variable.
3841 (semantic-grammar-setup-menu-emacs)
3842 (semantic-grammar-setup-menu-xemacs)
3843 (semantic-grammar-setup-menu): New functions.
3845 2004-02-24 Eric M. Ludlam <zappo@gnu.org>
3847 * semantic-cb.el (semantic-cb-speedbar-buttons):
3848 Do not create a class browser
3849 if one already exists. Allow a power click to force a refresh.
3851 2004-02-23 David Ponce <david@dponce.com>
3853 * doc/grammar-fw.texi (Grammar Rules): Fix @inforef.
3855 * semantic-idle.el (semantic-idle-core-handler):
3856 Only re-parse buffers having the
3857 same major mode as the current buffer, before eval of scheduled
3858 services. Then re-parse other buffers.
3860 * doc/grammar-fw.texi (Grammar Rules):
3861 Add %prec, mid-rule actions and $N values.
3863 * doc/grammar-fw-ov.txt: New diagram.
3865 2004-02-22 Eric M. Ludlam <zappo@gnu.org>
3867 * semantic-complete.el: Update credits for tooltip displayor.
3869 * semantic-format.el (semantic-format-tag-uml-protection): Update doc.
3871 * bovine/semantic-el.el (semantic-nonterminal-protection): Renamed to
3872 (semantic-tag-protection): new name
3873 (semantic-elisp-nonterminal-static): Renamed to
3874 (semantic-tag-static): new name.
3876 * semantic-ia-sb.el (semantic-ia-sb-last-analysis): Deleted
3877 (semantic-speedbar-analysis): Doc Fix
3878 (semantic-ia-speedbar): Don't use above deleted cache index.
3880 * semantic-tag-ls.el (semantic-tag-calculate-parent-default):
3881 After switching buffers,
3882 add a second `save-excursion' to protect that movement.
3884 * semantic-analyze.el (semantic-analyze-current-context):
3885 Do not cache the data if the
3888 2004-02-21 Eric M. Ludlam <zappo@gnu.org>
3890 * semantic-idle.el (semantic-idle-scheduler-function):
3891 Exit if recursively editing.
3893 2004-02-20 David Ponce <david@dponce.com>
3895 * semantic-grammar-wy.el: Re-generated.
3897 * semantic-grammar.wy (prologue):
3898 Remove `semantic-grammar-wy--tag-value'.
3899 Define ` semantic-grammar-wy--nterm' and `
3900 semantic-grammar-wy--rindx'.
3901 (put_decl): Simplify semantic actions.
3902 (use_macros_decl): Ditto.
3903 (put_name_list, use_name_list): Return names instead of tags.
3904 (put_value_list): Return values instead of tags.
3905 (put_names): Change tag format.
3906 (put_values, use_names): Ditto.
3907 (nonterminal): Initialize nonterminal name and rule index.
3908 (rule): Rule name based on nonterminal name and rule index.
3909 Increment rule index. Signal an error on duplicate %prec.
3911 2004-02-19 David Ponce <david@dponce.com>
3913 * semantic-fw.el (semantic-cache-data-to-buffer):
3914 Use cache-name instead of tag.
3915 Check for errors before to create the overlay.
3916 (semantic-cache-data-post-command-hook): Use `oldcache' in the
3918 (semantic-get-cache-data): Use cache-name instead of tag.
3920 2004-02-19 Eric M. Ludlam <zappo@gnu.org>
3922 * bovine/semantic-el.el (semantic-get-local-variables): Implemented it.
3924 * semantic-sort.el (semantic-unique-tag-table):
3925 Support lists mixed tags with and without
3928 * bovine/semantic-c.el (semantic-c-tag-protection):
3929 If no protection was specified, and
3930 the tag has a class, return public only iff that parent is also
3931 of the 'type class. This prevents function arguments from
3932 being given a protection string.
3934 * bovine/semantic-el.el (semantic-nonterminal-protection):
3935 Only return 'public for unspecified
3936 protection if there is a parent class.
3938 * semantic-analyze.el (semantic-analyze-current-context):
3939 Use new buffer data cache
3940 to save the calculated context so a second call in the same small
3941 area will be faster.
3943 * semantic-fw.el (semantic-cache-data-overlays): New state variable
3944 (semantic-cache-data-to-buffer, semantic-cache-data-post-command-hook)
3945 (semantic-get-cache-data): New functions
3946 (semantic-test-data-cache): New testing function.
3948 2004-02-18 David Ponce <david@dponce.com>
3950 * wisent/wisent-bovine.el (wisent-parse-stream):
3951 Use `semantic-safe' to help debugging.
3952 (wisent-parse-region): Likewise.
3954 * semantic-idle.el (semantic-idle-scheduler-enabled-p):
3956 `semantic-idle-scheduler-max-buffer-size'.
3957 (semantic-idle-core-handler): New function.
3958 (semantic-idle-scheduler-function): Call it through
3959 `semantic-safe' to help debugging. Doc fix.
3960 (semantic-idle-scheduler-refresh-tags): Doc fix.
3962 * semantic-fw.el (semantic-safe): New macro.
3963 (semantic-fw-font-lock-keywords): Add
3964 `define-semantic-idle-service'.
3966 2004-02-17 David Ponce <david@dponce.com>
3968 * document.el (document-update-history): Fix doc string.
3969 (document-update-paramlist): Likewise.
3971 * doc/wisent.texi: Major update to sync. with semantic version 2.
3973 2004-02-16 Eric M. Ludlam <zappo@gnu.org>
3975 * semantic-complete.el (avoid): No longer required.
3976 (semantic-complete-post-command-hook): Protect against errors.
3977 (initialize-instance::semantic-displayor-tooltip): Do not require avoid.
3978 (semantic-displayor-point-position): New fcn
3979 (semantic-displayor-tooltip-show): Use above.
3980 Reposition mouse pointer by pixel location.
3982 2004-02-16 David Ponce <david@dponce.com>
3984 * doc/grammar-fw.texi: Don't skip line after @deffn.
3985 (put Decl): Rewrite to look better in HTML output.
3986 (token Decl): Ditto. Use match-value instead of token-value.
3988 * doc/grammar-fw.texi: Fix cross-references.
3990 * doc/grammar-fw.texi (Grammar outline):
3991 Remove section. All sub sections promoted.
3992 (Common facilities): Ditto.
3993 (Terminal and Nonterminal Symbols): New section.
3994 (Declarations): Reference it.
3995 (Grammar Rules): Complete.
3996 (Macros): Rename to "Grammar Macros".
3998 2004-02-13 David Ponce <david@dponce.com>
4000 * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder):
4001 start/scopestart generate
4002 true internal rules. Use the first grammar rule as default start
4003 rule. Check some trivial things about grammar correctness.
4005 2004-02-12 Eric M. Ludlam <zappo@gnu.org>
4007 * doc/bovine.texi (Order of MATCH rules): New section
4009 * tests/Makefile (Tests_AUX): Added scope tests.
4011 * tests/Project.ede: Project file for the test directory.
4013 * tests/scopetest.java, tests/scopetest.cpp: Tests for scope analysis.
4015 * wisent/Makefile (VERSION): Updated.
4017 * doc/Makefile (semantic-grammar_TEXINFOS): New
4020 * doc/Project.ede ("semantic-grammar"): New info file.
4022 * doc/user-guide.texi (semantic-show-parser-state-mode):
4025 * bovine/Makefile (VERSION): updated.
4027 * NEWS (Obsoletion Strategy): Add about semantic-varalias-obsolete.
4028 (semanticdb-find-*-by-name-for-completion): Renamed as apropriate.
4029 (semantic-idle-*): Updated.
4031 * semantic.el (semantic-version): updated to beta 2.
4033 * Makefile (VERSION): Updated.
4035 * Project.ede (version): Updated.
4037 * semantic-util-modes.el: (semantic-highlight-edits-mode)
4038 (semantic-show-unmatched-syntax-mode): Doc string updates.
4040 * semantic-tag-ls.el (semantic-tag-protected-p): Add autoload cookie.
4042 * semantic-lex.el (semantic-lex-debug): Doc update.
4044 * semantic-idle.el: (semantic-idle-summary-current-symbol-info-brutish)
4045 (semantic-idle-summary-current-symbol-keyword):
4046 Fixed byte compiler warnings.
4048 * semantic-fw.el (semantic-test-throw-on-input): Add another test case.
4050 * semantic-tag.el (cedet-edebug):
4051 New eval-after-load for edebug support.
4052 (semantic--tag-expand): Add message in case of debug call.
4054 * semanticdb-find.el (cedet-edebug):
4055 New eval-after-load for edebug support.
4057 * doc/lang-support-guide.texi (Application API Structure):
4058 Add a menu and menu for:
4059 (Semantic Analyzer Support): Add comment about what should go in this node.
4060 (Debugging): Add large menu, move old content to a section.
4061 (Lexical Debugging, Parser Output tools, Bovine Parser Debugging)
4062 (Wisent Parser Debugging, Overlay Debugging, Incremental Parser Debugging)
4063 (Debugging Analysis): New sections.
4064 (Semantic 1.4 Doc): Location of old Debugging section text.
4066 2004-02-11 David Ponce <david@dponce.com>
4068 * doc/grammar-fw.texi: Fix direntry.
4069 (Overview): Use a graphic image if possible.
4070 (Adding a new grammar mode): Add function and variable
4073 * doc/grammar-fw-ov.dia, doc/grammar-fw-ov.png, doc/grammar-fw-ov.txt:
4076 2004-02-11 Eric M. Ludlam <zappo@gnu.org>
4078 * semantic-sort.el (semantic-string-lessp-ci):
4079 Accept a value of t from `compare-strings'.
4080 Thanks Dimitry Gashinsky.
4082 2004-02-10 David Ponce <david@dponce.com>
4084 * semantic-idle.el (semantic-idle-summary-out-of-context-faces):
4086 (semantic-idle-summary-useful-context-p): Use it.
4088 2004-02-10 Eric M. Ludlam <zappo@gnu.org>
4090 * semantic-sort.el (semantic-unique-tag-table): Fix doc.
4092 * doc/app-dev-guide.texi (Tag Sorting): Add semantic-unique-tag-table.
4094 * semantic-analyze.el (semantic-analyze-tag-prototype-p): New fcn
4095 (semantic-analyze-find-tag): Skip over prototypes, but return
4096 one if there is no real version.
4098 * senator.el (senator-try-expand-semantic): Don't quote 1st arg to
4099 semantic-lex-catch-errors.
4101 * semantic-util-modes.el (semantic-show-parser-state-mode): Doc Update
4102 (semantic-show-parser-state-marker): Show unparseable state.
4104 * semantic-idle.el (semantic-idle-summary-useful-context-p): New fcn
4105 (semantic-idle-summary): Don't show summaries if it's boring.
4106 (semantic-idle-completion-list-default): Don't do completion
4107 if it's boring context.
4109 2004-02-08 Eric M. Ludlam <zappo@gnu.org>
4111 * semantic-analyze.el: Add vocabulary section.
4113 * semantic-analyze.el (semantic-analyze-tag-type): Comment
4114 (semantic-analyze-inherited-tags): Recurse across all parents.
4115 (semantic-analyze-scoped-tags): Allow each element to find
4116 itself in previously found scopes
4118 * semantic-idle.el (semantic-idle-scheduler-refresh-tags): Fix use of
4119 `semantic-lex-catch-errors'.
4121 2004-02-06 David Ponce <david@dponce.com>
4123 * semantic-analyze.el (semantic-analyze-find-tags-by-prefix): Use
4124 `semanticdb-strip-find-results' and
4125 `semantic-find-tags-for-completion'.
4126 (semantic-analyze-find-tag): Fix when the TAGCLASS argument is not
4129 2004-02-06 Eric M. Ludlam <zappo@gnu.org>
4131 * semantic-complete.el (semantic-complete-try-completion):
4132 Replace old call to `buffer-string'
4133 with `semantic-completion-text'.
4135 * semantic-sort.el: (semantic-unique-tag-table-by-name)
4136 (semantic-unique-tag-table): When sorting, does not modify original
4137 list by side-effect.
4139 * semantic-analyze.el (semantic-analyze-find-tag):
4140 Accept SCOPE tags for additional
4141 searching. Make TAGCLASS argument work as documented.
4142 (semantic-analyze-inherited-tags)
4143 (semantic-analyze-type-parts): Accept SCOPE tags for additional
4145 (semantic-analyze-scope-nested-tags): Accept SCOPETYPE argument
4146 for parent data types to search.
4147 (semantic-analyze-scoped-types): Move code so that a parent can be
4148 found in the local scope which is also calculated here.
4149 (semantic-analyze-possible-completions): Pass in the scope from
4150 the context into top level search.
4152 2004-02-05 Eric M. Ludlam <zappo@gnu.org>
4154 * bovine/semantic-c.el (semantic-c-ctxt-scoped-types): New fcn
4155 (semantic-default-c-setup): Use above.
4157 * semantic-ctxt.el (semantic-ctxt-scoped-types): Update Doc.
4159 * semantic-imenu.el (semantic-imenu-sort-bucket-function):
4160 Add better customization.
4162 * semantic-sort.el (semantic-sort-tag-type): Change token->tag.
4163 (semantic-sort-tokens-by-name-increasing): Renamed to
4164 (semantic-sort-tags-by-name-increasing): new name
4165 (semantic-sort-tokens-by-name-decreasing): Renamed to
4166 (semantic-sort-tags-by-name-decreasing): new name
4167 (semantic-sort-tokens-by-type-increasing): Renamed to
4168 (semantic-sort-tags-by-type-increasing): new name
4169 (semantic-sort-tokens-by-type-decreasing): Renamed to
4170 (semantic-sort-tags-by-type-decreasing): new name
4171 (semantic-sort-tokens-by-name-increasing-ci): Renamed to
4172 (semantic-sort-tags-by-name-increasing-ci): new name
4173 (semantic-sort-tokens-by-name-decreasing-ci): Renamed to
4174 (semantic-sort-tags-by-name-decreasing-ci): new name
4175 (semantic-sort-tokens-by-type-increasing-ci): Renamed to
4176 (semantic-sort-tags-by-type-increasing-ci): new name
4177 (semantic-sort-tokens-by-type-decreasing-ci): Renamed to
4178 (semantic-sort-tags-by-type-decreasing-ci): new name
4179 (semantic-unique-tag-table-by-name): Use new name
4180 (semantic-unique-tag-table): Sort by position first, then unique.
4182 * semantic-analyze.el (semantic-analyze-inherited-tags): Fixed typo.
4184 * semantic-idle.el: (semantic-idle-completion-popup-max-size)
4185 (semantic-idle-completion-popup-list)
4186 (semantic-idle-completion-region-map)
4187 (semantic-idle-completion-TAB)
4188 (semantic-idle-completion-self-insert)
4189 (semantic-idle-create-overlay-with-completion-map)
4190 (semantic-idle-momentary-unoverlay)
4191 (semantic-idle-momentary-overlay-with-completion-map): Deleted.
4192 (semantic-idle-completion-list-default):
4193 Remove old implementation. Use `semantic-complete-analyze-inline'
4194 instead, and force the popup display if needed.
4196 * semantic-complete.el (semantic-completion-inline-active-p):
4198 (semantic-complete-post-command-hook): Remove auto-display code
4199 (semantic-complete-inline-force-display): New fcn from above.
4200 (semantic-displayor-tooltip::semantic-displayor-show-request):
4201 Force display to only be unique names.
4202 (semantic-complete-inline-analyzer): Don't start up iff there is
4203 nothing useful to display.
4204 (semantic-complete-analyze-inline): Show message if interactive, and
4205 the engine didn't start up.
4207 * semantic-complete.el (semantic-complete-post-command-hook):
4208 Robust to buffer switch.
4209 (semantic-displayor-show-request): Changes to messages output
4212 * semantic-sort.el (semantic-unique-tag-table): New fcn.
4214 * semantic-analyze.el: (semantic-analyze-possible-completions):
4215 Make sure all tags in return list are sorted (alphanumerically) and
4218 * doc/app-dev-guide.texi (top): Renamed below
4219 (Searching Tag Tables): Renamed from "Tag Tables"
4220 (Breadth Search): New section, old content.
4221 (Deep Search, Specialty Search, Custom Search): New sections
4223 (Example Programs): Reference "Searching Tag TAbles" by new name.
4225 * semantic-complete.el:
4226 (semantic-displayor-tooltip::semantic-displayor-show-request):
4227 Also test if tooltip mode is active.
4229 2004-02-04 Eric M. Ludlam <zappo@gnu.org>
4231 * semantic-analyze.el (semantic-analyze-inherited-tags): New fcn
4232 (semantic-analyze-type-parts): Add also inherited tags
4233 (semantic-analyze-scoped-tags): Moved
4235 * semantic-find.el (semantic-find-tags-by-scope-protection): New fcn
4237 * semantic-tag-ls.el (semantic-tag-protected-p): New fcn.
4239 2004-02-03 Eric M. Ludlam <zappo@gnu.org>
4241 * semantic-analyze.el (semantic-analyze-scope-nested-tags): New fcn
4242 (semantic-analyze-scoped-types): Use above, some logic of which came
4245 * semantic-analyze.el (semantic-analyze-find-tag-sequence): Doc fix
4246 (semantic-analyze-scoped-types): Fix nesting error in code.
4248 2004-02-02 David Ponce <david@dponce.com>
4250 * doc/grammar-fw.texi: Add more things.
4252 * bovine/semantic-java.el (semantic-ctxt-scoped-types):
4253 Don't return tags but names.
4255 * bovine/semantic-java.el (semantic-ctxt-scoped-types):
4256 New override for `java-mode'.
4258 2004-02-02 Eric M. Ludlam <zappo@gnu.org>
4260 * semantic-complete.el (semantic-complete-inline-overlay): Moved here
4261 (semantic-completion-message): Moved. Support inline completion.
4262 (semantic-complete-default-to-tag)
4263 (semantic-complete-current-match)
4264 (semantic-complete-do-completion): Protect completion calculation
4265 from cursor movement.
4266 (semantic-complete-inline-map): Changed several keybindings.
4267 (semantic-complete-inline-quit): New fcn
4268 (semantic-complete-inline-exit): Make interactive
4269 (semantic-complete-post-command-hook): Always popup completions.
4270 (semantic-complete-inline-TAB): non-partial completion.
4271 (semantic-complete-inline-up): Fix typo
4272 (semantic-displayor-tooltip): New parent type. Enable graceful
4273 degredation of service. Methods below of this type
4274 (semantic-displayor-show-request): Call to parent class if tooltips
4276 (semantic-displayor-scroll-request): New method
4277 (semantic-complete-inline-analyzer): Use tooltips. Autoload cookie.
4278 (semantic-complete-read-tag-buffer-deep)
4279 (semantic-complete-read-tag-project)
4280 (semantic-complete-read-tag-analyzer)
4281 (semantic-complete-anlyze-and-replace): Add autoload cookies.
4283 * semantic-analyze.el (semantic-analyze-current-context):
4284 Support "" in bounds.
4285 (semantic-analyze-possible-completions): Allow variables or methods
4286 that have a compound data type to be included in completion lists.
4288 * semantic-find.el (semantic-deep-find-tags-by-name): New function.
4290 * semantic-tag.el (semantic-tag-type-compound-p): New fcn
4292 2004-02-01 David Ponce <david@dponce.com>
4294 * doc/grammar-fw.texi: New grammar framework manual.
4296 2004-01-29 Eric M. Ludlam <zappo@gnu.org>
4298 * semantic-complete.el (Commentary:):
4299 Updated. Discuss INLINE completion
4300 (semantic-completion-text, semantic-completion-delete-text):
4301 New function wrappers.
4302 (semantic-complete-read-tag-engine): Doc update.
4303 (semantic-complete-inline-map): New keymap
4304 (semantic-complete-inline-face): New face
4305 (semantic-complete-inline-overlay): New variable
4306 (semantic-complete-inline-text)
4307 (semantic-complete-inline-delete-text)
4308 (semantic-complete-inline-exit)
4309 (semantic-complete-pre-command-hook)
4310 (semantic-complete-post-command-hook)
4311 (semantic-complete-inline-tag-engine): New functions
4312 (semantic-complete-inline-TAB)
4313 (semantic-complete-inline-up)
4314 (semantic-complete-inline-down): New commands
4315 (semantic-complete-current-match)
4316 (semantic-complete-try-completion)
4317 (semantic-complete-do-completion)
4318 (semantic-collector-next-action)
4319 (semantic-displayor-current-focus)
4320 (semantic-displayor-focus-request)
4321 (semantic-complete-inline-analyzer)
4322 (semantic-complete-analyze-and-replace)
4323 (semantic-complete-analyze-inline): Use new wrappers for dealing with
4326 * semantic-analyze.el (semantic-analyze-find-nonterminals-by-prefix):
4328 (semantic-analyze-find-tags-by-prefix): New name.
4329 (semantic-analyze-find-nontermials): Renamed to
4330 (semantic-analyze-find-tags): new name.
4331 (semantic-analyze-token-type-to-name): renamed to
4332 (semantic-analyze-tag-type-to-name): new name
4333 (semantic-analyze-token-type): renamed to
4334 (semantic-analyze-tag-type): new name
4335 (semantic-analyze-find-nonterminal-sequence): renamed to
4336 (semantic-analyze-find-tag-sequence): new name
4337 (semantic-analyze-scoped-nonterminals): renamed to
4338 (semantic-analyze-scoped-tags): new name
4339 (semantic-analyze-dereference-metatype)
4340 (semantic-analyze-type-parts)
4341 (semantic-analyze-scoped-types)
4342 (semantic-analyze-context)
4343 (semantic-analyze-context-assignment)
4344 (semantic-analyze-context-functionarg)
4345 (semantic-analyze-context-return)
4346 (semantic-analyze-current-context)
4347 (semantic-analyze-type-constraint)
4348 (semantic-analyze-type-constants)
4349 (semantic-analyze-possible-completions)
4350 (semantic-analyze-summary-function)
4351 (semantic-analyze-pric-sequence): Renamed occurances of "token"
4352 to "tag", and "nonterminal" to "tag".
4353 Also true for renamed fns above.
4355 2004-01-27 Eric M. Ludlam <zappo@gnu.org>
4357 * senator.el ("Idle Summaries", "Idle Completion"): Fix typos.
4358 (senator-menu-bar): Add narrow-to-tag binding
4360 * semantic-util-modes.el (semantic-show-unmatched-lex-tokens-fetch):
4363 * semantic-grammar.el (semantic-grammar-complete): Extend doc.
4365 * semanticdb-file.el (object-write):
4366 Keep the unmatched syntax up to date.
4367 Success is bound to use of `semantic-show-unmatched-syntax-mode'.
4369 * semanticdb.el (semanticdb-post-bovination-unmatched-syntax): Deleted
4370 (semanticdb-hooks): Remove above from list.
4372 * bovine/Makefile (bovinator, languages): --no-site-file
4374 * bovine/c.by (UNDEFINE): New keyword
4375 (define): Add UNDEF support.
4377 * doc/lang-support-guide.texi (Tag Structure): Describe CLASS more.
4378 (Language Support Overview): Moved old comment. Added new content.
4379 (Semantic Overload Mechanism): New intro.
4380 Describe the default a little more.
4381 Added more about advice.
4382 (Semantic Parser Structure): new
4383 (Application API Structure): New
4384 (Lexer Overview): Typos
4385 (Lexer Construction): Discus deprication of semantic-flex.
4387 (Grammar Files): Removed. This is in the bovine section.
4388 (Grammar Programming Environment): New content.
4390 * doc/bovine.texi (Optional Lambda Expression):
4391 Added details on new TAG macros.
4393 * wisent/Makefile (languages_LISP): Removed wisent-java-lex.el
4394 (tools, wisent, languages): Exclude site-init file.
4396 * wisent/Project.ede ("languages"): Remove wisent-java-lex.el
4398 2004-01-23 David Ponce <david@dponce.com>
4400 * wisent/wisent-java-lex.el: Remove. No more used.
4402 * wisent/wisent-grammar.el (wisent-grammar-tokentable-builder):
4403 Remove. Not more necessary.
4404 (wisent-grammar-mode): Updated.
4406 * wisent/wisent-bovine.el:
4407 (wisent-lex-token-rules, wisent-lex-token-get)
4408 (wisent-lex-match, wisent-flex): Remove. Obsolete.
4409 (wisent-lex-make-token-table): Alias of
4410 `semantic-lex-make-type-table'.
4413 (semantic--lex-delim-spec, semantic--lex-block-specs)
4414 (semantic-lex-block-type): Remove. No more necessary.
4415 (define-lex-block-type-analyzer): Improve doc string.
4417 * semantic-grammar-wy.el: Re-generated.
4419 * NEWS: Add "Auto-generation of lexical rules" topic.
4420 Use "lexical rule" instead of "single lexical analyzer"
4423 2004-01-19 Eric M. Ludlam <zappo@gnu.org>
4425 * semantic-ede-grammar.el:
4426 (ede-buffer-mine::semantic-ede-proj-target-grammar):
4429 2004-01-19 David Ponce <david@dponce.com>
4431 * semantic-grammar-wy.el: Re-generated.
4433 * semantic-grammar.wy:
4434 (<keyword>, <symbol>, <string>, <qlist>, <sexp>, <block>)
4435 (<punctuation>): Declare as types.
4436 (PERCENT_PERCENT): Fix regexp.
4437 (PREFIXED_LIST): Move regexp to <qlist> type syntax.
4438 (PAREN_BLOCK, BRACE_BLOCK): Fix block definition.
4439 (LPAREN, RPAREN): New tokens.
4440 (epilogue): Define `semantic-grammar-lexer' here.
4442 * semantic-grammar.el (semantic-grammar-wy):
4443 Require after specific analyzers.
4444 (semantic-grammar-lex-c-char-re): Move before analyzers.
4445 (semantic-grammar-lex-symbol, semantic-grammar-lex-string)
4446 (semantic-grammar-lex-char, semantic-grammar-lex-blocks)
4447 (semantic-grammar-lex-sexp, semantic-grammar-lex-prefixed-list)
4448 (semantic-grammar-lexer): Remove. Defined in grammar.
4450 2004-01-18 David Ponce <david@dponce.com>
4452 * wisent/wisent-java-tags.wy, wisent/wisent-java.wy:
4453 (<block>, <punctuation>, <symbol>, <string>)
4454 (<number>, <keyword>): Use default values in %type declarations.
4456 * semantic-lex.el (semantic-lex-preset-default-types): New function.
4457 (semantic-lex-make-type-table): Use it.
4459 * semantic-grammar-wy.el: Re-generated.
4461 * semantic-grammar.wy (plist_opt): New rule.
4462 (type_decl): Use it.
4464 * semantic-grammar.el (semantic-grammar-token-%type-properties):
4466 explicitly declared with a %type statement.
4467 (semantic-grammar-insert-defanalyzer): Generate analyzer for
4468 explicitly declared types.
4469 (semantic-grammar-create-package): Add optional argument force to
4470 unconditionally re-generate Lisp code.
4472 2004-01-16 David Ponce <david@dponce.com>
4474 * semantic-grammar.el (semantic-grammar--lex-block-specs):
4475 Fix doc and condition-case.
4477 * wisent/wisent-java.wy: Use %keyword to declare keywords.
4478 Automatically generate analyzers used to build the lexer.
4480 (<block>, <punctuation>, <symbol>, <string>)
4481 (<number>, <keyword>): Add %type declaration.
4482 (epilogue): Add lexer declaration.
4484 * wisent/wisent-java.el (require 'wisent-java-lex): Remove.
4486 * semantic-grammar.el (semantic-grammar-insert-defanalyzer):
4488 declaration of regexp analyzer.
4490 * wisent/wisent-java-tags.wy: Use %keyword to declare keywords.
4491 Automatically generate analyzers used to build the lexer.
4493 (<block>, <punctuation>, <symbol>, <string>)
4494 (<number>, <keyword>): Add %type declaration.
4495 (epilogue): Add lexer declaration.
4497 * wisent/wisent-java-tags.el (require 'wisent-java-lex): Remove.
4499 * semantic-lex.el (semantic-lex-make-type-table):
4500 Implicitly create types with
4501 properties but without tokens associated.
4502 (define-lex-keyword-type-analyzer)
4503 (define-lex-sexp-type-analyzer): New macros.
4505 * semantic-grammar.el (semantic-grammar-token-%type-properties):
4507 unconditionally declare new types.
4508 (semantic-grammar-token-properties): Updated.
4509 (semantic-grammar-quoted-form): New function.
4510 (semantic-grammar-insert-defanalyzer): Use it to fix use of quote
4511 in analyzer declarations. Enclose type between < > in generated
4512 analyzer name. Fix conditions that select the type of analyzer to
4513 declare. Add declaration of sexp and keyword analyzers.
4514 (semantic-grammar-mode-keywords-1): Add highlighting of semantic
4517 * semantic-fw.el (semantic-fw-font-lock-keywords): Add new macro names.
4519 2004-01-15 David Ponce <david@dponce.com>
4521 * tests/gr-test.wy (block):
4522 Remove unnecessary \( and \) delimiters from the syntax
4525 * semantic-lex.el (define-lex-string-type-analyzer): Add missing comma.
4527 2004-01-15 Eric M. Ludlam <zappo@gnu.org>
4529 * semantic-complete.el (semantic-collector-analyze-completions):
4531 (semantic-collector-calculate-completions-raw): New method on above.
4532 (semantic-complete-read-tag-buffer-deep)
4533 (semantic-complete-read-tag-project): Fix doc string
4534 (semantic-complete-read-tag-analyzer): New function
4535 (semantic-complete-analyze-inline): New command
4537 * semantic-analyze.el (semantic-analyze-context): Fixed doc strings.
4539 (semantic-analyze-current-context): Set the :buffer slot in above.
4541 * semantic-idle.el (semantic-idle-scheduler-function):
4542 Move catch inside the condition case.
4544 2004-01-14 David Ponce <david@dponce.com>
4546 * semantic-grammar.el: Fix last check-in.
4548 * semantic-lex.el: (define-lex-regex-type-analyzer)
4549 (define-lex-string-type-analyzer)
4550 (define-lex-block-type-analyzer): New macros.
4552 * semantic-grammar-wy.el: Re-generated.
4554 * semantic-grammar.wy: Introduce new %type statement.
4556 (TYPE): New keyword.
4557 (decl): Handle type_decl.
4558 (type_decl, plist): New rules.
4560 Fix errors due to use of ill-formed tags in EXPANDFULL mechanism.
4562 (prologue): Define function `semantic-grammar-wy--tag-value'.
4563 (put_decl, use_macros_decl): In semantic actions, use
4564 `semantic-grammar-wy--tag-value' instead of `semantic-tag-name' to
4565 retrieve the value of EXPANDFULL tags.
4566 (put_names, put_values, use_names): Produce valid tags.
4568 * semantic-grammar.el (require 'pp):
4569 Moved to top level. All callers updated.
4570 (semantic-grammar-token-%type-properties)
4571 (semantic-grammar-token-%put-properties): New functions.
4572 (semantic-grammar-token-properties): Use them.
4573 (semantic-grammar--lex-block-specs): New variable.
4574 (semantic-grammar-insert-define)
4575 (semantic-grammar--lex-delim-spec)
4576 (semantic-grammar--lex-block-specs)
4577 (semantic-grammar-insert-defanalyzer)
4578 (semantic-grammar-insert-defanalyzers): New functions.
4579 (semantic-grammar-create-package): Use the latter.
4581 * tests/gr-test.wy: New file.
4583 2004-01-13 David Ponce <david@dponce.com>
4585 * doc/wisent.texi (Wisent Parsing): Add `wisent-pre-parse-hook' and
4586 `wisent-post-parse-hook'.
4587 (Error recovery): Add `wisent-abort'.
4589 2004-01-13 Eric M. Ludlam <zappo@gnu.org>
4591 * doc/user-guide.texi (Idle Summary Mode):
4592 Added `semantic-idle-completions-mode'.
4594 * doc/app-dev-guide.texi (Tag Sorting):
4595 Added `semantic-unique-tag-table-by-name'.
4597 * semantic-idle.el (semantic-idle-completion-region-map):
4599 (semantic-idle-completion-TAB): New command
4600 (semantic-idle-complete-self-insert): New command
4601 (semantic-idle-momentary-unoverlay):
4602 Reset `this-command' via keymap.
4603 If self-insert-command is to be run, reset to our own version.
4606 (semantic-ia-complete-symbol-menu, semantic-ia-complete-tip):
4609 * semantic-idle.el (semantic-idle-scheduler-function):
4610 Wrap idle functions in save-excursion.
4611 Let idle functions run even if there was a lexical failure.
4612 (semantic-idle-summary): Support trailing dots for long lists.
4613 (semantic-idle-completion-region-map): New keymap.
4614 (semantic-idle-create-overlay-with-completion-map)
4615 (semantic-idle-momentary-unoverlay)
4616 (semantic-idle-momentary-overlay-with-completion-map): New fcns
4617 (semantic-idle-completion-list-default): Call above new fcn
4618 to show what the tooltips is for. Bind TAB to do the completion.
4620 2004-01-12 Eric M. Ludlam <zappo@gnu.org>
4622 * bovine/semantic-make.el (semantic-get-local-variables):
4623 Override to return nil.
4626 (semantic-end-of-command-default, semantic-beginning-of-command-default)
4627 (semantic-ctxt-current-symbol-default)
4628 (semantic-ctxt-current-assignment-default)
4629 (semantic-ctxt-current-function-default)
4630 (semantic-ctxt-current-argument-default):
4631 Wrap body in `with-syntax-table' and the lexical syntax table.
4632 That way variables and things are matched the same way the lexer
4635 2004-01-12 David Ponce <david@dponce.com>
4637 * semantic-idle.el (global-semantic-idle-scheduler-mode):
4639 semantic-idle instead of semantic-util-modes.
4640 (define-semantic-idle-service): Likewise.
4641 (semantic-idle-scheduler-mode): Add autoload cookie.
4643 2004-01-10 Eric M. Ludlam <zappo@gnu.org>
4645 * semantic-load.el (semantic-idle-completions-mode): Enable as useful.
4647 * semantic-idle.el: (semantic-idle-scheduler-function):
4648 Be sure to loop over the queue of idle functions.
4649 (semantic-idle-summary-current-symbol-info-brutish)
4650 (semantic-idle-summary-current-symbol-keyword):
4651 Do nothing if there was no found thing at point.
4652 (semantic-idle-completion-popup-max-size): New option.
4653 (semantic-idle-completion-popup-list)
4654 (semantic-idle-completion-list-default): New functions
4655 (semantic-idle-completions): New idle service.
4657 * semantic-sort.el (semantic-unique-tag-table-by-name): New function.
4659 * semantic-ctxt.el: (semantic-get-local-variables-default):
4660 Wrap body in `save-excursion'.
4662 2004-01-09 Eric M. Ludlam <zappo@gnu.org>
4664 * semantic-idle.el (global-semantic-idle-scheduler-mode):
4666 (semantic-idle-scheduler-working-in-modeline-flag): Delete dup.
4667 (semantic-idle-summary-find-current-symbol-tag): More doc.
4668 (semantic-idle-summary-current-symbol-info-brutish): Does some of what
4669 the old print routine did.
4670 (semantic-idle-summary-current-symbol-keyword): Gets info if the
4671 current symbol is a keyword.
4672 (semantic-idle-summary-current-symbol-info-context): New routine
4673 to get a tag based on the current context (see semantic-analyze.el)
4674 (semantic-idle-summary-current-symbol-info-default): Rebuilt to use
4675 a sequence of attempted matches.
4677 * senator.el (senator-menu-bar): Jump menu items.
4679 * semantic-tag-file.el: (semantic-dependency-tag-file):
4680 Setting the buffer to a tag before trying to find the include file
4681 is now optional. Note to fix in the future.
4683 * semantic-tag.el (semantic-tag-copy):
4684 Do not modify filename/overlay if this tag
4685 does not include a position.
4687 * semantic-grammar.el (eldoc-current-symbol-info):
4688 Use new semantic-idle-summary function
4689 instead of old senator version.
4691 * semanticdb.el (semanticdb-file-table-object): Delete buffers to files
4692 loaded in to refresh a tags table.
4694 * semanticdb-find.el (semanticdb-find-table-for-include-default):
4697 * semanticdb-find.el: (semanticdb-find-table-for-include-default):
4698 Use `expand-file-name' instead of `concat'.
4699 Use fname (which we calculated) when loading the table for the
4701 (semanticdb-find-log-flag, semanticdb-find-log-buffer-name): New var
4702 (semanticdb-find-toggle-logging, semanticdb-reset-log): New commands
4703 (semanticdb-find-log-move-to-end, semanticdb-find-log-new-search)
4704 (semanticdb-find-log-activity): New logging functions.
4705 (semanticdb-find-tags-collector): Use new logging functions.
4707 2004-01-09 David Ponce <david@dponce.com>
4710 Add doc directories into `Info-default-directory-list' instead of
4711 `Info-directory-list'. Use `expand-file-name' to manipulate
4714 2004-01-09 Eric M. Ludlam <zappo@gnu.org>
4716 * NEWS: Add lexical safety note.
4717 Add idle-scheduler related data.
4719 * doc/user-guide.texi (top): Add Idle Scheduler
4720 (Idle Scheduler): New node, new content
4721 (Minor Modes): Remove auto-parser mode and summary mode.
4723 * doc/app-dev-guide.texi (top):
4724 Renamed Parser Hooks to Parser Features. Added Idle Scheduling
4725 (Parser Features): New name. Add a menu.
4726 (Parser State): New Node, old content
4727 (Parser Hooks): New Node, old content
4728 (Lexical Safety): New Node with new text
4729 (Idle Scheduling): New node and new content
4731 * semantic-complete.el (semantic-collector-try-completion-whitespace):
4733 types of non-matching whitespace completion.
4735 2004-01-08 Eric M. Ludlam <zappo@gnu.org>
4737 * semantic-load.el (Info-directory-list):
4738 Add our directory to the master list.
4740 * doc/Makefile: Regenerated
4743 (semantic-user.info, semantic-appdev.info, semantic-langdev.info)
4744 (bovine.info, wisent.info): New manuals split from Documentation.
4746 * doc/wisent.texi, doc/user-guide.texi, doc/tags.texi:
4747 Convert to stand alone manual.
4749 * doc/semantic.texi:
4750 Convert the users guide, developers guide, an lang support guide into
4753 * doc/semanticheader.texi: Common macros for semantic manuals.
4755 * doc/lang-support-guide.texi: Convert to stand alone manual.
4756 Add notes in sections written for semantic 1.4 not yet updated.
4758 * doc/installation.texi:
4759 Add details about semantic being a part of CEDET.
4761 * doc/bovine.texi: Convert to stand alone manual.
4763 * doc/app-dev-guide.texi: Convert to stand alone manual.
4764 Add semanticdb search results node.
4765 Fixed a couple typos.
4767 2004-01-08 David Ponce <david@dponce.com>
4769 * semantic-lex.el (semantic-lex-catch-errors):
4770 Preserve the values of point, mark
4771 and the current buffer.
4773 * senator.el (senator-save-registered-mode-settings): Don't hang when
4774 `customize-save-variable' fails.
4776 2004-01-03 Eric M. Ludlam <zappo@gnu.org>
4778 * semantic-lex.el (semantic-lex-debug-break): Use `semantic-read-char'.
4780 2003-12-29 Eric M. Ludlam <zappo@gnu.org>
4783 (semantor-eldoc-use-color, semantic-eldoc-summary-function)
4784 (senator-find-current-symbol-tag)
4785 (senator-eldoc-print-current-symbol-info-default)
4786 (senator-eldoc-print-current-symbol-info): Deleted
4787 (eldoc-print-current-symbol-info): Deleted advice.
4788 (senator-try-expand-semantic): Catch errors on initial parse.
4790 2003-12-28 Eric M. Ludlam <zappo@gnu.org>
4793 (semantic-parse-tree-unparseable, semantic-parse-tree-unparseable-p):
4795 (semantic-new-buffer-fcn-was-run): New variable
4796 (semantic-active-p): Change to use above variable.
4797 (semantic-new-buffer-fcn): Use content of old `semantic-active-p' to
4798 detect activation state. Set new variable above to t.
4799 (bovinate): Don't show the parse dump buffer if CLEAR set.
4800 (semantic-bovinate-toplevel): Do not parse the buffer it it is
4801 currently set as "unparseable".
4803 * semantic-idle.el (semantic-idle-scheduler-idle-time): Fix doc.
4804 (semantic-before-idle-scheduler-reparse-hooks)
4805 (semantic-after-idle-scheduler-reparse-hooks): Update doc.
4806 (semantic-idle-scheduler-refresh-tags): Remove lexical catch
4807 functions. Use 'semantic-lex-catch-errors' instead.
4808 (semantic-idle-summary-current-symbol-info-default):
4809 Fix senator references.
4811 * semantic-lex.el (semantic-lex-catch-errors): New macro
4812 (edebug-setup-hook): Support above.
4814 2003-12-23 Eric M. Ludlam <zappo@gnu.org>
4816 * semanticdb-find.el (semanticdb-find-tags-collector):
4817 Call `semantic-throw-on-input'
4818 between each DB search.
4820 * semantic-idle.el: (smeantic-idle-scheduler-input-function)
4821 (semantic-idle-scheduler-user-input-waiting-p): Deleted
4822 (semantic-idle-scheduler-function): Message on caught errors.
4823 Use `semantic-exit-on-input' macro.
4825 * semantic-fw.el (semantic-varalias-obsolete):
4826 Only emit compatibility warnings on
4827 when byte compiling.
4828 (semantic-current-input-throw-symbol): New var.
4829 (semantic-exit-on-input, semantic-throw-on-input): New macros
4830 (semantic-test-throw-on-input): New test fcn
4831 (edebug-setup-hook): Add `semantic-exit-on-input' edubug support.
4833 2003-12-22 Eric M. Ludlam <zappo@gnu.org>
4835 * semantic-util-modes.el (global-semantic-auto-parse-mode, semantic-auto-parse-*):
4837 (global-semantic-summary-mode, semantic-summary-mode-*): Deleted
4838 (semantic-show-tag-boundaries-mode): Fix start message
4839 (semantic-stb-reparse-hook): Do not delete secondary overlays fcn start.
4840 Add a sanity check to prove that it wasn't needed.
4842 * Makefile: Regenerated from Project.ede;
4843 --no-site-init added to many compile commands.
4845 * Project.ede ("semantic"): Add semantic-idle.el
4847 * semantic-grammar.el (semantic-format-tag-abbreviate):
4849 (semantic-tag-boundary-p): New overload method
4850 (semantic-format-tag-summarize): Renamed from old.
4852 * senator.el ("Auto Parse", "Summaries): Delete old menu items
4853 ("Idle Scheduler", "Udle Summaries"): New menu items
4856 (global-semantic-summary-mode, global-semantic-auto-parse-mode):
4858 (global-semantic-idle-scheduler, global-semantic-idle-summary-mode):
4859 Enable these new modes.
4861 2003-12-21 Eric M. Ludlam <zappo@gnu.org>
4863 * semantic-idle.el (semantic-auto-parse-mode, global-semantic-auto-parse-mode):
4865 (define-semantic-idle-service): Fix cut & paste errors
4866 (semantic-idle-summary): Add overload symbols.
4867 (semantic-summary-mode, global-semantic-summary-mode): New alias
4869 * semantic-decorate.el (semantic-tag-secondary-overlays): Moved.
4870 (semantic-tag-get-secondary-overlay): New fcn
4871 (semantic-tag-delete-secondary-overlay): Use above
4873 2003-12-19 Eric M. Ludlam <zappo@gnu.org>
4875 * semantic-util-modes.el (semantic-show-parser-state-mode-setup):
4876 Use idle-scheduler hooks
4877 instead of auto-pase hooks.
4878 (semantic-show-tag-boundaries-setup): Use new hook for
4879 `semantic-after-toplevel-cache-change-hook'
4880 On disble, completely flush all found boundary overlays.
4881 (semantic-tag-boundary-p): doc fix
4882 (semantic-stb-flush-rogue-boundaries): New function
4883 (semantic-stb-after-full-reparse-hook): New function used as hook
4884 (semantic-stb-reparse-hook): Delete boundaries on tags before adding
4887 * semantic-idle.el (semantic-idle-scheduler-idle-time):
4889 (semantic-idle-scheduler-add, semantic-idle-scheduler-remove):
4890 Add autoload cookies
4891 (semantic-idle-scheduler-function): Reparse all buffers.
4892 Manage timers in this routines.
4893 Protect insides from long-jump.
4894 (semantic-idle-scheduler-refresh-tags): Remove timer management.
4895 (define-semantic-idle-service): New macro
4896 (semanticidle-summary-function)
4897 (semantic-idle-summary-find-current-symbol-tag)
4898 (semantic-idle-summary-current-symbol-info-default): New fcns
4899 (semantic-idle-summary): New idle minor mode.
4901 2003-12-18 Eric M. Ludlam <zappo@gnu.org>
4903 * semantic-idle.el: New file.
4905 2003-12-17 Eric M. Ludlam <zappo@gnu.org>
4907 * senator.el (senator-prefix-map):
4908 Have senator use the new semantic-complete
4909 jump prompt demos instead of senator-jump. (experiment).
4911 * doc/app-dev-guide.texi (Local Context):
4912 Added semantic-ctxt-current-thing.
4914 * semanticdb-find.el:
4915 (semanticdb-find-results-p, semanticdb-find-result-with-nil-p):
4916 Made tests more accurate.
4918 2003-12-16 David Ponce <david@dponce.com>
4920 * semantic-grammar-wy.el: Re-generated.
4922 * semantic-grammar.wy:
4923 Introduce new %keyword statement to declare keywords.
4924 Allow use of <token-type> forms in %put statements.
4926 (use_names): Add to start symbols.
4927 (KEYWORD): New keyword.
4928 (DEFAULT-PREC, NO-DEFAULT-PREC, KEYWORD, LANGUAGEMODE)
4929 (LEFT, NONASSOC, PACKAGE, PREC, PUT, QUOTEMODE, RIGHT)
4930 (SCOPESTART, START, TOKEN, USE-MACROS): Declare with %keyword
4932 (KEYWORDTABLE, OUTPUTFILE, PARSETABLE, SETUPFUNCTION)
4933 (TOKENTABLE): Remove. Obsolete.
4934 (decl): Add keyword_decl rule. Remove obsolete rules.
4935 (put_decl): Use put_name rule instead of SYMBOL.
4936 (put_names): Likewise.
4937 (put_name, keyword_decl, use_names): New rules.
4938 (use_name_list): New rule.
4939 (use_macros_decl): Use it.
4940 (keywordtable_decl, outputfile_decl, parsetable_decl)
4941 (setupfunction_decl, tokentable_decl): Remove. Obsolete.
4943 * semantic-grammar.el (semantic-grammar-lex-symbol):
4944 Accept colon as symbol prefix.
4945 (semantic-grammar-anchored-indentation): Take care of colon used
4948 2003-12-13 Eric M. Ludlam <zappo@gnu.org>
4950 * semantic-complete.el (semantic-complete-do-completion):
4952 (semantic-complete-next-action): fix doc
4953 (semantic-collector-abstract): Change type of last-all-completions
4954 (semantic-collector-next-action): If there are completions, return
4956 (semantic-collector-calculate-completions-raw): Put in a db table
4958 (semantic-collector-try-completion-whitespace): Handle case of exact
4959 matches amongst non exact matches
4960 (semantic-collector-calculate-cache): Put in a db table.
4962 2003-12-11 David Ponce <david@dponce.com>
4964 * senator.el (senator-eldoc-print-current-symbol-info): Check that
4965 `eldoc-echo-area-use-multiline-p' is defined.
4967 2003-12-11 Eric M. Ludlam <zappo@gnu.org>
4969 * bovine/semantic-el.el (semantic-ctxt-current-function):
4970 Make sure strings are returned.
4972 * semantic-util-modes.el: (semantic-highlight-attribute-face-private)
4973 (semantic-highlight-attribute-face-protected)
4974 (semantic-highlight-attribute-face-private): New colors.
4976 * NEWS: Fix names search-result -> find-result
4978 * semanticdb-file.el (semanticdb-create-database):
4979 Provde a more intelligent name for new DBs.
4981 * semanticdb.el (object-print): New method
4983 * semantic-cb.el (semantic-cb-new-class-browser): Turn of system DB.
4984 Use `semanticdb-brute-find-tags-by-class' to scan all files in a project.
4986 * semanticdb-find.el (semanticdb-find-result-prin1-to-string):
4988 (semanticdb-find-tags-by-class): doc fix.
4989 (semanticdb-brute-find-tags-by-class): New fcn
4991 * semantic-complete.el (semantic-collector-calculate-completions):
4992 Add new argument for PREFIX.
4993 (semantic-complete-default-to-tag): Use new arg
4994 (semantic-complete-current-match): Use new arg
4995 (semantic-complete-hack-word-boundaries): New function.
4996 (semantic-complete-do-completion): Use new arg and new fcn
4997 (semantic-complete-try-completion): Support partial completion
4998 of word boundary characters.
4999 (semantic-collector-abstract): Add cache for whitespace completion.
5000 (semantic-collector-next-action): Support whitespace completion
5002 (semantic-complete-next-action): Doc fix. (see previous)
5003 (semantic-collector-try-completion-whitespace)
5004 (semantic-collect-r-current-whitespace-completion): New fcns
5006 2003-12-10 Eric M. Ludlam <zappo@gnu.org>
5008 * semantic-lex.el (define-lex): Doc fix.
5010 2003-12-05 David Ponce <david@dponce.com>
5012 * wisent/wisent-java.wy (PAREN_BLOCK, BRACE_BLOCK, BRACK_BLOCK):
5015 * wisent/wisent-java-tags.wy (PAREN_BLOCK): Change type to <block>.
5016 (BRACE_BLOCK, BRACK_BLOCK): Likewise.
5018 * wisent/wisent-java-lex.el (wisent-java-lex-blocks): Remove.
5019 (wisent-java-tags-lexer): Use `semantic-lex-block-type'.
5020 (wisent-java-lexer): Ditto.
5022 * semantic-lex.el (semantic--lex-block-specs): New variable.
5023 (semantic--lex-delim-spec): New function.
5024 (semantic--lex-block-specs): New function.
5025 (semantic-lex-block-type): New lexical analyzer.
5027 2003-12-04 Eric M. Ludlam <zappo@gnu.org>
5029 * semantic-complete.el (semantic-complete-current-match):
5030 Account for new return arg of
5031 `semanticdb-find-result-nth'. Use `semanticdb-find-result-nth-in-buffer'
5032 when getting the final tag to return to the prompt.
5033 (semantic-complete-jump-local): Renamed from below.
5034 (semantic-complete-jump): Uses project level prompt for jumping.
5036 * semantic-complete.el (semantic-complete-choose-default):
5037 Moved to semantic-ctxt.el
5038 (semantic-complete-default-to-tag): Use `semantic-ctxt-current-thing'.
5039 (semantic-displayor-focus-request): Improve focus summary output.
5040 Make tag highlighting more robust to file loading.
5041 Show minibuffer message for position of current cycle, AND
5042 mimic completion on the current minibuffer contents.
5044 * semantic-ctxt.el (semantic-ctxt-current-thing): new function.
5046 * semantic-complete.el (semantic-displayor-focus-next-tag):
5047 Fixed to use new datatype of TABLE.
5048 (semantic-displayor-focus-request): Fixed to also show summaries if a
5049 tag cannot be focused on due to lack of position or lack of buffer.
5051 * semanticdb.el (semanticdb-get-buffer:semanticdb-abstract-table):
5053 (semanticdb-get-buffer:semanticdb-table): New method.
5054 (semanticdb-set-buffer): Use above.
5056 2003-12-01 David Ponce <david@dponce.com>
5058 * semantic-lex.el (semantic-lex-make-type-table):
5059 Reset ALIST before processing next
5062 2003-11-29 Eric M. Ludlam <zappo@gnu.org>
5064 * semanticdb-system.el (semanticdb-create-system-database):
5065 Add autoload cookie.
5067 * semantic-complete.el: (semantic-complete-read-tag-engine):
5068 Replaced setup with something simpler.
5069 Replaced end with single function call.
5070 (semantic-completion-message): Moved
5071 (semantic-complete-active-default): New variable
5072 (semantic-complete-choose-default): Moved
5073 (semantic-complete-default-to-tag): New
5074 (semantic-complete-current-matched-tag): New variable
5075 (semantic-complete-current-match): New fcn
5076 (semantic-complete-done): Moved and simplified.
5077 (semantic-complete-try-completion): Pass extra arg to `semantic-collector-try-completion'
5078 (semantic-complete-do-completion):
5079 Rebind some globals to local variables.
5080 Add implementation for 'scroll action type.
5081 (semantic-complete-next-action): New fcn.
5082 (semantic-collector-abstract): Make 'last-prefix protected.
5083 Rename `match-list' to `current-exact-match'.
5084 (semantic-collector-next-action): Move and simplify.
5085 (semantic-collector-calculate-completions): Differentiate between
5086 single and multiple exact matches vs multiple different matches.
5087 (semantic-collector-current-exact-match): New name.
5088 (semantic-collector-all-completions, semantic-collector-try-completion):
5089 Accept and use new prefix argument.
5090 (semantic-collector-flush): Account for renamed match-list.
5091 (semantic-displayor-abstract): Make table and last-prefix protected.
5092 (semantic-displayor-next-action): Return 'scroll instead of 'focus.
5093 (semantic-displayor-focus-request): Ding
5094 (semantic-displayor-scroll-request): New method
5095 (semantic-displayor-focus-abstract): Make 'focus protected.
5096 (semantic-displayor-next-action): New method.
5097 (semantic-displayor-current-focus): More protection around search.
5099 2003-11-27 Eric M. Ludlam <zappo@gnu.org>
5101 * semanticdb-el.el: (semanticdb-find-tags-by-name-method)
5102 (semanticdb-find-tags-by-name-regexp-method)
5103 (semanticdb-find-tags-for-completion-method)
5104 (semanticdb-find-tags-by-class-method)
5105 (semanticdb-deep-find-tags-by-name-method)
5106 (semanticdb-deep-find-tags-by-name-regexp-method)
5107 (semanticdb-deep-find-tags-external-children-of-type-method):
5108 Accept new TAGS argument. Dispatch to superclass if passed in.
5110 * semanticdb-find.el (semanticdb-find-translate-path): Update doc
5111 (semanticdb-find-translate-path-default):
5112 Support find results as a path.
5113 (semanticdb-find-result-nth, semantic-find-result-nth-in-buffer):
5114 Return a cons cell which includes the table the tag was found in.
5115 (semanticdb-find-tags-collector): Handle find results in the path.
5116 (semanticdb-find-tags-by-name, semanticdb-find-tags-by-name-regexp)
5117 (semanticdb-find-tags-for-completion, semanticdb-find-tags-by-class)
5118 (semanticdb-deep-find-tags-by-name, semanticdb-deep-find-tags-by-name-regexp)
5119 (semanticdb-deep-find-tags-for-completion)
5120 (semanticdb-brute-deep-find-tags-by-name)
5121 (semanticdb-find-tags-external-children-of-type):
5122 Lambda expression sent to collector taks a TAGS argument.
5123 (semanticdb-find-tags-by-name-method):
5124 (semanticdb-find-tags-by-for-completion-method)
5125 (semanticdb-find-tags-by-class-method)
5126 (semanticdb-find-deep-tags-by-name-method)
5127 (semanticdb-find-deep-tags-by-name-regexp-method)
5128 (semanticdb-find-deep-tags-by-for-completion-method):
5129 Accept a TAGS argument into the method. Search that tag list if
5132 2003-11-20 Eric M. Ludlam <zappo@gnu.org>
5134 * semantic-complete.el: Update commentary.
5135 (semantic-complete-read-tag-engine): handle empty match-lists.
5136 handle tags that do not have positions.
5137 Use new semanticdb find results API for tags read from a database.
5138 (semantic-complete-done): Force full recalculation on CR.
5139 (semantic-complete-try-completion): Use new semanticdb find result
5140 api. make sure minibuffer contents are flushed.
5141 (semantic-collector-abstract): Force the cache to be of :type
5142 semanticdb-find-result-with-nil.
5143 (semantic-collector-get-cache,
5144 semantic-collector-calculate-completions-raw):
5146 (semantic-collector-calculate-completions):
5148 (semantic-collector-get-match-list, semantic-collector-get-match):
5150 (semantic-collector-calculate-cache): Create cache in semanticdb
5152 (semantic-collector-project-abstract): New class.
5153 (semantic-collector-project): New class.
5154 (semantic-collector-calculate-completions-raw): New method on above.
5155 9semantic-collector-project-brutish): New class.
5156 (semantic-collector-calculate-completions-raw): New method on above.
5157 (semantic-displayor-abstract): Use db find result as table type.
5158 (semantic-displayor-current-focus): For above, return nil.
5159 (semantic-displayor-show-request): Use semanticdb-strip-find-results.
5160 (semantic-displayor-focus-abstract): New slot 'find-file-focus'.
5161 (semantic-displayor-current-focus): For above, use semanticdb-find-results-nth.
5162 (semantic-displayor-tradition-with-focus-highlight): Specify
5163 'find-file-focus' slot value as t.
5164 (semantic-complete-read-tag-project): New function
5165 (semantic-complete-test): Change which function is tested here.
5167 * semantic-format.el (semantic-format-tag-protection-symbol-to-string-assoc-list):
5170 (semantic-format-tag-uml-protection-to-string): Now an override
5172 (semantic-format-tag-uml-protection-to-string-default): New function.
5173 Now uses semantic-format-tag-protection-symbol-to-string-assoc-list.
5175 * semantic-texi.el (semantic-texi-associated-files):
5176 Use `semanticdb-get-database-tables' method.
5178 * semantic-imenu.el (semantic-create-imenu-directory-index):
5179 Use `semanticdb-get-database-tables' method.
5181 * semanticdb-search.el:
5182 (semanticdb-find-nonterminal-by-function-method):
5183 Use `semanticdb-get-database-tables' method.
5185 * semanticdb-find.el (semanticdb-find-translate-path-brutish-default):
5186 Use `semanticdb-get-database-tables' method.
5187 (semanticdb-strip-find-results, semanticdb-find-results-p)
5188 (semanticdb-find-results-with-nil-p, semanticdb-find-result-length)
5189 (semanticdb-find-result-nth): New methods
5190 (semanticdb-find-tags-collector): Protect action by `save-excursion'.
5191 (semanticdb-brute-deep-find-tags-for-completion): new function.
5193 * semanticdb-file.el (semanticdb-load-database):
5194 Use `semanticdb-get-database-tables' method.
5196 * semantic-chart.el (semantic-chart-database-size):
5197 Use `semanticdb-get-database-tables' method.
5199 * semanticdb-el.el (semanticdb-file-table): Call new below method.
5200 (emanticdb-get-database-tables): Body was 'semanticdb-file-table'
5201 Table slot either has a value, or is unbound. It isn't nil.
5202 (semanticdb-elisp-sym-function-arglist): Use eieio function that
5204 (semanticdb-elisp-sym->tag): More robust test for 'user-visible'
5207 * semanticdb.el (semanticdb-project-database):
5208 Make the 'tables' slot protected.
5209 Add :accessor `semanticdb-get-database-tables'.
5210 (semanticdb-flush-database-tables): New method
5211 (semanticdb-current-database-list): Make sure `reference-directory'
5212 is bound before using it.
5213 (semanticdb-database-sanity-check): Use
5214 `semanticdb-get-database-tables' method.
5216 * Makefile, wisent/Makefile, wisent/Project.ede, Project.ede, bovine/Makefile, bovine/Project.ede, bovine/semantic-erlang.el, bovine/semantic-make.el, semantic-format.el, semantic-fw.el, semantic-grammar.el, semantic-imenu.el, semantic-regtest.el, semantic-sort.el, semantic-tag.el, semanticdb-file.el, semanticdb-find.el, semanticdb-search.el, semanticdb.el, senator.el:
5217 Merged with cedet-1p0beta1 branch.
5219 2003-11-12 Eric M. Ludlam <zappo@gnu.org>
5221 * Project.ede ("semantic"): Moved metagrammar after autoloads.
5223 2003-11-10 David Ponce <david@dponce.com>
5225 * semantic-regtest.el: Fix wrong line endings.
5227 * semantic-grammar.el: XEmacs needs font-lock at runtime.
5228 (semantic-grammar-item-value): Handle characters as integers in
5229 XEmacs to fix `pp-to-string' "Unbalanced parentheses" errors.
5230 (semantic-grammar-package): Don't use `replace-match' which have a
5231 different behavior in XEmacs and GNU Emacs.
5232 (semantic-grammar-batch-build-one-package): Use
5233 `byte-compile-file' instead of `batch-byte-compile-file' which is
5234 undefined in XEmacs.
5236 * semantic-fw.el (semantic-varalias-obsolete):
5237 Take care of `defvaralias' failures.
5238 For example, XEmacs don't permit to alias a buffer local variable.
5240 * Makefile (metagrammar): Add missing dependency on autoloads.
5242 2003-11-07 David Ponce <david@dponce.com>
5244 * bovine/semantic-make.el (semantic-make-expand-tag):
5245 Fix expansion of include tags.
5247 2003-11-05 David Ponce <david@dponce.com>
5249 * semantic-sort.el (semantic-adopt-external-members):
5250 Use the tag API to add external
5251 members. Thanks to Klaus Berndl <klaus.berndl@sdm.de>.
5253 2003-11-01 David Ponce <david@dponce.com>
5255 * senator.el: (semantic-step-at-token-ids)
5256 (senator-step-at-start-end-token-ids)
5257 (senator-add-log-tokens): Use `semantic-varalias-obsolete'.
5259 * semantic-tag.el (semantic-expand-nonterminal):
5260 Use `semantic-varalias-obsolete'.
5262 * semantic-imenu.el: (semantic-imenu-bucketize-type-parts)
5263 (semantic-imenu-expandable-token)
5264 (semantic-imenu-expand-type-parts): Use
5265 `semantic-varalias-obsolete'.
5267 * semantic-fw.el (semantic-varalias-obsolete): New function.
5268 (semantic-fw-font-lock-keywords): Highlight it.
5270 * semantic-format.el: (semantic-token->text-functions)
5271 (semantic-token->text-custom-list)
5272 (semantic-face-alist): Use `semantic-varalias-obsolete'.
5274 2003-10-30 David Ponce <david@dponce.com>
5276 * bovine/semantic-erlang.el (semantic-erlang-default-setup):
5278 `semantic-erlang-by--install-parser'.
5280 2003-10-29 Eric M. Ludlam <zappo@gnu.org>
5282 * bovine/Makefile (languages_LISP):
5283 Added erlang-edoc.el, and semantic-erlang.el.
5285 * bovine/Project.ede ("languages"):
5286 Added erlang-edoc.el, and semantic-erlang.el.
5288 * senator.el (senator-completion-menu-popup):
5289 Disable imenu jumping while using
5290 the popup. The tags are not valid.
5292 * semanticdb-find.el: (semanticdb-find-table-for-include-default):
5293 Attempted to get dependency search routine working. Left commented
5294 out since it has some bugs still.
5296 * semanticdb-file.el (semanticdb-create-database):
5297 Set reference directory to a value.
5299 * semanticdb.el (semanticdb-create-database):
5300 Set reference directory to a value.
5301 (semanticdb-semantic-init-hook-fcn): Do not set reference directory
5304 2003-10-27 Eric M. Ludlam <zappo@gnu.org>
5306 * senator.el (senator-completion-menu-item):
5307 Use semanticdb-printable-name instead
5308 of directly referencing the file slot.
5311 * semanticdb.el, semanticdb-search.el (semanticdb-printable-name):
5314 2003-10-22 Eric M. Ludlam <zappo@gnu.org>
5316 * semantic-grammar.el (semantic-grammar-batch-build-one-package):
5319 * wisent/Makefile (wisent_LISP): add wisent-grammar-macros.el
5321 * wisent/Project.ede (wisent): add wisent-grammar-macros.el
5323 * bovine/Makefile (bovinator_LISP): Add bovine-grammar-macros.el
5325 * bovine/Project.ede (bovinator): Add bovine-grammar-macros.el
5327 * Project.ede: Remove wy. Add metagrammar.
5329 * Makefile (LOADPATH): Updated
5330 (all): Remove wy, add metagrammar
5331 (dist): remove wy, add metagrammar
5333 2003-10-15 Eric M. Ludlam <zappo@gnu.org>
5335 * doc/user-guide.texi (Summary Mode): Added summary function option.
5337 * senator.el (senator-eldoc-summary-function): New option.
5338 (senator-eldoc-print-current-symbol-info):
5339 Obey `eldoc-echo-area-use-multiline-p'
5341 2003-10-02 David Ponce <david@dponce.com>
5344 Clarify definition of rule precedence in "Grammar format" node.
5346 * semantic-grammar-wy.el: Re-generate.
5348 * semantic-grammar.wy:
5349 Handle %default-prec/%no-default-prec declarations introduced in
5350 Bison 1.875c, to enable/disable default rule precedences.
5351 (NO-DEFAULT-PREC): New keyword.
5352 (default_prec_decl): Remove argument.
5353 (no_default_prec_decl): New rule.
5356 2003-10-02 Eric M. Ludlam <zappo@gnu.org>
5358 * Project.ede: Now a meta-subproject.
5360 * wisent/Makefile, tests/Makefile, doc/Makefile, bovine/Makefile (dist):
5363 * Makefile (dist): Remove local creation of tar file.
5364 (dist,tags): Call subprojects differently.
5366 2003-10-01 David Ponce <david@dponce.com>
5369 Add paragraphs on default-prec feature in "Grammar format" node.
5371 * semantic-grammar-wy.el: Re-generate.
5373 * semantic-grammar.el (semantic-grammar-create-package):
5374 Generate Lisp code if the
5375 grammar in the current buffer is modified.
5377 * semantic-grammar.wy:
5378 Handle new %default-prec declaration introduced in Bison 1.875c,
5379 to enable (the default) or disable default rule precedences.
5380 (DEFAULT-PREC): New token.
5381 (default_prec_decl): New rule.
5384 * wisent/wisent-comp.el:
5385 Handle new default-prec feature introduced in Bison 1.875c,
5386 to enable (the default) or disable default rule precedences.
5387 Add `default-prec' to compile-grammar context.
5388 (wisent-parse-grammar): Handle `default-prec' in associativity
5391 2003-09-24 Eric M. Ludlam <zappo@gnu.org>
5393 * semantic-debug.el, semanticdb.el, semantic-analyze.el:
5394 Dependent on eieio 0.18beta1.
5396 2003-09-24 David Ponce <david@dponce.com>
5398 * sformat.el, working.el: Move to common.
5400 * Makefile: Re-generate.
5402 * Project.ede (tools):
5403 Remove sformat.el and working.el from target sources.
5405 2003-09-18 David Ponce <david@dponce.com>
5407 * Makefile: Re-generated.
5409 * Project.ede (init): Remove semantic-autogen.el from target.
5411 2003-09-17 David Ponce <david@dponce.com>
5413 * senator.el (senator-menu-bar): Fix typo.
5415 * Makefile: Re-generated.
5417 * Project.ede (autoloads):
5418 Change semantic-al.el by semantic-loaddefs.el.
5420 * semantic-fw.el: Load semantic-loaddefs instead of semantic-al.
5422 2003-09-16 David Ponce <david@dponce.com>
5424 * Makefile: Re-generated.
5426 * semantic-edit.el (semantic-changes-in-region):
5427 Don't go outside buffer's bounds.
5429 * bovine/erlang.bnf, semantic-autogen.el: Remove. Obsolete.
5431 * wisent/Wisent.mk: Remove. No more used.
5433 * wisent/Makefile: Re-generated.
5435 * wisent/Project.ede (make): Remove target. No more useful.
5437 * Makefile: Re-generated.
5439 2003-09-12 David Ponce <david@dponce.com>
5441 * semantic-tag.el (semantic--tag-hook-value): New variable.
5442 (semantic-tag-add-hook): Use `add-hook'.
5443 (semantic-tag-remove-hook): Use `remove-hook'.
5444 (semantic--tag-run-hooks): Use new variable above.
5446 2003-09-11 Eric M. Ludlam <zappo@gnu.org>
5448 * NEWS: (Versioning, Naming conventions, Grammar build process)
5449 (semanticdb-find.el, semantic-show-tag-boundaries)
5450 (semantic-highlight-by-attribute-mode): New
5451 (bovine-grammar-mode): don't support bnf.
5452 (semanticdb-search.el): Updated.
5454 (Erlang parser added): Updated
5456 2003-09-10 David Ponce <david@dponce.com>
5458 * Makefile: Re-generated.
5460 * Project.ede (autoloads target):
5461 Add "bovine" and "wisent" sub-directories to
5464 2003-09-09 David Ponce <david@dponce.com>
5467 Use a sub-menu for each Semantic minor mode to shorten the
5470 (senator-base-local-label)
5471 (senator-base-global-label)
5472 (senator-uniquify-count): Remove.
5473 (senator-build-command-menu-item): Simplify.
5474 (senator-mode-menu-item-format)
5475 (senator-mode-menu-item-format-tty): Remove.
5476 (senator-mode-menu-local-toggle-label)
5477 (senator-mode-menu-global-toggle-label): New options.
5478 (senator-build-mode-menu-items): Renamed to...
5479 (senator-build-mode-sub-menu): Build a minor mode sub-menu instead
5480 of separate menu items.
5481 (senator-build-modes-menu): Use it.
5483 2003-09-08 David Ponce <david@dponce.com>
5485 * wisent/Makefile: Re-generated.
5487 * wisent/Project.ede (taggers):
5488 Move after "wisent" target to use byte-compiled
5489 grammar compiler and speed up build.
5490 (languages): Remove "wisent-awk-wy.el" from target.
5492 * semantic-grammar-wy.el: Resurrect. Needed to parse grammars!
5494 * wisent/wisent-c-wy.el, wisent/wisent-calc-wy.el, wisent/wisent-java-tags-wy.el, wisent/wisent-java-wy.el, wisent/wisent-python-wy.el:
5497 * wisent/fdl.texi: Remove. Moved to doc.
5499 * semantic-grammar-wy.el: Remove. Generated.
5501 * wisent/wisent-grammar.el (semantic-find): Require at compile time.
5503 * doc/Makefile: Re-generated.
5505 * doc/Project.ede (Documentation): Remove semanticdb.texi from target.
5507 * bovine/Makefile: Re-generated.
5509 * bovine/Project.ede (languages): Add semantic-java.el to target.
5511 * semantic-sort.el: (semantic-tag-external-member-parent)
5512 (semantic-tag-external-member-p)
5513 (semantic-tag-external-member-children): Add autoload cookie.
5515 2003-09-07 David Ponce <david@dponce.com>
5517 * bovine/semantic-java.el (semantic-java-prototype-nonterminal):
5518 Add as obsolete alias of
5519 `semantic-format-prototype-tag-java-mode'.
5521 * wisent/wisent-bovine.el (wisent-parse-region):
5522 Fix local variable name and invalid
5525 * semantic-sort.el (semantic-find): Add compile-time require.
5527 * semantic-sb.el (inversion-require): Fix speedbar version.
5529 * semantic-grammar.el (semantic-find): Add compile-time require.
5531 * semantic-find.el (semantic-sort): Remove compile-time require.
5533 2003-09-07 Eric M. Ludlam <zappo@gnu.org>
5535 * semantic-cb.el (semantic-dot): autload cookie.
5537 * semanticdb-el.el (semanticdb-find-tags-by-class-method): New method
5539 * wisent/Makefile (doc): Removed vars and rule.
5541 * wisent/Project.ede (doc): Removed
5543 * Makefile (LOADDEFS): New
5544 (maintenance_LISP): removed autoload file
5546 (semantic-al.el): new rule
5547 (init): remove semantic-al.el
5548 (dist): add loaddefs.
5550 * Project.ede ("init"): Removed autoload generator
5553 2003-09-06 Eric M. Ludlam <zappo@gnu.org>
5555 * bovine/semantic-scm-by.el: autogenerated now
5557 * bovine/semantic-make-by.el: autogenerated now.
5559 * bovine/semantic-erlang-by.el: autogenerated now
5561 * bovine/semantic-c-by.el: Auto generated in makefile
5563 2003-09-05 David Ponce <david@dponce.com>
5565 * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-get-local-variables):
5567 define-mode-overload-implementation of
5568 `semantic-get-local-variables'.
5569 (semantic-install-function-overrides): Remove call.
5571 * bovine/semantic-java.el: (semantic-java-prototype-function)
5572 (semantic-java-prototype-variable)
5573 (semantic-java-prototype-type): Doc fix.
5574 (semantic-java-prototype-tag): Replace by a
5575 define-mode-overload-implementation of
5576 `semantic-format-prototype-tag'.
5577 (semantic-java-find-documentation): Replace by a
5578 define-mode-overload-implementation of
5579 `semantic-documentation-for-tag'. Fix implementation.
5581 * semantic-doc.el (semantic-doc-snarf-comment-for-tag):
5582 As indicated in doc string
5583 allow to pass `lex' in NOSNARF argument.
5584 (semantic-find-documentation): Declare obsolete.
5586 2003-09-05 Eric M. Ludlam <zappo@gnu.org>
5588 * bovine/semantic-scm.el:
5589 (semantic-format-tag-prototype, semantic-documentation-for-tag)
5590 (semantic-insert-foreign-tag): New name compatible
5592 * bovine/semantic-el.el (semantic-bovine): New requirement
5594 * bovine/semantic-bovine.el (semantic-lambda): Add autoload
5596 2003-09-02 Eric M. Ludlam <zappo@gnu.org>
5598 * senator.el (senator-transpose-tags-down): doc fix
5600 * semantic-tag-file.el (semantic-go-to-tag): Doc fix.
5602 * semantic-sort.el (semantic-adopt-external-members):
5603 Doc fix. Use new names.
5604 (semantic-nonterminal-external-member-parent): Renamed to
5605 (semantic-tag-external-member-parent): New name.
5606 (semantic-nonterminal-external-member-parent-default): Renamed to
5607 (semantic-tag-external-member-parent-default): new name
5608 (semantic-nonterminal-external-member-p): renamed to
5609 (semantic-tag-external-member-p): new name
5610 (semantic-nonterminal-external-member-p-default): renamed to
5611 (semantic-tag-external-member-p-default): new name
5612 (semantic-nonterminal-external-member-children): renamed to
5613 (semantic-tag-external-member-children): new name
5614 (semantic-nonterminal-external-member-children-default): renamed to
5615 (semantic-tag-external-member-children-default): new name
5618 Make documentation aspects of overload functions available to external modules:
5619 (semantic-overload-symbol-from-function): new function
5620 (define-overload): Use above
5621 (semantic-overload-docstring-extension): New function
5622 (semantic-augment-function-help): Use above
5624 * semantic-find.el: (semantic-find-tags-external-children-of-type):
5625 Use `semantic-tag-extenal-member-parent'.
5627 * semantic-complete.el (semantic-complete-read-tag-buffer-deep):
5630 * semantic-cb.el (semantic-cb-convert-type):
5631 Use `semantic-tag-extenal-member-children'.
5633 * semantic-analyze.el (semantic-analyze-type-parts):
5634 Use `semantic-tag-extenal-member-children'.
5636 2003-09-02 David Ponce <david@dponce.com>
5638 * bovine/semantic-bovine.el (semantic-lambda):
5639 Move here from semantic/semantic.el.
5640 (semantic-bovinate-nonterminal-db-nt): Doc fix.
5642 * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder):
5645 * semantic.el (semantic-toplevel-bovine-table): Doc fix.
5646 (semantic-toplevel-bovine-table-source): Remove. No more used.
5647 (semantic-lambda): Move to bovine/semantic-bovine.el.
5648 (semantic-bovinate-region-until-error)
5649 (semantic-bovinate-from-nonterminal-full): Make obsolete.
5651 * semantic-util.el (semantic-equivalent-major-modes): Doc fix.
5653 2003-09-01 Eric M. Ludlam <zappo@gnu.org>
5656 (Wisent Overview, Wisent Grammar, Grammar format, Example)
5657 (Compiling a grammar, Conflicts, Grammar Debugging)
5658 (Understanding the automaton, Wisent Parsing)
5659 (Writing a lexer, Actions goodies, Report errors)
5660 (Error recovery, Debugging actions, Wisent Semantic)
5661 (WY grammar format, Percent-keywords, WY Major Mode)
5662 (Grammar styles, Iterative style, Bison style)
5663 (Mixed style, Start nonterminals, Useful functions)
5664 (Wisent Lex, Wisent Index): Updated @section and @node names
5665 to be compatible with makeinfo.
5667 * doc/user-guide.texi (senator): Fixed ref.
5669 * doc/lang-support-guide.texi (Language Support Developer's Guide):
5671 (Keywords): @ref updates.
5672 (Keyword Properties): Added property tables
5673 (Writing Parsers): Update refs
5674 (External Parsers, Bovine Parsers, Wisent Parsers, Grammar)
5675 (Programming Environment): Updated sections to be makeinfo compatible.
5678 (%start, %languagemode, %token, Bovine Grammar Rules)
5679 (Optional Lambda Expression): Updated sectioning names to make
5680 compatible with makeinfo.
5682 2003-08-31 David Ponce <david@dponce.com>
5684 * wisent/wisent-grammar-macros.el: (wisent-grammar-EXPAND)
5685 (wisent-grammar-EXPANDFULL): Doc fix.
5686 (wisent-grammar-TAG)
5687 (wisent-grammar-VARIABLE-TAG)
5688 (wisent-grammar-FUNCTION-TAG)
5689 (wisent-grammar-TYPE-TAG)
5690 (wisent-grammar-INCLUDE-TAG)
5691 (wisent-grammar-PACKAGE-TAG)
5692 (wisent-grammar-CODE-TAG)
5693 (wisent-grammar-EXPANDTAG)
5694 (wisent-grammar-AST-ADD)
5695 (wisent-grammar-AST-PUT)
5696 (wisent-grammar-AST-GET)
5697 (wisent-grammar-AST-GET1)
5698 (wisent-grammar-AST-GET-STRING)
5699 (wisent-grammar-AST-MERGE): Use explicit arguments.
5701 * bovine/semantic-scm-by.el, bovine/semantic-erlang-by.el:
5704 * bovine/scheme.by (scheme): Fix call to the EXPAND macro.
5706 * bovine/erlang.by: (module-attr, import-attr, import-name-list)
5707 (fun-clause, macro-def, include-dir)
5708 (include-lib-dir): Fix call to the EXPAND macro.
5709 (record-decl, record-def): Fix call to the EXPANDFULL macro.
5711 * bovine/bovine-grammar-macros.el: (bovine-grammar-EXPAND)
5712 (bovine-grammar-EXPANDFULL)
5713 (bovine-grammar-TAG)
5714 (bovine-grammar-VARIABLE-TAG)
5715 (bovine-grammar-FUNCTION-TAG)
5716 (bovine-grammar-TYPE-TAG)
5717 (bovine-grammar-INCLUDE-TAG)
5718 (bovine-grammar-PACKAGE-TAG)
5719 (bovine-grammar-CODE-TAG): Use explicit arguments.
5721 * semantic-grammar.el (semantic-grammar-create-package):
5722 Move insert of declaration
5723 header into declaration part.
5725 2003-08-31 Eric M. Ludlam <zappo@gnu.org>
5727 * senator.el: (senator-transpose-tags-up)
5728 (senator-transpose-tags-down): New commands.
5730 * semantic-texi.el (semantic-default-texi-setup):
5731 Bind f9 to update texi from texi.
5734 Converted from stand along documentation to part of semantic manual.
5735 (Wisent Parsers): Renamed.
5736 (Wisent Grammar): Renamed
5737 (Wisent Parsing): Renamed
5738 (Wisent Index): Unchaptered.
5740 * doc/semantic.texi: Added Richard to AUTHORS.
5742 * doc/Project.ede, doc/Makefile: Added bovine and wisent texi files.
5744 * doc/lang-support-guide.texi (Language Support Developer's Guide):
5746 (Language Support Overview): Use semantic macro.
5747 (Writing Parsers): Divided into three parser type sections.
5748 (Writing Grammars): Emptied out.
5750 * doc/bovine.texi: New.
5752 * doc/app-dev-guide.texi (Override Methods):
5753 Add pointer to the app dev guide.
5754 (Tag Details): Anchors and obsolete tags..
5755 (System Databases): Added Anchor.
5757 * bovine/semantic-el.el (semantic-elisp-use-read):
5758 Add an :overloadable attribute.
5759 (semantic-emacs-lisp-overridable-doc)
5760 (semantic-emacs-lisp-obsoleted-doc): New functions
5761 (semantic-documentation-for-tag): Add above new info to doc strings.
5763 * semantic.texi: Now exists in the doc directory.
5765 * doc/wisent.texi, wisent/wisent.texi:
5766 Renamed wisent/wisent.texi to doc/wisent.texi
5768 * document.el (document-insert-texinfo):
5769 Add an anchor to all definitions.
5771 2003-08-30 Eric M. Ludlam <zappo@gnu.org>
5773 * doc/user-guide.texi: (Script Generated Cache Files)
5774 (Create System Databases): New sections.
5776 * doc/app-dev-guide.texi (Semantic Database):
5777 Added new sections for seraching and system databases.
5778 (Semanticdb in Programs): Updated
5779 (Semanticdb Tag Queries): Updated
5781 * doc/app-dev-guide.texi: (Tag Collectors)
5782 (Tag Displayors): Removed class hierarcy. (subsubsubsections bad.)
5783 (Override Methods): New node `tag-members'.
5784 (Format Tag): Updated all functions
5785 (Tag members): New section
5786 (Tag Details): Updated all functions
5787 (Local Context): Updated all functions
5788 (Parser Hooks): updated all hooks.
5790 2003-08-29 Eric M. Ludlam <zappo@gnu.org>
5792 * doc/app-dev-guide.texi (Application Developer's Guide):
5793 Fix menu. Add semanticdb.
5794 (Tags at Point): Add next/prev by overlay.
5795 (Tag Completion): Delegate previous doc as "old".
5796 All new doc for the new `semantic-complete.el' code.
5797 (Format Tag): Fcn name fixes.
5798 (Semantic Database): new
5800 * bovine/Makefile (bovinator_LISP): Removed semantic-bnf.el
5802 * Makefile: Added EDE onto the load path.
5804 * Project.ede: Added ede as a path extension.
5806 * semantic-util-modes.el (semantic-decorate): New require.
5808 * semantic-util.el (semanticdb): New require.
5810 * semantic-texi.el (semantic-doc): New require
5811 (semantic-texi-find-documentation): Fix compiler warning.
5812 (semantic-texi-update-doc-from-texi): Fix prototype doc transfer.
5813 (semantic-texi-update-doc-from-source): Fix compiler warning.
5815 * semantic-sort.el (semantic-bucketize-tag-class): Fix doc.
5817 * semantic-grammar.el (semantic-format): new require.
5819 * semantic-format.el (semantic-format-tag-summarize-default):
5821 function. Just get the class.
5823 * semantic-find.el (semantic-sort): New require.
5825 * semantic-doc.el (semantic-documentation-for-tag):
5826 Use `semantic-go-to-tag'.
5828 * semantic-decorate.el (semantic-tag-delete-secondary-overlay):
5829 Added autoload cookie.
5831 * semanticdb-el.el (eieio-opt):
5832 New require for byte-compiler modifications.
5834 * semantic-cb.el (semanticdb-find, semantic-sort): New require
5835 (eieio-speedbar-handle-click): Rename token to tag.
5837 * semantic-analyze.el (semantic-sort): new require.
5839 * bovine/semantic-bnf.el: *** empty log message ***
5841 * bovine/Project.ede (bovinator): Remove semantic-bnf.el
5843 * semantic-util.el (semantic-something-to-tag-table):
5844 Fixed compiler warnings
5845 (semantic-recursive-find-nonterminal-by-name):
5846 Replace obsoleted function call with new call.
5848 2003-08-29 David Ponce <david@dponce.com>
5850 * bovine/semantic-erlang-by.el: Re-generated.
5852 * bovine/erlang.by (record-def): Fix call to TYPE-TAG.
5853 (include-dir, include-lib-dir): Fix call to INCLUDE-TAG.
5855 * semantic-grammar.el (semantic-grammar-buffer-file): New function.
5856 (semantic-grammar-package, semantic-grammar-keywordtable)
5857 (semantic-grammar-tokentable, semantic-grammar-parsetable)
5858 (semantic-grammar-setupfunction, semantic-grammar-header)
5859 (semantic-grammar-footer): Use it.
5861 (semantic-grammar-batch-build-one-package): Increase some Emacs
5862 limits to byte-compile complex grammar tables.
5864 2003-08-29 Eric M. Ludlam <zappo@gnu.org>
5866 * doc/tags.texi (Semantic Tags): New menu item.
5867 (Tag Hooks): New section
5868 (Misc Tag Internals): Add refs to tag hooks.
5870 * doc/user-guide.texi (senator): Fix Command typo
5871 (semanticdb): Removed Semanticdb configuration node.
5873 * doc/overview.texi (Semantic Components):
5874 Remove BNF and bovine references.
5876 * doc/user-guide.texi (semanticdb): Doc fix
5877 (Semanticdb Configuration): Updated.
5878 (Semanticdb Tag Storage, Semanticdb Search Configuration)
5879 (Semanticdb System Backends, Changing Backends): New subsubsections.
5881 2003-08-28 Eric M. Ludlam <zappo@gnu.org>
5883 * semantic-ede-grammar.el (ede-proj-makefile-insert-dist-dependencies):
5886 2003-08-28 David Ponce <david@dponce.com>
5888 * bovine/semantic-erlang-by.el: Re-generated.
5890 * bovine/erlang.by (binary-segment-rest):
5891 Use basic-type instead of integer-literal.
5892 (binary-unit): Likewise.
5894 2003-08-28 Eric M. Ludlam <zappo@gnu.org>
5896 * doc/lang-support-guide.texi: (Writing Lexers)
5897 (Lexer Overview): Change to `semantic-lex'.
5898 (Lexer Options): Deleted
5899 (Lexer Construction): New
5900 (Lexer Built In Analyzers): New
5902 (Writing Parsers): Added note to self.
5903 (Rules): Updated just enough so it compiles.
5905 * bovine/Makefile (by_SEMANTIC_GRAMMAR): Added erlang.by
5907 * bovine/Project.ede ("by"): Added erlang.by
5909 * bovine/erlang.bnf: (binary-segment-rest)
5910 (binary-unit): David Wallin's changes.
5912 2003-08-28 David Ponce <david@dponce.com>
5914 * bovine/semantic-erlang.el: Convert old BNF grammar to new BY format.
5916 (semantic-erlang-by): Require.
5917 (semantic-erlang-lex-char)
5918 (semantic-erlang-lexer): New function.
5919 (semantic-default-erlang-setup): Rename to...
5920 (semantic-erlang-default-setup): New. Update all references.
5921 (semantic-toplevel-erlang-bovine-table)
5922 (semantic-erlang-keyword-table): Remove.
5924 * bovine/semantic-erlang-by.el, bovine/erlang.by: New file.
5926 * semantic-util-modes.el: (semantic-stickyfunc-old-hlf)
5927 (semantic-stickyfunc-header-line-format): New variables.
5928 (semantic-stickyfunc-mode-setup): When turning sticky func mode
5929 on/off, take care of a header line previously there.
5931 2003-08-28 Eric M. Ludlam <zappo@gnu.org>
5933 * document.el (document-texify-elisp-docstring):
5934 Add <> as valid symbols characters.
5936 * semantic-texi.el (semantic-texi-set-endpoint): New fcn
5937 (semantic-texi-recursive-combobulate-list): Set section end point to
5938 the logical end of those sections instead of the end of the regexp.
5939 (semantic-default-texi-setup): Add stickyfunc support.
5940 (semantic-texi-update-doc-from-texi): Look for prototype, and
5941 variable doc strings. Go for the function first, then variable, then
5944 * semantic-util-modes.el:
5945 (semantic-highlight-edits-face, semantic-highlight-edits-mode)
5946 (semantic-show-unmatched-syntax-mode, semantic-auto-parse-mode)
5947 (semantic-show-parser-state-mode, semantic-summary-mode)
5948 (semantic-stickyfunc-mode, semantic-show-tag-boundaries-mode)
5949 (semantic-highlight-attribute-alist)
5950 (semantic-highlight-by-attribute-mode): Doc Fix
5951 (semantic-stickyfunc-sticky-classes): Made buffer local.
5952 (semantic-stickyfunc-fetch-stickyline): Start at bottom, and find
5953 first matching tag class.
5955 * doc/user-guide.texi (Semantic User's Guide): updated the menu.
5956 (Speedbar): Fixed ref to class browser.
5957 (Minor Modes): Added Summary Mode, Sticky Functions, Tag Boundaries,
5958 and attribute highlighting modes.
5960 2003-08-27 Eric M. Ludlam <zappo@gnu.org>
5962 * doc/user-guide.texi: (speedbar)
5963 (imenu): Added @file around .emacs
5964 (senator): Updated commands with new tag based names.
5965 Updated all doc strings.
5966 (Analyzer): Updated doc strings.
5967 Augmented some documentation.
5968 (Smart Completion): Updated doc strings.
5969 (Speedbar Analysis): Updated @ref to capitalized names.
5970 (Class Browser): Removed explicit reference to EIEIO.
5972 (Document): updated doc strings.
5973 Fixed target file for document output.
5974 Augmented text around commands.
5975 (Charts): Updated doc strings and function names.
5976 (Minor Modes): added subsection nheaders.
5977 Replaced obsolete commands with new commands.
5978 Updated all existing doc.
5979 Added some new text around each mode.
5981 2003-08-27 David Ponce <david@dponce.com>
5983 * senator.el: (senator-search-forward, senator-re-search-forward)
5984 (senator-word-search-forward): Doc fix.
5985 (senator-search-backward, senator-re-search-backward)
5986 (senator-word-search-backward): Doc fix.
5987 (senator-menu-bar): Fix use of obsolete variable.
5989 2003-08-26 David Ponce <david@dponce.com>
5991 * doc/user-guide.texi: Fix node @ref.
5993 2003-08-26 Eric M. Ludlam <zappo@gnu.org>
5995 * doc/user-guide.texi (Semantic User's Guide): Added ECB
5996 (speedbar): token->tag fix
5998 (imenu): Update all variables.
5999 (senator): Update all command in first few subsubsections.
6001 * bovine/semantic-el.el (semantic-elisp-use-read):
6002 Fixed user-visible typo.
6003 (semantic-documentation-for-tag): Use substitute command keys on
6006 * senator.el (senator-kill-tag): Doc fix.
6007 (senator-isearch-toggle-semantic-mode): Doc fix.
6009 * semantic-texi.el (semantic-default-texi-setup):
6010 Use new imenu variable names
6011 (semantic-texi-update-doc-from-texi): If the first doc match is a
6012 prototype, keep searching for the original. If there is no original,
6015 * semantic-imenu.el (semantic-imenu-summary-function): Doc fix.
6016 (semantic-imenu-expand-type-members): Renamed from ...
6017 (semantic-imenu-expand-type-parts): Obsolete
6018 (semantic-imenu-bucketize-type-members): Renamed from ...
6019 (semantic-imenu-bucketize-type-parts): Obsolete
6020 (semantic-imenu-sort-bucket-function): Doc fix.
6021 (semantic-imenu-expandable-tag-class): Renamed from ...
6022 (semantic-imenu-expandable-token): Obsolete
6023 (semantic-create-imenu-index-1, semantic-create-imenu-subindex)
6024 (semantic-imenu-toggle-bucketize-type-parts)
6025 (semantic-default-which-function): Use renamed variables.
6027 * document.el (document-texify-elisp-docstring):
6028 Support kbd items followed by punctuation.
6030 2003-08-26 David Ponce <david@dponce.com>
6032 * doc/lang-support-guide.texi: Fix node @ref.
6034 2003-08-26 Eric M. Ludlam <zappo@gnu.org>
6036 * semantic-edit.el: (define-lex-analyzer)
6037 (define-lex-regex-analyzer)
6038 (semantic-lex-number): Use `semantic-format-tag-name' instead of
6041 * semantic-lex.el: (define-lex-analyzer)
6042 (define-lex-regex-analyzer)
6043 (semantic-lex-number): Doc fix
6045 2003-08-25 Eric M. Ludlam <zappo@gnu.org>
6047 * doc/lang-support-guide.texi (Parser Error Handling):
6048 replace `token' fcns with `tag' fcns.
6049 (Tag Structure): Removed contents of standard tags. Refer to creating tags
6051 (Language Support Overview)
6052 (Semantic Overload Mechanism): Various token->tag updates
6055 (Lexer Output): Refer to sematnic-lex. This needs more work.
6057 * Makefile (semantic_LISP): Added semantic-ast
6058 (maintenance_LISP): new
6060 (dist): Add above new sources.
6062 * Project.ede ("maintenance"): New target.
6064 * doc/glossary.texi (Glossary):
6065 Added more definitions to some keywords.
6067 * doc/Makefile (Documentation_TEXINFOS): Add tags.texi.
6069 * doc/Project.ede (Documentation): Add tags.texi.
6071 * bovine/semantic-el.el (semantic-elisp-store-documentation-in-tag):
6073 (semantic-elisp-do-doc): New flag
6074 (semantic-elisp-use-read): Add doc strings to tags iff above flag is enabled.
6075 (semantic-documentation-for-tag): Get doc string from tag.
6076 If there isn't one, re-run semantic-elisp-use-read with doc turned on.
6078 * semantic-texi.el (semantic-texi-update-doc-from-texi):
6079 Use new search routine.
6080 Combine all tags into one long list.
6081 (semantic-texi-update-doc-from-source): Use new doc fetching name.
6083 * semantic-util.el (semantic-something-to-tag-table):
6084 Use semanticdb-get-tags instead of oref.
6086 * semanticdb-find.el (semanticdb-find-translate-path):
6087 Accept a `brutish' flag.
6088 (semanticdb-find-translate-path-default): Accept a brutish flag.
6089 (semanticdb-find-translate-path-brutish-default)
6090 (semanticdb-find-translate-path-includes-default): New fcns.
6091 (semanticdb-find-tags-collector): Pass through a brutish flag to the collector.
6092 (semanticdb-brute-deep-find-tags-by-name): New fcn.
6094 * semanticdb.el (semanticdb-current-database-list):
6095 Add optional DIR argument for
6098 2003-08-25 David Ponce <david@dponce.com>
6100 * semantic-grammar.el (semantic-grammar-create-package):
6101 In message, use the package
6102 name instead of the Lisp file name.
6103 (semantic-grammar-batch-build-one-package): Use
6104 `byte-compile-dest-file' to obtain the compiled file name.
6106 2003-08-23 Eric M. Ludlam <zappo@gnu.org>
6108 * doc/app-dev-guide.texi:
6109 (Application Developer's Guide, Tag Tables, Tags at Point)
6110 (Tag Sorting, Tag Completion, Override Methods, Format Tag)
6111 (Tag Details, Parser Hooks, Example Programs):
6112 Removed references to `token' and `nonterminal' where apropriate.
6113 Fixed all cross links within this file.
6115 * semantic-texi.el (semantic-texi-update-doc-from-texi):
6116 Use brute search when finding
6117 the tag for the doc.
6119 * semantic-sort.el (semantic-mark-external-member-function): Doc fix.
6121 * semantic-edit.el (semantic-after-partial-cache-change-hook): Doc fix.
6123 * semantic-ede-grammar.el (semantic-ede-proj-target-grammar):
6124 Added new source and compiler types.
6125 (semantic-ede-source-grammar): Renamed to
6126 (semantic-ede-source-grammar-wisent):
6127 (semantic-ede-grammar-compiler): Renamed to
6128 (semantic-ede-grammar-compiler-wisent):
6129 (semandic-ede-source-grammar-bovine, semantic-ede-grammar-compiler-bovine):
6132 * bovine/Makefile, bovine/Project.ede:
6133 Replaced old by target with new by target of semantic grammar type.
6135 2003-08-22 Eric M. Ludlam <zappo@gnu.org>
6137 * wisent/Makefile (LOADPATH): New stuf added
6139 (all): added taggers
6140 (dist): removed wy, added taggers
6141 (taggers): new rule for compiling .wy files.
6143 * wisent/Project.ede (taggers): New
6146 * semantic-ede-grammar.el (semantic-grammar): move require.
6147 (semantic-ede-proj-target-grammar): autoload cookie
6148 (semantic-ede-grammar-compiler): Remove extra rules. Use one single
6150 (ede-compile-intermediate-objects-p, ede-compiler-intermediate-object-variable):
6152 (ede-proj-makefile-insert-variables): changed extra variable to be
6154 (ede-proj-makefile-insert-rules): Removed intermediate rules used before.
6155 (end of file): Fixed provide statement, and method for adding this
6158 * semantic-grammar.el (semantic-grammar-create-package):
6159 Do not create the package if the
6160 package is not out of date.
6161 (semantic-grammar-batch-build-one-package): Do not byte compile if the
6162 compiled file is not out of date.
6164 2003-08-21 David Ponce <david@dponce.com>
6166 * semantic-grammar.el (semantic-grammar-create-package):
6167 Return name of created file.
6168 (semantic-grammar-create-package-from-file): Replace by...
6169 (semantic-grammar-batch-build-one-package): New fcn. Creates the
6170 package AND byte compiles it.
6171 (semantic-grammar-batch-create-package): Rename to...
6172 (semantic-grammar-batch-build-packages): Use new fcn above. Error
6173 checks with user comprehensible messages. Remove vc from
6174 find-file-hooks. It causes bad stuff to happen in Emacs 20.
6176 2003-08-20 David Ponce <david@dponce.com>
6178 * semantic-grammar.el (eldoc-current-symbol-info): Fix typo.
6180 * semantic-grammar.el: (semantic-grammar-insert-defconst)
6181 (semantic-grammar-insert-defun): No more call `eval-defun'.
6182 (semantic-grammar-file-regexp): New option.
6183 (semantic-grammar-noninteractive): New function.
6184 (semantic-grammar-create-package): Doc fix. Use `eval-region' to
6185 evaluate declarations and epilogue. Handle when run in batch
6187 (semantic-grammar-create-package-from-file)
6188 (semantic-grammar-batch-create-package): New functions.
6189 (semantic-grammar-mode, semantic-abbreviate-nonterminal)
6190 (semantic-summarize-nonterminal): Don't use obsolete API.
6191 (semantic-grammar-function-argstring-from-docstring)
6192 (semantic-grammar-eldoc-get-macro-docstring): New functions.
6193 (eldoc-current-symbol-info): Handle grammar macros.
6195 * semantic-format.el (semantic-colorize-text): Declare obsolete.
6197 2003-08-17 David Ponce <david@dponce.com>
6199 * wisent/wisent-c.el (c-mode-hook): Remove autoload cookie.
6201 * senator.el: (senator-find-nonterminal-by-name)
6202 (senator-find-nonterminal-by-name-regexp): Remove "." at end of
6204 (senator-search-tag-filter): New option.
6205 (senator-search-forward-raw)
6206 (senator-search-backward-raw): Remove. Replace by...
6207 (senator-search): New function.
6208 (senator-re-search-forward, senator-re-search-backward)
6209 (senator-word-search-forward, senator-word-search-backward)
6210 (senator-search-forward, senator-search-backward): Use it.
6211 (senator-last-search-type): New variable.
6212 (senator-nonincremental-repeat-search-forward)
6213 (senator-nonincremental-repeat-search-backward): Use it.
6214 (senator-nonincremental-search-forward)
6215 (senator-nonincremental-search-backward)
6216 (senator-nonincremental-re-search-forward)
6217 (senator-nonincremental-re-search-backward): Set it.
6218 (senator-nonincremental-repeat-re-search-forward)
6219 (senator-nonincremental-repeat-re-search-backward): Remove.
6220 (senator-search-set-tag-class-filter): New command.
6221 (senator-prefix-map): Add keyboard shortcut for it.
6222 (senator-menu-bar): Update search sub menu.
6224 2003-08-17 Eric M. Ludlam <zappo@gnu.org>
6226 * semantic-ede-grammar.el: EDE interface for grammar files.
6228 * senator.el (senator-menu-bar):
6229 Changed names of all charting functions.
6231 * semantic-util.el (semantic-something-to-tag-table): Update doc.
6233 * semantic-chart.el:
6234 (semantic-chart-database-size, semantic-chart-tags-by-class)
6235 (semantic-chart-tag-complexity): New fcn name. Remove all references
6236 to nonterminal or token.
6238 2003-08-15 David Ponce <david@dponce.com>
6240 * semantic-grammar.wy (USE-MACROS): New token.
6241 (decl): Add following...
6242 (use_macros_decl): New rule.
6244 * semantic-grammar.el (semantic-grammar-epilogue-start):
6245 Ensure the start location will
6246 never be reached when there is no epilogue.
6247 (semantic-grammar-tokens): Use `semantic-tag-type'.
6248 (semantic-summarize-nonterminal): Likewise.
6249 (semantic-grammar-use-macros): New function.
6250 (semantic-grammar-macros): Use it.
6251 (semantic--grammar-macdecl-re)
6252 (semantic--grammar-macros-regexp-2): New variables.
6253 (semantic--grammar-clear-macros-regexp-2): New function.
6254 (semantic--grammar-macros-regexp-2): Implement.
6255 (semantic-grammar-map): Add shortcut key for
6256 `semantic-grammar-find-macro-expander'.
6257 (semantic-grammar-mode): Install
6258 `semantic--grammar-clear-macros-regexp-2' in local
6259 `before-change-functions' hooks.
6260 (semantic--grammar-macro-function-tag)
6261 (semantic--grammar-macro-lib-part)
6262 (semantic--grammar-macro-compl-elt)
6263 (semantic--grammar-macro-compl-dict): New functions.
6264 (semantic-grammar-find-macro-expander): New command.
6266 * semantic-grammar-wy.el: Re-generated.
6268 2003-08-15 Richard Y. Kim <ryk@ap.com>
6270 * doc/app-dev-guide.texi, doc/lang-support-guide.texi, doc/semantic.texi, doc/tags.texi:
6271 Created a new file, tags.texi, which documents the API for accessing semantic tags. This file is a section @include'd by app-dev-guide.texi.
6273 2003-08-14 David Ponce <david@dponce.com>
6275 * semanticdb-find.el (semanticdb-find-translate-path-default):
6276 Make code more efficient
6277 and compatible with old versions of Emacs.
6278 (semanticdb-find-tags-collector): Skip tables not associated to a
6279 file when FIND-FILE-MATCH is non-nil.
6281 2003-08-11 David Ponce <david@dponce.com>
6283 * wisent/wisent-grammar.el (wisent-grammar-macros): Require it.
6284 (wisent-grammar-region-placeholder)
6285 (wisent-grammar-EXPAND)
6286 (wisent-grammar-EXPANDFULL)
6287 (wisent-grammar-TAG)
6288 (wisent-grammar-VARIABLE-TAG)
6289 (wisent-grammar-FUNCTION-TAG)
6290 (wisent-grammar-TYPE-TAG)
6291 (wisent-grammar-INCLUDE-TAG)
6292 (wisent-grammar-PACKAGE-TAG)
6293 (wisent-grammar-EXPANDTAG)
6294 (wisent-grammar-CODE-TAG)
6295 (wisent-grammar-AST-ADD)
6296 (wisent-grammar-AST-PUT)
6297 (wisent-grammar-AST-GET)
6298 (wisent-grammar-AST-GET1)
6299 (wisent-grammar-AST-GET-STRING)
6300 (wisent-grammar-AST-MERGE)
6301 (wisent-grammar-builtins)
6302 (wisent-grammar-builtin-names): Remove. New definition in
6303 wisent-grammar-macros library.
6304 (wisent-grammar-expand-builtins): Move and rename...
6305 (wisent-grammar-expand-macros): New function.
6306 (wisent-grammar--macros): New variable.
6307 (wisent-grammar-nonterminals): Use `wisent-grammar-expand-macros'.
6308 Initialize macro definitions.
6309 (wisent-grammar-mode): Don't setup
6310 `semantic-grammar-builtin-names'.
6312 * wisent/wisent-grammar-macros.el: New file.
6314 * bovine/bovine-grammar.el (bovine-grammar-macros): Require it.
6315 (bovine--grammar-macros): New variable.
6316 (bovine-grammar-expand-EXPAND)
6317 (bovine-grammar-expand-EXPANDFULL)
6318 (bovine-grammar-expand-ASSOC)
6319 (bovine-grammar-expand-TAG)
6320 (bovine-grammar-expand-VARIABLE-TAG)
6321 (bovine-grammar-expand-FUNCTION-TAG)
6322 (bovine-grammar-expand-TYPE-TAG)
6323 (bovine-grammar-expand-INCLUDE-TAG)
6324 (bovine-grammar-expand-PACKAGE-TAG)
6325 (bovine-grammar-expand-CODE-TAG): Remove. New definition in
6326 bovine-grammar-macros library.
6327 (bovine-grammar-expand-form): Don't use hard-coded expanders.
6328 (bovine-grammar-expand-action): Likewise.
6329 (bovine-grammar-parsetable-builder): Initialize macro definitions.
6331 * bovine/bovine-grammar-macros.el: New file.
6333 * semantic-grammar.wy (decl): Remove extra empty rule.
6335 * semantic-grammar.el (semantic-grammar-macros):
6336 New variable and function.
6337 (semantic-grammar-header-template): Use %C and %V for respectively
6338 the copyright line and the version keyword.
6339 (semantic-grammar-copyright-line): New function.
6340 (semantic-grammar-header): Use it. Setup %C and %V. No more
6342 (semantic-grammar-footer): Doc fix. No more inlined.
6343 (semantic-grammar-token-data)
6344 (semantic-grammar-keyword-data)
6345 (semantic-grammar-parser-data)
6346 (semantic-grammar-setup-data): No more inlined.
6347 (semantic-grammar-create-package): Improve generation-evaluation
6349 (semantic--grammar-macros-regexp-1): New variable and function.
6350 (semantic--grammar-macros-regexp-2): New variable.
6351 (semantic--grammar-macros-matcher): New function.
6352 (semantic-grammar-builtin-names)
6353 (semantic-grammar-builtin-names-regexp)
6354 (semantic-grammar-builtin-names-matcher): Remove.
6355 (semantic-grammar-mode-keywords-1): Use
6356 `semantic--grammar-macros-matcher'.
6357 (semantic-grammar-map): Add ':' to electric punctuations.
6358 (semantic-grammar-skip-comments-backward)
6359 (semantic-grammar-goto-grammar-indent-anchor)
6360 (semantic-grammar-between-name-and-colon-p)
6361 (semantic-grammar-grammar-compute-indentation): Remove.
6362 (semantic-grammar-backward-item)
6363 (semantic-grammar-anchored-indentation): New function.
6364 (semantic-grammar-do-grammar-indent): Simplify. Use above new
6367 * semantic-grammar-wy.el: Re-generated.
6369 2003-08-11 Richard Y. Kim <ryk@ap.com>
6371 * doc/semantic.texi: Added @semantic{} macro.
6373 * doc/lang-support-guide.texi:
6374 Added sections titled "Tag Structure" and "Semantic Overload Mechanism".
6376 2003-08-06 David Ponce <david@dponce.com>
6378 * semantic-find.el (semantic-find-first-tag-by-name): Use `assoc' and
6379 `assoc-ignore-case' instead of `assoc-string'.
6381 2003-08-05 Eric M. Ludlam <zappo@gnu.org>
6383 * wisent/Makefile (languages_LISP): Removed unneeded lisp code
6384 (Wisent.mk): Include this file
6385 (dist): Aux makefile added to dist.
6387 * wisent/Wisent.mk: Makefile extension for autogenerated Wisent code.
6389 2003-08-02 David Ponce <david@dponce.com>
6391 * wisent/wisent-awk.el, wisent/wisent-cim.el: Obsolete file removed.
6393 * wisent/wisent-python.el (wisent-python-wy): Require.
6394 (wisent-python-parser-tables, wisent-python-keywords)
6395 (wisent-python-tokens): Remove.
6396 (wisent-python-default-setup): Moved. Call generated function to
6397 setup parser internals. Do user's setup here.
6399 * wisent/wisent-java-tags.el (wisent-java-tags-wy): Require.
6400 (wisent-java-parser-tables, wisent-java-keywords)
6401 (wisent-java-tokens): Remove.
6402 (wisent-java-default-setup): Call generated function to setup
6403 parser internals. Do user's setup here. Use new variable
6404 `senator-step-at-tag-classes'.
6406 * wisent/wisent-java.el (wisent-java-wy): Require.
6407 (wisent-java-parser-tables, wisent-java-keywords)
6408 (wisent-java-tokens): Remove.
6409 (wisent-java-default-setup): Call generated function to setup
6410 parser internals. Do user's setup here. Use new variable
6411 `senator-step-at-tag-classes'.
6412 (semantic-default-java-setup): Remove obsolete `remove-hook'.
6414 * wisent/wisent-java-tags.wy, wisent/wisent-java.wy, wisent/wisent-python.wy:
6415 (%outputfile, %parsetable, %tokentable)
6416 (%keywordtable, %setupfunction, setupcode): Remove.
6418 * wisent/wisent-grammar.el (require 'cl): Remove.
6419 (wisent-grammar-EXPAND)
6420 (wisent-grammar-EXPANDFULL): Fix error message.
6421 (wisent-grammar-CODE-TAG): Add missing comma.
6422 (wisent-grammar-expand-builtins): No more expand macros.
6423 (wisent-grammar-expand-sexpr): Remove. All callers changed.
6424 (wisent-grammar-setupcode-builder): Return only code to setup
6427 * wisent/wisent-calc.el (wisent-calc-wy): Require.
6428 (wisent-calc-automaton, wisent-c-keyword-table)
6429 (wisent-calc-tokens): Remove.
6430 (wisent-calc-setup-parser): Moved in grammar epilogue.
6431 (wisent-calc): No more depend on `wisent-calc-automaton'.
6433 * wisent/wisent-calc.wy: (%outputfile, %parsetable, %tokentable)
6434 (%setupfunction, setupcode): Remove.
6435 (epilogue) <wisent-calc-setup-parser>: New.
6437 * wisent/wisent-c.el (wisent-c-wy): Require.
6438 (semantic-ast): Remove. It is required in above library.
6439 (wisent-c-parser-automaton, wisent-c-keyword-table)
6440 (wisent-c-token-table): Remove.
6441 (wisent-c-default-setup): Call generated function to setup
6442 parser internals. Do user's setup here. Use new variable
6443 `senator-step-at-tag-classes'.
6445 * wisent/wisent-c.wy: (%outputfile, %parsetable, %tokentable)
6446 (%keywordtable, %setupfunction): Remove.
6449 * wisent/wisent-awk.wy, wisent/wisent-cim.wy:
6450 (%outputfile, %parsetable, %tokentable)
6451 (%keywordtable, %setupfunction): Remove.
6453 * wisent/wisent-c-wy.el, wisent/wisent-calc-wy.el, wisent/wisent-java-tags-wy.el, wisent/wisent-java-wy.el, wisent/wisent-python-wy.el:
6456 * bovine/semantic-skel.el (semantic-skeleton-by): Require.
6457 (semantic-toplevel-skeleton-bovine-table)
6458 (semantic-scheme-skeleton-table): Remove.
6459 (semantic-default-skel-setup): Call generated function to setup
6460 parser internals. Do user's setup here.
6462 * bovine/semantic-scm.el (semantic-scm-by): Require.
6463 (semantic-toplevel-scheme-bovine-table)
6464 (semantic-scheme-keyword-table): Remove.
6465 (semantic-default-scheme-setup): Call generated function to setup
6466 parser internals. Do user's setup here.
6468 * bovine/semantic-make.el (semantic-make-by): Require.
6469 (semantic-toplevel-make-bovine-table)
6470 (semantic-make-keyword-table): Remove.
6471 (semantic-default-make-setup): Call generated function to setup
6472 parser internals. Do user's setup here.
6474 * bovine/semantic-c.el (semantic-c-by): Require.
6475 (semantic-toplevel-c-bovine-table)
6476 (semantic-c-keyword-table): Remove.
6477 (semantic-default-c-setup): Call generated function to setup
6478 parser internals. Do user's setup here. Use new variable
6479 `senator-step-at-tag-classes'.
6481 * bovine/c.by, bovine/make.by, bovine/scheme.by, bovine/skeleton.by:
6482 (setupcode, %outputfile, %parsetable)
6483 (%keywordtable, %setupfunction): Remove.
6486 * bovine/bovine-grammar.el (bovine-grammar-setupcode-builder):
6487 Only setup parser internals.
6489 * bovine/semantic-c-by.el, bovine/semantic-make-by.el, bovine/semantic-scm-by.el, bovine/semantic-skeleton-by.el:
6492 * semantic-grammar.wy: Parse new grammar outline.
6494 (setupcode, %outputfile, %parsetable)
6495 (%tokentable, %setupfunction): Remove.
6496 (%start) Add prologue epilogue.
6497 (LANGUAGEMODE, LEFT, NONASSOC, PREC, PUT, QUOTEMODE)
6498 (RIGHT, SCOPESTART, START, TOKEN)
6499 (KEYWORDTABLE, OUTPUTFILE, PARSETABLE)
6500 (SETUPFUNCTION, TOKENTABLE): Keywords begin with `%'.
6501 (PACKAGE): New keyword.
6502 (PERCENT_PERCENT, PROLOGUE, EPILOGUE): New tokens.
6504 (grammar): Add prologue and epilogue rules.
6505 (prologue, epilogue): New rules.
6506 (decl): Add package_decl, precedence_decl rules. Remove
6507 left_decl, right_decl and nonassoc decl.
6508 (package_decl, precedence_decl, associativity): New rules.
6509 (any_symbol, level): Remove. All callers changed.
6511 * semantic-grammar.el:
6512 New outline of semantic input grammars, conform to bison's one.
6513 Lisp code generated from a grammar is now in its own library.
6515 (semantic-grammar-wy, sformat): Require.
6516 (semantic-grammar-lex-prologue)
6517 (semantic-grammar-lex-epilogue): New lex analyzers.
6518 (semantic-grammar-lexer): Use them.
6519 (semantic-grammar-lex-epilogue-start): New function.
6520 (semantic-grammar-automaton)
6521 (semantic-grammar-keywords)
6522 (semantic-grammar-tokens): Remove.
6523 (semantic-grammar-prologue)
6524 (semantic-grammar-epilogue)
6525 (semantic-grammar-package): New functions.
6526 (semantic-grammar-setupcode-text)
6527 (semantic-grammar-setupcode-forms)
6528 (semantic-grammar-outputfile): Remove.
6529 (semantic-grammar-setupfunction)
6530 (semantic-grammar-tokentable)
6531 (semantic-grammar-parsetable)
6532 (semantic-grammar-keywordtable): New implementation.
6533 (semantic-grammar-autogen-cookie)
6534 (semantic-grammar-autogen-cookie-re)
6535 (semantic-grammar-buffer)
6536 (semantic-grammar-beginning-of-code)
6537 (semantic-grammar-beginning-of-body)
6538 (semantic-grammar-with-outputfile)
6539 (semantic-grammar-with-grammar-buffer)
6540 (semantic-grammar-update-def)
6541 (semantic-grammar-update-parsetable)
6542 (semantic-grammar-update-keywordtable)
6543 (semantic-grammar-update-tokentable)
6544 (semantic-grammar-update-setupfunction)
6545 (semantic-grammar-update-outputfile)
6546 (semantic-grammar-setupcode-value)
6547 (semantic-grammar-keywordtable-value)
6548 (semantic-grammar-tokentable-value)
6549 (semantic-grammar-parsetable-value): Remove.
6550 (semantic--grammar-input-buffer)
6551 (semantic--grammar-output-buffer)
6552 (semantic-grammar-insert-defconst)
6553 (semantic-grammar-insert-defun)
6554 (semantic-grammar-header-template)
6555 (semantic-grammar-footer-template)
6556 (semantic-grammar-header)
6557 (semantic-grammar-footer)
6558 (semantic-grammar-token-data)
6559 (semantic-grammar-keyword-data)
6560 (semantic-grammar-parser-data)
6561 (semantic-grammar-setup-data)
6562 (semantic-grammar-create-package): New.
6563 (semantic-grammar-syntax-table): Give word syntax class to '%'.
6564 (semantic-grammar-mode-keywords-1): Update for new syntax.
6565 (semantic-grammar-map): Map C-c C-c to
6566 `semantic-grammar-create-package'.
6567 (semantic-grammar-in-lisp-p): Take into account the epilogue code.
6568 (emantic-grammar-do-lisp-indent): Likewise.
6569 (semantic-grammar-mode): Doc fix. Update semantic setup.
6571 * semantic-grammar-wy.el: New generated file.
6573 2003-08-01 Eric M. Ludlam <zappo@gnu.org>
6575 * bovine/c.by (setq): Use new names.
6576 (knr-arguments): Use new name of expand fcn.
6578 * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): new c.by
6579 (semantic-expand-c-tag): new name
6580 (semantic-c-tag-protection): new name
6581 (semantic-c-tag-template): new name
6582 (semantic-c-format-tag-uml-prototype): use new names
6583 (semantic-c-tag-abstract): new name
6584 (semantic-default-c-setup): use new override methods.
6586 * semantic-cb.el (semantic-cb-new-class-browser):
6587 Use `semanticdb-find-tags-by-class',
6588 instead of old method.
6591 (senator-step-at-tag-classes, senator-step-at-start-end-tag-classes):
6592 Added autoload cookies.
6594 * semantic-tag-file.el (semantic-dependency-include-path):
6597 * semantic-sort.el (semantic-orphaned-member-metaparent-type):
6600 * semanticdb-find.el (semanticdb-find-table-for-include):
6602 (semanticdb-find-tags-by-class): New function
6603 (semanticdb-find-tags-by-class-method): New method.
6605 * bovine/semantic-c.el: (semantic-default-c-setup):
6606 Use new name `semantor-step-at-tag-classes'
6608 * semantic-texi.el: (semantic-default-texi-setup):
6609 Use new name `semantor-step-at-start-end-tag-classes'
6610 Use `insert-forgeign-tag' as new override methods.
6612 * senator.el (senator-step-at-tag-classes): Renamed, obsolete old.
6613 (senator-step-at-start-end-tag-classes): Renamed, obsolete old.
6614 (senator-current-tag): renamed
6615 (senator-step-at-start-end-p): Use new names
6616 (senator-middle-of-tag-p): Renamed
6617 (senator-previous-tag-or-parent): Renamed
6618 (senator-full-tag-name): Renamed
6619 (senator-current-type-context): Use new names
6620 (senator-search-tag-name): Renamed
6621 (senator-search-forward-raw): use new names
6622 (senator-search-backward-raw): use new names
6623 (senator-next-tag): renamed
6624 (senator-previous-tag): renamed
6625 (senator-previous-token): renamed
6626 (senator-toggle-read-only): Use new names
6627 (senator-toggle-intangible): use new names
6628 (senator-set-face): use new names
6629 (senator-clear-tag): renamed
6630 (senator-prefix-map): use new names
6631 (senator-menu-bar): use new names
6632 (senator-beginning-of-defun): use new names
6633 (senator-end-of-defun): use new names
6634 (senator-add-log-tags): renamed
6635 (add-log-current-defun): use new names
6636 (senator-insert-foreign-tag): renamed. Aliased, made compatible.
6637 (insert-register): use new names
6639 2003-07-31 Eric M. Ludlam <zappo@gnu.org>
6641 * semanticdb-file.el: (semanticdb-default-file-name)
6642 (semanticdb-persistent-path): Doc fix
6643 (semanticdb-project-database-file): Rename token-version to tag-version.
6644 (semanticdb-create-database): Initialize renamed field
6645 (semanticdb-load-database): Test renamed field.
6646 (semanticdb-save-db): Print messages with tag instead of token.
6648 2003-07-29 Eric M. Ludlam <zappo@gnu.org>
6650 * semantic-load.el (semantic-load-imenu-string): New variable
6651 (imenu init): Use above new variable for string.
6653 2003-07-25 Eric M. Ludlam <zappo@gnu.org>
6655 * semanticdb-search.el (semanticdb-refresh-table):
6656 Doc fix (replace token with tag)
6658 * semanticdb-el.el (semanticdb-elisp-sym->tag):
6659 Doc fix (replace token with tag)
6661 * semanticdb.el: (semanticdb-refresh-table)
6662 (semanticdb-needs-refresh-p): doc fix (replace 'token' with tag)
6663 (semanticdb-save-current-db, semanticdb-save-all-db):doc fix.
6665 (semanticdb-project-predicate-functions): doc fix
6666 (semanticdb-kill-hook)
6667 (semanticdb-table-oob-sanity-check): message fix
6669 2003-07-23 Eric M. Ludlam <zappo@gnu.org>
6671 * doc/Makefile: EDE Generated Makefile.
6673 * doc/Project.ede: Project file for semantic doc.
6675 2003-07-22 David Ponce <david@dponce.com>
6677 * bovine/semantic-el.el (lisp-mode):
6678 Define as child of `emacs-lisp-mode'.
6679 (lisp-mode-hook): Add hook `semantic-default-elisp-setup' and
6682 * semantic-fw.el: (semantic-set-parent-mode)
6683 (semantic-get-parent-mode): New functions.
6684 (define-semantic-child-mode): New macro.
6685 (semantic-current-bindings): Use `semantic-get-parent-mode'.
6686 (semantic-fw-font-lock-keywords): Add highlighting of
6687 `define-semantic-child-mode'.
6689 2003-07-18 Eric M. Ludlam <zappo@gnu.org>
6692 (semantic-show-tag-boundaries-mode, semantic-highlight-by-attribute-mode):
6693 Turn on by default (for a little while anyway.)
6695 * senator.el (menu):
6696 Added stickyfunc, tag-boundary, and attribute highlighting
6699 * semantic-util-modes.el (global-semantic-highlight-edits-mode):
6701 (global-semantic-show-tag-boundaries-mode)
6702 (global-semantic-highlight-by-attribute-mode)
6703 (global-semantic-show-tag-boundaries-mode)
6704 (semantic-highlight-attribute-alist_
6705 (semantic-highlight-by-attribute-hook)
6706 (semantic-show-tag-boundaries-hook)
6707 (defvar semantic-highlight-by-attribute-mode)
6708 (defvar semantic-show-tag-boundaries-mode): New variables
6709 (semantic-highlight-attribute-face-private)
6710 (semantic-highlight-attribute-face-protected)
6711 (semantic-tag-boundary-face): New faces
6712 (semantic-tag-boundary-p)
6713 (global-semantic-highlight-by-attribute-mode)
6714 (semantic-hba-clear-highlighting)
6715 (semantic-hba-highlight-tag)
6716 (semantic-hba-reparse-hook)
6717 (semantic-highlight-by-attribute-mode)
6718 (semantic-highlight-by-attribute-setup)
6719 (semantic-show-tag-boundaries-mode)
6720 (semantic-show-tag-boundaries-setup)
6721 (semantic-stb-clear-boundaries)
6722 (semantic-stb-highlight-tag-line1)
6723 (semantic-stb-reparse-hook)
6724 (semantic-tag-boundary-overlay-p)
6725 (semantic-tag-boundary-p-default): New functions
6727 * semantic-format.el (ezimage): New dependency
6728 (semantic-format-use-images-flag): New variable
6729 (semantic-format-tag-protection-image-alist): New variable
6730 (semantic-format-tag-uml-protection-to-string)
6731 (semantic-format-tag-uml-protection): Add color parameter.
6732 Add image if applicable.
6733 (semantic-format-tag-uml-abbreviate-default)
6734 (semantic-format-tag-uml-prototype-default)
6735 (semantic-format-tag-uml-concise-prototype-default):
6736 Call format-tag-uml-protection with new color parameter.
6738 2003-07-16 Eric M. Ludlam <zappo@gnu.org>
6741 (document-insert-texinfo, document-generate-documentation)
6742 (document-generate-new-documentation, document-function-name-comment)
6743 (document-parameter-comment, document-update-paramlist)
6744 (document-massage-to-texinfo): Use -tag- based names instead of
6745 -nonterminal- names. Rename variables 'nonterm' to 'tag'.
6747 * semantic-tag-ls.el (semantic-tag-calculate-parent): New function
6748 (semantic-tag-protection): Use above.
6750 * semantic-decorate.el:
6751 (semantic-tag-create-secondary-overlay, semantic-tag-delete-secondary-overlay)
6752 (semantic--tag-unlink-secondary-overlays, semantic--tag-link-secondary-overlays)
6753 (semantic-tag-secondary-overlays): New functions.
6755 * semantic-tag.el: (semantic-tag-add-hook, semantic-tag-remove-hook)
6756 (semantic--tag-run-hooks): New functions
6757 (semantic--tag-unlink-from-buffer, semantic--tag-link-to-buffer):
6758 Run hooks specific to each action.
6760 * semantic-format.el:
6761 (semantic--format-uml-post-colorize, semantic-uml-attribute-string)
6762 (semantic-format-tag-uml-protection): Use new names
6763 semantic-tag-abstract, semantic-tag-static, semantic-tag-leaf and
6764 semantic-tag-protection.
6766 2003-07-09 Eric M. Ludlam <zappo@gnu.org>
6768 * Makefile ("semantic_LISP"):
6769 Added semantic-tag-file, semantic-doc, and semantic-tag-ls.
6771 * Project.ede ("semantic"):
6772 Added semantic-tag-file, semantic-doc, and semantic-tag-ls.
6775 (semantic-dependency-include-path, semantic-find-dependency)
6776 (semantic-find-nonterminal, semantic-find-documentation)
6777 (semantic-find-doc-snarf-comment, semantic-prototype-file)
6778 (semantic-nonterminal-protection)
6779 (semantic-nonterminal-protection-default)
6780 (semantic-nonterminal-abstract, semantic-nonterminal-abstract-default)
6781 (semantic-nonterminal-leaf, semantic-nonterminal-leaf-default)
6782 (semantic-nonterminal-static-default, semantic-nonterminal-full-name)
6783 (semantic-nonterminal-full-name-default, semantic-narrow-to-token)
6784 (semantic-with-buffer-narrowed-to-current-token)
6785 (semantic-with-buffer-narrowed-to-token):
6786 Deleted. Moved to other files and renamed.
6788 * semantic-sb.el (semantic-sb-token-jump):
6789 use semantic-go-to-tag instead of old name.
6791 * semantic-tag-file.el (semantic-go-to-tag):
6792 Use semantic-dependency-tag-file instead of old name.
6794 * semantic-tag-ls.el:
6795 (semantic-tag-protection, semantic-tag-protection-default, semantic-tag-abstract)
6796 (semantic-tag-abstract-default, semantic-tag-leaf, semantic-tag-leaf-default)
6797 (semantic-tag-static-default, semantic-tag-full-name, semantic-tag-full-name-default):
6798 Copied from semantic-util.el
6799 Renamed to new naming conventions
6800 Obsoleted old names.
6803 (semantic-documentation-for-tag, semantic-doc-snarf-comment-for-tag)
6804 Copied from semantic-util.el.
6805 Renamed functions to better suit new naming conventions.
6806 Obsoleted old names.
6808 * semantic-tag-file.el:
6809 (semantic-go-to-tag, semantic-dependency-include-path)
6810 (semantic-dependency-tag-file, semantic-prototype-file)
6811 Copied from semantic-util.el.
6812 Renamed functions to better suit new naming conventions.
6813 Obsoleted old names.
6816 (semantic-narrow-to-tag, semantic-with-buffer-narrowed-to-current-tag)
6817 (semantic-with-buffer-narrowed-to-tag): Copied from semantic-util.el.
6818 Renamed. Obsoleted old names.
6820 * semantic-format.el (semantic-format-tag-functions):
6821 Add autoload cookie to.
6822 (semantic-token->text-functions): Alias to the replacement.
6824 * semantic-complete.el (require): Make loading of tooltip optional.
6825 (semantic-displayor-focus-request, semantic-complete-jump): Use
6826 `semantic-momentary-highlight-tag' instead of the `-token' version.
6828 2003-07-07 David Ponce <david@dponce.com>
6830 * wisent/wisent-c.el, wisent/wisent-c.wy, doc/C99-gram.texi: New file.
6832 * wisent/wisent-grammar.el:
6833 (wisent-grammar-AST-ADD, wisent-grammar-AST-PUT)
6834 (wisent-grammar-AST-GET, wisent-grammar-AST-GET1)
6835 (wisent-grammar-AST-GET-STRING)
6836 (wisent-grammar-AST-MERGE): New functions.
6837 (wisent-grammar-builtins): Add above new AST built-ins.
6838 (wisent-grammar-builtin-names): New function.
6839 (wisent-grammar-expand-builtins): Expand car of expression too.
6840 (semantic-grammar-mode): Set built-in names.
6842 * semantic-grammar.el: (semantic-grammar-builtin-names)
6843 (semantic-grammar-builtin-names-regexp): New variables.
6844 (semantic-grammar-builtin-names-matcher): New function.
6845 (semantic-grammar-mode-keywords-1): Use it.
6847 * semantic-ast.el: New library.
6849 2003-07-04 David Ponce <david@dponce.com>
6851 * senator.el (senator-momentary-highlight-token): Renamed to...
6852 (senator-momentary-highlight-tag): All callers updated. Use new
6853 semantic-decorate API.
6854 (senator-toggle-read-only, senator-toggle-intangible)
6855 (senator-set-face, senator-clear-token)
6856 (senator-menu-bar): Use new semantic-decorate API.
6858 * semantic-decorate.el:
6859 (semantic-highlight-token, semantic-unhighlight-token)
6860 (semantic-momentary-highlight-token)
6861 (semantic-momentary-unhighlight-token)
6862 (semantic-set-token-face, semantic-set-token-invisible)
6863 (semantic-token-invisible-p, semantic-set-token-intangible)
6864 (semantic-token-intangible-p, semantic-set-token-read-only)
6865 (semantic-token-read-only-p): Add autoload cookies.
6867 2003-07-03 Eric M. Ludlam <zappo@gnu.org>
6869 * Project.ede ("semantic"): Added semantic-decorate.el
6871 * Makefile (semantic_LISP): Added semantic-decorate.el
6874 (semantic-highlight-token, semantic-unhighlight-token)
6875 (semantic-momentary-unhighlight-token, semantic-momentary-highlight-token)
6876 (semantic-set-token-face, semantic-set-token-invisible)
6877 (semantic-token-invisible-p, semantic-set-token-intangible)
6878 (semantic-token-intangible-p, semantic-overlay-signal-read-only)
6879 (semantic-set-token-read-only, semantic-token-read-only-p):
6880 Removed into semantic-decorate.el.
6882 * semantic-decorate.el: Coped from semantic-util.
6883 Renamed all fns to new `tag' notation.
6885 2003-06-29 David Ponce <david@dponce.com>
6887 * wisent/wisent.el (wisent-loop): New internal variable.
6888 (wisent-clearin): Doc fix.
6889 (wisent-abort): New macro.
6890 (wisent-pre-parse-hook, wisent-post-parse-hook): New hooks.
6891 (wisent-parse): Use above new stuff.
6893 * semantic-grammar.el (semantic-grammar-mode-keywords-1):
6894 In rules, highlight reserved
6895 terminal `error' in bold face.
6896 (semantic-grammar-in-lisp-p): New function.
6898 2003-06-20 David Ponce <david@dponce.com>
6900 * semanticdb-find.el: (semanticdb-find-tags-by-name)
6901 (semanticdb-find-tags-by-name-regexp)
6902 (semanticdb-find-tags-for-completion)
6903 (semanticdb-deep-find-tags-by-name)
6904 (semanticdb-deep-find-tags-by-name-regexp)
6905 (semanticdb-deep-find-tags-for-completion)
6906 (semanticdb-find-tags-external-children-of-type): Add autoload
6909 * semantic-grammar.el (semantic-grammar-goto-grammar-indent-anchor):
6911 `forward-sexp' ignore important punctuations. Use
6912 `skip-syntax-backward' instead to skip punctuations.
6914 2003-06-19 David Ponce <david@dponce.com>
6916 * semantic-grammar.el (semantic-grammar-mode):
6917 Set buffer local value of
6918 `parse-sexp-ignore-comments' to non-nil to fix indentation
6919 problems when there are unbalanced parenthesis in comments.
6920 (semantic-grammar-goto-grammar-indent-anchor): Consider %prec like
6921 another symbol in rule.
6922 (semantic-grammar-grammar-compute-indentation): Don't consider
6923 %prec like other percent keywords that are aligned at beginning of
6926 2003-06-08 Eric M. Ludlam <zappo@gnu.org>
6928 * semantic-complete.el (require): Add dependency on avoid and tooltips.
6929 (semantic-complete-read-tag-buffer-deep): Moved
6930 (semantic-displayor-focus-abstract,semantic-displayor-tooltip)
6931 (semantic-displayor-show-request): Cleaned up white space and doc.
6933 * semanticdb.el (semanticdb-current-database-list):
6934 Use reference directory, not file
6937 2003-06-06 David Ponce <david@dponce.com>
6939 * tests/test.cpp: Sync. with HEAD.
6940 New test cases for nested classes or structs defined outside of
6941 the containing class/struct, and for "short int".
6943 * semantic-c.el: Sync. with HEAD.
6944 (semantic-toplevel-c-bovine-table): Re-generated.
6946 * c.bnf: Sync. with HEAD.
6947 From Jens Rock <jens.rock@asamnet.de>:
6948 (typesimple): Handle an opt-class before the type name, and return
6949 it in the `parent' extra-spec of the tag.
6950 (builtintype-types): Handle "short int".
6952 2003-06-05 David Ponce <david@dponce.com>
6955 New test cases for nested classes or structs defined outside of
6956 the containing class/struct, and for "short int".
6958 * bovine/semantic-c.el (semantic-toplevel-c-bovine-table):
6961 * bovine/c.by: Updated comments.
6963 From Jens Rock <jens.rock@asamnet.de>:
6964 (typesimple): Handle an opt-class before the type name, and return
6965 it in the `parent' attribute of the tag.
6966 (builtintype-types): Handle "short int".
6968 2003-06-04 David Ponce <david@dponce.com>
6970 * semantic-grammar.el (semantic-grammar-goto-grammar-indent-anchor):
6972 loop when indenting after a %prec clause.
6974 2003-06-03 Eric M. Ludlam <zappo@gnu.org>
6976 * bovine/erlang.bnf:
6977 Incorporated changes from David Wallin and Vladimir G. Sekissov.
6979 2003-05-29 Eric M. Ludlam <zappo@gnu.org>
6981 * semantic-find.el (semantic-flatten-tags-table):
6982 Removed. Moved to semantic-sort.el
6984 * semantic-sort.el (semantic-flatten-tags-table):
6985 New, from semantic-find.el
6987 * semantic-util-modes.el: (global-semantic-highlight-edits-mode)
6988 (global-semantic-show-unmatched-syntax-mode)
6989 (global-semantic-show-parser-state-mode)
6990 (global-semantic-summary-mode)
6991 (global-semantic-stickyfunc-mode): Improve doc strings.
6992 (semantic-stickyfunc-indent-string): New variable
6993 (semantic-stickyfunc-mode-setup): Use above.
6995 * semantic-sb.el (semantic-sb-info-format-tag-function):
6996 Add this back in. It is used
6999 * semantic-load.el (header-line-format):
7000 Quote in this symbol when testing.
7002 * semantic-find.el (semantic-flatten-tags-table):
7003 Flatten only tags with positions.
7005 * semanticdb-find.el: Added todo list.
7007 * Makefile (semantic_LISP): Added semantic-complete and semantic-sort
7008 (.PHONY): Documentation target
7009 (Documentation): build target for the doc directory
7010 (tags): tags in the doc dir
7011 (dist): distribute the doc dir.
7013 * Project.ede (semantic): Added semantic-sort and semantic-complete
7014 (tools): Added semantic-regtest
7016 * semantic-util.el: - (defvar semantic-bucketize-token-token
7017 - (defun semantic-bucketize (tags &optional parent filter)
7018 - (defvar semantic-orphaned-member-metaparent-type "class"
7019 - (defvar semantic-mark-external-member-function nil
7020 - (defun semantic-adopt-external-members (tags)
7021 (semantic-string-lessp-ci)
7022 (semantic-sort-token-type)
7023 (semantic-sort-tokens-by-name-increasing)
7024 (semantic-sort-tokens-by-name-decreasing)
7025 (semantic-sort-tokens-by-type-increasing)
7026 (semantic-sort-tokens-by-type-decreasing)
7027 (semantic-sort-tokens-by-name-increasing-ci)
7028 (semantic-sort-tokens-by-name-decreasing-ci)
7029 (semantic-sort-tokens-by-type-increasing-ci)
7030 (semantic-sort-tokens-by-type-decreasing-ci)
7031 (semantic-nonterminal-external-member-parent)
7032 (semantic-nonterminal-external-member-parent-default)
7033 (semantic-nonterminal-external-member-p)
7034 (semantic-nonterminal-external-member-p-default)
7035 (semantic-nonterminal-external-member-children)
7036 (semantic-nonterminal-external-member-children-default):
7037 Deleted. Moved to semantic-sort.el
7039 * semantic-format.el (semantic-format-tag-prin1): Doc fix
7040 (semantic-format-tag-summarize-default): Use
7041 `semantic-bucketize-tag-class' instead of old name.
7043 * semantic-sort.el: Sorting routines pulled from semantic-util.el
7045 2003-05-27 Eric M. Ludlam <zappo@gnu.org>
7047 * bovine/semantic-c.el (semantic-c-reconstitute-token):
7048 Support function pointers
7049 (semantic-c-format-tag-name): New override method
7050 (semantic-default-c-setup): Added `semantic-c-format-tag-name'
7053 * bovine/c.by: Support function pointers.
7055 2003-05-21 Eric M. Ludlam <zappo@gnu.org>
7057 * bovine/semantic-c.el:
7058 (semantic-toplevel-c-bovine-table),(semantic-c-keyword-table),
7059 (semantic-default-c-setup): new c.by v 1.13
7061 * bovine/c.by (arg-sub-list): Support ... as a variable.
7063 2003-05-19 David Ponce <david@dponce.com>
7065 * senator.el (senator-completion-menu-popup):
7066 Reverted 2002-12-29 change:
7068 "Use a local `imenu-default-goto-function' to avoid conflicts with
7069 another buffer local definition of that function. Ensure that the
7070 local goto function will return the selected imenu item."
7072 That conflicted with `imenu--mouse-menu' specification, and worked
7073 only with buggy version in GNU Emacs 21.3.50.1 HEAD.
7075 2003-05-13 David Ponce <david@dponce.com>
7077 * semantic-complete.el (semantic-complete-read-tag-engine):
7078 Fixed condition that was
7080 (semantic-complete-done): Use `semantic-complete-try-completion'
7081 instead of `semantic-complete-do-completion' to not alter last
7082 focused tag. Accept input that match displayor focus entry.
7083 (semantic-complete-try-completion): New function.
7084 (semantic-complete-do-completion): Moved the actual completion
7085 code into the above new function. Use it.
7086 (semantic-complete-jump): New command.
7088 2003-05-12 David Ponce <david@dponce.com>
7090 * semantic-complete.el (semantic-complete-done):
7091 Accept input that matches one element of
7092 calculated completions.
7094 2003-05-10 Eric M. Ludlam <zappo@gnu.org>
7096 * semantic-complete.el:
7097 (semantic-minibuffer-conents, semantic-delete-minibuffer-conents):
7099 (semantic-complete-done, semantic-complete-do-completion)
7100 (semantic-collector-next-action, semantic-displayor-next-action):
7101 Use new aliases instead of the original.
7103 * semantic-complete.el (semantic-complete-read-tag-buffer-deep):
7104 Comment about tooltip displayor.
7105 (semantic-displayor-tooltip): New class
7106 (semantic-displayor-show-request:semantic-displayor-tooltip): New method
7107 (semantic-displayor-tooltip-show): New function.
7109 2003-05-02 Eric M. Ludlam <zappo@gnu.org>
7111 * semantic-complete.el (semantic-complete-read-tag-engine):
7112 Be aware of a displayor's ability
7113 to focus in on a specific tag.
7114 (semantic-complete-do-completion): Use updated displayor APIs.
7115 Account for new 'focus state.
7116 (semantic-complete-read-tag-buffer-deep): Try out new focusing displayor.
7117 (semantic-collector-next-action): Use displayor to determine
7119 (semantic-displayor-abstract): Remove initarg for table.
7120 Add `last-prefix' slot.
7121 (semantic-displayor-next-action): New methods
7122 (semantic-displayor-set-completions): Add argument.
7123 (semantic-displayor-focus-request): New method
7124 (semantic-displayor-current-focus): New method
7125 (semantic-displayor-focus-abstract): New class
7126 (semantic-displayor-set-completions, semantic-displayor-focus-next-tag)
7127 (semantic-displayor-current-focus): New methods on above new class.
7128 (semantic-displayor-traditional-with-focus-highlight): New class.
7129 (semantic-displayor-focus-request): New method on above.
7130 (semantic-complete-test): New name.
7132 2003-04-26 Eric M. Ludlam <zappo@gnu.org>
7134 * semantic-complete.el (semantic-ctxt): New dependency
7135 (semantic-complete-read-tag-engine): Update doc.
7136 Add full support for default-tag parameter. Dynamically add it to the
7137 prompt. Fetch the default if the user just hits RET.
7138 (semantic-complete-done): Accept if prompt is empty.
7139 (semantic-complete-choose-default): New fcn
7140 (semantic-complete-read-tag-buffer-deep): Doc fix
7141 (constructor): Unbind `match-list'.
7142 (semantic-completion-test): Use %S format string.
7144 * semantic-complete.el (semantic-complete-key-map):
7145 Add history navigation
7146 (semantic-complete-read-tag-engine): Provide default history symbol.
7147 (semantic-complete-help): Deleted
7148 (semantic-complete-done): Don't exit unless there is a match.
7149 (semantic-complete-do-completion): Use `delete-minibuffer-contents'.
7151 * semantic-complete.el (semantic-collector-per-buffer-list):
7153 (semantic-collector-calculate-completions): Use complare strings better.
7154 Do not optimize when last-prefix is used.
7155 (semantic-collector-all-completions): Safe reference of
7156 last-all-completions slot.
7158 * semantic-complete.el: Completion tools.
7160 2003-04-22 David Ponce <david@dponce.com>
7162 * semantic.el (semantic-version): Updated to 1.4.4.
7164 * Project.ede (ede-proj-project "semantic"): Updated :version to 1.4.4.
7166 2003-04-19 Richard Y. Kim <ryk@ap.com>
7168 * semantic-tag.el: Rephrased the doc-string for semantic-tag-file-name.
7169 Also added semantic-alias-obsolete form for semantic-equivalent-tokens-p.
7171 * semantic-util.el: Corrected spelling in comments and strings.
7173 2003-04-14 Klaus Berndl <klaus.berndl@sdm.de>
7175 * semantic-regtest.el:
7176 Added first try of compatibility code so this library works with semantic
7177 2.0 as well as with semantic 1.4.
7179 2003-04-12 Eric M. Ludlam <zappo@gnu.org>
7181 * semantic-regtest.el: (semantic-regtest-convert-tag-table)
7182 (semantic-regtest-convert-tag): New functions.
7184 2003-04-12 Klaus Berndl <klaus.berndl@sdm.de>
7186 * semantic-regtest.el: Initial version of the regression-test library
7188 2003-04-11 Klaus Berndl <klaus.berndl@sdm.de>
7190 * semantic-util-modes.el (semantic-stickyfunc-fetch-stickyline):
7191 Search forward to the tag-name to get
7192 more useful information in the header line.
7194 * semantic-util-modes.el (semantic-stickyfunc-fetch-stickyline):
7195 Searching the token-name to get more
7196 useful information in the header line
7198 2003-04-10 Klaus Berndl <klaus.berndl@sdm.de>
7200 * NEWS: Added news for bugfixes of the c++-grammar
7202 2003-04-09 David Ponce <david@dponce.com>
7204 * wisent/wisent-python.el (wisent-python-parser-tables): Re-generated.
7206 * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setupcode):
7207 Use `semantic-format-tag-prototype' for the
7208 `semantic-imenu-summary-function'.
7210 * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-default-setup):
7212 Override `format-tag-prototype' instead of `prototype-nonterminal'.
7214 * bovine/semantic-java.el: (semantic-java-prototype-function)
7215 (semantic-java-prototype-variable)
7216 (semantic-java-prototype-type): Use semantic-format-tag API.
7217 (semantic-java-prototype-nonterminal): Renamed...
7218 (semantic-java-prototype-tag): New function. Use
7219 semantic-format-tag API.
7220 (semantic-java-find-documentation): Use `semantic-current-tag'.
7222 * senator.el: (senator-completion-menu-summary-function)
7223 (senator-completion-menu-item)
7224 (senator-insert-foreign-token-default)
7225 (senator-insert-foreign-token, senator-copy-token)
7226 (senator-eldoc-print-current-symbol-info): Use semantic-format-tag
7228 (senator-add-log-tokens): Doc fix.
7229 (senator-find-current-symbol-tag): New function.
7230 (senator-eldoc-print-current-symbol-info-default): Use it.
7232 * semantic-format.el (semantic-format-tag-prototype-default):
7236 2003-04-09 Richard Y. Kim <ryk@ap.com>
7238 * doc/app-dev-guide.texi, doc/glossary.texi, doc/lang-support-guide.texi, doc/semantic.texi, doc/user-guide.texi:
7239 Cut and pasted the content of old semantic.texi into separate files.
7241 Also started documenting new API functions.
7243 2003-04-09 Eric M. Ludlam <zappo@gnu.org>
7245 * bovine/semantic-c.el (semantic-c-nonterminal-protection):
7246 Defaultprotection is now nil.
7247 (semantic-c-format-tag-type): New override.
7248 (semantic-c-template-string-body)
7249 (semantic-c-concise-prototype-nonterminal)
7250 (semantic-c-uml-prototype-nonterminal): Use `semantic-format-tag*'
7252 (semantic-default-c-setup): Setup above new overrides.
7254 * Makefile (semantic_LISP): Add semantic-format.el
7256 * Project.ede (semantic): Add semantic-format.el
7258 * semantic-ia-sb.el (semantic-ia-sb-key-map):
7259 Use `semantic-ia-sb-show-tag-info'.
7260 (semantic-ia-sb-show-tag-info): New name
7262 * semantic-ia-sb.el: (semantic-ia-speedbar)
7263 (semantic-ia-sb-string-list)
7264 (semantic-ia-sb-completion-list)
7265 (semantic-ia-sb-tag-info)
7266 (semantic-ia-sb-line-path)
7267 (semantic-ia-sb-complete): Use new semantic-tag, and
7268 semantic-format-tag methods.
7270 * semantic-ia.el: (semantic-ia-completion-format-tag-function)
7271 (semantic-ia-completion-menu-format-tag-function): New name.
7272 Use `semantic-format-tag-custom-list
7273 (semantic-ia-cache): doc fix.
7274 (semantic-ia-complete-symbol)
7275 (semantic-ia-complete-symbol-menu)
7276 (semantic-ia-complete-tip): Use `tag' instead of `token' for names.
7278 * semantic-example.el:
7279 (se-jump, se-summary-function, se-show, se-db-apropos-show):
7280 Use new -tag- API calls.
7282 * semanticdb-system.el (Commentary): Doc fix.
7284 * semanticdb-search.el: (semanticdb-find-nonterminal-by-token-method)
7285 (semanticdb-find-nonterminal-by-name-method)
7286 (semanticdb-find-nonterminal-by-name-regexp-method)
7287 (semanticdb-find-nonterminal-by-type-method)
7288 (semanticdb-find-nonterminal-by-property-method)
7289 (semanticdb-find-nonterminal-by-extra-spec-method)
7290 (semanticdb-find-nonterminal-by-extra-spec-value-method)
7291 (semanticdb-find-nonterminal-external-children-of-type-method):
7292 Use `semantic-brute-find-tags*' functions..
7294 * semanticdb.el (semanticdb-table-oob-sanity-check):
7295 Use semantic-format-tag-summarize
7297 * semantic-cb.el (semantic-cb-token): Use semantic-tag for :type
7298 (semantic-cb-complete-type, semantic-cb-find-parent)
7299 (semantic-cb-convert-type, semantic-cb-convert-children)
7300 (initialize-instance, eieio-speedbar-description): Use new semantic-tag*,
7301 semantic-format-tag* functions
7303 * semantic-analyze.el (semantic-analyze-summary-function):
7304 Use `semantic-format-tag-custom-list'
7305 (semantic-analyze-princ-sequence): Use `semantic--format-colorize-text'.
7307 * semantic-sb.el (semantic-sb-button-format-tag-function): New name
7308 (semantic-sb-info-token->text-function): Commented out (not used)
7309 (semantic-sb-one-button): Use new name of above variable.
7311 * semantic-texi.el: (semantic-texi-update-doc-from-texi)
7312 (semantic-texi-goto-source): Use `semanticdb-deep-find-*' for searches.
7314 * semantic-imenu.el (semantic-imenu-summary-function):
7315 Use `semantic-format-tag-custom-list'.
7316 (semantic-imenu-tag-overlay): Doc fix.
7317 (semantic-create-imenu-subindex): Make sure tags have a position
7318 before adding them to imenu.
7319 (semantic-default-which-function): Use `semantic-format-tag*' for
7322 * semantic-util.el (semantic-describe-token):
7323 Use semantic-format-tag-summarize.
7324 (semantic-sanity-check): Use semantic-format-tag-concise-prototype.
7326 * semantic-util.el: (semantic-recursive-find-nonterminal-by-name)
7327 (semantic-token->text-functions, semantic-token->text-custom-list)
7328 (semantic-function-argument-separator)
7329 (semantic-test-all-token->text-functions, semantic-face-alist)
7330 (semantic-colorize-text, semantic-colorize-merge-text)
7331 (semantic-prin1-nonterminal, semantic-name-nonterminal)
7332 (semantic-name-nonterminal-default, semantic-abbreviate-nonterminal)
7333 (semantic-abbreviate-nonterminal-default, semantic-summarize-nonterminal)
7334 (semantic-summarize-nonterminal-default, semantic-prototype-nonterminal)
7335 (semantic-prototype-nonterminal-default-args)
7336 (semantic-prototype-nonterminal-default)
7337 (semantic-concise-prototype-nonterminal)
7338 (semantic-concise-prototype-nonterminal-default)
7339 (semantic-uml-colon-string, semantic-uml-no-protection-string)
7340 (semantic-uml-post-colorize, semantic-uml-attribute-string)
7341 (semantic-uml-protection-to-string)
7342 (semantic-uml-token-or-string-to-string)
7343 (semantic-uml-abbreviate-nonterminal)
7344 (semantic-uml-abbreviate-nonterminal-default)
7345 (semantic-uml-arguments-to-string, semantic-uml-prototype-nonterminal)
7346 (semantic-uml-prototype-nonterminal-default)
7347 (semantic-uml-concise-prototype-nonterminal)
7348 (semantic-uml-concise-prototype-nonterminal-default):
7349 Deleted. Moved to semantic-format.el
7351 2003-04-08 David Ponce <david@dponce.com>
7353 * semantic-util.el (semantic-uml-nonterminal-protection): New macro.
7354 (semantic-uml-abbreviate-nonterminal-default)
7355 (semantic-uml-prototype-nonterminal-default)
7356 (semantic-uml-concise-prototype-nonterminal-default): Use it.
7358 2003-04-08 Eric M. Ludlam <zappo@gnu.org>
7360 * NEWS: Added section for semantic 1.4.4.
7361 Discuss stickyfunc mode.
7363 * wisent/wisent-python.el: (wisent-python-parser-tables)
7364 (wisent-python-tokens)
7365 (wisent-python-default-setup): Regenerated from wisent-python.wy
7367 * wisent/wisent-python.wy:
7368 (print_stmt, expr_stmt, del_stmt, pass_stmt, break_stmt, yield_stmt)
7369 (global_stmt, exec_stmt, assert_stmt, if_stmt, while_stmt, for_stmt)
7370 (try_stmt): Add argument to CODE-TAG statements
7371 (import_stmt): Add argument to INCLUDE-TAG call
7373 * semantic-format.el (semantic-format-tag-type):
7374 Renamed as public, and as an overload.
7375 (semantic-format-tag-prototype-default)
7376 (semantic--format-tag-uml-type): New name for format-tag-type
7377 (semantic-format-tag-uml-prototype-default): Fix compiler warning
7379 2003-04-07 Eric M. Ludlam <zappo@gnu.org>
7381 * semantic-load.el (global-semantic-stickyfunc-mode):
7382 On by default if available.
7384 * semantic-util-modes.el: (global-semantic-stickyfunc-mode)
7385 (global-semantic-stickyfunc-mode-hook)
7386 (semantic-stickyfunc-mode-map)
7387 (semantic-stickyfunc-mode)
7388 (semantic-stickyfunc-mode-setup)
7389 (semantic-stickyfunc-sticky-classes)
7390 (semantic-stickyfunc-fetch-stickyline): New minor mode.
7392 2003-04-07 David Ponce <david@dponce.com>
7394 * bovine/semantic-make.el (semantic-expand-make-nonterminal):
7395 Removed. Replaced by...
7396 (semantic-make-expand-tag): New function.
7397 (semantic-default-make-setup): Re-generated.
7399 * bovine/make.by (setupcode): Use `semantic-make-expand-tag' as
7400 `semantic-tag-expand-function'.
7402 * semanticdb-el.el: (semanticdb-deep-find-tags-by-name-method)
7403 (semanticdb-deep-find-tags-by-name-regexp-method)
7404 (semanticdb-deep-find-tags-for-completion-method): New methods.
7406 * senator.el (senator-completion-flatten-stream): Use
7407 `semantic-tag-components' instead of
7408 `semantic-tag-components-with-overlays'.
7409 (senator-find-nonterminal-by-name)
7410 (senator-find-nonterminal-by-name-regexp): No more supported.
7411 (senator-find-tag-for-completion): New function.
7412 (senator-complete-symbol, senator-completion-menu-popup): Use it.
7414 * semanticdb-find.el: (semanticdb-deep-find-tags-by-name)
7415 (semanticdb-deep-find-tags-by-name-regexp)
7416 (semanticdb-deep-find-tags-for-completion): New functions.
7417 (semanticdb-deep-find-tags-by-name-method)
7418 (semanticdb-deep-find-tags-by-name-regexp-method)
7419 (semanticdb-deep-find-tags-for-completion-method): New methods.
7421 * semantic-find.el (semantic--find-tags-by-macro):
7422 For consistency, argument TABLE is
7424 (semantic-find-tags-by-name): Removed extra call to
7425 `semantic-something-to-tag-table'.
7426 (semantic-deep-find-tags-by-name)
7427 (semantic-deep-find-tags-for-completion)
7428 (semantic-deep-find-tags-by-name-regexp): New functions.
7430 2003-04-07 Eric M. Ludlam <zappo@gnu.org>
7432 * semantic-format.el: Copied all token->text functions in.
7433 Convert all token and nonterminal references to 'tag'.
7435 * semanticdb-java.el: Removed old definitions
7436 Derived new definitions from semanticdb.el
7438 2003-04-06 Eric M. Ludlam <zappo@gnu.org>
7440 * bovine/semantic-el.el (semantic-elisp-use-read):
7441 Support require directory part
7442 (semantic-tag-include-filename): New overload.
7444 * Makefile (tools_LISP): Added semanticdb-find.el.
7446 * Project.ede (tools): Added semanticdb-find.
7448 * semantic-analyze.el (require):
7449 Use semanticdb-find instead of semanticdb-search
7450 (semantic-analyze-find-nonterminals-by-prefix): Use new
7451 semanticdb-find-tags-for-completion fcn.
7452 (semantic-analyze-find-nonterminal): Use new
7453 semanticdb-find-tags-by-name fcn.
7455 * semantic-util.el (semantic-something-to-tag-table):
7456 Support semanticdb-tables as something.
7457 (semantic-find-dependency): Rename all token vars to tag.
7458 (semantic-nonterminal-external-member-children-default): Use new
7459 sematnicdb-find-tags-external-children-of-type fn.
7461 * semanticdb-el.el (semanticdb-find-tags-for-completion-method):
7464 * semanticdb-el.el: (semanticdb-find-table)
7465 (semanticdb-get-tags)
7466 (semanticdb-equivalent-mode): New methods
7467 (sematnicdb-elisp-sym-tag): New name. Allow string input.
7468 (semanticdb-find-nonterminal-*): deleted
7469 (semanticdb-find-tags-by-name-method)
7470 (semanticdb-find-tags-by-name-regexp-method): Renamed from old methods.
7471 (semanticdb-find-tags-for-completion-method): New method
7472 (sematnicdb-find-tags-external-children-of-type-method): New name.
7474 * semanticdb-search.el: (semanticdb-find-nonterminal-by-token)
7475 (semanticdb-find-nonterminal-by-name)
7476 (semanticdb-find-nonterminal-by-name-regexp)
7477 (semanticdb-find-nonterminal-by-type)
7478 (semanticdb-find-nonterminal-by-property)
7479 (semanticdb-find-nonterminal-by-extra-spec)
7480 (semanticdb-find-nonterminal-by-extra-spec-value)
7481 (semanticdb-find-nonterminal-by-function): made obsolete
7482 (semanticdb-find-nonterminal-by-function-method): doc fix.
7483 Use semanticdb-get-tags.
7485 * semantic-find.el (semantic-find-tags-external-children-of-type): New
7486 (semantic-find-nonterminal-by-extra-spec-value): Better obsolete call
7488 * semanticdb-find.el (semanticdb-find-translate-path-default): Moved
7489 Better logic for not testing the same file twice.
7490 (semanticdb-find-table-fo-include-default): Moved.
7491 (semanticdb-find-tags-external-children-of-type-method): New fcn
7493 * semanticdb-file.el (object-write):
7494 use semantic--tag-[un]link-cache-[to|from]-buffer.
7496 * semanticdb-file.el (semanticdb-persistent-path): Doc fix
7497 (semanticdb-project-database-file): Doc fix
7498 (replace-regexp-in-string): doc fix
7500 * semanticdb.el (semanticdb-abstract-table): Renamed tokens to tags
7501 (semanticdb-table): Doc fix
7502 (semanticdb-get-database): Use `semanticdb-create-database' only
7503 which does the logic this fn used to do.
7504 (semanticdb-directory-loaded-p): Doc fix.
7505 (semanticdb-needs-refresh-p): Use 'tags slot name
7506 (semanticdb-equivalent-mode): New method on a table
7507 (semanticdb-semantic-init-hook-fcn): Use 'tags slot name
7508 (semanticdb-post-bovination): Use 'tags slot name
7509 (semanticdb-table-oob-sanity-check): Use tags slot name
7510 (semanticdb-table-sanity-check): Use tags slot name
7511 (semanticdb-file-stream): Replace contents with call too...
7512 (semanticdb-find-table-object): New fcn
7514 2003-04-05 Eric M. Ludlam <zappo@gnu.org>
7516 * semantic-debug.el: (semantic-debug-highlight-rule)
7517 (semantic-debug-set-breakpoint): Use new -tag- and -find-tag- API.
7519 * bovine/bovine-debug.el (semantic-debug-frame-highlight):
7522 * bovine/semantic-scm.el: (semantic-scheme-prototype-nonterminal)
7523 (semantic-scheme-find-documentation)
7524 (semantic-scheme-insert-foreign-token): Use new tag API.
7526 * bovine/semantic-bnf.el: (semantic-bovine-bnf-table)
7527 (semantic-bnf-keyword-table)
7528 (semantic-bnf-token-name-symbol)
7529 (semantic-bnf-ASSOC)
7530 (semantic-bnf-to-bovine)
7531 (semantic-bnf-to-lalr-ASSOC)
7532 (semantic-bnf-terminal-token-p)
7533 (semantic-bnf-token-table)
7534 (semantic-bnf-find-terminal-assocs)
7535 (semantic-bnf-to-lalr)
7536 (semantic-bnf-find-table-destination)
7537 (semantic-bnf-find-keyword-destination)
7538 (semantic-bnf-find-languagemode)
7539 (semantic-bnf-find-setup-code)
7540 (semantic-bnf-find-parser-mode)
7541 (semantic-bnf-find-token-destination)
7542 (semantic-bnf-generate-and-load)
7543 (semantic-bnf-generate-one-rule)
7544 (semantic-bnf-find-state-position)
7545 (semantic-bnf-looking-at-%token-not-keyword)
7546 (semantic-bnf-summarize-nonterminal): Replace calls to
7547 `semantic-token-*' with `semantic-tag-*', and from
7548 `semantic-find-nonterminal*' with `semantic-find-tags-*'.
7549 (semantic-bnf-mode): As above, and new override for
7550 `nonterminal-componenets'.
7551 (semantic-bnf-tag-components): As above and
7552 changed from `semantic-bnf-nonterminal-children'.
7554 * bovine/semantic-make.el (semantic-expand-make-nonterminal):
7557 * semantic-find.el (semantic--find-tags-by-function):
7558 Replaced mapc w/ while loop
7559 (semantic--find-tags-by-macro): New macro
7560 (semantic-find-tags-by-name)
7561 (semantic-find-tags-for-completion)
7562 (semantic-find-tags-by-name-regexp)
7563 (semantic-find-tags-by-class)
7564 (semantic-find-tags-by-type): Use `semantic--find-tags-by-macro'
7565 (semantic-brute-find-first-tag-by-name): Use
7566 `semantic-something-to-tag-table'.
7568 * semantic-tag.el (semantic-tag-of-type-p): Remove error message
7569 (semantic-tag-include-filename): New overload fcn
7570 (semantic-tag-include-filename-default): New overload implementation
7571 (semantic-tag-components-with-overlays): Remove IGNORE argument
7572 (semantic-tag-components-with-overlays-default): Remove INGNORE argument
7574 2003-04-04 David Ponce <david@dponce.com>
7576 * semantic-fw.el: (defvar-mode-local)
7577 (defconst-mode-local): Call `semantic-symbol' with arguments in
7580 * tests/test.cpp: Sync. with v1p4 branch.
7581 Two additional tests for latest c.by modifications.
7583 * bovine/semantic-c.el: Sync. with v1p4 branch.
7584 (semantic-toplevel-c-bovine-table): Re-generated.
7586 * bovine/c.by: Sync. with v1p4 branch.
7587 (namespace-symbol): Fixed so also template-specifiers can be
7589 (typeformbase): ajusted for new namespace-symbol definition.
7591 2003-04-04 Klaus Berndl <klaus.berndl@sdm.de>
7593 * tests/test.cpp: Two additional tests for latest c.bnf modifications
7595 * c.bnf, semantic-c.el (namespace-symbol):
7596 fixed so also template-specifiers can be parsed here.
7598 (typeformbase): ajusted for new namespace-symbol definition
7600 * c.bnf (macro-expression-list):
7601 Removed a backslash from the comment before which
7602 prevented the whole file from being lexed and/or parsed.
7604 2003-04-04 David Ponce <david@dponce.com>
7606 * senator.el: Fix for bug #692919.
7607 Unconditionally add `senator-hippie-expand-hook' to
7608 `senator-minor-mode-hook'.
7610 * senator.el: Applied fix for bug #692919 from v1p4 branch.
7611 Unconditionally add `senator-hippie-expand-hook' to
7612 `senator-minor-mode-hook'.
7614 2003-04-04 Eric M. Ludlam <zappo@gnu.org>
7616 * semanticdb-find.el:
7617 Find routines for semanticdb. Searches done via `include' tags.
7619 2003-04-02 David Ponce <david@dponce.com>
7621 * bovine/semantic-make.el: (semantic-toplevel-make-bovine-table)
7622 (semantic-make-keyword-table)
7623 (semantic-default-make-setup): Re-generated.
7625 * bovine/make.by, wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setupcode):
7626 Set `semantic-tag-expand-function' instead of
7627 obsolete `semantic-expand-nonterminal'.
7629 * wisent/wisent-java-tags.el, wisent/wisent-java.el:
7630 (wisent-java-parser-tables)
7631 (wisent-java-keywords, wisent-java-tokens)
7632 (wisent-java-default-setup): Re-generated.
7633 (wisent-java-expand-nonterminal): Renamed to...
7634 (wisent-java-expand-tag): New.
7636 * semantic-fw.el (define-overload):
7637 Removed unnecessary autoload cookie.
7639 2003-04-02 Eric M. Ludlam <zappo@gnu.org>
7641 * semantic-find.el (semantic-find-tags-by-type): Fix typo
7643 * semantic-find.el (semantic-find-tags-by-type):
7644 Use `semantic-tag-of-type-p' for comparison.
7646 * semantic-tag.el (semantic-tag-of-type-p): New.
7648 * semantic-analyze.el (inversion-require): Eval when compile
7649 (semantic-analyze-find-nonterminals-by-prefix)
7650 (semantic-analyze-find-nonterminal)
7651 (semantic-analyze-dereference-metatype)
7652 (semantic-analyze-token-type)
7653 (semantic-analyze-type-parts)
7654 (semantic-analyze-scoped-types)
7655 (semantic-analyze-current-context)
7656 (semantic-analyze-type-constraint)
7657 (semantic-analyze-type-constants)
7658 (semantic-analyze-possible-completions)
7659 (semantic-analyze-princ-sequence): Use new `semantic-tag*' API
7660 instead of `semantic-token*'.
7661 Use new `semantic-find-tag*' API instead of `semantic-find-nonterminal*'.
7662 (semantic-analyze-find-nonterminal-sequence): As above.
7663 Reordered search so that inner scope items are found first.
7665 * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): New c.by
7666 (semantic-c-nonterminal-abstract): Use `semantic-brute-find-tag-by-attribute'
7667 instead of `semantic-find-nonterminal-by-extra-spec'
7669 * bovine/c.by (template-type): Fix call to TYPE-TAG
7670 (typeformbase): Use TYPE-TAG instead of forming my own tags.
7672 * semanticdb.el, semantic-sb.el (inversion-require):
7673 Wrap in eval-and-compile.
7675 * semanticdb.el (semanticdb-semantic-init-hook-fcn): Use
7676 `semantic--tag-link-cache-to-buffer' instead of
7677 `semantic-overlay-cache'.
7678 (semanticdb-kill-hook): Use
7679 `semantic--tag-unlink-cache-to-buffer' instead of
7680 `semantic-deoverlay-cache'.
7681 (semanticdb-table-oob-sanity-check): Use new `semantic-tag*' API.
7683 * semantic-ctxt.el: (semantic-up-context)
7684 (semantic-get-local-arguments-default): Use `semantic-current-tag*'
7685 insteado of `semantic-current-nonterminal*'.
7687 * document.el: (document-insert-function-comment-new)
7688 (document-parameter-comment)
7689 (document-update-paramlist): Fix typos in last conversion.
7691 * document.el: (document)
7693 (document-insert-texinfo)
7694 (document-insert-defun-comment)
7695 (document-update-comment)
7696 (document-insert-function-comment-new)
7697 (document-function-name-comment)
7698 (document-insert-parameters)
7699 (document-parameter-comment)
7700 (document-argument-name)
7701 (document-update-paramlist)
7702 (document-longest-name): Move from old `-token-' or
7703 `-find-nonterminal-' API calls to new `-tag-' and `-find-tag-' API calls.
7705 * semantic-util-modes.el: (semantic-clean-token-of-unmatched-syntax)
7706 (semantic-stickyfunc-mode)
7707 (semantic-stickyfunc-fetch-stickyline): Use new `semantic-tag-*'
7708 functions instead of `semantic-token*'.
7710 * semantic-util.el (semantic-prototype-nonterminal-default):
7711 Handle a list of type modifiers.
7713 * semantic-token.el: Replaced by semantic-tag.el
7715 * semantic-texi.el: (semantic-texi-find-documentation)
7716 (semantic-texi-update-doc-from-texi)
7717 (semantic-texi-update-doc-from-source)
7718 (semantic-texi-goto-source): Use `semantic-find-tag*' instead of
7719 `semantic-find-nonterminal*'.
7721 * semantic-find.el (semantic-current-nonterminal-of-type):
7722 Fixed obsolete name.
7724 * semantic-chart.el: (semantic-chart-token-complexity)
7725 (semantic-chart-nonterminal-complexity-token): Use new
7726 `semantic-find-tag*' API instead of old `semantic-find-nonterminal*'
7728 * semantic-edit.el: (semantic-edits-change-in-one-token-p)
7729 (semantic-edits-change-leaf-token)
7730 (semantic-edits-change-between-tokens)
7731 (semantic-edits-change-over-tokens)
7732 (semantic-edits-incremental-parser)
7733 (semantic-edits-splice-remove)
7734 (semantic-edits-splice-insert)
7735 (semantic-edits-splice-replace): Use `semantic-tag-*' instead of
7736 `semantic-token-*' functions.
7738 * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): Updated c.by
7739 (semantic-expand-c-nonterminal): Better `extern' support.
7741 * bovine/c.by (extern-c): Fixed the extern tag
7742 (classsubparts): Set label name as a string
7743 (namespacesubparts): Set label name as a string
7745 2003-04-01 Eric M. Ludlam <zappo@gnu.org>
7747 * semantic.el: (semantic-bovinate-toplevel)
7748 (semantic-repeat-parse-whole-stream): Use new semantic-tag* API.
7750 2003-04-01 David Ponce <david@dponce.com>
7752 * senator.el (senator-eldoc-print-current-symbol-info-default): Use
7755 * semantic.el (semantic-unmatched-syntax-hook):
7756 Doc fix. Reference semantic-lex
7759 * semantic-tag.el: (semantic-tag-new-variable)
7760 (semantic-tag-new-function)
7761 (semantic-tag-new-type)
7762 (semantic-tag-new-include)
7763 (semantic-tag-new-package)
7764 (semantic-tag-new-code): Inline functions instead of macros.
7766 * semantic-ia-sb.el (semantic-ia-sb-token-info): Use semantic-lex API.
7768 * document.el (document-update-history, document-update-paramlist): Use
7771 * wisent/wisent-grammar.el:
7772 (wisent-grammar-assocs, wisent-grammar-terminals)
7773 (wisent-grammar-nonterminals): Use new semantic-find API.
7775 * senator.el: (senator-current-token, senator-step-at-parent)
7776 (senator-previous-token-or-parent)
7777 (senator-current-type-context)
7778 (senator-find-nonterminal-by-name)
7779 (senator-find-nonterminal-by-name-regexp)
7780 (senator-search-forward-raw, senator-search-backward-raw)
7781 (senator-next-token, senator-previous-token)
7782 (senator-menu-bar, add-log-current-defun)
7783 (senator-eldoc-print-current-symbol-info-default): Use new
7787 (require 'semantic-fw) instead of loading semantic-al.el.
7789 * semantic-imenu.el (which-function): Use new semantic-find API.
7791 * semantic-grammar.el (semantic-summarize-nonterminal): Use
7792 `semantic--find-tags-by-function' instead of
7793 `semantic-brute-find-tag-by-function'.
7795 * semantic-fw.el (semantic-alias-obsolete):
7796 Moved with compatibility code.
7797 (load "semantic-al") after compatibility code.
7799 * semantic-find.el: (semantic-brute-find-first-tag-by-name)
7800 (semantic-brute-find-tag-by-class)
7801 (semantic-brute-find-tag-standard)
7802 (semantic-brute-find-tag-by-type)
7803 (semantic-brute-find-tag-by-type-regexp)
7804 (semantic-brute-find-tag-by-name-regexp)
7805 (semantic-brute-find-tag-by-property)
7806 (semantic-brute-find-tag-by-attribute)
7807 (semantic-brute-find-tag-by-attribute-value)
7808 (semantic-brute-find-tag-by-function)
7809 (semantic-brute-find-first-tag-by-function)
7810 (semantic-brute-find-tag-by-position)
7811 (semantic-brute-find-innermost-tag-by-position): Added autoload
7813 (semantic-find-nonterminal-by-overlay)
7814 (semantic-find-nonterminal-by-overlay-in-region)
7815 (semantic-find-nonterminal-by-overlay-next)
7816 (semantic-find-nonterminal-by-overlay-prev)
7817 (semantic-find-nonterminal-parent-by-overlay)
7818 (semantic-current-nonterminal)
7819 (semantic-current-nonterminal-parent)
7820 (semantic-current-nonterminal-of-class)
7821 (semantic-find-nonterminal-by-name)
7822 (semantic-find-nonterminal-by-token)
7823 (semantic-find-nonterminal-standard)
7824 (semantic-find-nonterminal-by-type)
7825 (semantic-find-nonterminal-by-type-regexp)
7826 (semantic-find-nonterminal-by-name-regexp)
7827 (semantic-find-nonterminal-by-property)
7828 (semantic-find-nonterminal-by-extra-spec)
7829 (semantic-find-nonterminal-by-attribute-value)
7830 (semantic-find-nonterminal-by-function)
7831 (semantic-find-nonterminal-by-function-first-match)
7832 (semantic-find-nonterminal-by-position)
7833 (semantic-find-innermost-nonterminal-by-position): Added autoload
7834 cookies to `semantic-alias-obsolete' definitions.
7835 (semantic-find-first-nonterminal-by-name): Alias replaced by
7836 `semantic-find-nonterminal-by-name'.
7838 2003-04-01 Eric M. Ludlam <zappo@gnu.org>
7840 * semantic-sb.el (semantic-sb-one-button):
7841 Use tag as an argument. Use new tag API.
7842 If there is a type, also make tag expandable.
7843 (semantic-sb-insert-details): Use tag as an argument. Use new tag API.
7844 Variables can also insert their type.
7845 (semantic-sb-detail-parent): Use new -tag- API.
7847 * semantic-tag.el (semantic-token-variable-default):
7848 Added alias-obsolete
7850 * semantic-util.el (semantic-bucketize):
7851 Rename local variables and arg to be derived of 'tag'
7852 (semantic-recursive-find-nonterminal-by-name):
7853 (semantic-read-symbol):
7854 (semantic-nonterminal-external-member-children-default):
7855 (semantic-current-token):
7856 Use new `semantic-find-tag*' API
7858 * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder):
7859 Use new `semantic-find-tag*' API
7860 instead of `semantic-find-nonterminal*'
7862 * semantic-find.el: (semantic-find-nonterminal-by-position)
7863 (semantic-find-innermost-nonterminal-by-position): Fix alias/obsolete name.
7865 * semantic-util.el: (semantic-recursive-find-nonterminal-by-name)
7866 (semantic-read-symbol)
7867 (semantic-test-all-token->text-functions)
7868 (semantic-find-dependency)
7869 (semantic-find-nonterminal)
7870 (semantic-find-documentation)
7871 (semantic-hack-search):
7872 Use `semantic-brute-find-tag-*' or `semantic-find-tag-*' APIs instead
7873 of old nonterminal verison.
7875 * semantic-grammar.el (semantic-grammar-ASSOC):
7876 Use semantic-tag-make-assoc-list.
7877 (semantic-grammar-as-string): Doc fix
7878 (semantic-grammar-edits-new-change-hook-fcn)
7879 (semantic-grammar-first-tag-name)
7880 (semantic-grammar-tag-symbols)
7881 (semantic-grammar-setupcode-text)
7882 (semantic-grammar-keywords)
7883 (semantic-grammar-tokens)
7884 (semantic-grammar-token-properties)
7885 (semantic-grammar-complete)
7886 (semantic-summarize-nonterminal):
7887 Use new semantic-find-tag* functions instead of semantic-find-nonterminal*
7889 * Makefile (semantic_LISP): Add semantic-find.el
7891 * Project.ede (semantic): add semantic-find.el
7893 * semantic-util.el (semantic-file-token-stream): Renamed to...
7894 (semantic-file-tag-table): Updated doc string.
7895 (semantic-something-to-stream): Renamed to...
7896 (semantic-something-to-tag-table): Add support for tag filenames
7897 (semantic-find-nonterminal-by-*): Deleted. See semantic-find.el
7898 (semantic-current-nonterminal-*): Deleted. See semantic-find.el
7899 (semantic-bucketize-token-token)
7900 (semantic-adopt-external-members)
7901 (semantic-sort-token-type)
7902 (semantic-sort-tokens-by-name-increasing)
7903 (semantic-sort-tokens-by-name-increasing-ci)
7904 (semantic-recursive-find-nonterminal-by-name)
7905 (semantic-read-variable)
7906 (semantic-read-function)
7907 (semantic-read-type)
7908 (semantic-test-all-token->text-functions)
7909 (semantic-name-nonterminal-default)
7910 (semantic-abbreviate-nonterminal-default)
7911 (semantic-prototype-nonterminal-default-args)
7912 (semantic-prototype-nonterminal-default)
7913 (semantic-concise-prototype-nonterminal-default)
7914 (semantic-uml-token-or-string-to-string)
7915 (semantic-uml-prototype-nonterminal-default)
7916 (semantic-uml-concise-prototype-nonterminal-default)
7917 (semantic-find-dependency)
7918 (semantic-find-nonterminal)
7919 (semantic-find-documentation)
7920 (semantic-nonterminal-external-member-parent-default)
7921 (semantic-nonterminal-external-member-p-default)
7922 (semantic-nonterminal-external-member-children-default)
7923 (semantic-nonterminal-protection-default)
7924 (semantic-nonterminal-abstract-default)
7925 (semantic-nonterminal-leaf-default)
7926 (semantic-nonterminal-static-default)
7927 (semantic-nonterminal-full-name)
7928 (semantic-highlight-token)
7929 (semantic-unhighlight-token)
7930 (semantic-set-token-face)
7931 (semantic-set-token-read-only)
7932 (semantic-token-read-only-p)
7933 (semantic-narrow-to-token)
7934 (semantic-describe-token)
7935 (semantic-add-label)
7936 (semantic-show-label)
7937 (semantic-assert-valid-token)
7938 (semantic-sanity-check):
7939 Use new semantic-tag- functions instead of semantic-token*
7940 Use new semantic-find-tag* functions instead of semantic-find-nonterminal*
7941 Use new semantic-current-tag* functions instead of
7942 semantic-current-nonterminal*
7944 * semantic-tag.el (semantic-equivalent-tag-p): Fix fcn name typo.
7945 (semantic-tag-docstring): Use new lex API
7946 (semantic-tag-children-compatibility): New fcn
7947 (semantic-nonterminal-children): Use above for alias
7949 * semantic-lex.el (semantic-lex-test-region): New command
7951 2003-03-31 David Ponce <david@dponce.com>
7953 * semantic-texi.el: (semantic-texi-parse-region)
7954 (semantic-texi-bovinate-headings)
7955 (semantic-texi-find-documentation)
7956 (semantic-texi-update-doc-from-texi)
7957 (semantic-texi-update-doc-from-source)
7958 (semantic-texi-update-doc)
7959 (semantic-texi-goto-source): Use semantic-tag API and terminology.
7961 (semantic-texi-raw-to-cooked-token): Renamed to...
7962 (semantic-texi-expand-tag): New.
7963 (semantic-texi-new-section-tag)
7964 (semantic-texi-new-def-tag): New functions.
7965 (semantic-texi-recursive-combobulate-list): Use them.
7966 (semantic-texi-nonterminal-children): Renamed to...
7967 (semantic-texi-components): New.
7968 (semantic-texi-insert-foreign-token): Renamed to...
7969 (semantic-texi-insert-foreign-tag): New.
7970 (semantic-default-texi-setup): Reflect above changes.
7972 * semantic-imenu.el: (semantic-imenu-bucketize-file)
7973 (semantic-imenu-buckets-to-submenu)
7974 (semantic-imenu-expandable-token)
7975 (semantic-create-imenu-index)
7976 (semantic-create-imenu-directory-index)
7977 (semantic-create-imenu-index-1)
7978 (semantic-create-imenu-subindex)
7979 (semantic-which-function)
7980 (semantic-default-which-function): Use semantic-tag API and
7982 (semantic-imenu-token-overlay): Renamed to...
7983 (semantic-imenu-tag-overlay): New.
7985 * wisent/wisent-grammar.el: (wisent-grammar-assocs)
7986 (wisent-grammar-terminals)
7987 (wisent-grammar-nonterminals): Use semantic-tag API.
7989 * semantic-grammar.wy (put_decl): Use semantic-tag API.
7991 * semantic-grammar.el: (semantic-grammar-automaton)
7992 (semantic-grammar-keywords, semantic-grammar-tokens)
7993 (semantic-grammar-setup-semantic): Re-generated.
7994 (semantic-grammar-edits-new-change-hook-fcn)
7995 (semantic-grammar-first-tag-name)
7996 (semantic-grammar-tag-symbols)
7997 (semantic-grammar-setupcode-text)
7998 (semantic-grammar-keywords)
7999 (semantic-grammar-keyword-properties)
8000 (semantic-grammar-tokens)
8001 (semantic-grammar-token-properties)
8002 (semantic-abbreviate-nonterminal)
8003 (semantic-summarize-nonterminal): Use semantic-tag API.
8005 2003-03-30 Eric M. Ludlam <zappo@gnu.org>
8007 * semantic-find.el (toplevel): Added many autoload cookies
8008 (semantic-find-tags-by-type): Fixed typo.
8009 (semantic-brute-find-tag-by-function): Use semantic-something-to-tag-table.
8010 (semantic-brute-find-first-tag-by-function): As above
8011 (semantic-alias-obsolete ...*): Fixed order.
8012 Fixed some names which were wrong.
8014 * semantic-find.el: (semantic-find-tag-by-overlay)
8015 (semantic-find-tag-by-overlay-in-region)
8016 (semantic-find-tag-by-overlay-next)
8017 (semantic-current-tag, semantic-current-tag-parent)
8018 (semantic-current-tag-of-class): Doc fix
8019 (semantic--find-tags-by-function)
8020 (semantic-find-first-tag-by-name)
8021 (semantic-find-tags-by-name)
8022 (semantic-find-tags-for-completion)
8023 (semantic-find-tags-by-name-regexp)
8024 (semantic-find-tags-by-class)
8025 (semantic-find-tags-by-type): New FIND API functions.
8026 (semantic-flatten-tags-table): New function
8027 (semantic-brute-find-first-tag-by-name)
8028 (semantic-brute-find-tag-by-class)
8029 (semantic-brute-find-tag-by-type)
8030 (semantic-brute-find-tag-by-type-regexp)
8031 (semantic-brute-find-tag-by-function): Doc fix
8033 * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder):
8034 Rename all "token" variables
8035 with "tag". Use new -tag- accessor functions.
8036 Use new `semantic-tag-components-semantic-grammar-mode' instead of
8037 the `-nonterminal-children' version.
8039 * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): New c.by
8040 (semantic-expand-c-nonterminal): Use new -tag- functions for tags.
8041 Use `semantic-tag-new-*' for rebuilt tags.
8042 (semantic-c-reconstitute-token)
8043 (semantic-c-reconstitute-template)
8044 (semantic-c-nonterminal-protection)
8045 (semantic-c-nonterminal-abstract): Use new -tag- functions.
8046 (semantic-default-c-setup): Rebulit.
8047 Overload `tag-components' instead of `nonterminal-children'.
8049 * bovine/c.by (setq): Use new `semantic-tag-expand-function' variable.
8050 (extern-c): Turn `extern' list into a TAG that is later eliminated
8051 (classsubparts): Quote in label
8052 (namespacesubparts): Quote in label
8054 2003-03-28 David Ponce <david@dponce.com>
8056 * senator.el (senator-menu-bar): Fixed item help string.
8059 All these functions updated to use the new semantic-tag API and
8062 (senator-step-at-token-ids, senator-step-at-start-end-token-ids)
8063 (senator-highlight-found, senator-parse)
8064 (senator-completion-cache-flush-fcn)
8065 (senator-completion-uniquify-names)
8066 (senator-completion-list, senator-find-nonterminal-by-name)
8067 (senator-find-nonterminal-by-name-regexp)
8068 (senator-completion-menu-insert-function)
8069 (senator-search-forward, senator-re-search-forward)
8070 (senator-word-search-forward, senator-search-backward)
8071 (senator-re-search-backward, senator-word-search-backward)
8072 (senator-set-foreground, senator-set-background)
8073 (senator-current-token, senator-momentary-highlight-token)
8074 (senator-step-at-start-end-p, senator-skip-p)
8075 (senator-middle-of-token-p, senator-step-at-parent)
8076 (senator-previous-token-or-parent, senator-full-token-name)
8077 (senator-completion-flatten-stream)
8078 (senator-completion-function-args)
8079 (senator-completion-refine-name, senator-completion-stream)
8080 (senator-current-type-context, senator-search-token-name)
8081 (senator-search-forward-raw, senator-search-backward-raw)
8082 (senator-next-token, senator-previous-token)
8083 (senator-jump-noselect, senator-jump, senator-jump-regexp)
8084 (senator-complete-symbol, senator-completion-menu-insert-default)
8085 (senator-completion-menu-item, senator-toggle-read-only)
8086 (senator-toggle-intangible, senator-set-face, senator-clear-token)
8087 (senator-menu-bar, senator-beginning-of-defun)
8088 (senator-end-of-defun, senator-narrow-to-defun)
8089 (senator-mark-defun, beginning-of-defun, end-of-defun)
8090 (narrow-to-defun, mark-defun, c-mark-function)
8091 (senator-add-log-tokens, add-log-current-defun)
8092 (senator-token-ring, senator-insert-foreign-token-default)
8093 (senator-insert-foreign-token, senator-copy-token)
8094 (senator-kill-token, senator-yank-token)
8095 (senator-copy-token-to-register, insert-register)
8096 (jump-to-register, senator-eldoc-print-current-symbol-info)
8098 (senator-jump-completion-list): Use `format' to avoid `sequencep'
8099 errors, when concatenating things.
8101 * semantic-ctxt.el: (semantic-up-context)
8102 (semantic-get-local-variables)
8103 (semantic-get-local-variables-default): Doc fix.
8104 (semantic-get-local-arguments): Doc fix. Use semantic-tag API.
8105 (semantic-get-local-arguments-default): Use semantic-tag API.
8106 (semantic-get-all-local-variables): Doc fix.
8108 2003-03-28 Eric M. Ludlam <zappo@gnu.org>
8110 * semantic-find.el: (semantic-find-tag-by-overlay)
8111 (semantic-find-tag-by-overlay-in-region)
8112 (semantic-find-tag-by-overlay-next)
8113 (semantic-find-tag-by-overlay-prev)
8114 (semantic-find-tag-parent-by-overlay)
8115 (semantic-current-tag)
8116 (semantic-current-tag-parent)
8117 (semantic-current-tag-of-class)
8118 (semantic-brute-find-first-tag-by-name)
8119 (semantic-brute-find-tag-by-class)
8120 (semantic-brute-find-tag-standard)
8121 (semantic-brute-find-tag-by-type)
8122 (semantic-brute-find-tag-by-type-regexp)
8123 (semantic-brute-find-tag-by-name-regexp)
8124 (semantic-brute-find-tag-by-property)
8125 (semantic-brute-find-tag-by-attribute)
8126 (semantic-brute-find-tag-by-attribute-value)
8127 (semantic-brute-find-tag-by-function)
8128 (semantic-brute-find-first-tag-by-function)
8129 (semantic-brute-find-tag-by-position)
8130 (semantic-brute-find-innermost-tag-by-position): New fcns copied
8131 from semantic-util.el
8133 2003-03-27 David Ponce <david@dponce.com>
8135 * bovine/semantic-el.el (semantic-toplevel-elisp-bovine-table 'bovine-toplevel):
8137 tags already expanded.
8138 (semantic-elisp-clos-args-to-semantic): Use
8139 `semantic-tag-new-variable'.
8140 (semantic-expand-elisp-nonterminal): Removed.
8141 (semantic-find-dependency)
8142 (semantic-find-documentation)
8143 (semantic-insert-foreign-token)
8144 (semantic-nonterminal-protection)
8145 (semantic-elisp-nonterminal-static): Use the semantic-tag API.
8146 (semantic-expand-nonterminal): Removed mode local override.
8148 * semantic-tag.el (semantic--tag-expand): More comments.
8150 * semantic-tag.el (semantic-tag-components): Added autoload cookie.
8151 (semantic-alias-obsolete 'semantic-nonterminal-children): Removed
8154 * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-get-local-variables):
8156 (wisent-java-expand-nonterminal): Use new semantic-tag API.
8158 * wisent/wisent-bovine.el (wisent-token, wisent-cooked-token): Removed.
8159 (wisent-cook-tag, wisent-parse-region): Use new semantic-tag API.
8161 * bovine/semantic-java.el: (semantic-java-prototype-function)
8162 (semantic-java-prototype-variable)
8163 (semantic-java-prototype-type)
8164 (semantic-java-prototype-nonterminal): Use new semantic-tag API.
8165 (semantic-java-find-documentation): Likewise. Use semantic-lex
8166 API instead of obsolete semantic-flex one.
8167 (semantic-java-get-local-variables): Removed.
8168 (semantic-java-doc-keyword-before-p)
8169 (semantic-java-doc-keywords-map)
8170 (semantic-java-doc-setup): Use semantic-lex API instead of
8171 obsolete semantic-flex one.
8173 * semantic.el: Replaced library semantic-token by semantic-tag.
8174 (semantic-deoverlay-token, semantic-overlay-token)
8175 (semantic-deoverlay-list, semantic-overlay-list)
8176 (semantic-deoverlay-cache, semantic-overlay-cache)
8177 (semantic-cooked-token-p, semantic-raw-to-cooked-token)
8178 (semantic-bovinate-make-assoc-list): Removed.
8180 * semantic-util.el: (semantic-nonterminal-children)
8181 (semantic-nonterminal-children-default): Removed.
8184 (semantic-tag-set-bounds, semantic-tag-put-attribute)
8185 (semantic-tag-put-attribute-no-side-effect)
8186 (semantic-tag-get-attribute, semantic--tag-put-property)
8187 (semantic--tag-put-property-no-side-effect)
8188 (semantic--tag-get-property, semantic-tag-new-type)
8189 (semantic-tag-docstring, semantic-tag-type-members)
8190 (semantic-tag-type-superclasses, semantic-tag-type-interfaces)
8191 (semantic-tag-function-arguments)
8192 (semantic-tag-function-throws, semantic-tag-function-parent)
8193 (semantic-tag-function-destructor-p)
8194 (semantic-tag-variable-default)
8195 (semantic-tag-variable-constant-p)
8196 (semantic-tag-include-system-p, semantic-tag-code-detail)
8197 (semantic-tag-components-with-overlays)
8198 (semantic-tag-components-with-overlays-default)
8199 (semantic--tag-expand)
8200 (semantic-token-type-parent): Fixed.
8201 (semantic-tag-make-plist): Use `zerop' to check for number zero.
8202 (semantic--tag-copy-properties): New function.
8204 * semantic-grammar.el (semantic-nonterminal-children):
8205 Override removed replaced by...
8206 (semantic-tag-components): New override.
8207 (semantic-summarize-nonterminal): Use `semantic-tag-components'
8208 in place of `semantic-nonterminal-children'.
8210 * semantic-fw.el (semantic-bind): Ignore rebinding with the same value.
8212 * semantic-edit.el (semantic-edits-splice-replace): Use
8213 `semantic--tag-copy-properties'.
8215 * Project.ede (ede-proj-target-elisp "semantic"):
8216 Updated :source to include
8217 semantic-tag.el in place of semantic-token.el.
8219 * Makefile: Re-generated from Project.ede.
8221 2003-03-26 Eric M. Ludlam <zappo@gnu.org>
8223 * semantic-analyze.el (semantic-analyze-current-context):
8224 Protect call to forward-sexp.
8226 2003-03-24 Eric M. Ludlam <zappo@gnu.org>
8228 * wisent/wisent-grammar.el (wisent-grammar-EXPAND, wisent-grammar-EXPANDFULL):
8230 when the nonterminal used for expansion does not appear with a %start
8233 2003-03-22 David Ponce <david@dponce.com>
8235 * semantic-tag.el: (semantic-tag-file-name, semantic-tag-copy)
8236 (semantic--tag-unlink-from-buffer)
8237 (semantic--tag-link-to-buffer)
8238 (semantic--tag-unlink-list-from-buffer)
8239 (semantic--tag-link-list-to-buffer)
8240 (semantic--tag-unlink-cache-from-buffer)
8241 (semantic--tag-link-cache-to-buffer)
8242 (semantic--tag-expanded-p, semantic--tag-expand): New functions.
8243 (semantic-tag-expand-function): New variable.
8245 2003-03-21 David Ponce <david@dponce.com>
8247 * semantic-tag.el (semantic-tag-set-overlay):
8248 Reserved for internal use, and
8250 (semantic--tag-set-overlay): New.
8251 (semantic-tag-extent): Renamed...
8252 (semantic-tag-bounds): New.
8253 (semantic-tag-set-bounds): New.
8254 (semantic-tag-of-class-p): New.
8255 (semantic-equivalent-tag-p): Use `equal' to compare names, the
8256 above function to compare classes, and `semantic-tag-bounds' to
8258 (semantic-tag-new-type): Use `members' instead of `children' or
8260 (semantic-tag-type-parts): Renamed...
8261 (semantic-tag-type-members): New.
8262 (semantic-token-type-parent): Moved to the obsolete code section.
8263 (semantic-tag-components-default): Fixed.
8264 (semantic-tag-components-with-overlays-default): Fixed typos.
8266 2003-03-21 Eric M. Ludlam <zappo@gnu.org>
8268 * bovine/semantic-el.el (semantic-elisp-use-read):
8269 Use `semantic-tag-new-code'.
8271 * bovine/bovine-grammar.el (bovine-grammar-expand-form):
8274 * bovine/semantic-scm.el (semantic-toplevel-scheme-bovine-table):
8277 * bovine/scheme.by (scheme-in-list): Use CODE-TAG.
8279 * bovine/bovine-grammar.el (bovine-grammar-expand-CODE-TAG):
8281 (bovine-grammar-expand-form): Use above.
8283 * semantic-grammar.el (semantic-grammar-syntax-help):
8284 Added CODE-TAG macro help.
8286 * semantic-tag.el (semantic-tag-components-with-overlays-default):
8287 Replace `token' with `tag'
8289 * semantic-tag.el (semantic-tag-variable-optsuffix): Deleted
8290 (semantic-tag-componenets, semantic-tag-components-with-overlays):
8291 New override functions
8292 (semantic-tag-componenets-default)
8293 (semantic-tag-components-with-overlays-default): New functions
8294 (semantic-nonterminal-children): Obsolete function
8296 2003-03-20 David Ponce <david@dponce.com>
8298 * semantic-tag.el (semantic-tag-clone): New implementation.
8300 * semantic-ctxt.el (semantic-get-local-arguments):
8301 Use `semantic-tag-new-variable'.
8303 * semantic-tag.el (semantic-tag): Ensure that the list has 5 elements.
8304 (semantic-clone-tag): Renamed...
8305 (semantic-tag-clone): New.
8307 2003-03-19 David Ponce <david@dponce.com>
8309 * semantic-tag.el: New file.
8311 2003-03-18 David Ponce <david@dponce.com>
8313 * semantic-autogen.el (semantic-autogen-kill-xemacs-autoloads-feature):
8315 (semantic-autogen-update-header): Use it.
8317 2003-03-18 Richard Y. Kim <ryk@ap.com>
8319 * semantic-token.el, wisent/wisent-grammar.el, wisent/wisent-python.el, wisent/wisent-python.wy:
8320 Created CODE-TAG builtin in wisent-grammar.el. Then
8321 replaced all (wisent-token ...) from wisent-python.wy with
8322 CODE-TAG construct. With this change, wisent-python.wy no
8323 longer uses wisent-token function.
8325 2003-03-17 David Ponce <david@dponce.com>
8327 * wisent/wisent-bovine.el (wisent-parse-stream):
8328 Doc fix. Use tag in place of token.
8329 (wisent-parse-region): Likewise. Renamed `tag' local
8332 * semantic-grammar.el (semantic-grammar-edits-new-change-hook-fcn):
8335 (senator-add-log-tokens): Likewise.
8336 (semantic-nonterminal-children): Likewise. Renamed `tag' local
8338 (semantic-abbreviate-nonterminal): Likewise.
8339 (semantic-summarize-nonterminal): Likewise. Fixed to use new tag
8340 structure. Extended for `nonassoc' tags.
8341 (semantic-grammar-token-name): Renamed...
8342 (semantic-grammar-first-tag-name): New.
8343 (semantic-grammar-token-symbols): Renamed...
8344 (semantic-grammar-tag-symbols): New.
8345 (semantic-grammar-setupfunction, semantic-grammar-tokentable)
8346 (semantic-grammar-parsetable, semantic-grammar-keywordtable)
8347 (semantic-grammar-languagemode, semantic-grammar-start)
8348 (semantic-grammar-scopestart, semantic-grammar-quotemode)
8349 (semantic-grammar-outputfile): Use new names above.
8350 (semantic-grammar-tokens): Doc fix. Renamed `tag' local
8352 (semantic-grammar-token-properties)
8353 (semantic-grammar-tokentable-builder-default)
8354 (semantic-grammar-tokentable-builder)
8355 (semantic-grammar-tokentable-value): Doc fix.
8356 (semantic-grammar-syntax-help "TAG"): Use "tag-class" in place of
8358 (semantic-abbreviate-nonterminal): Doc fix. Renamed `tag' local
8361 2003-03-17 Eric M. Ludlam <zappo@gnu.org>
8363 * bovine/semantic-bovine.el (semantic-bovinate-stream):
8364 Stop using obsoleted fcns.
8366 * NEWS: semantic-stickyfunc-mode
8368 * semantic-util-modes.el (semantic-stickyfunc-fetch-stickyline):
8369 Quote out %'s in return string.
8372 (semantic-read-variable, semantic-read-function, semantic-read-type):
8373 Fix to auto-select the correct streams.
8376 Enable stickyfunc mode when header-line-format is available.
8378 * semanticdb-search.el (semanticdb-collect-find-results):
8379 Make `ignore-system' actually work.
8381 * semantic-cb.el (semantic-cb-clear-current-project): New fcn
8382 (semantic-cb-new-class-browser): Do not get data from system libraries
8383 (semantic-cb-find-node-in-list, semantic-db-find-node): New methods
8384 (semantic-dot): New command
8385 (semantic-dot-token-name, semantic-dot-insert-token): New methods
8386 (semantic-cb-speedbar-menu): Add graphing option
8387 (semantic-cb-speedbar-dot): New speedbar command.
8389 2003-03-16 Eric M. Ludlam <zappo@gnu.org>
8391 * semantic-grammar.el (semantic-grammar-mode):
8392 Add support for stickyfunc.
8393 (semantic-grammar-syntax-help): Make keys : prefixed for tag generators.
8395 * semantic-util-modes.el (semantic-stickyfunc-fetch-stickyline):
8396 Add nice default when not on
8399 2003-03-16 David Ponce <david@dponce.com>
8401 * wisent/wisent-grammar.el: Require 'cl.
8402 (wisent-grammar-TAG): Use `semantic-tag'.
8403 (wisent-grammar-expand-builtins): New function.
8404 (wisent-grammar-expand-sexpr): Use it. Call `cl-macroexpand-all'
8406 (wisent-grammar-assocs, wisent-grammar-terminals)
8407 (wisent-grammar-nonterminals): Use `semantic-token-extra-spec'.
8409 * wisent/wisent-calc.el: (wisent-calc-automaton)
8410 (wisent-calc-tokens)
8411 (wisent-calc-setup-parser): Re-generated.
8413 * bovine/bovine-grammar.el (bovine-grammar-parsetable-builder): Use
8414 `semantic-token-extra-spec'.
8416 * semantic-grammar.wy (PREFIXED_LIST): New token.
8417 (any_value, action): Use it.
8418 (code, declaration, languagemode_decl, outputfile_decl)
8419 (setupfunction_decl, keywordtable_decl, parsetable_decl)
8420 (tokentable_decl, token_decl, start_decl, scopestart_decl)
8421 (quotemode_decl, left_decl, right_decl, nonassoc_decl)
8422 (put_decl, put_names, put_values, nonterminal)
8423 (rule): Use TAG macros.
8424 (token_type, level): Use `progn'.
8426 * semantic-grammar.el (semantic-grammar-lex-prefixed-list):
8428 (semantic-grammar-lexer): Use it.
8429 (semantic-grammar-automaton)
8430 (semantic-grammar-keywords, semantic-grammar-tokens)
8431 (semantic-grammar-setup-semantic): Re-generated.
8432 (semantic-grammar-code-value): Removed.
8433 (semantic-grammar-setupcode-text): Get code from buffer.
8434 (semantic-grammar-setupcode-forms): Use
8435 `semantic-grammar-setupcode-text'.
8436 (semantic-nonterminal-children)
8437 (semantic-grammar-token-symbols)
8438 (semantic-grammar-keywords)
8439 (semantic-grammar-keyword-properties)
8440 (semantic-grammar-tokens)
8441 (semantic-grammar-token-properties): Use
8442 `semantic-token-extra-spec'.
8443 (semantic-grammar-mode-keywords-1): Highlight :keywords here.
8444 (semantic-grammar-mode-keywords-3): Fixed redundancy.
8446 2003-03-16 Eric M. Ludlam <zappo@gnu.org>
8448 * semantic-cb.el (semantic-cb-find-parent):
8449 Allow unfound parents gracefully.
8450 (semantic-cb-convert-type): Use new DB based external member finder fcn.
8452 * bovine/Project.ede (languages): Removed semantic-java.el
8454 * bovine/Makefile (languages_LISP): Removed semantic-java.el
8456 2003-03-15 Richard Y. Kim <ryk@ap.com>
8459 White space change only. Simply lined up overlay related aliases.
8461 2003-03-15 Eric M. Ludlam <zappo@gnu.org>
8463 * semantic-util-modes.el (semantic-show-unmatched-syntax):
8464 Use new lex API for token access.
8465 (semantic-summary-mode-setup): Fix doc string.
8466 (global-semantic-stickyfunc-mode, semantic-stickyfunc-mode-hook)
8467 (semantic-stickyfunc-mode-map, semantic-stickyfunc-mode-setup)
8468 ( semantic-stickyfunc-sticky-classes, semantic-stickyfunc-fetch-stickyline):
8469 New functions and variables.
8470 (semantic-stickyfunc-mode): New minor mode.
8472 * bovine/semantic-scm.el, bovine/semantic-make.el: Regenerated.
8474 * bovine/semantic-el.el (semantic-elisp-use-read):
8475 Use new -tag- instead of -token- fcns.
8477 * bovine/semantic-c.el: Regenerated.
8479 * bovine/bovine-grammar.el:
8480 (bovine-grammar-expand-TAG, bovine-grammar-expand-VARIABLE-TAG)
8481 (bovine-grammar-expand-FUNCTION-TAG, bovine-grammar-expand-TYPE-TAG)
8482 (bovine-grammar-expand-INCLUDE-TAG, bovine-grammar-expand-PACKAGE-TAG):
8483 Use -tag- fcns instead of -token.
8485 2003-03-14 David Ponce <david@dponce.com>
8487 * wisent/wisent-python.el: (wisent-python-parser-tables)
8488 (wisent-python-keywords, wisent-python-tokens)
8489 (wisent-python-default-setup): Re-generated.
8491 * wisent/wisent-java.el, wisent/wisent-java-tags.el:
8492 (wisent-java-parser-tables)
8493 (wisent-java-keywords, wisent-java-tokens)
8494 (wisent-java-default-setup): Re-generated.
8495 (wisent-java-expand-nonterminal): Use `semantic-token-extra-specs'
8496 in place of `semantic-token-variable-extra-specs'.
8498 * wisent/wisent-grammar.el:
8499 (wisent-grammar-TAG, wisent-grammar-VARIABLE-TAG)
8500 (wisent-grammar-FUNCTION-TAG, wisent-grammar-TYPE-TAG)
8501 (wisent-grammar-INCLUDE-TAG, wisent-grammar-PACKAGE-TAG)
8502 (wisent-grammar-EXPANDTAG): Use `semantic-tag' API and new
8503 `wisent-...-tag' names.
8505 * wisent/wisent-bovine.el (wisent-cooked-token):
8506 Use `semantic-tag' API.
8507 (wisent-raw-token): Renamed to...
8508 (wisent-raw-tag): New.
8509 (wisent-cook-token): Renamed to...
8510 (wisent-cook-tag): New. Use `semantic-tag' API.
8511 (wisent-parse-region): Use `semantic-tag' API.
8513 2003-03-14 Richard Y. Kim <ryk@ap.com>
8515 * wisent/wisent-python.el, wisent/wisent-python.wy:
8516 Replaced (wisent-token ...) with VARIABLE-TAG, FUNCTION-TAG, etc.
8518 2003-03-14 Eric M. Ludlam <zappo@gnu.org>
8520 * semanticdb-el.el (semanticdb-elisp-sym->nonterm):
8521 Use `semantic-tag-new-*' instead of
8523 (semanticdb-find-nonterminal-by-token-method): Fixed typo for
8524 searching for variables and types.
8526 * semantic-util.el (semantic-adopt-external-members):
8527 Use `tag' instead of `token'.
8528 Use new `semantic-clone-tag'.
8529 (semantic-find-doc-snarf-comment): Do not use obsolete -flex- fcn.
8531 * semantic-token.el:
8532 (semantic-tag-put, semantic-tag-put-no-side-effect, semantic-tag-get):
8533 New from old -token- versions. Obsolete old names.
8534 (semantic-clone-tag): New fcn.
8536 * semantic-token.el:
8537 (semantic-tag, semantic-tag-new-variable, semantic-tag-new-function)
8538 (semantic-tag-new-type, semantic-tag-new-include, semantic-tag-new-package):
8539 New routines from old -token- verison.
8540 (semantic-token, semantic-token-new-variable, semantic-token-new-function)
8541 (semantic-token-new-type, semantic-token-new-include)
8542 (semantic-token-new-package): Obsoleted
8545 (semantic-flex-start, semantic-flex-end,, semantic-flex-text)
8546 (semantic-flex-make-keyword-table, semantic-flex-keyword-p)
8547 (semantic-flex-keyword-put, semantic-flex-keyword-get)
8548 (semantic-flex-map-keywords, semantic-flex-keywords)
8549 (semantic-flex-buffer, semantic-flex-list): Obsolete.
8551 * semantic-util.el (semantic-summerize-nonterminal): Obsolete
8553 * semantic-fw.el (semantic-fw-font-lock-keywords): Added below.
8554 (semantic-alias-obsolete): New fcn.
8556 2003-03-13 David Ponce <david@dponce.com>
8558 * wisent/wisent-java.el (wisent-java-expand-nonterminal):
8559 Use `semantic-token-extra-spec'.
8561 * semantic-token.el (semantic-token-plist-indexes): New constant.
8562 (semantic-token-plist-index): New function.
8563 (semantic-token-extra-specs, semantic-token-extra-spec)
8564 (semantic-token-add-extra-spec): Generalized.
8565 (semantic-token-type): Use `memq' instead of `member'.
8566 (semantic-token-modifiers): Generalized.
8567 (semantic-token-type-extra-specs)
8568 (semantic-token-function-extra-specs)
8569 (semantic-token-variable-extra-specs): Alias of
8570 `semantic-token-extra-specs'.
8571 (semantic-token-type-extra-spec)
8572 (semantic-token-function-extra-spec)
8573 (semantic-token-variable-extra-spec): Alias of
8574 `semantic-token-extra-spec'.
8575 (semantic-token-type-modifiers)
8576 (semantic-token-function-modifiers)
8577 (semantic-token-function-throws)
8578 (semantic-token-function-parent)
8579 (semantic-token-function-destructor)
8580 (semantic-token-variable-modifiers)
8581 (semantic-token-variable-const)
8582 (semantic-token-variable-optsuffix): Use
8583 `semantic-token-extra-spec'.
8585 * semantic-grammar.el (semantic-grammar-mode-keywords-1):
8586 Highlight more TAG macros.
8588 * wisent/wisent-java.wy:
8589 (compilation_unit, package_declaration, import_declaration)
8590 (class_declaration, field_declarations_opt, field_declaration)
8591 (method_declaration, formal_parameter, constructor_declaration)
8592 (interface_declaration)
8593 (abstract_method_declaration): Use TAG macros.
8595 * wisent/wisent-java.el: (wisent-java-parser-tables)
8596 (wisent-java-keywords, wisent-java-tokens)
8597 (wisent-java-default-setup): Re-generated.
8598 (wisent-java-expand-nonterminal): Embedded tags are now the value
8599 of the extra specifier `tree'.
8601 * wisent/wisent-java-tags.wy:
8602 (package_declaration, import_declaration, class_declaration)
8603 (interface_declaration, constructor_declaration)
8604 (method_declaration, formal_parameter)
8605 (field_declaration): Use TAG macros.
8607 * wisent/wisent-java-tags.el: (wisent-java-parser-tables)
8608 (wisent-java-keywords, wisent-java-tokens)
8609 (wisent-java-default-setup): Re-generated.
8611 * wisent/wisent-grammar.el:
8612 (wisent-grammar-TAG, wisent-grammar-VARIABLE-TAG)
8613 (wisent-grammar-FUNCTION-TAG, wisent-grammar-TYPE-TAG)
8614 (wisent-grammar-INCLUDE-TAG, wisent-grammar-PACKAGE-TAG)
8615 (wisent-grammar-EXPANDTAG): New functions.
8616 (wisent-grammar-builtins): Added new expanders for TAG macros.
8618 * wisent/wisent-bovine.el (wisent-raw-token, wisent-cook-token):
8621 2003-03-13 Eric M. Ludlam <zappo@gnu.org>
8623 * bovine/semantic-scm.el: regenerated
8625 * bovine/scheme.by (scheme-in-list): Quote code symbol.
8627 * bovine/semantic-make.el: regenerated.
8629 * bovine/make.by (include): Fix quote rule.
8631 * bovine/semantic-bovine.el (semantic-bovinate-stream):
8632 Removed old dump-detail code.
8633 Added in error condition call to the debugger.
8635 * bovine/bovine-grammar.el (bovine-grammar-expand-form): Fixed typo
8637 * bovine/bovine-debug.el:
8638 (semantic-bovine-debug-error-frame, and related methods):
8639 New class and methods for an error frame.
8641 * semantic-debug.el (semantic-debug-mode-map): Added eval-expression.
8642 (semantic-debug-mode): Updated doc string.
8644 * bovine/semantic-el.el (semantic-elisp-use-read):
8645 Use new token creation macros.
8647 * bovine/semantic-scm.el: Regnerated.
8649 * bovine/scheme.by (scheme-in-list): Update to new TAG macros.
8651 * bovine/semantic-make.el: Regnerated.
8653 * bovine/make.by (variable, rule, include):
8654 Use new TAG creation macros.
8656 2003-03-11 David Ponce <david@dponce.com>
8658 * semantic-grammar.el: (semantic-grammar-languagemode)
8659 (semantic-grammar-start): Doc fix.
8660 (semantic-grammar-update-outputfile): Reverted last change.
8661 (semantic-grammar-mode-keywords-1): Highlight TAG macros.
8663 * semantic-fw.el (semantic-map-mode-buffers):
8664 Accept a list of major modes.
8666 2003-03-11 Eric M. Ludlam <zappo@gnu.org>
8668 * semantic-grammar.el (senator-add-log-tokens): New mode variable.
8670 * senator.el (senator-add-log-tokens): New variable
8671 (add-log-current-defun): Use above.
8673 * bovine/semantic-c.el:
8674 (semantic-toplevel-c-bovine-table, semantic-c-keyword-table)
8675 (semantic-default-c-setup): Regenerated
8676 (semantic-c-reconstitute-token): Reduce function types of 1 string
8679 * bovine/c.by (CONTINUE): Fix spelling in summary.
8680 (macro-or-include, define, classsubparts, enumsubparts, typesimple)
8681 (type, template-type, variablearg): Use new token creation macros.
8683 * bovine/bovine-grammar.el:
8684 (bovine-grammar-expand-TAG, bovine-grammar-expand-FUNCTION-TAG)
8685 (bovine-grammar-expand-TYPE-TAG, bovine-grammar-expand-PACKAGE-TAG):
8687 (bovine-grammar-expand-form): Use above new macros.
8688 (bovine-grammar-parsetable-builder): Use direct name of child expand fcn.
8690 * semanticdb.el (semanticdb-save-current-db): New command.
8692 * semantic-grammar.el (semantic-install-function-overrides):
8693 Removed old global install
8694 (semantic-nonterminal-children): Coverted to overload-implementation.
8695 (semantic-grammar-update-outputfile): Go through list of major modes
8696 when updating the config function.
8697 (semantic-grammar-map): Added semantic-grammar-complete.
8698 (semantic-grammar-syntax-help): New variable
8699 (semantic-grammar-complete, eldoc-current-symbol-info)
8700 (semantic-abbreviate-nonterminal, semantic-summarize-nonterminal):
8701 New functions/overloads.
8703 2003-03-10 Eric M. Ludlam <zappo@gnu.org>
8705 * semanticdb-file.el (semanticdb-load-database):
8706 Always reset the parent db in read tables.
8707 Delete read instance when the DB struct is out of date.
8709 2003-03-08 Eric M. Ludlam <zappo@gnu.org>
8711 * bovine/bovine-grammar.el: (bovine-grammar-expand-VARIABLE-TAG)
8712 (bovine-grammar-expand-INCLUDE-TAG): New fcn
8713 (bovine-grammar-expand-form): Call new fcns.
8715 * semantic-sb.el (speedbar): Use inversion to load.
8717 * semantic.el (semantic-version): Eval and compile
8718 (inversion): New include
8719 (semantic-require-version): Use inversion to implement.
8721 * semantic-debug.el (eieio): Use inversion to load.
8723 * semanticdb.el (eieio): Use inversion to load.
8724 (semanticdb-needs-refresh-p): New convenience method.
8725 (semanticdb-semantic-init-hook-fcn): Better handling of unmatched
8728 * semantic-analyze.el (eieio): Use inversion to load.
8730 2003-03-06 Eric M. Ludlam <zappo@gnu.org>
8732 * semanticdb-java.el: *** empty log message ***
8734 2003-03-04 Eric M. Ludlam <zappo@gnu.org>
8736 * wisent/Makefile (LOADPATH): Added common.
8738 * wisent/Project.ede (wisent): Added inversion dependency
8740 * bovine/Makefile (LOADPATH): Added common.
8742 * bovine/Project.ede (bovinator): Added inversion dependency.
8744 * Makefile (LOADPATH): Added common.
8746 * Project.ede (tools): Added inversion dependency
8748 2003-03-02 Eric M. Ludlam <zappo@gnu.org>
8750 * NEWS: Added note on semanticdb-file depending on inversion.
8752 * semanticdb-file.el (inversion): New requirement
8753 (semanticdb-file-version, semanticdb-file-incompatible-version): New vars
8754 (semanticdb-project-database-file): Added `semantic-token-version',
8755 and `semanticdb-version' slots.
8756 (semanticdb-create-database): Set the version values.
8757 (semanticdb-load-database): If a loaded file is an old version, flush
8758 as much as necessary so nothing crashes.
8760 * semantic-token.el (semantic-token-version, semantic-token-incompatible-version):
8763 2003-02-28 Eric M. Ludlam <zappo@gnu.org>
8765 * semantic-token.el (semantic-token-get, semantic-token-put*): Moved
8766 (semantic-token-*-p): Moved
8767 (semantic-token, semantic-token-new-*): New
8769 2003-02-27 Richard Y. Kim <ryk@ap.com>
8771 * doc/semantic.texi: Split copyright to two lines.
8773 * doc/app-dev-guide.texi:
8774 Changed structure commands such as @section. A simple cleanup after pasting this from the old manual.
8776 * doc/app-dev-guide.texi, doc/fdl.texi, doc/glossary.texi, doc/installation.texi, doc/lang-support-guide.texi, doc/overview.texi, doc/semantic.texi, doc/user-guide.texi:
8777 Moved the content of the old semantic.texi into appropriate chapters in the new manual.
8779 2003-02-27 Eric M. Ludlam <zappo@gnu.org>
8781 * Makefile (semantic_LISP): Added semantic-token.el
8783 * Project.ede (semantic): Added semantic-token.el
8785 * semanticdb-el.el (eieio):
8786 Require while compiling only. Needed for cleaner byte-compile.
8788 * semantic-util.el (semantic-equivalent-tokens-p):
8789 Moved to semantic-token.el
8790 (semantic-token-*): Liekwise.
8792 * semantic-fw.el (semantic-tfe-overlay -properties -number):
8793 Moved to semantic-token.el
8794 (semantic-token-*): Likewise.
8796 * semantic.el (semantic-token): Require it.
8797 (semantic-delete-overlay-maybe): moved.
8799 * semantic-token.el: All token access functions moved here.
8801 * NEWS: Added search classes.
8803 2003-02-25 Eric M. Ludlam <zappo@gnu.org>
8805 * semantic-util.el (semantic-nonterminal-external-member-parent):
8806 Use `define-overload'.
8807 (semantic-nonterminal-external-member-p): Use `define-overload'.
8808 (semantic-nonterminal-external-member-children): Use `define-overload'.
8809 (semantic-nonterminal-external-member-children-db): Deleted
8810 (semantic-nonterminal-external-member-children-default): Use new
8811 semanticdb-search routine for finding external member chidren instead
8814 * semantic-util-modes.el (semantic-auto-parse-enabled-p):
8815 Do not auto-parse if doing a lexial
8816 debug. Fix logic error.
8818 * semantic-analyze.el (semantic-analyze-type-parts):
8819 Use new semanticdb search for external
8820 children instead of the fn in semantic-util.
8821 (semantic-analyze-token-type)
8822 (semantic-analyze-find-nonterminal-sequence)
8823 (semantic-analyze-current-context)
8824 (semantic-analyze-possible-completions):
8825 Use `semantic-analyze-type-parts' instead of children.
8827 * semantic-sb.el (semantic-sb-token-jump):
8828 Try to support multiple versions of speedbar.
8830 * semanticdb-el.el (semanticdb-find-nonterminal-external-children-of-type-method):
8833 * semanticdb-search.el (Commentary): Updated
8834 (semanticdb-find-nonterminal-external-children-of-type,
8835 semanticdb-find-nonterminal-external-children-of-type-method): New
8837 2003-02-25 Richard Y. Kim <ryk@ap.com>
8839 * doc/Makefile, doc/app-dev-guide.texi, doc/installation.texi, doc/internals.texi, doc/lang-support-guide.texi, doc/overview.texi, doc/semantic.texi, doc/user-guide.texi:
8840 Initial check in of the merged semantic manual.
8842 2003-02-24 David Ponce <david@dponce.com>
8844 * wisent/wisent.texi: Eric's fixes.
8846 2003-02-23 David Ponce <david@dponce.com>
8848 * wisent/wisent.texi:
8849 Updated to take into account latest changes in Wisent and
8852 2003-02-22 David Ponce <david@dponce.com>
8854 * wisent/wisent-python.wy (goal): Fixed comment delimiter.
8856 * semantic-grammar.el:
8857 No more depend on `with-syntax-table' implementation. For
8858 example, since GNU Emacs 21.4 `with-syntax-table' no more use a
8859 copy of the given syntax table.
8861 (semantic-grammar-skip-quoted-syntax-table): New variable.
8862 (semantic-grammar-goto-grammar-indent-anchor): Use it.
8863 (semantic-grammar-brackets-as-parens-syntax-table): New variable.
8864 (semantic-grammar-do-lisp-indent): Use it.
8866 * semantic-ia-sb.el (speedbar-add-mode-functions-list "Analyse"):
8868 `speedbar-line-path' with `speedbar-line-directory' used since
8871 * semantic-sb.el (semantic-sb-token-jump):
8872 Replaced `speedbar-line-path' with
8873 `speedbar-line-directory' used since speedbar 0.15.
8875 2003-02-21 Eric M. Ludlam <zappo@gnu.org>
8877 * semantic-sb.el (semantic-sb-token-jump):
8878 Use new `speedbar-before-visiting-tag-hook'.
8880 2003-02-20 David Ponce <david@dponce.com>
8882 * wisent/wisent-debug.el:
8883 Requires `pp' if `pprint' feature was not found.
8885 * semantic-grammar.el (semantic-grammar-as-string):
8886 Requires `pp' feature.
8888 2003-02-20 Richard Y. Kim <ryk@ap.com>
8890 * wisent/wisent-python.el:
8891 Replaced one use of 'end' free variable with (cdr semantic-lex-analysis-bounds).
8893 2003-02-19 David Ponce <david@dponce.com>
8895 * wisent/wisent-debug.el: New file.
8897 * wisent/wisent.el (autoload 'wisent-compile-grammar): Removed.
8898 (wisent-automaton-p): New.
8899 (wisent-translate, wisent-untranslate): Removed.
8900 (wisent-parse): Use new automaton format.
8902 * wisent/wisent-python.el: (wisent-python-parser-tables)
8903 (wisent-python-keywords, wisent-python-tokens)
8904 (wisent-python-default-setup): Re-generated.
8906 * wisent/wisent-java.el, wisent/wisent-java-tags.el:
8907 (wisent-java-parser-tables)
8908 (wisent-java-keywords, wisent-java-tokens)
8909 (wisent-java-default-setup): Re-generated.
8911 * wisent/wisent-grammar.el (wisent-grammar-parsetable-builder):
8912 Ensure that the grammar
8913 [byte-]compiler is available to handle byte-compilation of the
8916 * wisent/wisent-comp.el (wisent-defcontext semantic-actions):
8917 Moved before first use.
8918 (wisent-token-actions): Create new semantic actions obarray. Fill
8919 the action table with semantic action symbols instead of negative
8921 (wisent-goto-actions): Fill the goto table with nonterminal
8922 symbols instead of item numbers.
8923 (wisent-semantic-action): Store code of action in the function
8924 cell of a symbol interned in the semantic actions obarray. Return
8925 that symbol. The new semantic action variable `$action' is bound
8926 to the name of that symbol.
8927 (wisent-semantic-actions, wisent-token-translations): Removed.
8928 (wisent-parser-automaton): Return a vector of 4 elements: the
8929 action table, the goto table, the alist of start symbols, and the
8930 semantic actions obarray.
8931 (wisent-parse-nonterminals): Produce symbolic location of semantic
8933 (wisent-parse-grammar): Intern generated symbols.
8934 (wisent-compiled-grammar-p): Removed.
8935 (wisent-compile-grammar): Doc fix. Use `wisent-automaton-p'.
8936 (wisent-byte-compile-grammar)
8937 (wisent-byte-compile-automaton): New functions.
8939 * wisent/wisent-cim.el: (wisent-cim-automaton)
8940 (wisent-cim-keywords, wisent-cim-tokens)
8941 (wisent-cim-default-setup): Re-generated.
8943 * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
8944 (wisent-calc-setup-parser): Re-generated.
8946 * wisent/wisent-awk.el: (wisent-awk-automaton)
8947 (wisent-awk-keywords, wisent-awk-tokens)
8948 (wisent-awk-setup-parser): Re-generated.
8950 * wisent/Project.ede (ede-proj-target-elisp "wisent"):
8951 Added wisent-debug.el.
8953 * wisent/Makefile: Re-generated.
8955 * semantic-grammar.el: (semantic-grammar-automaton)
8956 (semantic-grammar-keywords, semantic-grammar-tokens)
8957 (emantic-grammar-setup-semantic): Re-generated.
8959 * bovine/java.bnf: Obsolete file removed.
8961 * bovine/semantic-java.el: Removed obsolete code related to java.bnf.
8963 2003-02-19 Richard Y. Kim <ryk@ap.com>
8965 * wisent/wisent-python.el:
8966 Replaced 'depth' free variable with semantic-lex-maximum-depth,
8967 replaced two code fragments protected with condition-case with
8968 semantic-lex-unterminated-syntax-protection macro, and
8969 added wisent-python-lex-buffer test command.
8971 2003-02-18 Richard Y. Kim <ryk@ap.com>
8973 * wisent/wisent-python.el:
8974 Fixed a regexp in python-next-line so that backquotes in python code do not break it.
8976 * wisent/wisent-python.el:
8977 Replaced end-point and current-depth with semantic-lex-end-point and semantic-lex-current-depth.
8979 * wisent/wisent-python.el:
8980 Modified all (semantic-lex-token ...) with (semantic-lex-push-token (semantic-lex-token ...)) to conform to the new lexer.
8982 2003-02-17 Eric M. Ludlam <zappo@gnu.org>
8984 * bovine/semantic-c.el (semantic-toplevel-c-bovine-table): Regenerated
8985 (semantic-c-keyword-table): Regenerated
8986 (semantic-default-c-setup): Regenerated with semantic-debug suppoert.
8988 2003-02-17 David Ponce <david@dponce.com>
8990 * wisent/wisent-grammar.el (wisent-grammar-setupcode-builder): Setup
8991 `semantic-debug-parser-source'.
8993 * wisent/wisent-java-lex.el: (wisent-java-lex-symbol)
8994 (wisent-java-lex-symbol2)
8995 (wisent-java-lex-string): Follow lexical API changes.
8997 * semantic-grammar.el (semantic-grammar-lex-sexp): Fixed typo.
8999 2003-02-17 Eric M. Ludlam <zappo@gnu.org>
9001 * bovine/Project.ede ("bnf"): gone
9002 ("examples"): no more bnf.
9004 * bovine/Makefile (examples_MISC): No more .bnf
9008 (dist): no more bnf.
9010 * bovine/Makefile, bovine/c.bnf, bovine/make.bnf, bovine/make.by, bovine/scheme.bnf, bovine/scheme.by, bovine/skeleton.bnf:
9011 *** empty log message ***
9013 * semantic-util-modes.el (semantic-auto-parse-bovinate): Use
9014 `semantic-lex-unterminated-syntax-end-function' in addition to the
9015 old `-flex-' version.
9017 * semantic-util-modes.el (semantic-auto-parse-enabled-p):
9018 Do not parse if debugging is enabled.
9020 * semantic-debug.el (semantic-debug): Do not turn off auto-parse.
9022 * semantic-sb.el (semantic-sb-detail-parent):
9023 Use `semantic-token-with-position-p'.
9025 * semantic-debug.el (semantic-debug-highlight-lexical-token):
9026 Use lexical analyzer highlighter.
9028 * bovine/semantic-skel.el (semantic-lex-skel-if-0):
9029 Update to new lexer API.
9031 * bovine/semantic-make.el:
9032 (semantic-lex-make-backslash-newline, semantic-lex-make-command):
9033 (semantic-default-make-setup): Update to new lexer API.
9035 * bovine/semantic-c.el:
9036 (semantic-lex-c-if-0, semantic-lex-c-include-system)
9037 (semantic-lex-c-ignore-ending-backslash): Updated to new lexer API
9039 * semantic-grammar.el:
9040 (semantic-grammar-lex-symbol, semantic-grammar-lex-string)
9041 (semantic-grammar-lex-sexp): Use new lexer APIs.
9043 * semantic-lex.el (semantic-lex-test): New command
9044 (semantic-lex-debug): New variable and new command.
9045 (semantic-lex-highlight-token): New function
9046 (semantic-lex-debug-break): New function
9047 (semantic-lex-end-point, semantic-lex-current-depth)
9048 (semantic-lex-maximum-depth, semantic-lex-token-stream)
9049 (semantic-lex-analysis-bounds): New state variables
9050 (define-lex): Replace all local variables with references to above
9051 new global variables.
9052 Improved lexical hang detection.
9053 (semantic-lex-push-token): New fcn
9054 (semantic-lex-token): Spit out push part.
9055 (semantic-lex-unterminated-syntax-detected): New fcn
9056 (semantic-lex-unterminated-syntax-protection): New macro
9057 (define-lex-analyzer): Updated doc string.
9058 Generated fcn binds more new state variables.
9059 (define-lex-simple-regex-analyzer, define-lex-block-analyzer)
9060 (semantic-lex-beginning-of-line, semantic-lex-newline-as-whitespace)
9061 (semantic-lex-symbol-or-keyword, semantic-lex-punctuation-type)
9062 (semantic-lex-comments, semantic-lex-comments-as-whitespace)
9063 (semantic-lex-ignore-comments): Use `semantic-lex-push-token'.
9064 Use `semantic-lex-unterminated-syntax-protection' macro if apropriate.
9065 Use new state variables as apropriate.
9067 * semantic.el (bovinate-debug): Deprecated.
9069 2003-02-15 David Ponce <david@dponce.com>
9071 * semantic-autogen.el: New implementation.
9073 (semantic-autogen-noninteractive)
9074 (semantic-autogen-keywordp): New compatibility stuff.
9075 (make-autoload): New before advice.
9076 (semantic-autogen-header)
9077 (semantic-autogen-file, semantic-autogen-subdirs)
9078 (semantic-autogen-update-header): New.
9079 (semantic-hack-autoloads): Delegate to `batch-update-autoloads'.
9081 2003-02-14 David Ponce <david@dponce.com>
9083 * bovine/semantic-scm.el: (semantic-toplevel-scheme-bovine-table)
9084 (semantic-scheme-keyword-table)
9085 (semantic-default-scheme-setup): Re-generated from scheme.by.
9087 * bovine/scheme.by (OPENPAREN, CLOSEPAREN): Fixed token type.
9088 (scheme-in-list): Handle function body.
9089 (sequence): New nonterminal.
9091 * semantic-debug.el (semantic-debug-find-parser-source):
9092 Fixed error when parser
9093 source don't exist in `load-path'. Use `locate-library'.
9095 2003-02-13 David Ponce <david@dponce.com>
9097 * wisent/wisent-calc.el: (wisent-calc-automaton)
9098 (wisent-calc-tokens)
9099 (wisent-calc-setup-parser): Re-generated.
9101 * wisent/wisent-calc.wy (setupcode):
9102 Added missing punctuations in lexer syntax table.
9104 * bovine/semantic-el.el: (semantic-ctxt-current-symbol emacs-lisp-mode)
9105 (semantic-ctxt-current-function emacs-lisp-mode): Return result
9108 * semanticdb-el.el (semanticdb-find-nonterminal-by-name-regexp-method):
9110 returns valid data. Code simplified.
9112 2003-02-13 Eric M. Ludlam <zappo@gnu.org>
9114 * bovine/bovine-grammar.el (bovine-grammar-setupcode-builder):
9115 New debug variables now set.
9117 * bovine/Makefile (bovinator_LISP): Added bovine-debug.el
9118 (LOADPATH): added eieio and wisent
9119 (examples_LISP): added skeleton.by
9120 (by_MISC): added make and scheme .by files.
9122 * bovine/Project.ede (bovinator): Added EIEIO dependency.
9123 Added `bovine-debug.el' support file.
9124 (examples): Added skeleton.by.
9125 (by): Added make and scheme.
9127 * Makefile (tools_LISP): Added semantic-debug.el.
9129 * Project.ede ("semantic"): Added `semantic-debug' API interface.
9131 * bovine/semantic-bovine.el (semantic-bovinate-stream):
9132 Use new bovine debug interface.
9133 Removed other debugger sections.
9134 (semantic-dump-buffer-init, semantic-dump-detail)
9135 (semantic-bovinate-debug-table, semantic-bovinate-debug-set-table)
9136 (semantic-bovinate-debug-buffer, semantic-bovinate-show)
9137 (semantic-bovinate-create-reference)
9138 (semantic-bovinate-create-reference-token-list)
9139 (semantic-bovinate-add-reference, semantic-bovinate-compare-reference)
9140 (semantic-bovinate-reference-temp-list): Deleted.
9142 * semantic-debug.el:
9143 (semantic-debug-parser-class, semantic-debug-enabled)
9144 (semantic-debug-current-interface, semantic-debug-current-parser): New
9145 (semantic-debug-interface): Added several new slots.
9146 (semantic-debug-frame, semantic-debug-set-parser-location)
9147 (semantic-debug-set-source-location): New
9148 (semantic-debug-interface-layout): Fixed.
9149 (semantic-debug-frame): Removed cruft.
9150 (semantic-debug-highlight-lexical-token)
9151 (semantic-debug-highlight-rule, semantic-debug-unhighlight)
9152 (semantic-debug-break): New
9153 (semantic-debug-mode-map): Added abort and SPC bindings
9154 (semantic-debug-mode): Fixed
9155 (semantic-debug-next): Exit recursive edit
9156 (semantic-debug-step): Exit recursive edit
9157 (semantic-debug-fail-match): implemented.
9158 (semantic-debug-quit): Exit recursive edit.
9159 (semantic-debug-abort): new
9160 (semantic-debug-set-breakpoint): name change
9161 (semantic-debug-parser): Updated all methods.
9163 * bovine/bovine-debug.el:
9164 Implementation of `semantic-debug' interface for the bovine parser.
9166 * semanticdb.el (semanticdb-create-table):
9167 Fixed name of object to not use scoped variable.
9169 2003-02-10 Richard Y. Kim <ryk@ap.com>
9171 * wisent/wisent-python.el, wisent/wisent-python.wy:
9172 Reworked the python parser to be able to parse member variables and
9173 functions of classes sufficiently well to make ECB work!
9175 2003-02-08 Richard Y. Kim <ryk@ap.com>
9177 * wisent/wisent-python.el:
9178 Fixed semantic-lex-python-charquote lexical analyzer so that explicit line continuations via backslashes are handled properly.
9180 * wisent/wisent-python.wy:
9181 Fixed wiset-token expressions to produce tokens that conform to the specification at "(semantic)Style Guide" info node.
9183 2003-02-07 David Ponce <david@dponce.com>
9185 * semantic-lex.el (semantic-lex-whitespace):
9186 Increment `end-point' when it merges
9189 2003-02-06 David Ponce <david@dponce.com>
9191 * semantic-grammar.el (semantic-grammar-update-outputfile): Use
9192 `semantic-map-mode-buffers'. Make sure the grammar output file
9195 2003-02-04 Eric M. Ludlam <zappo@gnu.org>
9197 * NEWS: Added news about sematnicdb.
9199 * semantic-debug.el:
9200 (semantic-debug-frame, semantic-debug-create-frame):
9201 Adjust doc strings based on David's input.
9203 * semantic-debug.el: Basic framework for the debugger.
9205 2003-02-03 David Ponce <david@dponce.com>
9207 * tests/templates.cpp: Sync with v1p4 branch.
9209 * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9210 (semantic-c-keyword-table)
9211 (semantic-default-c-setup): Re-generated from c.by.
9213 * bovine/c.by: Sync with c.bnf in v1p4 branch.
9215 (template-var): Handle any arguments with optional '&' and '*'
9217 (template-type): Use variablearg rule.
9219 * semanticdb.el (semanticdb-project-predicates): Renamed to...
9220 (semanticdb-project-predicate-functions): New.
9221 (semanticdb-current-database-list): Use
9222 `run-hook-with-args-until-success' to run
9223 `semanticdb-project-root-functions'. Minor changes.
9225 * semanticdb-file.el (semanticdb-write-directory-p): Use
9226 `run-hook-with-args-until-success' to run
9227 `semanticdb-project-predicate-functions'.
9231 2003-02-02 Richard Y. Kim <ryk@ap.com>
9233 * wisent/wisent-python.el:
9234 Lots of comment clean ups plus removal of unused code.
9236 * wisent/wisent-python.wy:
9237 Removed code to truncate string literals to first 16 characters. It was a debugging aid.
9239 * wisent/wisent-python.el, wisent/wisent-python.wy:
9240 Updated the python grammar to include the base class information in tokens representing a class.
9242 2003-02-02 Eric M. Ludlam <zappo@gnu.org>
9244 * bovine/skeleton.by (OPERATORS): New
9245 (expression): Use above.
9247 * bovine/semantic-skel.el (semantic-flex-skeleton-extensions): deleted
9248 (semantic-lex-skel-if-0, semantic-skeleton-lexer): New
9250 * bovine/skeleton.by: Example of using the .by format.
9252 * bovine/semantic-scm.el (semantic-scheme-lexer): New lexer.
9253 (semantic-*-scheme...): Generated from scheme.by
9255 * bovine/scheme.by: Scheme parser, ported from scheme.bnf
9257 2003-02-01 Klaus Berndl <klaus.berndl@sdm.de>
9259 * NEWS: Added announcements for recent enhancements for C++ parsing
9261 * tests/templates.cpp: Added new very complex examples for templates
9263 * semantic-c.el: Regenerated from latest c.bnf
9265 * c.bnf (template-var):
9266 In template-types arguments can be any symbols with optional
9267 adress-operator (&) and optional dereferencing operator (*)
9269 (template-type): template-types can be all flavors of variable-args
9271 2003-02-01 Eric M. Ludlam <zappo@gnu.org>
9273 * semantic-grammar.el (semantic-grammar-update-def):
9274 Evaluate after creation.
9275 (semantic-grammar-update-setupfunction): Evaluate after creation.
9276 (semantic-grammar-update-outputfile): Loop over all buffers.
9277 Call the setup function on all buffers matching the mode we are
9278 building a parser for.
9280 * bovine/semantic-make.el (semantic-toplevel-make-bovine-table):
9281 Updated from make.by
9282 (semantic-make-keyword-table): Updated from make.by
9283 (semantic-flex-make-extensions, semantic-flex-make-command)
9284 (semantic-flex-nonewline): deleted
9285 (semantic-lex-make-backslash-newline, semantic-lex-make-command):
9286 New lexical analyzers.
9287 (semantic-make-lexer): New lexer.
9288 (semantic-default-make-setup): Updated from make.by.
9290 * semantic.el (semantic-elapsed-time): New fn.
9291 (bovinate): Use above to calculate elapsed time.
9293 2003-01-31 Eric M. Ludlam <zappo@gnu.org>
9295 * bovine/make.by (elements): Comment out EMPTY
9296 (opt-whitespace): Comment out EMPTY
9298 * semantic-lex.el (define-lex-analyzer):
9299 The analyzer created as a function now wraps up
9300 the token stream so `semantic-lex-token' works.
9302 2003-01-31 Richard Y. Kim <ryk@ap.com>
9304 * NEWS: Added mention of python parser in the Languages section.
9306 * wisent/wisent-python.el:
9307 Updated the forms automatically generated from wisent-python.wy.
9308 Apart from this, no other changes were made.
9310 * wisent/wisent-python.wy:
9311 The base class list tokens are now generated for class tokens.
9313 * wisent/wisent-python.wy:
9314 Cleaned up many semantic actions by getting rid of debug code and unncessary code.
9316 * wisent/wisent-python.el, wisent/wisent-python.wy:
9317 Variable assignment statements and function formal parameters now generate 'variable tokens instead of the generic 'code tokens.
9319 2003-01-31 Eric M. Ludlam <zappo@gnu.org>
9321 * bovine/make.by: First attempt.
9323 2003-01-30 David Ponce <david@dponce.com>
9325 * tests/templates.cpp: Sync with v1p4 branch.
9327 * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9328 (semantic-c-keyword-table)
9329 (semantic-default-c-setup): Re-generated from c.by.
9331 * bovine/c.by: Sync with c.bnf in v1p4 branch.
9333 (template-var): Handle literal or constant.
9334 (typeformbase): Fixed.
9336 2003-01-30 Klaus Berndl <klaus.berndl@sdm.de>
9339 templates-types with constants or literals as parameters are parsed.
9341 * tests/templates.cpp:
9342 added new examples especially for template-types with constant parameters
9344 * semantic-c.el: Newly generated from c.bnf
9346 * c.bnf (template-var):
9347 Parses constants and literals in template types like in
9348 foo<ClassX, 10> foo_10_var;
9350 2003-01-30 David Ponce <david@dponce.com>
9352 * Makefile: Rebuilt from Project.ede.
9354 2003-01-30 Eric M. Ludlam <zappo@gnu.org>
9356 * bovine/semantic-erlang.el:
9357 Erlang support by Vladimir G. Sekissov <svg@surnet.ru>
9359 * bovine/erlang-edoc.el:
9360 Erlang support of the `document' API by Vladimir G. Sekissov <svg@surnet.ru>
9362 * bovine/erlang.bnf:
9363 Erlang support by Vladimir G. Sekissov <svg@surnet.ru>
9365 * Project.ede (init): Fixed object name.
9366 (misc): Added AUTHORS file.
9368 * AUTHORS: Major contributors to Semantic.
9370 2003-01-30 David Ponce <david@dponce.com>
9372 * tests/test.cpp: Sync with v1p4 branch.
9374 * bovine/semantic-c.el (semantic-lex-c-string):
9375 New analyzer for C strings.
9376 (semantic-c-lexer): Use it.
9378 2003-01-30 Klaus Berndl <klaus.berndl@sdm.de>
9381 Added examples for wide-char literals like L"str" and L'c'
9383 * semantic-c.el (semantic-flex-c-extensions): Added
9384 semantic-flex-wide-char-literal
9385 (semantic-flex-wide-char-literal): New function which lexes
9386 wide-char string- and char-literals like L"str" and L'c'
9388 * NEWS: Added announcement for parsing wide-char literals like L"str"
9390 2003-01-29 David Ponce <david@dponce.com>
9392 * tests/test.cpp: Sync with v1p4 branch.
9394 * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9395 (semantic-c-keyword-table)
9396 (semantic-default-c-setup): Re-generated from c.by.
9398 * bovine/c.by: Sync with c.bnf in v1p4 branch.
9401 (builtintype-types): Use it.
9402 (variablearg): Removed opt-stars.
9403 (variablearg-opt-name): Handle pointers for unnamed arguments.
9404 (string-seq): New nonterminal.
9405 (expression): Use it instead of string.
9407 2003-01-29 Klaus Berndl <klaus.berndl@sdm.de>
9410 Added really complex examples for functions with complex
9411 pointer/const-arguments
9413 * NEWS: Added more enhancements announcements
9415 * semantic-c.el: Newly generated from latest c.bnf
9417 * c.bnf (variablearg):
9418 Removed a superfluous opt-stars which has prevented
9419 pointers counted correct for arguments
9420 (variablearg-opt-name): Enabled parsing and counting pointers even
9421 for arguments without an argumentname.
9422 WCHAR: Added new token for "wchar_t"
9423 (builtintype-types): Added WCHAR
9424 (string-seq): New rule for string sequences
9425 (expression): Changed string to string-seq, so that
9426 string-sequences are parsed correct too
9428 2003-01-29 David Ponce <david@dponce.com>
9430 * tests/Makefile: New file.
9432 * wisent/Makefile: Rebuilt.
9434 * wisent/Project.ede (ede-proj-target-makefile-info "doc"):
9435 Removed :partofall option.
9436 (ede-proj-target-elisp "languages"): Moved after "wisent" target.
9438 * bovine/Makefile, Makefile: Rebuilt.
9440 * Project.ede (ede-proj-target-elisp "tools"):
9441 Removed "semanticdb-obj.el".
9443 * semantic-mode.el: Obsolete file removed .
9445 * semantic-c.el (semantic-flex-c-extensions): Support #elif.
9447 2003-01-29 Eric M. Ludlam <zappo@gnu.org>
9449 * bovine/semantic-el.el (semantic-elisp-use-read):
9450 Give `define-mode-overload-implementation'
9452 Identify `defvar-mode-local' as a variable. Give it a parent.
9454 * bovine/semantic-c.el (semantic-lex-c-if): Support #elif
9456 * wisent/Project.ede (tools): New target with `bison-wisent.el' in it.
9458 2003-01-28 David Ponce <david@dponce.com>
9460 * semantic.el (semantic-version): Updated to 2.0beta1.
9462 * Project.ede (ede-proj-project "semantic"):
9463 Updated :version to 2.0beta1.
9465 * NEWS: Minor changes.
9468 Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9471 * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9472 (semantic-c-keyword-table)
9473 (semantic-default-c-setup): Re-generated from c.by.
9475 * bovine/c.by (macro-def): Fixed typo.
9477 Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9478 in c.bnf in v1p4 branch.
9480 (typesimple): Typedefs can also include declmods.
9482 (cv-declmods): New rules.
9483 (DECLMOD): Use CVDECLMOD.
9484 (codeblock-var-or-fun): Allow declmods after typeformbase too.
9485 (variablearg): Allow cv-declmods after typeformbase.
9487 * semanticdb.el (semanticdb-file-stream):
9488 Ensure that the non-persistent slot
9489 `reference-directory' is initialized.
9491 2003-01-28 Klaus Berndl <klaus.berndl@sdm.de>
9494 Added some examples for the better parsing of const and volatile
9496 * NEWS: Added entry for better parsing of const and volatile
9498 * semantic-c.el: Newly generated from latest c.bnf
9500 * c.bnf (typesimple): typedefs can also include declmods
9501 (CVDECLMOD): New rule
9502 (cv-declmods): New rule
9503 (DECLMOD): uses now CVDECLMOD
9504 (codeblock-var-or-fun): declmods also after typeformbase allowed
9505 (variablearg): cv-declmods after typeformbase allowed
9507 2003-01-27 David Ponce <david@dponce.com>
9509 * semanticdb.el (semanticdb-file-stream):
9510 Use `semanticdb-create-database' instead of
9511 a hard-coded database file name based on given file name plus
9512 `semanticdb-default-file-name'.
9514 * semantic.el (semantic-version): Updated to 1.4.3.
9516 * Project.ede (ede-proj-project "semantic"): Updated :version to 1.4.3.
9519 Added comment to signal that this grammar is now obsoleted
9522 (outputfile): Commented out to avoid overwrite of semantic-c.el.
9524 Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9525 in c.bnf in v1p4 branch.
9527 (TYPENAME): New keyword. Added summary.
9528 (declaration): Moved define after var-or-fun.
9529 (macro-expression-list)
9531 (macro-or-include): Use macro-def.
9532 (define): Use macro-def. Fixed semantic action.
9533 (class-parents): Fixed semantic actions.
9534 (type): Handle unnamed namespaces.
9535 (using): Handle "using namespace XXX".
9536 (template-type): Handle namespace-symbol and keyword typename.
9537 (DECLMOD): Removed SIGNED and UNSIGNED. Handle TYPENAME.
9540 (builtintype): Use them.
9542 (varname): Handle namespace-symbol.
9543 (namespace-opt-class): New.
9544 (opt-class): Use it.
9545 (operatorsym): Handle PARENS and BRAKETS.
9546 (opt-expression): Removed.
9548 (expression): Handle namespace-symbol.
9550 2003-01-25 David Ponce <david@dponce.com>
9552 * semantic-lex.el (semantic-lex-make-type-table):
9553 Fixed resetting of `default' value.
9554 More understandable warning message.
9556 2003-01-25 Richard Y. Kim <ryk@ap.com>
9558 * wisent/wisent-python.el, wisent/wisent-python.wy:
9559 Added comments for each keyword, deleted unused code, and scrubbed comments.
9561 * wisent/wisent-python.el:
9562 Matching changes to the .wy file just checked in.
9564 * wisent/wisent-python.wy:
9565 All tokens except 'import', 'function', and 'type' are now of type
9566 'code' whose value is the keyword involved in the expression.
9568 The following are such keywords: print, del, pass, break, continue,
9569 return, yield, raise, global, exec, assert, if, while, for, try
9571 Also "expr" value is used with 'code' token type for other exressions
9572 that do not have a keyword.
9574 2003-01-24 David Ponce <david@dponce.com>
9576 * tests/templates.cpp, tests/test.cpp:
9577 Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9580 * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9581 (semantic-c-keyword-table)
9582 (semantic-default-c-setup): Re-generated from c.by.
9584 (semantic-lex-c-ignore-ending-backslash): New.
9585 (semantic-c-lexer): Use it.
9588 Sync with changes made by Klaus Berndl <klaus.berndl@sdm.de>
9589 in c.bnf in v1p4 branch.
9591 (PARENS, BRAKETS): New tokens.
9592 (TYPENAME): New keyword. Added summary.
9593 (declaration): Moved define after var-or-fun.
9594 (macro-expression-list)
9596 (macro-or-include): Use macro-def.
9597 (define): Use macro-def. Fixed semantic action.
9598 (class-parents): Fixed semantic actions.
9599 (type): Handle unnamed namespaces.
9600 (using): Handle "using namespace XXX".
9601 (template-type): Handle namespace-symbol and keyword typename.
9602 (DECLMOD): Removed SIGNED and UNSIGNED. Handle TYPENAME.
9605 (builtintype): Use them.
9607 (varname): Handle namespace-symbol.
9608 (namespace-opt-class): New.
9609 (opt-class): Use it.
9610 (operatorsym): Handle PARENS and BRAKETS.
9611 (opt-expression): Removed.
9613 (expression): Handle namespace-symbol.
9615 2003-01-24 Klaus Berndl <klaus.berndl@sdm.de>
9618 New section for semantic 1.4.3 and an entry "Enhancements to the C/C++
9619 grammar" which describes all enhancements in c.bnf and semantic-c.el
9622 Added a lot of new examples related to the modifications in c.bnf and
9625 * tests/templates.cpp:
9626 Added a some new examples related to the modifications in c.bnf
9628 * semantic-c.el (semantic-flex-c-extensions):
9629 Added semantic-flex-backslash-newline
9630 (semantic-flex-backslash-newline): New function
9632 * c.bnf (macro-expression-list): Parsing one-line macros correct
9633 (define): Fixing a bug
9634 (type): Added unnamed namespaces
9635 (using): Allowing "using namespace XXX"
9636 (template-type): changing symbol -> namespace-symbol, adding
9638 (DECLMOD): Removed SIGNED and UNSIGNED, added TYPENAME
9639 (builtintype-types): was builtintype; added long int, long long,
9642 (builtintype): Now uses signedmod and builtintype-types
9643 (opt-initializers): changing symbol -> namespace-symbol
9644 (varname): changing symbol -> namespace-symbol
9645 (namespace-opt-class): Allowing template-specifiers
9646 (opt-class): parsing namespaces here
9647 (operatorsym): Parsing operator()() and operator[]()
9648 (function-call): changing symbol -> namespace-symbol
9649 (expression): changing symbol -> namespace-symbol
9651 2003-01-24 David Ponce <david@dponce.com>
9653 * NEWS: Completed "Grammar framework." topic.
9655 2003-01-24 Richard Y. Kim <ryk@ap.com>
9657 * wisent/wisent-python.el, wisent/wisent-python.wy:
9658 Deleted debug code that I forgot to take out before the last check in.
9660 * wisent/wisent-python.el, wisent/wisent-python.wy:
9661 Reorganized the grammar by better grouping related non-terminals together.
9663 Also rewrote all the semantic actions so that proper semantic tokens are generated.
9665 2003-01-22 David Ponce <david@dponce.com>
9667 * NEWS: Starting Semantic 2.0 changes.
9669 * ONEWS: Old NEWS file.
9671 2003-01-21 David Ponce <david@dponce.com>
9673 * semanticdb.el (semanticdb-file-table):
9674 Use a filename relative to the project
9675 database's target directory when searching for a table object.
9677 2003-01-09 David Ponce <david@dponce.com>
9679 * bovine/semantic-bovine.el (semantic-bovinate-nonterminal-db-nt):
9682 * semantic-lex.el (define-lex-analyzer):
9683 Define the single analyzer as function too.
9684 (define-lex-regex-analyzer)
9685 (define-lex-simple-regex-analyzer)
9686 (define-lex-block-analyzer): Doc fix. Use `define-lex-analyzer'.
9687 (semantic-lex-newline-as-whitespace)
9688 (semantic-lex-ignore-newline): Removed extra white spaces.
9689 (semantic-lex-paren-or-list): Doc fix.
9691 2003-01-06 Richard Y. Kim <ryk@ap.com>
9693 * wisent/wisent-python.el, wisent/wisent-python.wy:
9694 Finally converted python's lexer to use the new lexer, i.e., wisent-lex, and not use the old lexer wisent-flex.
9696 2002-12-31 Eric M. Ludlam <zappo@gnu.org>
9698 * semantic-ctxt.el (semantic-beginning-of-command): Doc fix.
9700 2002-12-31 David Ponce <david@dponce.com>
9702 * NEWS: Semantic 1.4.2 released.
9704 2002-12-29 David Ponce <david@dponce.com>
9706 * senator-isearch.el: Obsolete file.
9708 * semantic.el (semantic-version): Updated to 1.4.2.
9710 * Project.ede (ede-proj-project "semantic"): Updated :version to 1.4.2.
9712 * bovine/semantic-c.el: (semantic-toplevel-c-bovine-table)
9713 (semantic-c-keyword-table)
9714 (semantic-default-c-setup): Generated from c.by.
9716 (semantic-c-classname)
9717 (semantic-c-analyze-dereference-metatype): Doc fix.
9719 * bovine/c.by (outputfile): Output to "semantic-c.el".
9720 (class-parents): Enable namespace names for class parent declarations.
9721 (opt-class-declmods): New.
9722 (using): Fixed typo.
9723 (DECLMOD): Add virtual as a possible declaration modifier.
9724 (typeformbase): Accept namespace names.
9725 (typeformclassbase): Removed.
9726 (throw-exception-list): Enable namespace exceptions.
9727 (variablearg): Added opt-stars.
9728 (namespace-symbol): New.
9730 * bovine/c.bnf (class-parents):
9731 Enable namespace names for class parent declarations.
9732 (opt-class-declmods): New.
9733 (using): Fixed typo.
9734 (DECLMOD): Add virtual as a possible declaration modifier.
9735 (typeformbase): Accept namespace names.
9736 (typeformclassbase): Removed.
9737 (throw-exception-list): Enable namespace exceptions.
9738 (variablearg): Added opt-stars.
9739 (namespace-symbol): New.
9741 * senator-isearch.el: Obsolete file.
9743 * senator.el (senator-completion-menu-popup): Use a local
9744 `imenu-default-goto-function' to avoid conflicts with another buffer
9745 local definition of that function. Ensure that the local goto
9746 function will return the selected imenu item.
9748 * semantic-util.el: (semantic-type-relation-separator-character)
9749 (semantic-abbreviate-nonterminal): Doc fix.
9751 * semantic-util-modes.el: (semantic-update-mode-line)
9752 (global-semantic-show-unmatched-syntax-mode)
9753 (semantic-unmatched-syntax-face)
9754 (semantic-show-unmatched-syntax)
9755 (semantic-show-unmatched-syntax-mode)
9756 (semantic-show-unmatched-syntax-next)
9757 (semantic-auto-parse-no-working-message)
9758 (semantic-auto-parse-working-in-modeline-flag)
9759 (semantic-auto-parse-max-buffer-size)
9760 (global-semantic-auto-parse-mode)
9761 (semantic-auto-parse-bovinate)
9762 (global-semantic-summary-mode): Doc fix.
9764 * semantic-texi.el (semantic-texi-super-regex):
9765 Added matcher for `defopt'.
9766 (semantic-texi-name-field-list): Add `defopt' as a parsable field
9768 (semantic-texi-recursive-combobulate-list): Doc fix.
9770 * semantic-imenu.el (semantic-imenu-goto-function): Forward to
9771 `imenu-default-goto-function' when POSITION probably don't came from a
9774 (semantic-imenu-flush-fcn): Reset `imenu-menubar-modified-tick' to
9775 force rebuild of the imenu.
9777 * document.el (eval-when-compile 'semantic 'semantic-util):
9778 XEmacs change: needed to
9779 define macros at compile time.
9781 (document-function-name-comment)
9782 (document-insert-parameters)
9783 (document-parameter-comment)
9784 (document-argument-name)
9785 (document-programmer->english): Doc fix.
9787 2002-12-27 David Ponce <david@dponce.com>
9789 * semantic-c.el (semantic-toplevel-c-bovine-table):
9790 Re-generated from c.bnf.
9792 * c.bnf (class-parents):
9793 Enable namespace names for class parent declarations.
9794 (DECLMOD): Add virtual as a possible declaration modifier.
9795 (typeformbase): Accept namespace names.
9796 (typeformclassbase): Removed.
9797 (throw-exception-list): Enable namespace exceptions.
9798 (namespace-symbol): New.
9800 2002-12-26 David Ponce <david@dponce.com>
9802 * semantic-util.el: (semantic-type-relation-separator-character)
9803 (semantic-map-buffers): Doc fix.
9805 * semantic-util-modes.el: (semantic-update-mode-line)
9806 (global-semantic-show-dirty-mode)
9807 (global-semantic-show-unmatched-syntax-mode)
9808 (semantic-unmatched-syntax-face)
9809 (semantic-show-unmatched-syntax)
9810 (semantic-show-unmatched-syntax-mode)
9811 (semantic-show-unmatched-syntax-next): Doc fix.
9813 (semantic-auto-parse-no-working-message)
9814 (semantic-auto-parse-working-in-modeline-flag): Reverted back to 1.4
9817 (semantic-auto-parse-max-buffer-size)
9818 (global-semantic-auto-parse-mode): Doc fix.
9820 (semantic-auto-parse-bovinate): Reverted back to 1.4 version. Doc
9823 (global-semantic-summary-mode): Doc fix.
9825 * semantic-texi.el (semantic-texi-recursive-combobulate-list): Doc fix.
9827 * semantic-java.el (semantic-java-keyword-table): White space fix.
9828 (semantic-java-find-documentation)
9829 (semantic-java-doc-line-tags)
9830 (semantic-java-doc-keywords-map): Doc fix.
9832 * semantic-c.el (semantic-toplevel-c-bovine-table):
9833 Re-generated from c.bnf.
9835 (semantic-c-classname)
9836 (semantic-c-analyze-dereference-metatype): Doc fix.
9837 (semantic-c-keyword-table): White space fix.
9839 * document.el (eval-when-compile 'semantic 'semantic-util):
9840 XEmacs change: needed to
9841 define macros at compile time.
9843 (document-function-name-comment)
9844 (document-insert-parameters)
9845 (document-parameter-comment)
9846 (document-argument-name)
9847 (document-programmer->english): Doc fix.
9849 * c.bnf (using): Fixed typo.
9851 2002-12-20 Eric M. Ludlam <zappo@gnu.org>
9853 * semantic-cb.el (semantic-cb-token):
9854 table type is now semanticdb-abstract-table
9856 2002-12-17 David Ponce <david@dponce.com>
9858 * semantic-texi.el: * semantic-texi.el:
9860 (semantic-texi-super-regex): Added missing matcher for `defopt'.
9861 Thanks to "Klaus Berndl" <klaus.berndl@sdm.de>.
9863 2002-12-06 Eric M. Ludlam <zappo@gnu.org>
9865 * semanticdb-el.el: (semanticdb-find-nonterminal-by-function-method):
9866 Disable body of `semanticdb-find-nonterminal-by-function-method'.
9867 It makes the class browser unbelievably slow as it insists on
9868 generating a class browser for all of Emacs. Fix class browser
9869 then re-enable later.
9871 2002-12-04 Eric M. Ludlam <zappo@gnu.org>
9873 * wisent/Makefile (wy_MISC): Remove wisent-wy.
9874 (tools_LISP, tools): New
9876 2002-11-27 David Ponce <david@dponce.com>
9878 * semantic.el (semantic-version): Updated to 1.4.1.
9880 * Project.ede (ede-proj-project "semantic"): Updated :version to 1.4.1.
9882 * NEWS: Added entry for Semantic 1.4.1.
9884 2002-11-22 Eric M. Ludlam <zappo@gnu.org>
9887 (semantic-edits-change-leaf-token, semantic-edits-change-between-tokens)
9888 (semantic-edits-change-over-tokens, semantic-edits-splice-remove):
9889 (semantic-edits-splice-insert): Get raw parent token list.
9890 Check children for position. Need raw list for accurate splicing.
9892 2002-11-21 David Ponce <david@dponce.com>
9894 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf.
9896 * semantic-texi.el (semantic-texi-name-field-list):
9897 Add `defopt' as a parsable field
9900 * c.bnf (opt-class-declmods): New.
9901 (typeformbase): Support templates after :: operator.
9902 (variablearg): Support *'s in nameless arguments.
9904 2002-11-18 David Ponce <david@dponce.com>
9906 * semantic-util.el (semantic-change-function-mark-dirty):
9907 Fixed bug #513650, "Stack
9908 overflow in equal" in `add-to-list' when comparing complex tokens.
9910 2002-11-15 David Ponce <david@dponce.com>
9912 * semantic-util.el (semantic-find-doc-snarf-comment):
9913 Use `semantic-comment-lexer' as
9916 * semantic-lex.el (semantic-lex-map-symbols):
9917 Fixed misplaced right parenthesis.
9918 (semantic-lex-keywords)
9919 (semantic-lex-types): Fixed missing `setq'.
9920 (semantic-comment-lexer): New predefined lexer.
9922 2002-10-30 David Ponce <david@dponce.com>
9924 * bovine/semantic-el.el (require 'find-func): Added.
9925 (semantic-end-of-command)
9926 (semantic-beginning-of-command): Handle error when the point is
9927 outside of a parenthesized block.
9929 * bovine/bovine-grammar.el (bovine-grammar-expand-ASSOC):
9930 Apply `semantic-grammar-ASSOC' to
9932 (bovine-grammar-setupcode-builder): Added setup of
9933 `semantic-toplevel-bovine-table-source' and
9934 `semantic-equivalent-major-modes'.
9936 * semantic-grammar.el (semantic-grammar-update-setupfunction):
9937 Insert appropriate newline
9940 2002-10-26 Eric M. Ludlam <zappo@gnu.org>
9942 * wisent/bison-wisent.el (bison->wisent): Autoload cookie.
9943 (bison->wisent-action-replace-once): Do not put in Action text.
9946 Do not try doing any parsing if the buffer does not have semantic active.
9948 2002-10-02 David Ponce <david@dponce.com>
9950 * wisent/wisent-python.el: (wisent-python-parser-tables)
9951 (wisent-python-keywords, wisent-python-tokens)
9952 (wisent-python-default-setup): Re-generated.
9954 * wisent/wisent-java-tags.el, wisent/wisent-java.el:
9955 (wisent-java-parser-tables)
9956 (wisent-java-keywords, wisent-java-tokens)
9957 (wisent-java-default-setup): Re-generated.
9959 * wisent/wisent-java-lex.el: (wisent-java-tags-lexer)
9960 (wisent-java-lexer): Use `semantic-lex-punctuation-type'.
9962 * wisent/wisent-grammar.el (wisent-grammar-setupcode-builder):
9964 `semantic-lex-types-obarray'.
9966 * wisent/wisent-cim.el: (wisent-cim-automaton)
9967 (wisent-cim-keywords, wisent-cim-tokens)
9968 (wisent-cim-default-setup): Re-generated.
9970 * wisent/wisent-calc.el: (wisent-calc-automaton)
9971 (wisent-calc-tokens)
9972 (wisent-calc-setup-parser): Re-generated.
9974 * wisent/wisent-bovine.el: (wisent-lex-token-rules)
9975 (wisent-lex-token-get)
9976 (wisent-lex-make-token-table): Use new `wisent-lex-type-...' API.
9977 (wisent-lex-punctuation): Removed.
9979 * wisent/wisent-awk.el: (wisent-awk-automaton)
9980 (wisent-awk-keywords, wisent-awk-tokens)
9981 (wisent-awk-setup-parser): Re-generated.
9983 * semantic-lex.el (semantic-lex-tokens-obarray): Renamed to...
9984 (semantic-lex-types-obarray): New.
9985 (semantic-lex-token-invalid): Renamed to...
9986 (semantic-lex-type-invalid): New.
9987 (semantic-lex-token-symbol): Renamed to...
9988 (semantic-lex-type-symbol): New.
9989 (semantic-lex-token-class-p): Renamed to...
9990 (semantic-lex-type-p): New.
9991 (semantic-lex-token-set): Renamed to...
9992 (semantic-lex-type-set): New.
9993 (semantic-lex-token-value): Renamed to...
9994 (semantic-lex-type-value): New.
9995 (semantic-lex-token-put): Renamed to...
9996 (semantic-lex-type-put): New.
9997 (semantic-lex-token-get): Renamed to...
9998 (semantic-lex-type-get): New.
9999 (semantic-lex-make-token-table): Renamed to...
10000 (semantic-lex-make-type-table): New.
10001 (semantic-lex-map-tokens): Renamed to...
10002 (semantic-lex-map-types): New.
10003 (semantic-lex-tokens): Renamed to...
10004 (semantic-lex-types): New.
10006 (semantic-lex-punctuation-type): New.
10008 * semantic-grammar.el (semantic-grammar-lexer):
10009 Use `semantic-lex-punctuation-type'.
10010 (semantic-grammar-automaton)
10011 (semantic-grammar-keywords, semantic-grammar-tokens)
10012 (semantic-grammar-setup-semantic): Re-generated.
10013 (semantic-grammar-tokentable-builder-default): Call
10014 `semantic-lex-make-type-table'.
10015 (semantic-grammar-syntax-table): Removed '?' as a quote character.
10017 2002-09-24 Eric M. Ludlam <zappo@gnu.org>
10019 * semantic-fw.el (define-mode-overload-implementation):
10020 Do not force such method to be
10021 protected. This prevents a .el file from being loaded twice.
10022 (semantic-function-overload-p): New method.
10023 (semantic-augment-function-help): If a symbol being described is
10024 overloaded, add some help to the user query.
10025 (describe-function): New advice.
10027 * semantic-lex.el (define-lex):
10028 Make sure that a token is eaten for each pass to
10031 2002-09-16 Eric M. Ludlam <zappo@gnu.org>
10033 * bovine/semantic-el.el:
10034 (semantic-up-context, semantic-get-local-variables, semantic-end-of-command)
10035 (semantic-beginning-of-command, semantic-ctxt-current-symbol)
10036 (semantic-ctxt-current-assignment, semantic-ctxt-current-argument): New
10038 * senator.el: Remove highlight dirty tokens menu item.
10040 * semantic-ctxt.el (semantic-up-context):
10041 Add `semantic-overload' property.
10042 (semantic-beginning/end-of-context): Use `define-overload'.
10043 (semantic-beginning/end-of-context-default): Accept parameter.
10044 (semantic-with-buffer-narrowed-to-context): Change indent function.
10045 (semantic-get-local-variables): pass argument to default.
10046 Add `semantic-overload' property.
10047 (semantic-get-local-variables-default): Accept paramter
10048 (semantic-get-local-arguments): Add `semantic-overload' property.
10049 (semantic-get-local-arguments-default): Accept parameter.
10050 (semantic-end/beginning-of-command): Convert to `define-overload'.
10051 (semantic-end/beginning-of-command): Accept new paramter.
10052 (semantic-with-buffer-narrowed-to-command): Change indent functgion
10053 (semantic-ctxt-current-symbol): Convert to `define-overload.
10054 (semantic-ctxt-current-symbol-default): Added paramter.
10055 (semantic-ctxt-current-assignment): Convert to `define-overload'
10056 (semantic-ctxt-current-assignment-default): Add paramter.
10057 (semantic-ctxt-scoped-types): Convert to `define-overload'
10058 (semantic-ctxt-scoped-types-default): Add paramter.
10060 2002-09-13 Eric M. Ludlam <zappo@gnu.org>
10062 * semantic.el (bovinate): Added timer to determine length of parsing.
10064 2002-09-12 David Ponce <david@dponce.com>
10066 * semantic-grammar.el (semantic-grammar-lex-symbol):
10067 Undo previous change.
10068 (semantic-grammar-automaton)
10069 (semantic-grammar-keywords)
10070 (semantic-grammar-tokens)
10071 (semantic-grammar-setup-semantic): Re-generated.
10072 (semantic-grammar-syntax-table): Added '.' as symbol constituent, and
10073 '?' and '\' as quote characters.
10074 (semantic-grammar-mode-keywords-1): Fixed symbol regexps.
10076 * semantic-grammar.wy (setupcode): Setup `semantic-lex-comment-regex'.
10078 2002-09-11 David Ponce <david@dponce.com>
10080 * wisent/wisent-bovine.el (wisent-lex-punctuation):
10081 Continue lexical analysis if a punctuation
10084 * semantic-grammar.wy (setupcode):
10085 Removed setup of `semantic-lex-number-expression'.
10086 (token [NUMBER]): Removed.
10087 (token [PREFIX-EXP]): Renamed to SEXP.
10088 (any_value): Updated to reflect above changes.
10090 * semantic-grammar.el (semantic-grammar-lex-symbol):
10091 Include '.' in symbol.
10092 (semantic-grammar-lex-number)
10093 (semantic-grammar-lex-prefixed-expression): Removed.
10094 (semantic-grammar-lex-sexp): New.
10095 (semantic-grammar-lexer): Updated to reflect above changes.
10096 (semantic-grammar-automaton)
10097 (semantic-grammar-keywords)
10098 (semantic-grammar-tokens)
10099 (semantic-grammar-setup-semantic): Re-generated.
10101 2002-09-11 Eric M. Ludlam <zappo@gnu.org>
10103 * wisent/bison-wisent.el: Translate bison files into wisent.
10105 2002-09-10 David Ponce <david@dponce.com>
10107 * semantic-grammar.el (require 'semantic-edit): at compilation time.
10108 (semantic-grammar-edits-new-change-hook-fcn): New function.
10109 (semantic-grammar-mode): Use it.
10111 * semantic-edit.el (semantic-edits-change-leaf-token):
10112 Take into account change at
10113 beginning of leaf token.
10114 (semantic-edits-incremental-parser): When there is a change between
10115 tokens and the change is stuck on the first surrounding token,
10116 re-parse that token. Get reparse-symbol from cache-list when tokens
10119 2002-09-07 Eric M. Ludlam <zappo@gnu.org>
10121 * wisent/Project.ede, bovine/Project.ede, Project.ede:
10122 Updated with new files dependencies.
10124 * bovine/semantic-bovine.el (semantic-bovinate-debug-buffer):
10127 * semantic-load.el (semantic-al): eval-and-compile this.
10128 (imenu...): wrap in condition-case to protect .wy files.
10129 (global-semantic-*-mode): Moved around a little
10130 (semanticdb-load-system-cache): Load in the system cache if available.
10132 * semanticdb-system.el:
10133 Database for system directories. (Such as C include files)
10135 * semanticdb-file.el:
10136 (semanticdb-default-file-name, semanticdb-default-save-directory)
10137 (semanticdb-persistent-path, semanticdb-project-database-file):
10139 (semanticdb-file-loaded-p, semanticdb-live-p): Moved
10140 (semanticdb-create-database): Pass down class being created when
10141 calculating database path.
10142 (semanticdb-full-filename): Moved
10143 (semanticdb-file-name-non-directory): New
10144 (semanticdb-file-name-directory): Use new dir-sep-char.
10145 Better final path concatenation.
10147 * semanticdb.el (semanticdb-create-table): Comments
10148 (semanticdb-dir-sep-char): New
10149 (semanticdb-fix-pathname): New
10150 (semanticdb-minor-mode-p): autoload cookie.
10151 (semanticdb-file): Requirement removed.
10153 * semantic-util-modes.el (global-semantic-show-dirty-mode*): REMOVED
10154 (semantic-show-dirty*): REMOVED
10155 (sematic-dirty*): REMOVED
10157 * semantic-util.el (semantic-prototype-nonterminal-default-args):
10158 Pass `color' to sub-calls.
10159 (semantic-nonterminal-children): autoload cookie.
10161 * semantic-ia.el (senator): Added requirement.
10163 * semantic-fw.el (semantic-al): Added require.
10165 * semantic-edit.el (semantic-change-function): Moved.
10166 (semantic-dirty-tokens, semantic-dirty-token-hooks)
10167 (semantic-pre-clean-token-hooks, semantic-clean-token-hooks)
10168 (semantic-remove-dirty-children-internal)
10169 (semantic-remove-dirty-children): REMOVED
10170 (semantic-rebovinate-token, semantic-cleanup-dirty-tokens)
10171 (semantic-change-function-mark-dirty)
10172 (semantic-find-nearby-dirty-tokens)
10173 (semantic-set-tokens-dirty-in-region): REMOVED
10175 * semantic.el (semantic-clear-toplevel-cache):
10176 Removed knowledge of dirty tokens.
10178 * semantic-autogen.el (make-autoload):
10179 Support defmethod as an autoload.
10181 2002-09-05 David Ponce <david@dponce.com>
10183 * wisent/wisent-wy.el, wisent/wisent-wy.wy: No more used.
10185 * wisent/wisent-python.el:
10186 (wisent-python-parser-tables, wisent-python-keywords)
10187 (wisent-python-tokens, wisent-python--default-setup): Re-generated.
10189 * wisent/wisent-java-tags.el, wisent/wisent-java.el:
10190 (wisent-java-parser-tables, wisent-java-keywords, wisent-java-tokens)
10191 (wisent-java-default-setup): Re-generated.
10193 * wisent/wisent-cim.el:
10194 (wisent-cim-automaton, wisent-cim-keywords, wisent-cim-tokens)
10195 (wisent-cim-default-setup): Re-generated.
10197 * wisent/wisent-calc.wy (setupcode):
10198 Setup lexer to `wisent-calc-lexer'.
10200 * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
10201 (wisent-calc-setup-parser): Re-generated.
10202 (wisent-calc-lex-number, wisent-calc-lex-punctuation)
10203 (wisent-calc-lexer): New.
10204 (wisent-calc): Use them.
10206 * wisent/wisent-bovine.el: (wisent-lex-tokens-obarray)
10207 (wisent-lex-add-token, wisent-lex-put-default): Removed.
10208 (wisent-lex-token-rules, wisent-lex-token-get)
10209 (wisent-lex-make-token-table): Use `semantic-lex-token' stuff.
10211 * wisent/wisent-awk.el:
10212 (wisent-awk-automaton, wisent-awk-keywords, wisent-awk-tokens)
10213 (wisent-awk-setup-parser): Re-generated.
10215 * wisent/wisent-grammar.el, bovine/bovine-grammar.el, bovine/c.by:
10219 (semantic-lex-map-symbols, semantic-lex-keyword-invalid)
10220 (semantic-lex-keyword-symbol, semantic-lex-keyword-set)
10221 (semantic-lex-keyword-value): New.
10222 (semantic-lex-keyword-p, semantic-lex-keyword-get)
10223 (semantic-lex-keyword-put, semantic-lex-map-keywords): Use them.
10225 (semantic-lex-tokens-obarray, semantic-lex-token-invalid)
10226 (semantic-lex-token-symbol, semantic-lex-token-class-p)
10227 (semantic-lex-token-set, semantic-lex-token-value)
10228 (semantic-lex-token-put, semantic-lex-token-get)
10229 (semantic-lex-make-token-table, semantic-lex-map-tokens)
10230 (semantic-lex-tokens): New.
10232 * semantic-grammar.el, semantic-grammar.wy: Initial revision.
10234 2002-08-31 Eric M. Ludlam <zappo@gnu.org>
10236 * semanticdb.el (semanticdb-file-table):
10237 Use `eieio-persistent-path-relative'.
10239 2002-08-21 Eric M. Ludlam <zappo@gnu.org>
10242 Added bovine directory to load path so semantic-java will be available.
10244 * Makefile: Added semanticdb-el.
10246 * semantic-fw.el (semantic-overlay-properties, semantic-overlay-move):
10248 (define-mode-overload-implementation): Moved actual assignment
10249 outside eval-and-compile to prevent errors when compiling a file
10250 already loaded once.
10252 2002-08-20 Eric M. Ludlam <zappo@gnu.org>
10254 * bovine/semantic-el.el: Enable Emacs Lisp semanticdb extensions.
10256 * semanticdb-el.el: System database for Emacs.
10258 * semanticdb-search.el (semanticdb-search-results-table): New class
10259 (semanticdb-refresh-table::semanticdb-search-results-table): New method.
10260 (semanticdb-collect-find-results): Added `ignore-system', and
10261 `find-file-on-match' arguments. Ignore system forces the system
10262 databases to be skipped. Find-file-on-match ignores all DBs with
10263 tables that are not associated with files.
10264 (semanticdb-find-nonterminal-by-*): Added `ignore-system' argument.
10266 * semanticdb.el (semanticdb-abstract-table): New class
10267 (semanticdb-table): Inherit from above.
10268 (semanticdb-project-system-databases): New variable.
10269 (semanticdb-search-system-databases): New variable
10270 (semanticdb-current-database-list): Doc update.
10271 Add system databases to list when requested.
10273 2002-08-17 Eric M. Ludlam <zappo@gnu.org>
10275 * semanticdb.el (semanticdb-get-database): Added back in.
10277 2002-08-16 Eric M. Ludlam <zappo@gnu.org>
10279 * semanticdb-search.el (semanticdb-collect-find-results):
10280 Rename input arguments to prevent
10282 Fix empty result filter to correctly add real results.
10284 2002-08-15 David Ponce <david@dponce.com>
10286 * wisent/wisent-wy.wy (PREFIX-EXP): new token.
10287 (any_value): Added PREFIX-EXP rule.
10288 (nonterminal): Removed error rule.
10290 * wisent/wisent-wy.el (wisent-wy-lex-prefixed-expression): New.
10291 (wisent-wy-lexer): Use it.
10292 (wisent-wy-lex-buffer): Fixed bad lexer name.
10293 (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10294 (wisent-wy-setup-semantic): Re-generated.
10295 (wisent-wy-syntax-table): Added expression prefix characters.
10297 * wisent/wisent-bovine.el: (wisent-parse-stream)
10298 (wisent-parse-region): Manage a stack of lookahead tokens to ensure
10299 all unrecognized tokens will be collected in
10300 `semantic-unmatched-syntax-cache'.
10301 (edebug-setup-hook): Added `edebug' specifications of local macros.
10303 * bovine/semantic-bovine.el (require 'semantic):
10304 Added to eliminate compiler warnings.
10306 * semantic-lex.el (edebug-setup-hook):
10307 Added `edebug' specifications of local macros.
10309 * semantic-fw.el (setq-mode-local):
10310 Take care of side effects! Evaluate each VAL only
10311 once, and in the given order.
10312 (edebug-setup-hook): Added `edebug' specifications of local macros.
10314 2002-08-13 David Ponce <david@dponce.com>
10316 * wisent/wisent-comp.el (wisent-char-p): New compatibility function.
10317 (wisent-tag, wisent-ISVALID-TOKEN)
10318 (wisent-parse-nonterminals): Use it.
10320 * semantic.el (semantic-new-buffer-fcn):
10321 Use `semantic-activate-mode-bindings'.
10323 * semantic-fw.el: (semantic-override-table, semantic-current-overrides)
10324 (semantic-new-overrides, semantic-symbol-value-for-mode)
10325 (semantic-symbol-value-mode-assign, semantic-setq-major-mode)
10326 (setq-major-mode): Removed. Replaced by the following new API...
10328 (semantic-symbol-table, semantic-current-bindings)
10329 (semantic-new-bindings, semantic-bind)
10330 (semantic-symbol, semantic-symbol-value)
10331 (semantic-set-local-variable, semantic-activate-mode-bindings)
10332 (mode-local-value, setq-mode-local, defvar-mode-local)
10333 (defconst-mode-local): New.
10335 (semantic-fetch-overload)
10336 (semantic-install-function-overrides): Use new API.
10338 (semantic-fw-font-lock-keywords): New constant.
10339 Font lock keywords to highlight Semantic forms. Installed with
10340 `font-lock-add-keywords' if possible.
10342 * bovine/semantic-java.el: (semantic-default-java-setup)
10343 (add-hook 'java-mode-hook): Commented out.
10345 * bovine/semantic-el.el (setq-major-mode):
10346 Replaced by `defvar-mode-local'.
10348 2002-08-11 David Ponce <david@dponce.com>
10350 * wisent/wisent-wy.el: (add-to-list 'auto-mode-alist)
10351 (eval-after-load "speedbar"): New autoloads.
10353 * wisent/wisent-python.el: (add-hook 'python-mode-hook)
10354 (wisent-python-default-setup): Added autoload cookie.
10356 * wisent/wisent-java-tags.el: (wisent-java-default-setup)
10357 (add-hook 'java-mode-hook): Added autoload cookie.
10358 (remove-hook 'java-mode-hook): Removed.
10360 * bovine/semantic-java.el: (semantic-default-java-setup)
10361 (add-hook 'java-mode-hook): Removed autoload cookie.
10363 * bovine/semantic-bnf.el (eval-after-load "speedbar"):
10365 Added missing quote.
10367 * semantic-load.el (autoload 'wisent-wy-mode): Removed.
10368 (auto-mode-alist): Removed 'wisent-wy-mode.
10369 Removed senator configuration.
10371 2002-08-11 Eric M. Ludlam <zappo@gnu.org>
10373 * Makefile: Added wisent sub project.
10375 * semantic-load.el, semantic-autogen.el:
10376 Added bovine subdirectory to loadpath.
10378 * Project.ede: Moved piles of sources into the bovine directory.
10380 * Makefile: Added sub projects "bovine/" and "/wisent".
10382 * bovine/Makefile: Makefile for the bovinator.
10384 * bovine/Project.ede: Project file for the bovinator
10386 * wisent/Makefile: Makefile for wisent.
10388 * wisent/Project.ede: Project file for wisent.
10390 * bovine/semantic-make.el, semantic-make.el:
10391 Renamed semantic-make.el to bovine/semantic-make.el
10393 * bovine/semantic-skel.el, semantic-skel.el:
10394 Renamed semantic-skel.el to bovine/semantic-skel.el
10396 * bovine/semantic-scm.el, semantic-scm.el:
10397 Renamed semantic-scm.el to bovine/semantic-scm.el
10399 * bovine/semantic-java.el, semantic-java.el:
10400 Renamed semantic-java.el to bovine/semantic-java.el
10402 * bovine/semantic-c.el, semantic-c.el:
10403 Renamed semantic-c.el to bovine/semantic-c.el
10405 * bovine/semantic-el.el, semantic-el.el:
10406 Renamed semantic-el.el to bovine/semantic-el.el
10408 * bovine/semantic-bnf.el, semantic-bnf.el:
10409 Renamed semantic-bnf.el to bovine/semantic-bnf.el
10411 * bovine/skeleton.bnf, skeleton.bnf:
10412 Renamed skeleton.bnf to bovine/skeleton.bnf
10414 * bovine/scheme.bnf, scheme.bnf:
10415 Renamed scheme.bnf to bovine/scheme.bnf
10417 * bovine/make.bnf, make.bnf: Renamed make.bnf to bovine/make.bnf
10419 * bovine/java.bnf, java.bnf: Renamed java.bnf to bovine/java.bnf
10421 * bovine/c.bnf, c.bnf: Renamed c.bnf to bovine/c.bnf
10423 * c.bnf: Removed flex extensions.
10425 * bovine/semantic-bovine.el, semantic-bovine.el:
10426 Renamed semantic-bovine.el to bovine/semantic-bovine.el
10428 * semantic-load.el: Removed .bnf mode setup.
10429 Removed speedbar .bnf and .wy setup.
10430 Add wisent directoy to load path.
10431 Removed incremental parser code.
10433 * semantic-edit.el:
10434 Added autoload cookies for setting up the new incremental parser.
10436 * semantic-cb.el: Require semanticdb, and semanticdb-search
10438 * semantic-bnf.el: Autoload cookie for mode setup.
10439 Autoload cookie for new speedbar setup.
10441 * semantic-analyze.el: Also require semanticdb-search.
10443 * semantic-autogen.el (semantic-hack-autoloads): Added wisent.
10445 2002-08-11 David Ponce <david@dponce.com>
10447 * wisent/wisent-wy.wy (setupcode):
10448 Use default value of `wisent-lexer-function'.
10450 * wisent/wisent-wy.el (wisent-wy-lexer): Use new wisent-lex API.
10451 (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10452 (wisent-wy-setup-semantic): Re-generated.
10453 (wisent-wy-setupcode)
10454 (wisent-wy-tokentable-value): Generate new wisent-lex API.
10456 * wisent/wisent-python.wy (setupcode):
10457 Use `wisent-flex' as `wisent-lexer-function'.
10459 * wisent/wisent-python.el: (string-indentation, wisent-python-lex-bol)
10460 (wisent-python-lex-open-paren, wisent-python-lex-close-paren)
10461 (wisent-python-lex-newline, wisent-python-lex-backslash)
10462 (wisent-python-raw-string-handler): Use new wisent-lex API.
10464 (wisent-python-parser-tables, wisent-python-keywords)
10465 (wisent-python-tokens, wisent-python-default-setup): Re-generated.
10467 * wisent/wisent-java.wy (setupcode):
10468 Use default value of `wisent-lexer-function'.
10470 * wisent/wisent-java.el:
10471 (wisent-java-parser-tables, wisent-java-keywords)
10472 (wisent-java-tokens, wisent-java-default-setup): Re-generated.
10473 (wisent-java-get-local-variables): Use `semantic-parse-region'.
10475 * wisent/wisent-java-tags.wy (setupcode):
10476 Use default value of `wisent-lexer-function'.
10478 * wisent/wisent-java-tags.el:
10479 (wisent-java-parser-tables, wisent-java-keywords)
10480 (wisent-java-tokens, wisent-java-default-setup): Re-generated.
10481 (wisent-java-get-local-variables): Tell `semantic-parse-region' to
10484 * wisent/wisent-java-lex.el (wisent-java-tags-lexer, wisent-java-lexer):
10485 Use new wisent-lex API.
10487 * wisent/wisent-cim.el:
10488 (wisent-cim-automaton, wisent-cim-keywords, wisent-cim-tokens)
10489 (wisent-cim-default-setup): Re-generated.
10491 * wisent/wisent-calc.wy (setupcode): Use the new semantic-lex API.
10493 * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
10494 (wisent-calc-setup-parser): Re-generated.
10495 (wisent-calc): Use new wisent-lex API.
10497 * wisent/wisent-bovine.el:
10498 New wisent-lex API that replaces the old wisent-flex one.
10500 (wisent-flex-istream): Renamed `wisent-lex-istream'.
10501 (wisent-flex-tokens-obarray): Renamed `wisent-lex-tokens-obarray'.
10502 (wisent-lexer-lookahead): Renamed `wisent-lex-lookahead'.
10503 (wisent-flex-token-rules): Renamed `wisent-lex-token-rules'.
10504 (wisent-flex-token-get): Renamed `wisent-lex-token-get'.
10505 (wisent-flex-add-token): Renamed `wisent-lex-add-token'.
10506 (wisent-flex-put-default): Renamed `wisent-lex-put-default'.
10507 (wisent-flex-make-token-table): Renamed
10508 `wisent-lex-make-token-table'.
10509 (wisent-flex-match): Renamed `wisent-lex-match'.
10510 (wisent-flex-punctuation): Renamed `wisent-lex-punctuation'.
10511 (wisent-flex-eoi): Renamed `wisent-lex-eoi'.
10513 (define-wisent-lexer, wisent-flex, wisent-lex)
10514 (wisent-parse-stream): Use new wisent-lex API.
10516 (wisent-error-function): Moved.
10517 (wisent-lexer-function): Ditto. Default to `wisent-lex'.
10518 (wisent-collect-unmatched-syntax): Naming. Doc string.
10519 (wisent-parse-region): New function.
10521 * wisent/wisent-awk.el:
10522 (wisent-awk-automaton, wisent-awk-keywords, wisent-awk-tokens)
10523 (wisent-awk-setup-parser): Re-generated.
10525 * semantic-edit.el (semantic-edits-incremental-parser):
10526 Don't mark parse tree up to date
10527 if incremental parse failed.
10529 2002-08-11 Eric M. Ludlam <zappo@gnu.org>
10531 * semanticdb-search.el (semanticdb-collect-find-results):
10532 Fixed compile warnings.
10534 * Makefile: Updated project with new semanticdb files.
10536 * semanticdb.sh: Script for building semantic cache files.
10538 * semanticdb-mk.el: Script for buinding semantic cache files.
10540 * semanticdb-search.el (semanticdb-file-stream):
10541 Moved back to semanticdb.el.
10544 (semanticdb-default-file-name, semanticdb-default-save-directory)
10545 (semanticdb-persistent-path, semanticdb-save-database-hooks):
10546 Moved to semanticdb-file.el
10547 (semanticdb-project-database): No longer persistent.
10548 (semanticdb-new-database-class): New variable.
10549 (semanticdb-create-database): Now a static method.
10550 (semanticdb-file-loaded-p, semanticdb-get-database)
10551 (semanticdb-load-database, semanticdb-live-p)
10552 (semanticdb-save-db, semanticdb-save-all-db)
10553 (semanticdb-full-filename, semanticdb-live-p)
10554 (object-write): Moved to semanticdb-file.el
10555 (semanticdb-create-table): New method.
10556 (semanticdb-write-directory-p, semanticdb-cache-filename)
10557 Moved to semanticdb-file.el
10558 (semanticdb-semantic-init-hook-fcn):
10559 Use new static method to create database from variable.
10560 Use new method for creating new tables.
10561 (semanticdb-find-*): Moved to semanticdb-search.el
10563 * semanticdb-search.el: Moved from semanticdb.
10564 (semanticdb-collect-find-results): New fcn
10565 (semanticdb-find-nonterminal-*): Changed to call above.
10566 (semanticdb-find-nonterminal-*-method): New methods
10567 (semanticdb-find-nonterminal-by-function-method): Used to be
10568 `semanticdb-find-nonterminal-by-function', but for only one database.
10570 * semanticdb-file.el:
10571 Created from semanticdb.el. Most functions unchanged.
10572 (semanticdb-project-database-file): New class
10573 (semanticdb-create-database): New static method.
10574 Fixed bug when no file on disk yet.
10576 2002-08-10 David Ponce <david@dponce.com>
10578 * semantic-java.el, semantic-texi.el:
10579 Moved autoload cookie to the right place.
10581 * semantic.el (semantic-repeat-parse-whole-stream):
10582 Removed unused argument DEPTH.
10583 (semantic-parse-region-default): Updated call.
10585 2002-08-10 Eric M. Ludlam <zappo@gnu.org>
10587 * semantic-autogen.el:
10588 For non-interactive mode, set loadpath nil, find-file-hooks to nil,
10589 and supress file warnings.
10590 (semantic-hack-autoloads): Remove extra save-buffer.
10591 (make-autoload): Support defclass
10593 * Makefile: Makefile for semantic.
10595 * Project.ede (semantic-al.el): Added better dependencies.
10597 2002-08-09 Eric M. Ludlam <zappo@gnu.org>
10599 * semantic-load.el: Load semantic-al.
10600 Removed all auto-loads and mode hook assignments now in semantic-al.
10602 * semantic-edit.el (semantic-edits-incremental-parser):
10603 Added autoload tag.
10604 Removed debug code I said I'd remove.
10606 * semantic-fw.el (define-overload): Added autoload tag.
10608 * semantic-ia-sb.el (semantic-speedbar-analysis): Added autoload tag.
10610 * semantic-texi.el, semantic-make.el, semantic-scm.el, semantic-java.el, semantic-el.el, semantic-c.el:
10611 Add autoload tags to mode hooks
10613 * semantic-bovine.el (semantic-bovinate-stream): Added autoload tag.
10615 * semantic-analyze.el (semantic-analyze-possible-completions):
10618 2002-08-09 David Ponce <david@dponce.com>
10620 * semantic.el (semantic-bovinate-toplevel):
10621 Preserve the unmatched syntax cache
10622 after a full parse.
10624 2002-08-09 Eric M. Ludlam <zappo@gnu.org>
10626 * semantic-autogen.el (autoload): New require
10627 (define-overload): Set `doc-string-elt' as property.
10628 (make-autoload): Taken from Emacs21 autoload.el. Added
10629 `define-overload' to create a function autoload.
10631 2002-08-08 Eric M. Ludlam <zappo@gnu.org>
10633 * Project.ede: Added semantic-autogen to 'init' target.
10634 Added special rules to build semantic-al.el
10637 * semantic-autogen.el: Fixed to be usable from a Makefile.
10638 (semantic-hack-autoloads): Newline changes. Safe buffer.
10640 * semantic-autogen.el: Generate auto-load files.
10642 2002-08-08 David Ponce <david@dponce.com>
10644 * wisent/wisent-wy.el (wisent-wy-region-placeholder):
10645 Used `$i' instead of `$n'!
10647 * wisent/wisent-java-tags.el (wisent-java-get-local-variables):
10648 Use `semantic-parse-region'.
10650 * semantic.el (semantic-version): Moved to "2.0alpha4".
10652 (semantic-toplevel-bovine-cache-check)
10653 (semantic-toplevel-bovine-force-reparse)
10654 (semantic-bovine-toplevel-full-reparse-needed-p)
10655 (semantic-bovinate-toplevel-override): Removed.
10657 (semantic-parse-tree-state)
10658 (semantic-parse-tree-set-needs-update)
10659 (semantic-parse-tree-needs-update-p)
10660 (semantic-parse-tree-set-needs-rebuild)
10661 (semantic-parse-tree-needs-rebuild-p)
10662 (semantic-parse-tree-set-up-to-date)
10663 (semantic-parse-tree-up-to-date-p): New parse tree state API.
10665 (semantic-bovine-umatched-syntax-refresh-needed-p)
10666 (semantic-new-buffer-fcn, semantic-rebovinate-quickly-hook)
10667 (semantic-clear-toplevel-cache)
10668 (semantic-set-toplevel-bovine-cache): Use it.
10669 (semantic-bovinate-toplevel): Ditto. Removed
10670 `semantic-bovinate-toplevel-override' stuff.
10672 (semantic-active-p): Inlined.
10673 (semantic-bovinate-unmatched-syntax): Removed CHECKCACHE argument.
10674 (semantic-bovine-umatched-syntax-refresh-needed-p): Ditto. Use new
10675 parse tree state API.
10677 (semantic-parse-stream, semantic-parse-changes)
10678 (semantic-parse-region, semantic-parse-region-default): Moved to
10679 eliminate byte-compiler warnings.
10681 (require 'semantic-edit): Removed.
10683 * semantic-util-modes.el: (semantic-show-parser-state-auto-marker)
10684 (semantic-show-parser-state-marker): Use new parse tree state API.
10686 * semantic-texi.el (semantic-texi-bovinate-toplevel): Renamed to...
10687 (semantic-texi-parse-region): New. Use parser plug-in API.
10688 (semantic-texi-parse-changes): New.
10689 (semantic-default-texi-setup): Install them as a parser plug-in.
10691 * semantic-load.el: (semantic-edits-flush-changes)
10692 (semantic-edits-change-function-handle-changes): auto loaded.
10694 * semantic-edit.el: (semantic-edits-need-reparse)
10695 (semantic-bovine-toplevel-partial-reparse-needed-p): Removed.
10696 (semantic-edits-change-function-handle-changes)
10697 (semantic-edits-flush-changes): Added autoload cookie.
10699 (semantic-edits-change-function-handle-changes)
10700 (semantic-edits-incremental-fail)
10701 (semantic-edits-incremental-parser)
10702 (semantic-rebovinate-token)
10703 (semantic-cleanup-dirty-tokens)
10704 (semantic-change-function-mark-dirty): Use new parse tree state API.
10706 2002-08-07 David Ponce <david@dponce.com>
10708 * wisent/wisent-wy.el:
10709 (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10710 (wisent-wy-setup-semantic): Re-generated.
10712 (wisent-wy-EXPANDTHING): Removed.
10713 (wisent-wy-region-placeholder): New function.
10714 (wisent-wy-EXPAND, wisent-wy-EXPANDFULL): Use it.
10716 (wisent-wy-setupcode): Updated to use new Semantic parse API.
10718 * wisent/wisent-python.el:
10719 (wisent-python-parser-tables, wisent-python-keywords)
10720 (wisent-python-tokens, wisent-python-default-setup): Re-generated.
10722 * wisent/wisent-java-tags.el, wisent/wisent-java.el:
10723 (wisent-java-parser-tables, wisent-java-keywords, wisent-java-tokens)
10724 (wisent-java-default-setup): Re-generated.
10726 * wisent/wisent-comp.el (wisent-parse-grammar): Doc string fix.
10728 * wisent/wisent-cim.el:
10729 (wisent-cim-automaton, wisent-cim-keywords, wisent-cim-tokens)
10730 (wisent-cim-default-setup): Re-generated.
10732 * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
10733 (wisent-calc-setup-parser): Re-generated.
10735 * wisent/wisent-bovine.el (wisent-bovinate-nonterminal): Renamed to...
10736 (wisent-parse-stream): New.
10738 * wisent/wisent-awk.el:
10739 (wisent-awk-automaton, wisent-awk-keywords, wisent-awk-tokens)
10740 (wisent-awk-setup-parser): Re-generated.
10742 * semantic.el (semantic-bovinate-parser-name): Renamed to...
10743 (semantic-parser-name): New.
10744 (semantic-bovination-working-message): Use it.
10745 (semantic-parse-region): Replace `semantic-bovinate-region'.
10746 (semantic-parse-stream): Replace `semantic-bovinate-nonterminal'.
10747 (semantic-parse-changes): Replace
10748 `semantic-bovinate-incremental-parser'.
10749 (semantic-parse-region-default): Replace
10750 `semantic-bovinate-region-default'.
10751 (semantic-repeat-parse-whole-stream): Replace
10752 `semantic-bovinate-nonterminals'.
10753 (semantic-bovinate-toplevel, semantic-bovinate-region-until-error)
10754 (semantic-bovinate-from-nonterminal)
10755 (semantic-bovinate-from-nonterminal-full): Use new parse API.
10757 * semantic-load.el:
10758 (semantic-parse-stream-default, semantic-parse-changes-default)
10759 (semantic-parse-region-default): Added autoloads.
10761 * semantic-el.el (semantic-elisp-use-read):
10762 Use `semantic-parse-region'.
10764 * semantic-edit.el (semantic-bovinate-incremental-parser): Removed.
10765 (semantic-bovinate-incremental-parser-default): Renamed to...
10766 (semantic-edits-incremental-parser): New. Use `semantic-parse-region'.
10767 (semantic-parse-changes-default): Alias of it.
10768 (semantic-rebovinate-token): Use `semantic-parse-stream'.
10770 * semantic-bovine.el (semantic-bovinate-region-default): Removed.
10771 (semantic-bovinate-nonterminal-default): Renamed to...
10772 (semantic-bovinate-stream): New.
10773 (semantic-parse-stream-default): Alias of it.
10775 2002-08-05 David Ponce <david@dponce.com>
10777 * semantic-edit.el (semantic-bovinate-incremental-parser-default):
10778 ensure that content of
10779 the `changes' variable will be processed entirely by resetting the
10780 `parse-start' value after processing a change group.
10782 2002-08-04 David Ponce <david@dponce.com>
10784 * wisent/wisent-wy.el (wisent-wy-EXPAND): Reverted last change.
10786 * wisent/wisent-wy.el:
10787 (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10788 (wisent-wy-setup-semantic): Re-generated.
10789 (wisent-wy-EXPANDTHING): New argument DEPTH.
10791 (wisent-wy-EXPANDFULL): Generate call to `semantic-bovinate-region'.
10793 * wisent/wisent-python.el:
10794 (wisent-python-parser-tables, wisent-python-keywords)
10795 (wisent-python-tokens, wisent-python-default-setup): Re-generated.
10797 * wisent/wisent-java-tags.el:
10798 (wisent-java-parser-tables, wisent-java-keywords, wisent-java-tokens)
10799 (wisent-java-default-setup): Re-generated.
10800 (wisent-java-get-local-variables): Use `semantic-bovinate-region'.
10802 * semantic.el (semantic-bovinate-from-nonterminal-full):
10803 Use depth 1 by default.
10805 * wisent/wisent-awk.bnf, wisent/wisent-calc.bnf, wisent/wisent-cim.bnf, wisent/wisent-java-tags.bnf, wisent/wisent-java.bnf:
10808 * wisent/wisent-flex.el: Deleted. Code moved to wisent-bovine.el.
10810 * wisent/wisent-wy.el:
10811 (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10812 (wisent-wy-setup-semantic): Re-generated.
10813 (wisent-wy-setupcode): Install `wisent-bovinate-nonterminal' as
10814 'bovinate-nonterminal override. No more use the buffer local variable
10815 `semantic-bovinate-parser'.
10817 * wisent/wisent-java-tags.el, wisent/wisent-java.el:
10818 (wisent-java-parser-tables, wisent-java-keywords, wisent-java-tokens)
10819 (wisent-java-default-setup): Re-generated.
10821 * wisent/wisent-java-lex.el (require 'wisent-bovine):
10822 Instead of 'wisent-flex.
10824 * wisent/wisent-cim.el:
10825 (wisent-cim-automaton, wisent-cim-keywords, wisent-cim-tokens)
10826 (wisent-cim-default-setup): Re-generated.
10828 * wisent/wisent-calc.el: (wisent-calc-automaton, wisent-calc-tokens)
10829 (wisent-calc-setup-parser): Re-generated.
10831 * wisent/wisent-bovine.el: Merged code from wisent-flex.el.
10832 (wisent-bovinate-nonterminal): Obeys new parser plug-in API.
10834 * wisent/wisent-awk.el:
10835 (wisent-awk-automaton, wisent-awk-keywords, wisent-awk-tokens)
10836 (wisent-awk-setup-parser): Re-generated.
10838 2002-08-04 Eric M. Ludlam <zappo@gnu.org>
10840 * semantic-edit.el (semantic-bovinate-incremental-parser-default):
10844 Added `semantic-lex.el', `semantic-bovine.el', `semantic-edit.el', and
10845 'semantic-fw.el' to the `semantic' target.
10847 * semantic-el.el (semantic-elisp-use-read): Use `bovinate-region'.
10848 (semantic-emacs-lisp-lexer): Support `define-overload', `define-lex',
10849 and `define-mode-overload-implementation'.
10850 (semantic-emacs-lisp-lexer): New lexer.
10851 (semantic-elisp-find-dependency, semantic-elisp-find-documentation)
10852 (semantic-insert-foreign-token, semantic-nonterminal-protection):
10853 (semantic-elisp-nonterminal-static): Create using
10854 `define-mode-overload-implementation'.
10855 (semantic-default-elisp-setup): Emptied out all steqs into toplevel
10856 using `setq-major-mode'.
10858 * semantic-util-modes.el (semantic-highlight-edits-face):
10859 Change color to darker gray for dark background
10861 * semantic-util.el (semantic-map-buffers): Moved to semantic-fw.el
10863 * semantic-load.el: Imported some autoloads from semantic.el
10865 * semantic-lex.el (semantic-fw): New require.
10866 (semantic-lex-keyword-p): Check for keyword obarray before reference.
10867 (define-lex): Added debug information.
10868 (semantic-lex): Create as an overload.
10870 * semantic-edit.el (semantic-bovinate-incremental-parser):
10872 (semantic-bovinate-incremental-parser-default): Renamed.
10873 Added debugging if statements.
10874 (semantic-rebovinate-token): Renamed for `lex', not `flex'.
10877 (semantic-flex-c-extensions, semantic-flex-c-include-system)
10878 (semantic-flex-c-if-0, semantic-flex-c-if): Deleted.
10879 (semantic-default-c-setup): Do not assign `semantic-flex-extensions'.
10881 * semantic-bovine.el (semantic-bovinate-region-default):
10882 Added needed new arguments.
10883 (semantic-bovinate-nonterminal-default): Removed TABLE argument.
10885 * semantic.el (semantic-bovinate-parser): Deleted
10886 (semantic-bovinate-incremental-parser): Deleted.
10887 (semantic-new-buffer-fcn): Assign mode-local variables.
10888 (semantic-set-toplevel-bovine-cache): Moved.
10889 (semantic-bovinate-toplevel): Use new override fcn instead of old symbol.
10890 (semantic-bovinate-region): Added arguments depth and returnonerror.
10891 (semantic-bovinate-nonterminal): Moved & converted to an overload fcn.
10892 (semantic-bovination-active-table): Deleted.
10893 (semantic-bovinate-nonterminals): Use new api to `semantic-bovinate-nonterminal'
10894 (semantic-bovinate-from-nonterminal, semantic-bovinate-from-nonterminal-full):
10895 Now wraps `semantic-bovinate-region'.
10896 (autoloads...): Moved to semantic-load.
10898 * semantic-fw.el (semantic-map-buffers): Moved from semantic.el
10899 (semantic-map-mode-buffers): New fcn
10900 (define-mode-overload-implementation): New macro
10901 (semantic-symbol-value-for-mode, semantic-symbol-value-mode-assign)
10902 (semantic-setq-major-mode, setq-major-mode): New mode local variables API.
10904 2002-08-02 Eric M. Ludlam <zappo@gnu.org>
10906 * semantic-load.el:
10907 Changed bovinate-toplevel autoload to bovinate-region.
10909 * semantic-edit.el (semantic-edits-bovinate-region): Deleted.
10910 (semantic-edits-incremental-parser): Use `semantic-bovinate-region'
10913 * semantic.el (semantic-bovinate-region): New overload fcn.
10914 (semantic-bovinate-toplevel): Use `semantic-bovinate-region' for
10915 toplevel parsing. Do not use lex.
10916 Left comments behind describing problems with unmatched syntax that
10919 * semantic-bovine.el (semantic-bovinate-region-default): New function.
10921 * working.el (working-status, working-dynamic-status):
10922 Made robust when called
10923 outside of working forms.
10925 2002-07-31 David Ponce <david@dponce.com>
10927 * semantic.el (semantic-bovinate-toplevel):
10928 Removed working stuff around
10929 incremental re-parse.
10931 * semantic-util-modes.el (semantic-auto-parse-bovinate):
10932 Disable the auto parse timer while
10934 (semantic-auto-parse-kill-timer): New function.
10936 * semantic-fw.el (semantic-current-overrides):
10937 Now if optional argument MODE is
10938 specified return the override table of that mode or its parents.
10939 (semantic-install-function-overrides): New mode override table
10940 inherits from mode parents.
10941 (semantic-fetch-overload): Removed optional argument MODE.
10943 * semantic-edit.el (semantic-edits-bovinate-region):
10944 Working stuff moved from
10945 `semantic-bovinate-toplevel'.
10946 (semantic-edits-incremental-parser): Trigger full re-parse on error.
10948 2002-07-30 David Ponce <david@dponce.com>
10950 * wisent/wisent-wy.wy (setupcode): No more install overrides here.
10952 * wisent/wisent-wy.el:
10953 (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
10954 (wisent-wy-setup-semantic): Re-generated.
10955 (semantic-install-function-overrides): Install in `wisent-wy-mode'.
10956 (add-to-list 'auto-mode-alist)
10957 (speedbar-add-supported-extension): Removed. In semantic-load.el.
10959 * wisent/wisent-java-tags.el, wisent/wisent-java.el:
10960 (wisent-java-parser-tables, wisent-java-keywords)
10961 (wisent-java-tokens, wisent-java-default-setup): Re-generated.
10962 (semantic-install-function-overrides): Install in `java-mode'.
10964 * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setupcode):
10965 No more install overrides here.
10967 * semantic-java.el (semantic-default-java-setup):
10968 No more install overrides here.
10969 (semantic-install-function-overrides): Install in `java-mode'.
10971 * semantic-fw.el (semantic-install-function-overrides):
10972 set table with existing mode
10975 * senator.el (senator-minor-mode-setup): Use
10976 `semantic-after-toplevel-cache-change-hook' and
10977 `semantic-after-partial-cache-change-hook' instead of
10978 `semantic--before-toplevel-cache-flush-hook' and
10979 `semantic-clean-token-hooks'.
10981 2002-07-29 David Ponce <david@dponce.com>
10984 (senator-register-mode-menu-entry ["Highlight Dirty Tokens"]):
10986 (senator-register-mode-menu-entry ["Highlight changes"])
10987 (senator-register-mode-menu-entry ["Show parser state"]): Added.
10989 * semantic.el (semantic-bovinate-toplevel):
10990 Added missing `working-status-form'
10991 around incremental parse.
10992 (semantic-bovinate-from-nonterminal)
10993 (semantic-bovinate-from-nonterminal-full)
10994 (semantic-bovinate-region-until-error): Inlined to avoid an
10995 unnecessary extra call.
10997 * semantic-util.el:
10998 (semantic-name-nonterminal, semantic-abbreviate-nonterminal)
10999 (semantic-summarize-nonterminal, semantic-prototype-nonterminal)
11000 (semantic-concise-prototype-nonterminal)
11001 (semantic-uml-abbreviate-nonterminal)
11002 (semantic-uml-prototype-nonterminal)
11003 (semantic-uml-concise-prototype-nonterminal)
11004 (semantic-nonterminal-static): Use `define-overload' instead of
11005 `semantic-defoverload'.
11007 (semantic-find-dependency, semantic-find-nonterminal)
11008 (semantic-find-documentation): Put the right property
11009 'semantic-overload.
11011 * semantic-imenu.el (semantic-imenu-flush-fcn, semantic-create-imenu-index):
11013 `semantic-after-toplevel-cache-change-hook' and
11014 `semantic-after-partial-cache-change-hook' instead of
11015 `semantic--before-toplevel-cache-flush-hook' and
11016 `semantic-clean-token-hooks'.
11018 * semantic-fw.el (semantic-current-overrides, semantic-new-overrides):
11020 (semantic-install-function-overrides): Use them. New optional
11021 argument MODE to install into.
11022 (semantic-fetch-overload): Use `semantic-current-overrides'.
11023 (semantic-defoverload): Renamed to...
11024 (define-overload): New macro.
11026 * semantic-edit.el (semantic-edits-bovinate-region):
11027 Added missing parameter
11029 (semantic-edits-incremental-parser): Set reparse-symbol.
11030 (semantic-edits-splice-remove): Fixed typo.
11032 2002-07-29 Eric M. Ludlam <zappo@gnu.org>
11034 * semantic-util-modes.el: Require semantic.
11035 (global-semantic-highlight-edits-mode & friends): New mode.
11036 (semantic-auto-parse-no-working-message): default nil
11037 (semantic-auto-parse-working-in-modeline-flag): default nil.
11038 (semantic-auto-parse-mode-hook): doc fix
11039 (semantic-before-auto-parse-hooks, semantic-after-auto-parse-hooks):
11041 (semantic-auto-parse-bovinate): Use new hooks.
11042 (global-semantic-show-parser-state-mode & friends): New mode.
11044 * semantic-load.el: Use new incremental parser by default.
11045 Turn on `global-semantic-highlight-edits-mode' for everything-on
11046 Turn on `global-semantic-show-parser-state-mode' for useful things.
11048 * semantic.el (semantic-bovinate-incremental-parser): New variable.
11049 (bovinate): Negative clear arg does not display tokens.
11050 (semantic-bovinate-toplevel): Use `semantic-bovinate-incremental-parser'.
11051 Move all dirty token references to semantic-edit.el
11052 (semantic-bovinate-nonterminal, semantic-bovinate-nonterminals): Doc fix
11054 * semantic-edit.el (semantic-edits-need-reparse): New state variable
11055 (semantic-change-hooks): Moved
11056 (semantic-reparse-needed-change-hook, semantic-no-reparse-needed-change-hook)
11057 (semantic-edits-new-change-hooks, semantic-edits-delete-change-hooks)
11058 (semantic-edits-move-change-hooks, semantic-edits-reparse-change-hooks)
11059 (semantic-edits-incrementarl-reparse-failed-hooks): New hooks
11060 (semantic-bovine-toplevel-partial-reparse-needed-p): Updated to
11061 handle old and new reparse mechanisms.
11062 (semantic-changes-in-region, semantic-edits-change-function-handle-changes)
11063 (semantic-edits-flush-change, semantic-edits-flush-changes) New
11064 functions for handling small changes.
11065 (semantic-edits-bovinate-region): New parser entry.
11066 (semantic-edits-change-in-one-token-p): New fcn. May be deleted later.
11067 (semantic-edits-os, semantic-edits-oe): Temporary functions.
11068 (semantic-edits-change-leaf-token, semantic-edits-change-between-tokens)
11069 (semantic-edits-change-over-tokens): New change analyzers
11070 (semantic-edits-incremental-fail): New function
11071 (semantic-edits-incremental-parser): New incremental parser function.
11072 (semantic-edits-splice-remove, semantic-edits-splice-insert)
11073 (semantic-edits-splice-replace): New cache splicing routines.
11074 (semantic-rebovinate-token): Use `semantic-edits-incremental-fail'.
11075 (semantic-cleanup-dirty-tokens): New fcn
11077 * semantic-util.el (semantic-find-nonterminal-by-overlay-prev): Doc fix
11078 (semantic-find-nonterminal-parent-by-overlay): New fcn
11080 * semantic-fw.el (semantic-overlay-properties,semantic-overlay-move):
11082 (semantic-mode-line-update): New alias.
11084 2002-07-26 David Ponce <david@dponce.com>
11086 * wisent/wisent.el: (wisent-parse-error-function, wisent-lexer)
11087 ($region, $nterm): Moved definitions.
11088 (wisent-push): Removed.
11090 * wisent/wisent-comp.el (semantic-actions): New local context.
11091 (wisent-semantic-action): Set unused entries to nil. In semantic
11092 action lambda expression, removed call to `wisent-push', use
11093 un-interned symbols for local variables.
11094 (wisent-semantic-actions): Use local context `semantic-actions'.
11096 2002-07-21 Eric M. Ludlam <zappo@gnu.org>
11098 * semanticdb.el (semanticdb-find-nonterminal-by-function):
11099 Added more references in
11102 * semantic-el.el (semantic-elisp-nonterminal-static): Fix doc.
11105 (semantic-bovine-toplevel, semantic-bovinate-nonterminals)
11106 (semantic-bovinate-nonterminal): Use `semantic-lex-depth'.
11107 (semantic-bovination-active-table): New variable.
11108 (semantic-bovinate-nonterminal): Set new variable.
11109 (semantic-bovinate-from-nonterminal): Use above variable.
11111 * semantic-util.el (semantic-override-table, semantic-install-function-overrides, semantic-fetch-overload):
11112 Moved to semantic-fw.el
11113 (semantic-colorize-text): Check for font-lock.
11114 (semantic-name-nonterminal, semantic-abbreviate-nonterminal)
11115 (semantic-summerize-nonterminal, semantic-prototype-nonterminal)
11116 (semantic-concise-prototype-nonterminal)
11117 (semantic-uml-abbreviate-nonterminal)
11118 (semantic-uml-prototype-nonterminal)
11119 (semantic-uml-concise-prototype-nonterminal): Use new
11120 `semantic-defoverload' macro to create.
11121 (semantic-find-dependency, semantic-find-nonterminal)
11122 (semantic-find-documentation): Put 'semantic-defoverload' on them.
11123 (semantic-nonterminal-static): Create with `semantic-defoverload'.
11125 * semantic.el (semantic-overlay-*): Moved aliases to semantic-fw.el.
11126 (semantic-edebug, semantic-dump-parse): Moved closer to parsing routines.
11127 (semantic-bovinate-parser, semantic-bovinate-parser-name): Moved
11129 (semantic-tfe-*, semantic-token-*): Moved to semantic-fw.el
11132 Moved compatibility and simple functionality here from semantic.el
11134 2002-07-20 David Ponce <david@dponce.com>
11136 * wisent/wisent-java.wy (array_creation_expression):
11137 Added missing rules.
11139 * wisent/wisent-java.el:
11140 (wisent-java-parser-tables, wisent-java-keywords)
11141 (wisent-java-tokens, wisent-java-default-setup): Re-generated.
11143 * wisent/wisent-flex.el (require 'wisent-bovine): Instead of 'semantic.
11144 (wisent-flex-punctuation): Moved.
11145 (define-wisent-lexer): New macro.
11146 (wisent-flex): Defined with `define-wisent-lexer'. Use semantic-lex
11147 API instead of semantic-flex one.
11148 (wisent-lex): Ditto.
11150 * wisent/wisent-bovine.el (provide 'wisent-bovine): Moved at beginning.
11151 (wisent-cooked-token): Made a macro.
11152 (wisent-lexer-wrapper): Removed.
11153 (wisent-bovinate-nonterminal): Use `wisent-lexer-function' instead of
11154 `wisent-lexer-wrapper'.
11156 * semantic.el (semantic-bovinate-parser): Set default value to
11157 `semantic-bovinate-nonterminal-default'.
11158 (semantic-bovinate-nonterminal): Moved, simplified & inlined.
11159 (semantic-bovinate-nonterminals): Simplified working percent
11162 * semantic-lex.el (semantic-lex-syntax-table): New variable.
11163 (semantic-lex-init): Moved.
11164 (semantic-lex): Ditto. Simplified & inlined.
11165 (semantic-lex-one-token): Simplified.
11166 (define-lex): Use `semantic-lex-syntax-table'.
11167 (semantic-lex-token-bounds): New function.
11168 (semantic-lex-token-start, semantic-lex-token-end): Use it.
11169 (semantic-lex-buffer, semantic-lex-list): New functions.
11170 (semantic-lex-newline-as-whitespace, semantic-lex-whitespace)
11171 (semantic-lex-comments, semantic-lex-comments-as-whitespace): Use
11172 token API instead of `car', `cdr'.
11173 (semantic-flex-buffer): Alias of `semantic-lex-buffer'.
11174 (semantic-flex-list): Alias of `semantic-lex-list'.
11176 2002-07-17 David Ponce <david@dponce.com>
11178 * semantic-java.el: Reorganized code.
11179 (semantic-java-lexer): New function.
11180 (semantic-default-java-setup): Re-generated.
11182 * java.bnf (setupcode): Use new Semantic 2.x lexical analysis API.
11184 * wisent/wisent-wy.el (require 'semantic-lex): Removed. Not necessary.
11185 (wisent-wy-lex-symbol): Use `semantic-lex-keyword-p' instead of
11186 `semantic-flex-keyword-p'.
11187 (wisent-wy-lex-punctuation): Removed.
11188 (wisent-wy-lexer): Use `wisent-flex-punctuation' instead of
11189 `wisent-wy-lex-punctuation'.
11190 (wisent-wy-keywordtable-value): Use `semantic-lex-make-keyword-table'
11191 instead of `semantic-flex-make-keyword-table'.
11193 * wisent/wisent-java-lex.el (require 'semantic-lex):
11194 Removed. Not necessary.
11195 (wisent-java-lex-symbol, wisent-java-lex-symbol2): Use
11196 `semantic-lex-keyword-p' instead of `semantic-flex-keyword-p'.
11197 (wisent-java-lex-punctuation): Removed.
11198 (wisent-java-tags-lexer, wisent-java-lexer): Use
11199 `wisent-flex-punctuation' instead of `wisent-java-lex-punctuation'.
11201 * wisent/wisent-flex.el (wisent-flex-punctuation): New macro.
11202 (wisent-lex): Use `semantic-lex-token-text' instead of
11203 `semantic-flex-text'.
11205 2002-07-16 David Ponce <david@dponce.com>
11207 * wisent/wisent-wy.el (require 'semantic-lex): Added.
11208 (wisent-wy-c-char-re): Renamed to...
11209 (wisent-wy-lex-c-char-re): New constant.
11210 (wisent-wy-item-value, wisent-wy-tokens)
11211 (wisent-wy-mode-keywords-1): Use it.
11212 (wisent-wy-flex-extensions, wisent-wy-flex-char): Removed.
11213 (wisent-wy-lex-symbol, wisent-wy-lex-number, wisent-wy-lex-string)
11214 (wisent-wy-lex-char, wisent-wy-lex-punctuation)
11215 (wisent-wy-lex-blocks): New macros.
11216 (wisent-wy-lexer, wisent-wy-lex-buffer): New functions.
11217 (wisent-wy-automaton, wisent-wy-keywords, wisent-wy-tokens)
11218 (wisent-wy-setup-semantic): Re-generated.
11220 * wisent/wisent-wy.wy (setupcode):
11221 Setup new Semantic lexical analysis tools.
11223 * wisent/wisent-java.el (require 'wisent-java-lex): Added.
11224 (wisent-java-parser-tables, wisent-java-keywords)
11225 (wisent-java-tokens, wisent-java-default-setup): Re-generated.
11227 * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setupcode):
11228 Setup new Semantic lexical analysis tools.
11230 * wisent/wisent-java-tags.el (require 'wisent-java-lex): Added.
11231 (wisent-java-expand-nonterminal): Moved. No more needed at
11233 (wisent-java-parser-tables, wisent-java-keywords)
11234 (wisent-java-tokens, wisent-java-default-setup): Re-generated.
11236 * wisent/wisent-java-lex.el: Wisent Java Lexical Analyzers.
11238 * semantic-lex.el (define-lex-block-analyzer): New macro.
11240 * semantic-load.el (autoload): `define-lex-block-analyzer'.
11242 2002-07-15 David Ponce <david@dponce.com>
11244 * wisent/wisent-flex.el (wisent-lex): New function.
11246 * semantic-lex.el (with-syntax-table): Moved.
11247 (semantic-lex-make-keyword-table, semantic-lex-keyword-p)
11248 (semantic-lex-keyword-put, semantic-lex-keyword-get)
11249 (semantic-lex-map-keywords, semantic-lex-keywords): New functions.
11250 (semantic-lex-analyzer): Default to `semantic-flex'. buffer-local
11251 when set in any fashion.
11252 (semantic-lex-depth): Fixed `make-variable-buffer-local'.
11253 (define-lex): Use value of `semantic-lex-depth' as the default depth
11254 if it is not specified.
11255 (semantic-lex-token-class, semantic-lex-token-start)
11256 (semantic-lex-token-end, semantic-lex-token-text): New functions.
11257 (semantic-lex-symbol-or-keyword): Use `semantic-lex-keyword-p'
11258 instead of `semantic-flex-keyword-p'.
11260 Compatibility with Semantic 1.x API.
11262 (semantic-flex-start, semantic-flex-end, semantic-flex-text)
11263 (semantic-flex-make-keyword-table, semantic-flex-keyword-p)
11264 (semantic-flex-keyword-put, semantic-flex-keyword-get)
11265 (semantic-flex-map-keywords, semantic-flex-keywords): Aliased to
11266 their counterparts in 2.x API.
11267 (semantic-flex-keywords-obarray, semantic-flex-tokens)
11268 (semantic-flex-unterminated-syntax-end-function)
11269 (semantic-flex-extensions, semantic-flex-syntax-modifications)
11270 (semantic-ignore-comments, semantic-flex-enable-newlines)
11271 (semantic-flex-enable-whitespace, semantic-flex-enable-bol)
11272 (semantic-number-expression, semantic-flex-depth, semantic-flex)
11273 (semantic-flex-buffer, semantic-flex-list): Moved from semantic.el.
11274 (semantic-flex-tokens): Default to value of `semantic-lex-tokens'.
11275 (semantic-number-expression): Default to value of
11276 `semantic-lex-number-expression'.
11278 * semantic-util.el (semantic-find-doc-snarf-comment):
11279 Call `semantic-lex' instead of
11282 * semantic-edit.el (semantic-rebovinate-token):
11283 Call `semantic-lex' instead of
11286 * semantic-bovine.el:
11287 (semantic-lambda, semantic-bovinate-from-nonterminal)
11288 (semantic-bovinate-from-nonterminal-full)
11289 (semantic-bovinate-region-until-error): Moved these runtime
11290 functions into semantic.el.
11292 * semantic.el (semantic-version): Updated to 2.0alpha2
11293 (require 'semantic-lex): Added.
11294 (semantic-flex-start, semantic-flex-end, semantic-flex-text)
11295 (semantic-flex-keywords-obarray, semantic-flex-make-keyword-table)
11296 (semantic-flex-keyword-p, semantic-flex-keyword-put)
11297 (semantic-flex-keyword-get, semantic-flex-map-keywords)
11298 (semantic-flex-keywords, semantic-flex-tokens)
11299 (semantic-flex-unterminated-syntax-end-function)
11300 (semantic-flex-extensions, semantic-flex-syntax-modifications)
11301 (semantic-ignore-comments, semantic-flex-enable-newlines)
11302 (semantic-flex-enable-whitespace, semantic-flex-enable-bol)
11303 (semantic-number-expression, semantic-flex-depth, semantic-flex)
11304 (semantic-flex-buffer, semantic-flex-list): Moved to semantic-lex.el.
11305 (semantic-token-docstring, semantic-bovinate-toplevel): Call
11306 `semantic-lex' instead of `semantic-flex'.
11307 (semantic-lambda, semantic-bovinate-from-nonterminal)
11308 (semantic-bovinate-from-nonterminal-full)
11309 (semantic-bovinate-region-until-error): Moved back here from
11310 semantic-bovine.el. Use `semantic-lex' instead of `semantic-flex'.
11312 2002-07-12 Richard Y. Kim <ryk@ap.com>
11315 Added missing quote character for the newline symbol in semantic-lex-newline.
11317 2002-07-11 Richard Y. Kim <ryk@ap.com>
11319 * wisent/wisent-python.el, wisent/wisent-python.wy:
11320 Implemented new lexer for python using the C version in semantic-c.el as a model.
11322 2002-07-10 Eric M. Ludlam <zappo@gnu.org>
11324 * semantic.el (semantic-new-buffer-fcn):
11325 Re-arranged so lex inits first.
11327 * semantic-util.el:
11328 (semantic-change-function-mark-dirty, semantic-find-nearby-dirty-tokens):
11329 (semantic-set-tokens-dirty-in-region): Moved to `semantic-edit.el'.
11331 * semantic-lex.el: Added some autoload cookies.
11332 (semantic-lex): Fix docstring. Fix call to variable.
11333 (with-syntax-table): Compatibility macro moved from semantic.el.
11335 * semantic-c.el: (semantic-lex-c-if-0, semantic-lex-c-if):
11336 semantic-lex-c-include-system): New analyzers
11337 (semantic-c-lexer): New lexical analyzer for C.
11338 (semantic-default-c-setup): Added define of new lexer.
11340 * semantic.el (semantic-version): Update to 2.0 status.
11342 * semantic-load.el: Added default bovinator autoload.
11343 Added lex autoloads.
11345 * semantic-edit.el: The user-editing portion of semantic.el
11347 2002-07-04 Eric M. Ludlam <zappo@gnu.org>
11349 * semantic-load.el (semantic-bovinate-nonterminal, semantic-lex-init):
11352 * semantic-bovine.el: LL parser from semantic.el.
11354 * semantic.el (semantic-flex-depth): Moved near flex.
11355 (semantic-ignore-comments): Moved flex.
11356 (semantic-new-buffer-fcn): Added init for semantic-lex.
11357 (semantic-bovinate-nonterminal): Moved to semantic-bovine
11358 (semantic-bovinate-nonterminal-default & friends): Moved to semantic-bovine.el
11360 * semantic-lex.el (semantic-lex-depth): Imported from semantic.el
11361 (define-lex-analyzer, define-lex-regex-analyzer)
11362 (define-lex-simple-regex-analyzer): Added `eval-and-compile'.
11364 2002-07-03 Eric M. Ludlam <zappo@gnu.org>
11366 * semantic-lex.el: Flexible lexical analysis.
11368 2002-07-03 David Ponce <david@dponce.com>
11370 * semantic-load.el (autoload): `wisent-wy-mode'.
11371 (auto-mode-alist): Added '("\\.wy$" . wisent-wy-mode).
11372 (speedbar-add-supported-extension): Added ".wy".
11374 * wisent/wisent.texi: Some fixes from Eric ;-) + additions.
11376 2002-07-02 David Ponce <david@dponce.com>
11378 * wisent/wisent-flex.el (wisent-flex-eoi-token): Replaced by...
11379 (wisent-flex-eoi): New macro.
11380 (wisent-flex): Use it.
11382 2002-07-02 Richard Y. Kim <ryk@ap.com>
11384 * wisent/wisent-python.el:
11385 Updated with the latest CVS code to get in sync with the recent semantic/wisent changes.
11387 2002-07-01 David Ponce <david@dponce.com>
11389 * wisent/wisent-wy.wy (put_names):
11390 Use `wisent-token' to return a valid Semantic raw token.
11391 (put_values): Ditto.
11393 * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
11394 (wisent-wy-keywords): Ditto.
11395 (wisent-wy-tokens): Ditto.
11396 (wisent-wy-setup-semantic): Ditto.
11398 2002-06-30 David Ponce <david@dponce.com>
11400 * wisent/wisent-java.wy (setupcode):
11401 Removed setup of `wisent-skip-token-hook'.
11403 * wisent/wisent-java.el, wisent/wisent-java-tags.el (wisent-java-parser-tables):
11405 (wisent-java-keywords): Ditto.
11406 (wisent-java-tokens): Ditto.
11407 (wisent-java-default-setup): Ditto.
11409 * wisent/wisent-cim.el (wisent-cim-automaton): Re-generated.
11410 (wisent-cim-keywords): Ditto.
11411 (wisent-cim-tokens): Ditto.
11412 (wisent-cim-default-setup): Ditto.
11414 * wisent/wisent-calc.el (wisent-calc-automaton): Re-generated.
11415 (wisent-calc-tokens): Ditto.
11416 (wisent-calc-setup-parser): Ditto.
11418 * wisent/wisent-awk.el (wisent-awk-automaton): Re-generated.
11419 (wisent-awk-keywords): Ditto.
11420 (wisent-awk-tokens): Ditto.
11421 (wisent-awk-setup-parser): Ditto.
11423 * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
11424 (wisent-wy-keywords): Ditto.
11425 (wisent-wy-tokens): Ditto.
11426 (wisent-wy-setup-semantic): Ditto.
11427 (wisent-wy-setupcode): Set `wisent-discarding-token-functions' as
11428 local hook, to `wisent-collect-unmatched-syntax'.
11430 * wisent/wisent-bovine.el (wisent-bovinate-nonterminal): Use
11431 `wisent-discarding-token-functions' hook instead of calling
11432 `wisent-collect-unmatched-syntax'.
11434 * wisent/wisent.el (wisent-skip-token-hook):
11435 To follow conventions from the Emacs Lisp
11436 Reference Manual for naming abnormal hooks, renamed to...
11437 (wisent-discarding-token-functions): New variable.
11438 (wisent-skip-token): Use it.
11439 (wisent-skip-block): Ditto.
11440 (wisent-parse): Ditto.
11442 * wisent/wisent.texi: no message
11444 2002-06-29 David Ponce <david@dponce.com>
11446 * wisent/wisent-wy.wy (code): Setup `semantic-expand-nonterminal'.
11447 (put_names): Return a single token instead of a list of one token.
11448 (put_values): Ditto.
11449 (rhs): New nonterminal.
11451 (action_opt): Removed.
11452 (elements): Removed.
11453 (element): Removed.
11455 * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
11456 (wisent-wy-keywords): Ditto.
11457 (wisent-wy-tokens): Ditto.
11458 (wisent-wy-setup-semantic): Ditto.
11459 (wisent-wy-EXPAND): Generate call to
11460 `semantic-bovinate-from-nonterminal' instead of
11461 `wisent-bovinate-from-nonterminal'.
11462 (wisent-wy-EXPANDFULL): Generate call to
11463 `semantic-bovinate-from-nonterminal-full' instead of
11464 `wisent-bovinate-from-nonterminal-full'.
11465 (wisent-wy-setupcode): Generate setup of `semantic-bovinate-parser'
11466 and `semantic-bovinate-parser-name' instead of
11467 `semantic-bovinate-toplevel-override'.
11469 * wisent/wisent-java.wy (code): Setup `semantic-expand-nonterminal' and
11470 `wisent-skip-token-hook'.
11471 (goal): Produce a 'goal raw token.
11472 (field_declarations_opt): Ditto.
11473 (package_declaration): Use `wisent-cooked-token' to produce a cooked
11475 (import_declaration): Ditto.
11476 (class_declaration): Ditto.
11477 (field_declaration): Ditto.
11478 (method_declaration): Ditto.
11479 (formal_parameter): Ditto.
11480 (constructor_declaration): Ditto.
11481 (interface_declaration): Ditto.
11482 (abstract_method_declaration): Ditto.
11484 * wisent/wisent-java.el (wisent-java-expand-nonterminal):
11485 Moved. No more needed at compile
11486 time. Expand 'goal tokens too.
11487 (wisent-java-parser-tables): Re-generated.
11488 (wisent-java-keywords): Ditto.
11489 (wisent-java-tokens): Ditto.
11490 (wisent-java-default-setup): Ditto.
11492 * wisent/wisent-java-tags.wy (code):
11493 Setup `semantic-expand-nonterminal'.
11494 (formal_parameters): Skip RPAREN.
11495 (field_declaration): No more call `wisent-java-expand-nonterminal'.
11496 It is now handled via the standard `semantic-expand-nonterminal'
11499 * wisent/wisent-java-tags.el (wisent-java-parser-tables): Re-generated.
11500 (wisent-java-keywords): Ditto.
11501 (wisent-java-default-setup): Ditto.
11502 (wisent-java-get-local-variables): Use
11503 `semantic-bovinate-from-nonterminal-full' instead of
11504 `wisent-bovinate-from-nonterminal-full'. The working stuff is now
11505 handled by the `semantic-get-local-variables' wrapper.
11507 * wisent/wisent-cim.wy (outputfile): Fixed bad file name.
11509 * wisent/wisent-cim.el (wisent-cim-automaton): Re-generated.
11510 (wisent-cim-keywords): Ditto.
11511 (wisent-cim-tokens): Ditto.
11512 (wisent-cim-default-setup): Ditto.
11514 * wisent/wisent-calc.el (wisent-calc-automaton): Re-generated.
11515 (wisent-calc-tokens): Ditto.
11516 (wisent-calc-setup-parser): Ditto.
11518 * wisent/wisent-bovine.el (wisent-token):
11519 No more setup the 'reparse-symbol property. Return a
11520 single raw token instead of a list of one token.
11521 (wisent-cooked-token): New function.
11522 (wisent-lexer-wrapper): No more provide working goodies.
11523 (wisent-bovinate-nonterminal): Push back the `wisent-lookahead' token
11524 into the input stream. Thus, it no more depends on external
11525 initialization of `wisent-lexer-lookahead'. Return one nonterminal
11526 token at a time. Ensure that unmatched tokens are collected here, not
11527 in `semantic-bovinate-nonterminals'.
11528 (wisent-bovinate-nonterminals): Removed.
11529 (wisent-bovinate-toplevel): Ditto.
11530 (wisent-bovinate-toplevel): Ditto.
11531 (wisent-bovinate-from-nonterminal-full): Ditto.
11532 (wisent-bovinate-region-until-error): Ditto.
11533 (semantic-bovinate-toplevel): Advice removed.
11535 * wisent/wisent-awk.el (wisent-awk-automaton): Re-generated.
11536 (wisent-awk-keywords): Ditto.
11537 (wisent-awk-tokens): Ditto.
11538 (wisent-awk-setup-parser): Ditto.
11540 * semantic.el (semantic-bovinate-parser): New variable.
11541 (semantic-bovinate-parser-name): New variable.
11542 (semantic-bovinate-nonterminal): Use it.
11543 (semantic-bovinate-nonterminal-default): New function.
11544 (semantic-bovination-working-message): New function.
11545 (semantic-rebovinate-token): Removed unnecessary reference to
11546 'bovine-toplevel nonterminal.
11547 (semantic-bovinate-toplevel): Ditto. Use
11548 `semantic-bovination-working-message'.
11549 (semantic-cooked-token-p): New function.
11550 (semantic-raw-to-cooked-token): Use it.
11551 (semantic-bovinate-nonterminals): Update the 'reparse-symbol property
11554 * semantic-java.el (semantic-java-get-local-variables):
11555 The working stuff is now handled
11556 by the `semantic-get-local-variables' wrapper.
11558 * semantic-ctxt.el (semantic-get-local-variables):
11559 Handle working stuff here. Removed
11560 unnecessary call to `semantic-deoverlay-list'.
11561 (semantic-get-local-variables-default): The working stuff is now
11562 handled by the `semantic-get-local-variables' wrapper.
11564 2002-06-27 David Ponce <david@dponce.com>
11566 * wisent/wisent.texi: Addition to section "Grammar debugging".
11567 New section "Understanding the automaton".
11568 Reorganized some chapters.
11571 Put @node/@appendix inside an @ignore block, so the file can be
11572 included safely! Thanks to Richard Y. Kim <ryk@dspwiz.com> for this
11575 * wisent/wisent.texi:
11576 Grammar style examples are no more separate nodes.
11578 New chapter on start nonterminals.
11579 Re-included @node/@appendix for GNU Free Documentation License,
11580 before including fdl.texi.
11582 2002-06-26 David Ponce <david@dponce.com>
11584 * wisent/fdl.texi: Moved @node & @appendix lines from wisent.texi.
11586 * wisent/wisent.texi:
11587 Removed NEXT, PREV, and UP links following @node name as well the
11588 following line with @comment. Thanks to Richard Y. Kim
11589 <ryk@dspwiz.com> for the tip!
11591 * wisent/wisent.texi: More fixes, clarifications and additions.
11593 2002-06-25 David Ponce <david@dponce.com>
11595 * wisent/wisent.texi: Still more additions!
11597 2002-06-25 Richard Y. Kim <ryk@ap.com>
11599 * wisent/wisent-python.el, wisent/wisent-python.wy:
11600 Fixed up the flex handlers to handle "raw strings" delimited by
11601 double quotes, single quotes, and triple double quotes.
11603 With this fix, the first 20 or so files in /usr/lib/python2.2
11604 directory can be parsed!
11606 2002-06-24 David Ponce <david@dponce.com>
11608 * wisent/wisent.texi: More additions & fixes.
11610 2002-06-24 Richard Y. Kim <ryk@ap.com>
11612 * wisent/wisent-python.el, wisent/wisent-python.wy:
11613 Added David's support for "raw strings" via the introduction of the raw-string token. This needs to be revisited later to see if we can optimize it.
11615 2002-06-23 David Ponce <david@dponce.com>
11617 * wisent/wisent.texi: More fixes.
11618 Added index entries.
11619 Use the GNU Free Documentation License.
11622 New file. Text of the GNU Free Documentation License.
11624 2002-06-23 Richard Y. Kim <ryk@ap.com>
11626 * wisent/wisent-python.el, wisent/wisent-python.wy:
11627 Added support for \ token which is the explicit line continuation token.
11628 This was done by adding BACKSLASH token along with a handler which gets rid
11629 of 'newline and 'bol tokens that follow the \ token.
11631 2002-06-22 David Ponce <david@dponce.com>
11633 * wisent/wisent.texi: Fixes & more text added.
11635 2002-06-22 Richard Y. Kim <ryk@ap.com>
11637 * wisent/wisent-python.el, wisent/wisent-python.wy:
11638 Fixed 'lambdef' NT by adding the missing 'varargslist_opt'.
11641 Added the content of /usr/lib/python2.2/BaseHTTPServer.py.
11643 * wisent/wisent-python.el, wisent/wisent-python.wy:
11644 Rather than blindly implementing 'varargslist' NT, I refactored the rules to be cleaner. With this change, /usr/lib/python2.2/BaseHTTPServer.py now parses successfully.
11646 * wisent/wisent-python.el, wisent/wisent-python.wy:
11647 Deleted `(read $1)' semantic rule for `one_or_more_string' NT,
11648 because it generates an error for single quoted strings!
11650 * wisent/wisent-python.el:
11651 wisent-python-default-setup is added back to python-mode-hook.
11652 I tried adding this to semantic-init-hooks, but that does
11655 2002-06-21 David Ponce <david@dponce.com>
11657 * wisent/wisent.texi: Major update!
11659 2002-06-21 Richard Y. Kim <ryk@ap.com>
11661 * wisent/wisent-python.el, wisent/wisent-python.wy:
11662 The lexer must not generate NEWLINE, DEDENT, nor INDENT tokens when a
11663 physical line is continued onto the next line. Such line continuation
11664 occurs when (, [, or { appear in a line without matching ), ],
11665 and/or } tokens. This is called implicit line continuation in python.
11667 The implementation relys on wisent's token "handler" feature for
11668 'newline', 'open-paren', and 'close-paren' tokens.
11670 * wisent/wisent-python.el:
11671 Pick up changes recently made in wisent-python.wy.
11673 * wisent/wisent-python.wy:
11674 wisent-python-lexer-indent-stack defaults to '(0) rather than nil.
11676 Reverted 'stmt' NT back to official rule rather than a hack that I had.
11678 Renamed trailer_opt to trailer_zom then fixed the rule accordingly,
11679 i.e., "zero or more" rather than "zero or one". Ditto for exponent_opt
11682 'argument' NT was modified slightly from the official rule in order to
11683 parse function calls with arguments, e.g., f(x). Need to revisit this
11684 later to see why the official rule does not parse 'f(x)'.
11686 * wisent/wisent-python.wy:
11687 Added over 20 new semantic rules to aid in debugging.
11689 * wisent/wisent-python.wy:
11690 Cosmetic indentation change only. Lined up keywords so that they all start in the same column.
11692 2002-06-19 Richard Y. Kim <ryk@ap.com>
11694 * tests/test.py: Python code to excersize the parser.
11696 * wisent/wisent-python.el, wisent/wisent-python.wy:
11697 First unfinished version of the Python parser.
11699 2002-06-18 David Ponce <david@dponce.com>
11702 Use `senator-minor-mode-hook' to add semantic completion to
11703 `hippie-expand'. Thanks to Phillip Lord <p.lord@russet.org.uk>.
11705 (hippie-expand): Removed `defadvice'.
11706 (senator-try-function-already-enabled): New variable.
11707 (senator-hippie-expand-hook): New function.
11708 (senator-try-expand-semantic): Removed (require 'senator). Added an
11711 * semantic-bnf.el (semantic-bnf-complete): Removed (require 'senator).
11713 * semantic-load.el (senator-try-expand-semantic): auto-loaded.
11714 (senator-complete-symbol): auto-loaded.
11716 2002-06-17 Eric M. Ludlam <zappo@gnu.org>
11718 * semantic-el.el (semantic-elisp-use-read): Support `defun*'.
11720 2002-06-14 Eric M. Ludlam <zappo@gnu.org>
11722 * tests/test.cpp: New tets in include, namespace, and templates.
11724 * tests/test.c: Various new tests.
11726 * semantic-util.el (semantic-nonterminal-full-name): New name.
11727 (semantic-nonterminal-full-name-default): New name.
11728 (semantic-assert-valid-token): New function.
11730 * semantic.el: Removed crufty History comment.
11731 (semantic-flex-tokens): Removed trailing whitespace.
11734 (semanticdb-table-oob-santity-check, semantic-table-sanity-check):
11735 (semanticdb-database-santity-check): New functions.
11737 2002-06-13 David Ponce <david@dponce.com>
11739 * INSTALL, semantic.texi: Fixed typo.
11741 2002-06-13 Eric M. Ludlam <zappo@gnu.org>
11743 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf.
11744 (semantic-flex-c-extensions): Added `semantic-flex-c-include-system'.
11745 (semantic-flex-c-include-system): New fn.
11747 * c.bnf (macro-or-include): Use new lexical symbol system-include
11748 (filename-prefix, filename-extension,filename): Deleted.
11749 (namespacesubparts): Added template and using clauses
11750 (using): Added :: notation support.
11751 (METADECLMOD): Added MUTABLE
11752 (func-decl): Added template type specifier
11753 (throw-exception-list): Support empty throw lists.
11754 (function-call): New rule.
11755 (expression): Support function calls in expressions.
11757 2002-06-11 Eric M. Ludlam <zappo@gnu.org>
11759 * INSTALL: Added mailing list information.
11761 * semantic.texi (Top): Removed request for parser help.
11762 Added mailing list information.
11764 2002-06-11 David Ponce <david@dponce.com>
11766 * wisent/wisent-flex.el (wisent-flex):
11767 Fixed incorrect "eating" of `wisent-flex-istream'.
11769 2002-06-07 David Ponce <david@dponce.com>
11771 * wisent/wisent-flex.el (wisent-flex-token-get): Doc fix.
11772 (wisent-flex): Doc fix. New 'handler mapping rule.
11774 * semantic.texi: no message
11776 2002-05-31 David Ponce <david@dponce.com>
11778 * semantic.el (semantic-flex-tokens): Updated token list.
11779 (semantic-flex-enable-bol): New variable.
11780 (semantic-flex): Use it to catch beginning of lines when needed.
11781 Handle `semantic-flex-extensions' first, just after BOL.
11782 Handle newlines and whitespaces independently.
11783 Return comments as whitespaces when `semantic-ignore-comments' and
11784 `semantic-flex-enable-whitespace' are both non-nil.
11785 Correctly handle newlines following comments.
11787 2002-05-16 David Ponce <david@dponce.com>
11789 * semantic-util.el (semantic-summarize-nonterminal-default): Use
11790 `semantic-symbol->name-assoc-list-for-type-parts' and
11791 `semantic-bucketize-token-token'.
11793 2002-05-15 David Ponce <david@dponce.com>
11795 * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-parser-tables):
11796 Re-generated from updated grammar.
11797 (wisent-java-keywords): Ditto.
11798 (wisent-java-tokens): Ditto.
11799 (wisent-java-default-setup): Ditto.
11801 * wisent/wisent-java-tags.wy, wisent/wisent-java.wy (setup):
11802 take into account new
11803 `semantic-symbol->name-assoc-list-for-type-parts' option.
11805 * semantic-java.el (semantic-default-java-setup):
11806 Re-generated from updated grammar.
11808 * java.bnf (setup): take into account new
11809 `semantic-symbol->name-assoc-list-for-type-parts' option.
11811 2002-05-13 Richard Y. Kim <ryk@ap.com>
11813 * semantic-bnf.el, semantic.el:
11814 Corrected spelling in comments and doc-strings.
11817 Corrected spelling and added "LocalWords" at the end of the file as
11818 texinfo comments for the benefit of future ispell runs.
11820 2002-05-09 Richard Y. Kim <ryk@ap.com>
11823 Added (eval-after-load "info-look" ...) form to hook up semantic-bnf-mode with semantic.info file.
11826 Replaced use of "@table...@end table" with "@deffn ... @end deffn" for
11827 the BNF settings so that a proper index entry is create for each
11830 2002-05-08 David Ponce <david@dponce.com>
11832 * semantic-util.el (semantic-util):
11833 provided before requiring semantic-util-modes to
11834 avoid recursive load.
11836 2002-05-07 Eric M. Ludlam <zappo@gnu.org>
11838 * semantic-util-modes.el: Removed require for semantic-util.el
11840 * semantic-util.el: Added a provide statement to end.
11842 * semantic-util.el (semantic-something-to-stream): Fixed typos
11843 (semantic-find-nonterminal-by-function-first-match): Fixed typos
11845 * Project.ede, document.el, make.bnf, semantic-analyze.el, semantic-c.el, semantic-ctxt.el, semantic-el.el, semantic-imenu.el, semantic-load.el, semantic-make.el, semantic-sb.el, semantic-texi.el, semantic-util-modes.el, semantic.el, semanticdb.el, senator.el, sformat.el, working.el, c.bnf:
11846 Merged from v1_4 branch.
11848 * semantic-util.el: Merged from v1_4 branch.
11849 (semantic-something-to-stream): New function.
11850 (semantic-find-nonterminal-by-function):
11851 (semantic-find-nonterminal-by-function-first-match): Use above.
11852 (semantic-nonterminal-full-package-name): New function
11853 (semantic-nonterminal-full-package-name-default): New function
11855 2002-04-06 Eric M. Ludlam <zappo@gnu.org>
11857 * semantic-bnf.el (semantic-bnf-to-bovine):
11858 Remove errant space from last CR insert.
11860 2002-03-23 Eric M. Ludlam <zappo@gnu.org>
11862 * semantic-util.el (semantic-nonterminal-external-member-parent):
11863 Fixed name of override symbol.
11865 * semantic-ia-sb.el (semantic-speedbar-analysis): Doc fix
11867 * semantic-ia.el (semantic-ia-complete-symbol): Doc fix
11868 (semantic-ia-complete-symbol-menu): Doc fix
11870 * semantic-cb.el (semantic-cb-new-class-browser): Doc fix
11871 (semantic-cb-speedbar-mode): Doc fix
11873 * semantic-analyze.el (semantic-analyze-possible-completions): Doc fix.
11876 (analyzer, Smart Completion, Speedbar Analysis, class browser):
11878 (Speedbar): Added references to new speedbar displays in new nodes.
11880 * semantic-ctxt.el (semantic-ctxt-current-symbol-default):
11881 Fixed bug for commands
11882 prefixed with a comment while narrowed.
11884 * semantic-c.el: Require cc-mode so that some commands are available.
11886 * semantic-imenu.el (semantic-create-imenu-index):
11887 Make sure the directory menu generator
11888 also gets a stream.
11890 2002-03-22 Eric M. Ludlam <zappo@gnu.org>
11892 * semantic-analyze.el (semantic-analyze-find-nonterminal-sequence):
11893 Fix to handle long sequences.
11895 * semantic-c.el (semantic-c-analyze-type-constants): New method
11896 (semantic-default-c-setup): Add type-constants method.
11898 * semantic-analyze.el (semantic-analyze-type-constraint):
11899 Allow types that are psuedo-tokens
11900 to return themselves.
11901 (semantic-analyze-type-constants): New override function
11902 (semantic-analyze-possible-completions): Find constants as possible
11905 2002-03-20 Eric M. Ludlam <zappo@gnu.org>
11907 * semantic-ia-sb.el (semantic-ia-sb-key-map): Removed expand/contract
11908 (semantic-ia-sb-token-info): fix bug w/ use of `semantic-analyze-token-type'.
11909 (semantic-ia-sb-tag-info): New command.
11911 * semantic-ctxt.el (semantic-beginning-of-command-default):
11912 Skip over end-of-command
11913 syntax of previous command.
11914 (semantic-ctxt-current-symbol-default): Stop scanning backwards once
11915 the point stops moving. Do not use bobp which can loose 1st symbol.
11917 * semantic.el (semantic-version): Update version.
11918 (semantic-bovinate-debug-set-table): Allow user reset of table.
11920 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
11921 (semantic-expand-c-nonterminal): Added multi-typedef support.
11922 (semantic-c-analyze-dereference-metatype): New override
11923 (semantic-default-c-setup): Added new override.
11925 * c.bnf (typesimple): Support typedefs w/ more than one name.
11926 Re-arranged how typedefs are structured.
11928 * semantic-ia-sb.el (semantic-ia-sb-more-buttons):
11929 Fixed copy/paste bug.
11931 * semantic-analyze.el (semantic-analyze-dereference-metatype):
11932 New override function
11933 (semantic-analyze-token-type): Use above fn to deref meta types
11934 (semantic-analyze-current-context): Fixed fallthrough if statement.
11936 * semantic-ia-sb.el (semantic-ia-speedbar): Added in current function.
11937 Call method to display specialized speedbar buttons for a given
11939 (semantic-ia-sb-more-buttons): New method.
11940 (semantic-ia-sb-token-info): Replace big icky bits with special call
11941 to semantic-analyze function I had forgotten about.
11943 2002-03-18 Eric M. Ludlam <zappo@gnu.org>
11945 * semantic-analyze.el (semantic-analyze-current-context):
11946 Use no-side effects reverse for
11947 getting the end symbol.
11948 Do not move point when calculating the bounds.
11950 2002-03-17 Eric M. Ludlam <zappo@gnu.org>
11952 * semantic-cb.el: Added requirement for eieio-base.
11954 2002-03-16 Eric M. Ludlam <zappo@gnu.org>
11956 * senator.el: Added menu items for some analysis functions.
11958 * semantic.texi (Token Queries): Added semantic-equivalent-tokens-p.
11960 * semantic-load.el:
11961 Add autoloads for clsss browser, and analysis functions.
11962 Force new speedbar modes to load when speedbar is loaded.
11964 * semantic-ia-sb.el (semantic-ia-sb-easymenu-definition):
11965 Added some basic entries
11966 (semantic-ia-speedbar): Use new speedbar labels.
11967 Use completion functions.
11968 Use info speedbar icons.
11969 (semantic-ia-sb-token-info): New function
11970 (semantic-ia-sb-completion-list): New function
11971 (semantic-ia-sb-complete): Delete text and insert new more sanely.
11973 * semanticdb.el: Klaus Berndl
11974 (semanticdb-default-save-directory): Update documentation & custom type.
11975 (semanticdb-cache-filename): Calculate the file names so that it
11978 * semantic-cb.el (initialize-instance:semantic-cb-token):
11980 (semantic-cb-speedbar-mode): Renamed, autoloaded token.
11982 * semantic-analyze.el (semantic-analyze-current-context):
11983 Calculate bounds more accuratly.
11984 (semantic-analyze-pop-to-context): Show bounds.
11986 * NEWS: Updated with some new news.
11988 2002-03-14 David Ponce <david@dponce.com>
11990 * wisent/wisent-cim.el (wisent-cim-automaton):
11991 Generated from new grammar in wisent-cim.wy.
11992 (wisent-cim-keywords): Ditto.
11993 (wisent-cim-tokens): Ditto.
11994 (wisent-cim-default-setup): Ditto.
11996 * wisent/wisent-cim.wy: Port of Bison's GNU Simula 87 Compiler grammar.
11998 2002-03-14 Eric M. Ludlam <zappo@gnu.org>
12000 * semantic-analyze.el (semantic-analyze-current-context):
12001 Allow function calls to not be found.
12003 * semantic-ia-sb.el: Add some function overrides for our Analyze mode.
12004 (semantic-ia-speedbar): Fix typo.
12005 Add functions to our buttons to jump to those tags.
12006 (semantic-ia-sb-line-path): New function.
12007 (semantic-ia-sb-complete): New function.
12009 * semantic-ia-sb.el:
12010 Speedbar mode for displaying context sensitive information.
12012 2002-03-13 Eric M. Ludlam <zappo@gnu.org>
12014 * semantic-util.el (semantic-find-nonterminal-by-token): Doc fix.
12016 * semanticdb.el (semanticdb-find-nonterminal-by-token):
12017 Protect `token' argument.
12019 * semantic-cb.el: Create a class browser structure.
12020 Primitive speedbar hack on the structure.
12022 2002-03-12 Eric M. Ludlam <zappo@gnu.org>
12024 * semantic-util.el (semantic-equivalent-tokens-p):
12025 Use positional information, not just
12026 overlay so that we can compare tokens swapped out buffers.
12028 2002-03-07 Eric M. Ludlam <zappo@gnu.org>
12030 * semantic-util.el (semantic-equivalent-tokens-p): New test
12031 (semantic-adopt-external-members): add 'faux property to made up types
12033 * semantic.el (semantic-before-toplevel-bovination-hook): Doc fix
12035 * semantic-util.el (semantic-mark-external-member-function):
12037 (semantic-adopt-external-members): Call `semantic-mark-external-member-function'
12038 after we find the parent it belongs to. Pass it the parent.
12039 (semantic-nonterminal-external-member-children-default): Fixed typo.
12040 (semantic-nonterminal-children): When filtering for position, reverse
12041 the list back to the forward direction.
12043 * semantic-imenu.el (semantic-imenu-positioned-children): Deleted
12044 (semantic-create-imenu-subindex): Use working
12045 `semantic-nonterminal-children' instead of above.
12047 * semantic-util.el (semantic-nonterminal-children): Fixed consing bug.
12049 * semantic-util.el (semantic-nonterminal-children):
12050 If POSITIONONLY, filter whole list,
12051 not just first element.
12052 (semantic-nonterminal-external-member-children-db): New function
12053 (semantic-nonterminal-external-member-children-default): Remove DB
12054 children fn into new function.
12056 2002-03-03 David Ponce <david@dponce.com>
12058 * wisent/wisent-wy.wy (rule):
12059 New rules allowing mid-rule actions anywhere.
12062 * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
12063 (wisent-wy-keywords): Ditto.
12064 (wisent-wy-tokens): Ditto.
12065 (wisent-wy-setup-semantic): Ditto.
12066 (wisent-wy-nonterminals): Take into account new format of 'rule token.
12068 2002-02-28 David Ponce <david@dponce.com>
12070 * wisent/wisent-wy.wy: More comments ;-)
12071 (setupfunction_decl): Use any_symbol instead of SYMBOL.
12072 (keywordtable_decl): Ditto.
12073 (parsetable_decl): Ditto.
12074 (tokentable_decl): Ditto.
12075 (token_decl): Ditto.
12076 (token_type): Ditto.
12077 (start_decl): Ditto.
12079 (put_names): Ditto.
12080 (put_value): Ditto.
12081 (any_value): Ditto.
12082 (lifo_symbols): Ditto.
12083 (nonterminal): Ditto.
12085 (any_symbol): New rule to allow use of reserved words anywhere.
12086 (left_decl): Added token_type_opt to allow <type> in declaration.
12087 (right_decl): Ditto.
12088 (nonassoc_decl): Ditto.
12090 * wisent/wisent-wy.el (wisent-wy-automaton): Re-generated.
12091 (wisent-wy-keywords): Ditto.
12092 (wisent-wy-tokens): Ditto.
12093 (wisent-wy-setup-semantic): Ditto.
12094 (wisent-wy-tokens): Process <type> in %left, %right and %nonassoc
12096 (wisent-wy-mode-keywords-1): Fixed highlighting of '$' between quotes.
12097 (wisent-wy-goto-grammar-indent-anchor): Fixed skipping of C-like char
12099 (wisent-wy-grammar-compute-indentation): No more switch syntax table.
12101 * wisent/wisent-comp.el (wisent-context-name): New messages format.
12102 (wisent-append-to-log-file): Ditto.
12103 (wisent-reduce-grammar): Ditto.
12104 (wisent-map-goto): Ditto.
12105 (wisent-add-lookback-edge): Ditto.
12106 (wisent-push-token): Ditto.
12107 (wisent-push-var): Ditto.
12108 (wisent-parse-nonterminals): Ditto. Doc string. Produce a list of
12109 rules consistent with Bison's internal format.
12110 (wisent-parse-grammar): New messages format. Use new form of the rule
12111 list produced by `wisent-parse-nonterminals'.
12113 * wisent/wisent-awk.el (wisent-awk-parser-tables):
12114 Renamed to `wisent-awk-automaton'.
12115 Generated from wisent-awk.wy.
12116 (wisent-awk-keywords): Re-generated from wisent-awk.wy.
12117 (wisent-awk-tokens): Ditto.
12118 (wisent-awk-default-setup): Renamed to `wisent-awk-setup-parser'.
12119 Generated from wisent-awk.wy.
12121 * wisent/wisent-awk.wy: GNU AWK grammar to torture Wisent.
12123 2002-02-28 Eric M. Ludlam <zappo@gnu.org>
12125 * Project.ede: Added semantic-example.el
12127 * semantic.texi (Example Programs): New section.
12129 * semantic-example.el: Examples for basic semantic API calls.
12131 * semantic-util.el (semantic-find-nonterminal-standard): Fixed.
12133 * semantic-sb.el (semantic-fetch-dynamic-bovine): Support adoption.
12135 * semantic-el.el (semantic-default-elisp-setup):
12136 Specify Types first in the name-assoc list.
12138 2002-02-27 Eric M. Ludlam <zappo@gnu.org>
12140 * semantic-texi.el (semantic-texi-bovinate-toplevel):
12141 Overlay the created list.
12143 2002-02-27 David Ponce <david@dponce.com>
12145 * wisent/wisent-wy.wy (setupcode):
12146 Use `semantic-flex-extensions( to handle C-like
12147 character literals. Use `font-lock-type-face' instead of
12148 `font-lock-constant-face' in `semantic-face-alist'.
12149 (CHARACTER): New token.
12150 (left_decl): Use 'items' instead of 'symbols'. New Semantic token
12152 (right_decl): Ditto.
12153 (nonassoc_decl): Ditto.
12154 (level): Use 'item' instead of 'SYMBOL'.
12156 (items): New nonterminal.
12157 (lifo_items): New nonterminal.
12158 (item): New nonterminal. Handle C-like character literal.
12160 * wisent/wisent-wy.el (wisent-wy-c-char-re): New constant.
12161 (wisent-wy-flex-extensions): New constant.
12162 (wisent-wy-flex-char): New function.
12163 (wisent-wy-automaton): Re-generated.
12164 (wisent-wy-keywords): Ditto.
12165 (wisent-wy-tokens): Ditto.
12166 (wisent-wy-setup-semantic): Ditto.
12167 (wisent-wy-item-value): New function.
12168 (wisent-wy-nonterminals): Use it.
12169 (wisent-wy-left): Removed.
12170 (wisent-wy-right): Removed.
12171 (wisent-wy-nonassoc): Removed.
12172 (wisent-wy-assocs): New function.
12173 (wisent-wy-grammar): Use it.
12174 (wisent-wy-elisp-syntax-table): Removed.
12175 (wisent-wy-mode-keywords-1): Highlight %keywords with
12176 `font-lock-keyword-face'. Highlight C-like char literals.
12177 (wisent-wy-grammar-compute-indentation): Take into account C-like char
12179 (wisent-wy-do-lisp-indent): Use copy of
12180 `emacs-lisp-mode-syntax-table' instead of
12181 `wisent-wy-elisp-syntax-table'.
12183 * wisent/wisent-flex.el (wisent-flex-put-default): New function.
12184 (wisent-flex-make-token-table): Initialize obarray with 0 instead of
12185 nil. Set up default value of new 'char-literal property.
12186 (wisent-flex): Return character value as category of default token if
12187 'char-literal property is non-nil.
12189 * wisent/wisent-comp.el (compile-grammar): Added `ptable' to context.
12190 (wisent-escape-sequence-tags): New constant.
12191 (wisent-tag): New function.
12192 (wisent-put): New function.
12193 (wisent-get): New function.
12194 (wisent-item-number): Moved. Use `wisent-get'.
12195 (wisent-assoc): Ditto.
12196 (wisent-prec): Ditto.
12197 (wisent-set-item-number): Moved. Use `wisent-put'.
12198 (wisent-set-assoc): Ditto.
12199 (wisent-set-prec): Ditto.
12200 (wisent-reduce-grammar): Use `wisent-tag'.
12201 (wisent-print-useless): Ditto.
12202 (wisent-print-nullable): Ditto.
12203 (wisent-print-fderives): Ditto.
12204 (wisent-print-firsts): Ditto.
12205 (wisent-log-resolution): Ditto.
12206 (wisent-print-grammar): Ditto.
12207 (wisent-print-reductions): Ditto.
12208 (wisent-print-actions): Ditto.
12209 (wisent-print-core): Ditto.
12210 (wisent-resolve-sr-conflict): Pass item number to
12211 `wisent-log-resolution', instead of symbol.
12212 (wisent-ISVALID): Removed.
12213 (wisent-ISVALID-VAR): New function.
12214 (wisent-push-var): Use it.
12215 (wisent-ISVALID-TOKEN): New function.
12216 (wisent-push-token): Use it.
12217 (wisent-parse-nonterminals): Put symbol between `' in message. Create
12218 new literal character tokens when referenced the first time.
12219 (wisent-parse-grammar): Put symbol between `' in messages.
12221 * wisent/wisent-calc.wy: Use C-like character literals :-)
12223 * wisent/wisent-calc.el (wisent-calc-automaton): Re-generated.
12224 (wisent-calc-tokens): Ditto.
12225 (wisent-calc-setup-parser): Ditto.
12227 2002-02-27 Eric M. Ludlam <zappo@gnu.org>
12229 * tests/Project.ede: Added templates.cpp
12231 * tests/templates.cpp: Template examples.
12233 * tests/test.cpp: Added body to fn for testing smart completion.
12235 * tests/test.make: Added some harsher test cases.
12237 * Project.ede: Updated version number.
12238 Added semantic-ia.el.
12240 * semantic-imenu.el (semantic-imenu-positioned-children): New function
12241 (semantic-create-imenu-subindex): Use above to strip out positionless children.
12243 * semantic-analyze.el (semantic-analyze-current-context):
12244 Set the bounds in the analysis of
12246 (semantic-analyze-possible-completions): Accept a point (position) OR
12247 a precalculated analysis.
12249 * semantic-c.el: New c.bnf
12251 * c.bnf (knr-arguments): Need to expand inline.
12253 * semantic-ia.el: Interactive access to analysis functions.
12255 * document.el (document-update-comment): Fix error
12256 (document-argument-name): New function
12257 (document-update-paramlist): Use above to safely get arg names.
12259 * semantic-analyze.el (semantic-analyze-type-parts):
12260 Use `semantic-nonterminal-member-children'.
12262 2002-02-26 David Ponce <david@dponce.com>
12264 * wisent/wisent-wy.el (wisent-wy-tokens):
12265 Use a default symbol name for tokens without type.
12266 (wisent-wy-mode): Set `font-lock-multiline' to 'undecided, to handle
12267 multiline patterns when encountered.
12268 (wisent-wy-goto-grammar-indent-anchor): Don't stop at % anchor when
12269 it is the first character of %prec keyword (inside rule).
12270 (wisent-wy-between-name-and-colon-p): New function.
12271 (wisent-wy-grammar-compute-indentation): Use it.
12273 * wisent/wisent-wy.wy: Removed defaults from setup code.
12274 (%tokentable): New definition.
12275 (%tokens): Modified <type> for use by `wisent-flex' lexer.
12276 (token_decl): New format.
12277 (rule): Use 'level' instead of 'prec' which is a reserved keyword.
12278 (prec): Renamed to 'level'.
12280 * wisent/wisent-wy.el (wisent-wy-automaton): WY grammar re-generated.
12281 (wisent-wy-keywords): Ditto.
12282 (wisent-wy-setup-semantic): Ditto.
12283 (wisent-wy-tokens): New constant.
12284 (wisent-wy-lex): Removed.
12285 (wisent-wy-setupcode): Added missing default setup.
12286 (wisent-wy-keywords): Change in semantic token's format.
12287 (wisent-wy-tokens): Ditto.
12288 (wisent-wy-token-properties): New function.
12289 (wisent-wy-terminals): Keep order of declarations.
12290 (wisent-wy-keyword-properties): Allow duplicates lexical symbols.
12291 (wisent-wy-tokentable-value): Generate call to
12292 `wisent-flex-make-token-table'.
12293 (wisent-wy-update-setupfunction): Fixed format arguments.
12294 (wisent-wy-mode-keywords-1): Minor improvements.
12296 * wisent/wisent-java.el (wisent-java-parser-tables):
12297 Generated from wisent-java.wy.
12298 (wisent-java-keywords): Ditto.
12299 (wisent-java-tokens): Ditto.
12300 (wisent-java-default-setup): Ditto. Moved.
12301 (wisent-java-lex): Removed.
12303 * wisent/wisent-java-tags.el (wisent-java-parser-tables):
12304 Generated from wisent-java-tags.wy.
12305 (wisent-java-keywords): Ditto.
12306 (wisent-java-tokens): Ditto.
12307 (wisent-java-default-setup): Ditto.
12308 (wisent-java-lex): Removed.
12310 * wisent/wisent-comp.el (wisent-push-token):
12311 Only warns on duplicate terminal symbols. Put
12312 symbol between `' in messages.
12313 (wisent-push-var): Put symbol between `' in messages.
12315 * wisent/wisent-calc.el (wisent-calc-parser-tables):
12316 Renamed to `wisent-calc-automaton'.
12317 Generated from wisent-calc.wy.
12318 (wisent-calc-keywords): Removed.
12319 (wisent-calc-tokens): Generated from wisent-calc.wy.
12320 (wisent-calc-default-setup): Renamed to
12321 `wisent-calc-setup-parser'. Generated from wisent-calc.wy.
12322 (wisent-calc-number-regexp): Removed.
12323 (wisent-calc-lexer-input-stream): Removed.
12324 (wisent-calc-lexer): Removed.
12325 (wisent-calc): Use `wisent-flex' via a temporary buffer.
12327 2002-02-26 Eric M. Ludlam <zappo@gnu.org>
12329 * semantic-texi.el (semantic-texi-update-doc-from-source):
12330 Fixed error message.
12332 2002-02-26 David Ponce <david@dponce.com>
12334 * wisent/wisent-bovine.el: (require 'wisent-flex)
12335 (semantic-flex-token-value): Removed.
12336 (semantic-flex-token-key): Removed.
12337 (wisent-collect-unmatched-syntax): Moved.
12338 (wisent-lexer-function): Moved.
12339 (wisent-flex-istream): Moved into wisent-flex.el.
12340 (wisent-flex-depth): Removed.
12341 (wisent-rebovinate-token): Mo more use it.
12342 (wisent-bovinate-toplevel): Ditto.
12344 * wisent/wisent-java.wy: Java LALR grammar.
12346 * wisent/wisent-java-tags.wy:
12347 Java LALR grammar optimized for Semantic environment.
12349 * wisent/wisent-flex.el:
12350 Lexical analyser for use by Wisent's parser in Semantic environment.
12352 * wisent/wisent-calc.wy:
12353 LALR grammar of the infix notation calculator sample.
12355 2002-02-26 Eric M. Ludlam <zappo@gnu.org>
12359 * sformat.el: From Vladimir Sekissov <svg@surnet.ru>
12360 (sformat-just-before-token-regexp, sformat-just-after-token-regexp):
12361 Handle %% as non-tokens.
12363 * semantic-c.el: New c.bnf
12365 * c.bnf: Added symbol->name-assoc-list values.
12367 * semantic.el (semantic-symbol->name-assoc-list):
12368 Rearranged default list.
12369 (semantic-symbol->name-assoc-list-for-type-parts): New variable
12370 (semantic-token-put-no-side-effect): New function.
12372 * semantic-util.el (semantic-bucketize-token-token): New variable
12373 (semantic-bucketize): Accept a new parent argument.
12374 When there is a parent, use a different name list.
12375 Use `semantic-bucketize-token-token'.
12376 (semantic-orphaned-member-metaparent-type): New variable.
12377 (semantic-mark-external-member-function): New variable.
12378 (semantic-adopt-external-members): Updated to use above two variables.
12379 Creates meta classes for orphaned tokens that have parents.
12380 Make copies of tokens that are parented, apply an 'adopted property,
12381 and call new mark function above.
12382 (semantic-colorize-merge-text): Pass in the string to `add-text-properties'.
12384 * semantic-imenu.el (semantic-imenu-goto-function):
12385 Do not require a file. Makes this
12386 useable by external apps that encounter sub menus.
12387 (semantic-create-imenu-index): Pass nil into new `parent' argument for
12388 `semantic-create-imenu-index-1'.
12389 (semantic-create-imenu-directory-index): As above
12390 (semantic-create-imenu-index-1): Accept a parent token. Use this when
12391 calling the bucket function which also uses this new argument to
12392 distinguish between different types of buckets.
12393 (semantic-create-imenu-subindex): Create submenus based on valid
12394 positions in the returned streams. The adopting function creates
12395 metatypes w/out positions, and the bucket function now takes a parent
12396 object which can change the sub-bucket names.
12398 2002-02-25 Eric M. Ludlam <zappo@gnu.org>
12400 * semantic.el (semantic-version): Update version to 1.4 beta14
12402 * sformat.el (Sformat): Support byte compiled lambdas.
12404 2002-02-24 Eric M. Ludlam <zappo@gnu.org>
12406 * semantic-imenu.el (semantic-imenu-adopt-external-members): New option
12407 (semantic-create-imenu-index): Bovinate buffer if no stream available.
12408 (semantic-create-imenu-index-1): Do not bovinate buffer if no stream
12409 available. Do rebuild the token stream to adopt external children
12412 * semantic.texi (Nonterminal sorting): New section.
12414 * semantic-util.el (semantic-adopt-external-members): New function
12415 (semantic-colorize-merge-text): Added XEmacs support
12416 (semantic-nonterminal-external-member-parent)
12417 (semantic-nonterminal-external-member-parent-default)
12418 (semantic-nonterminal-external-member-p)
12419 (semantic-nonterminal-external-member-p-default): New functions
12420 (semantic-nonterminal-external-member-children): Updated doc string
12421 (semantic-nonterminal-external-member-children-default): Fixed
12423 2002-02-23 David Ponce <david@dponce.com>
12425 * wisent/wisent-wy.wy: LALR grammar of Wisent's input grammar.
12427 * wisent/wisent-wy.el:
12428 Major mode for editing Wisent's input grammar (.wy) files.
12430 * working.el (noninteractive):
12431 Define it to avoid byte-compiler warnings.
12432 (working-current-message): New function.
12433 (working-status-forms): Restore current message when it exits.
12434 (working-status-timeout): Ditto.
12436 2002-02-22 Eric M. Ludlam <zappo@gnu.org>
12438 * semantic-util.el (semantic-find-nonterminal-by-*):
12439 Converted to defun to avoid macro errors.
12440 (semantic-colorize-merge-text): Fixed to use paramter correctly.
12441 (semantic-uml-attribute-string): New function
12442 (semantic-nonterminal-external-member-children): New function
12444 2002-02-21 Eric M. Ludlam <zappo@gnu.org>
12446 * semantic-c.el (semantic-c-nonterminal-abstract):
12447 Make types abstract if destructor
12448 is virtual, and constructor protected, OR if any function is
12449 pure-virtual. Make methods abstract if they are pure-virtual.
12451 * semantic-el.el (semantic-elisp-use-read):
12452 Enable defclass to have :documentation
12453 preceeding it's documentation.
12455 * working.el (working-status-call-process):
12456 Use `accept-process-output' w/
12457 site-for commented out.
12459 * semantic-el.el (semantic-elisp-clos-args-to-semantic):
12460 Identify `static' entries
12461 (semantic-elisp-nonterminal-static): New function
12462 (semantic-default-elisp-setup): Add above as override.
12464 * semantic-c.el (semantic-c-nonterminal-abstract): New function
12465 (semantic-default-c-setup): Added above to override table.
12467 * semantic-util.el (semantic-test-all-token->text-functions):
12468 Support color output.
12469 (semantic-face-alist): Added `abstract, and 'static colors for UML
12470 (semantic-colorize-merge-text): New function
12471 (semantic-concise-prototype-nonterminal-default): Support color for
12472 variables, and unhandled token types.
12473 (semantic-uml-post-colorize): New function
12474 (semantic-uml-abbreviate-nonterminal-default): Use semantic-uml-post-colorize
12475 (semantic-uml-prototype-nonterminal-default): Use semantic-uml-post-colorize
12476 (semantic-uml-concise-prototype-nonterminal-default): Use semantic-uml-post-colorize
12477 (semantic-nonterminal-protection): Doc fix
12478 (semantic-nonterminal-abstract, semantic-nonterminal-abstract-default)
12479 (semantic-nonterminal-leaf, semantic-nonterminal-abstract-leaf)
12480 (semantic-nonterminal-static, semantic-nonterminal-abstract-static):
12483 2002-02-20 Eric M. Ludlam <zappo@gnu.org>
12485 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
12486 (semantic-c-keyword-table): New c.bnf
12487 (semantic-c-template-string): Also show template, not just template-specifier
12488 (semantic-c-uml-prototype-nonterminal): New function
12489 (semantic-default-c-setup): Added above overload.
12491 * c.bnf (variablearg): Made variable name optional.
12493 * c.bnf (USING, FRIEND): New tokens
12494 (declaration): Added using match
12495 (filename-extension): Fixed to handle includes w/out extensions (C++)
12496 (classsubparts): Added templates
12498 (template): Added opt-friend
12499 (opt-template-equal): Fixed typo
12500 (opt-friend): New rule
12501 (DECLMOD): Added FRIEND
12502 (variablearg): Added an extra opt-ref
12503 (operatorsym): Added -> and ! as possible operators
12505 2002-02-20 David Ponce <david@dponce.com>
12507 * wisent/wisent-bovine.el (wisent-token):
12508 Always provide token location.
12509 (wisent-bovinate-nonterminal): Made more robust.
12511 * wisent/wisent-comp.el (wisent-parse-nonterminals):
12512 Accept nil as a mid-rule action.
12513 Fixed bad synchronization of RULES, RCODE & RPREC lists.
12515 2002-02-20 Eric M. Ludlam <zappo@gnu.org>
12517 * c.bnf (template-var): Combine stars with the type name
12518 (template-type): Added in additional 'type fields as nil.
12520 2002-02-19 Eric M. Ludlam <zappo@gnu.org>
12522 * semantic-make.el: New make.bnf.
12523 (semantic-expand-make-nonterminal): New function
12525 * make.bnf (setup): Enable whitespace
12526 (BACKSLASH): New token
12527 (variable rule conditional targets include): Use whitespace where needed.
12528 (targets): Enable subtarget groupings w/ mixed variables.
12529 (target sub-target): New rules
12530 (element-list, element, sub-element): New rules
12531 (elements): Enable mixed groupings.
12532 (opt-whitespace): New rule.
12534 * semantic.el (semantic-flex-enable-whitespace): New variable
12535 (semantic-flex): If above var is non-nil, create whitespace tokens.
12537 2002-02-16 David Ponce <david@dponce.com>
12539 * wisent/wisent-comp.el (wisent-check-$N): New function.
12540 (wisent-semantic-action-expand-body): Use it.
12542 (wisent-semantic-action): Handle mid-rule actions.
12543 (wisent-semantic-actions): Doc string.
12545 (wisent-default-semantic-action-body): Removed.
12546 (wisent-reserved-capitals): New constant.
12547 (wisent-ISVALID): Use it. Moved.
12549 (wisent-parse-nonterminal): Removed.
12550 (wisent-parse-nonterminals): New function. Handle mid-rule actions.
12551 (wisent-parse-grammar): Use it.
12553 2002-02-14 David Ponce <david@dponce.com>
12555 * wisent/wisent-comp.el (wisent-set-conflicts):
12556 Implementation consistent with Bison 1.33.
12558 * semantic-bnf.el (semantic-bnf-matching-to-lalr):
12559 Don't discard %prec clause in EMPTY rules.
12561 2002-02-13 David Ponce <david@dponce.com>
12563 * wisent/wisent-comp.el (wisent-print-useless):
12564 Didn't print correct nonterminals. Minor
12567 * wisent/wisent-bovine.el (wisent-bovinate-nonterminal):
12568 Removed LEXER and ERROR arguments.
12569 (wisent-bovinate-nonterminals): Updated call to above.
12570 (wisent-rebovinate-token): Ditto.
12572 2002-02-11 David Ponce <david@dponce.com>
12574 * wisent/wisent-comp.el (compile-grammar):
12575 Added `ruseful' and `rcode' variables to context.
12576 Removed `rule-table'.
12578 (wisent-reduce-grammar-tables): New function.
12579 (wisent-nonterminals-reduce): New function.
12580 (wisent-reduce-grammar): Call them.
12582 (wisent-set-derives): Ignore useless rules.
12583 (wisent-set-nullable): Ditto.
12585 (wisent-allocate-itemsets): Allocate room for all the symbols.
12587 (wisent-print-grammar): Don't print useless rules. No more use
12588 `rule-table'. 'error' token was not in cross reference.
12590 (wisent-semantic-action): No more use `rule-table'. Take into account
12591 useless rules. Directly byte-compile function.
12593 (wisent-byte-compile-semantic-actions): Removed.
12594 (wisent-semantic-actions): No more use `rule-table'.
12596 (wisent-parse-nonterminal): Directly count items and rules. Collect
12597 semantic action bodies in a separate vector.
12599 (wisent-grammar-production-lhs): Removed.
12600 (wisent-grammar-rule-rhs): Removed.
12601 (wisent-grammar-production: Removed.
12603 (wisent-parse-grammar): Follow changes in `wisent-parse-nonterminal'.
12605 2002-02-11 Eric M. Ludlam <zappo@gnu.org>
12607 * semantic-bnf.el (semantic-bnf-to-bovine):
12608 Do not add space to line after final paren.
12610 2002-02-10 Eric M. Ludlam <zappo@gnu.org>
12612 * Project.ede: Version update.
12613 Add speedbar to path.
12615 * semantic-make.el: New make.bnf
12617 * make.bnf (semantic-flex-syntax-modifications): Remove tab.
12618 (conditional): Return explicit nils.
12620 2002-02-09 Eric M. Ludlam <zappo@gnu.org>
12622 * semantic.el (semantic-version): New function.
12624 2002-02-08 David Ponce <david@dponce.com>
12626 * wisent/wisent-java-tags.el (wisent-java-parser-tables):
12627 Re-generated from BNF.
12629 * wisent/wisent-java-tags.bnf (operator): Added missing XOR operator.
12631 * wisent/wisent-cim.bnf, wisent/wisent-cim.el: Comments.
12633 * wisent/wisent.texi: no message
12635 * wisent/wisent.el (wisent-parse): Doc string.
12637 * wisent/wisent-comp.el (wisent-append-to-log-file):
12638 Check that the log buffer is not empty.
12639 (compile-grammar): Updated context.
12641 (wisent-bits-equal): New function.
12642 (wisent-nbits): New function.
12643 (wisent-bits-size): New function.
12644 (wisent-useful-production): New function.
12645 (wisent-useless-nonterminals): New function.
12646 (wisent-inaccessable-symbols): New function.
12647 (wisent-total-useless): New function.
12648 (wisent-reduce-grammar): New function.
12649 (wisent-print-useless): New function.
12651 (wisent-log-resolution): Log things if verbose or debug flag set.
12652 (wisent-resolve-sr-conflict): Handle item numbers in `rprec'.
12653 (wisent-set-conflicts): No more use `any_conflicts'.
12654 (wisent-resolve-conflicts): Ditto.
12655 (wisent-print-conflicts): Print details if verbose or debug flag set.
12656 (wisent-print-results): Ditto. Also report useless things.
12657 (wisent-print-states): New function.
12658 (wisent-print-grammar): Print where tokens & nonterminals are used.
12660 (wisent-parser-automaton): Check for useless stuff. Doc string.
12661 (wisent-parse-grammar): Set `rprec' with item numbers.
12662 (wisent-parse-nonterminal): Ditto. Check level of %prec token.
12663 (wisent-compile-grammar): Doc string and comments.
12665 2002-02-07 David Ponce <david@dponce.com>
12667 * wisent/wisent-java-tags.el, wisent/wisent-java.el (wisent-java-parser-tables):
12670 * wisent/wisent-java-tags.bnf, wisent/wisent-java.bnf:
12671 Added required definition of the default start symbol.
12673 * wisent/wisent.el (wisent-parse-start):
12674 Handle single start symbol like Bison.
12676 * wisent/wisent-comp.el (wisent-item-number): Moved.
12677 (wisent-set-item-number): New function.
12678 (wisent-assoc): New function.
12679 (wisent-set-assoc): New function.
12680 (wisent-prec): New function.
12681 (wisent-set-prec): New function.
12683 (wisent-resolve-sr-conflict): Use above functions.
12684 (wisent-parse-nonterminal): Ditto.
12686 (wisent-count-rr-conflicts): Fixed misplaced close parenthesis.
12687 (wisent-print-conflicts): Removed bad extra argument.
12688 (wisent-print-reductions): Fixed some nasty bugs.
12690 (item-numbers [defcontext]): Removed.
12691 (wisent-set-token-item-number): Removed.
12692 (wisent-set-var-item-number): Removed.
12693 (wisent-clear-properties): Removed.
12695 (wisent-no-xstarts-flag): Renamed to
12696 (wisent-single-start-flag): New variable.
12698 (wisent-push-token): New function. Push a new symbol in the list of
12700 (wisent-push-var): New function. Push a new symbol in the list of
12703 (wisent-parse-grammar): Code improvement & Bison compatibility
12704 changes. No more require to declare tokens used in associativity &
12705 precedence rules. Handle single start symbol like Bison.
12707 (wisent-compile-grammar): Doc string updated.
12709 * wisent/wisent-cim.el: Elisp code associated to wisent-cim.bnf.
12711 * wisent/wisent-cim.bnf:
12712 New torture test! From the GNU Simula 87 Compiler grammar found in
12713 Bison 1.32 tests/torture.at.
12715 2002-02-06 David Ponce <david@dponce.com>
12717 * wisent/wisent-comp.el (wisent-clear-item-number): Removed.
12718 (wisent-set-item-numbers): Removed. Code moved into
12719 `wisent-parse-grammar'.
12721 (wisent-clear-properties): New function. Clear all Wisent's symbol
12724 (wisent-parse-grammar): Redesigned so setting precedence level and
12725 associativity of built-in token `error' now works.
12727 2002-02-06 Eric M. Ludlam <zappo@gnu.org>
12729 * tests/test.c: Added bit fields.
12731 * semantic-util.el (semantic-token-add-extra-spec):
12732 Removed unused local variable esl
12733 (semantic-token->text-functions): Renamed
12734 `semantic-emacs-lisp-nonterminal' to
12735 (semantic-prin1-nonterminal): Renamed.
12737 * semantic-util.el (semantic-token-extra-specs): New fcn
12738 (semantic-token-add-extra-spec): New fcn
12739 (semantic-token->text-functions): Added `semantic-emacs-lisp-nonterminal'.
12740 (semantic-emacs-lisp-nonterminal): New fcn
12742 * semantic.el (semantic-bovinate-show):
12743 Added ?a for abort. Quit now exits properly.
12745 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf 1.57
12746 (semantic-c-reconstitute-template): New fcn
12747 (semantic-c-keyword-table): Removed extra TEMPLATE token.
12748 (semantic-c-nonterminal-template, semantic-c-nonterminal-template-specifier)
12749 (semantic-c-template-string-body, semantic-c-template-string)
12750 (semantic-c-concise-prototype-nonterminal): New functions
12751 (semantic-default-c-setup): Add `concise-prototype-nonterminal' override.
12753 * c.bnf (typesimple): Add template specifiers to the extra spec
12754 (opt-template-equal): Use template-specifier-type, not the list.
12755 (template-type): Concat in the type. Indentation.
12756 (opt-bits): Use new number terminal.
12758 2002-02-05 David Ponce <david@dponce.com>
12760 * wisent/wisent.texi: Following Eric's patch ;-)
12762 * wisent/wisent.texi: Applied Eric's patch.
12764 2002-02-04 David Ponce <david@dponce.com>
12766 * wisent/wisent-comp.el (wisent-print-grammar):
12767 The last rule was not printed.
12769 (wisent-no-xstarts-flag): New flag. Non-nil means disable extra start
12770 symbols. That is don't add extra start rules to the grammar. This is
12771 useful to compare the Wisent's generated automaton with the Bison's
12774 (wisent-parse-grammar): Don't add extra start rules to the grammar if
12775 `wisent-no-xstarts-flag' is non-nil.
12777 * wisent/wisent-awk.el: Typo in the one-line summary.
12779 * wisent/wisent.el (wisent-parse):
12780 Made ERROR reporting function optional. Defaults to
12781 standard function `error'.
12783 * wisent/wisent.texi: Synchronized with latest code changes.
12785 (Writing a Lexer, Report errors): New nodes.
12787 2002-02-02 David Ponce <david@dponce.com>
12789 * wisent/wisent-comp.el (wisent-total-conflicts):
12790 No warning when there is no conflict!
12792 2002-02-01 David Ponce <david@dponce.com>
12794 * wisent/wisent.el:
12795 New major version rewrote from scratch based on Bison's 1.28 & 1.31 C
12796 sources. The parser generator in now auto-loaded from file
12799 * wisent/wisent-awk.el: GNU AWK grammar Elisp code.
12801 * wisent/wisent-awk.bnf: GNU AWK grammar to torture Wisent.
12803 * wisent/wisent-comp.el:
12804 New implementation of the parser generator based on Bison's 1.28 &
12807 2002-01-19 Eric M. Ludlam <zappo@gnu.org>
12809 * c.bnf (TEMPLATE): Removed duplicate definition.
12810 (opt-symbol): New rule
12811 (classsubparts): Use opt-symbol to help QT slot definition thingies.
12812 (opt-class-parents): Added optional template specifier
12813 (opt-class-protection): New rule
12814 (class-protection): Removed `EMPTY'
12815 (namespacesubparts): Use opt-class-protection
12816 (typesimple): Added template specifier. Added bodyless class/struct.
12817 (template): Reconstitute the template definition.
12818 (template-specifier, tempalate-specifier-type-list):
12819 (template-var, opt-template-specifier, template-type): Update to
12820 return something useful.
12822 * semantic-bnf.el (semantic-bnf-generate-and-load):
12823 Bind `inhibit-modification-hooks'.
12825 2002-01-16 David Ponce <david@dponce.com>
12827 * wisent/wisent.el (wisent-pack-grammar):
12828 Correctly compute the default precedence level
12829 of rule. That is the precedence level of the last terminal in it.
12831 (wisent-add-action): Fixed default resolution of shift/reduce
12834 2002-01-15 David Ponce <david@dponce.com>
12836 * semantic-bnf.el (semantic-bnf-to-lalr-EXPANDTHING):
12837 No more bind `$regionI'
12838 variables. Use existing ones instead.
12840 2002-01-14 David Ponce <david@dponce.com>
12842 * wisent/wisent-java-tags.el (wisent-java-parser-tables): Regenerated.
12844 * wisent/wisent.texi (@defun wisent-compile-grammar):
12845 Removed optional argument STREAM.
12847 (@defun wisent-parse): Doc fixes.
12849 * wisent/wisent.el:
12850 Moved doc from header comments into file wisent.texi.
12852 (wisent-reduce-action): Explicitly bind `$regionI' variables.
12854 (wisent-build-tables): Removed optional argument STREAM.
12855 (wisent-process-grammar): Ditto.
12856 (wisent-compile-grammar): Ditto.
12858 (wisent-process-grammar, wisent-compile-grammar, wisent-nerrs,
12859 wisent-lookahead, wisent-errok, wisent-clearin, wisent-parse): Updated
12862 2002-01-08 David Ponce <david@dponce.com>
12864 * wisent/wisent.texi: Initial revision.
12866 2001-12-19 David Ponce <david@dponce.com>
12868 * wisent/wisent-bovine.el: Synchronized with semantic.el.
12870 (wisent-collect-unmatched-syntax): Moved.
12872 (wisent-bovinate-nonterminals): Call `wisent-collect-unmatched-syntax'
12873 via `wisent-skip-token-hook'.
12875 (wisent-bovinate-from-nonterminal-full): Moved. Doc string fixes.
12876 (wisent-bovinate-region-until-error): Ditto.
12878 (wisent-bovinate-toplevel): Synchronized with latest
12879 `semantic-bovinate-toplevel' code.
12881 2001-12-18 Richard Y. Kim <ryk@ap.com>
12884 Created semantic-flex-tokens variable to document the token types returend by semantic-flex.
12886 2001-12-18 David Ponce <david@dponce.com>
12888 * wisent/wisent-java.el, wisent/wisent-java-tags.el (wisent-java-parser-tables):
12891 * wisent/wisent-java.bnf (goal):
12892 `wisent-bovinate-toplevel' requires to return result reversed.
12893 (formal_parameter_modifier_opt): new nonterminal.
12894 (formal_parameter): Use it.
12896 * wisent/wisent-java-tags.bnf: More comments.
12897 Reordered rules plus small fixes.
12899 * wisent/wisent.el (Commentary): Fixed STARTS definition.
12901 2001-12-18 Eric M. Ludlam <zappo@gnu.org>
12903 * tests/test.cpp: Added templates.
12904 Added const * const example.
12906 * semantic.el (semantic-bovinate-toplevel):
12907 When doing a full reparse, lex the
12908 buffer before clearing the cache. If an error occurs, the cache will
12911 * semantic-c.el: New c.bnf supporting templates.
12912 (semantic-c-nonterminal-protection): If type type of a type is
12913 unknown in a parent, specify an unknown protection.
12915 * c.bnf (TEMPLATE): New token
12916 (declaration): Added template
12917 (template, template-specifier, template-specifier-type-list,
12918 template-var, opt-template-equal, template-type,
12919 template-definition): New rules
12920 (typeformbase): Added tempalte specified type and class :: types.
12922 * semantic-make.el: New make.bnf
12924 * make.bnf: Removed parens and $ from symbol syntax types.
12925 Added IFEQ and IFNEQ tokens
12926 Added BACKSLASH and DOLLAR tokens
12927 Added IFEQ and IFNEQ rule matches
12928 Added $(VAR) types to expression.
12929 Support backslash terminated lines for variables.
12931 2001-12-15 David Ponce <david@dponce.com>
12933 * wisent/wisent-java-tags.bnf, wisent/wisent-java-tags.el: New file.
12935 * wisent/wisent.el (wisent-lookahead):
12936 New variable. Hold the lookahead lexical token
12938 (wisent-parse): Use the above.
12940 * wisent/wisent-bovine.el (wisent-lexer-lookahead): New variable.
12941 (wisent-lexer-wrapper): Use the above to push the lookahead
12942 token back in the lexical input stream.
12944 (wisent-unmatched-syntax): New variable.
12945 (wisent-collect-unmatched-syntax): Use the above.
12946 (wisent-bovinate-nonterminals): Push unmatched lookahead tokens in
12947 the unmatched syntax stream. Minor performance enhancement.
12949 (wisent-bovinate-from-nonterminal-full): Use 1 as default depth for
12950 `semantic-flex'. Reverse the result list.
12952 (wisent-bovinate-region-until-error): Reverse the result list.
12954 (wisent-bovinate-toplevel): [full parse] Don't clear the unmatched
12955 cache after parsing! Reverse the result list.
12957 * semantic-bnf.el (semantic-bnf-to-lalr-EXPANDTHING):
12958 Fixed missing quote.
12960 2001-12-15 Eric M. Ludlam <zappo@gnu.org>
12962 * tests/test.make: New test for makefile things.
12964 2001-12-12 Eric M. Ludlam <zappo@gnu.org>
12967 Small language changes to doc strings suggested by Alex Schroeder <alex@gnu.org>
12970 Small language changes suggested by Alex Schroeder <alex@gnu.org>
12972 2001-12-08 Eric M. Ludlam <zappo@gnu.org>
12974 * semantic-util-modes.el (semantic-auto-parse-bovinate): Use
12975 `semantic-flex-unterminated-syntax-end-function' instead of
12976 `semantic-flex-unterminated-syntax-throw-symbol' to throw lexical issues.
12978 * semantic.el (semantic-flex-unterminated-syntax-end-function):
12980 (semantic-flex): Use above var instead of old throw variable.
12982 2001-12-07 David Ponce <david@dponce.com>
12984 * wisent/wisent-bovine.el (wisent-bovinate-toplevel): Check if
12985 `semantic-before-toplevel-bovination-hook' allow to parse.
12986 When doing a full re-parse clear the cache just before setting the new
12987 one. This way, if an error occurs, we can capture it, and leave the
12990 * senator.el (senator-mode-menu-item-format):
12991 New option. Format of menu item
12992 labels in the "Modes" menu when displaying through a window system.
12994 (senator-mode-menu-item-format-tty): New option. Format of menu item
12995 labels in the "Modes" menu when using a text-only terminal.
12997 (senator-build-mode-menu-items): Use the above options. On window
12998 system minor mode labels as now simple text items. Emacs displays
12999 them as menu titles in bold face.
13001 2001-12-07 Eric M. Ludlam <zappo@gnu.org>
13003 * semantic-c.el (semantic-toplevel-c-bovine-table, semantic-c-keyword-table):
13005 (semantic-c-reconstitute-token): For functions, add methodconst, and pure-virtual
13007 * c.bnf (UNDERP, UNDERUNDERP): Fix typo in summary
13008 (opt-stars): Add opt-starmod
13009 (opt-starmod, STARMOD): New rule
13010 (func-decl): Un-splic $7 in match2
13011 (variablearg): Let varname handle stars and refs.
13012 (arg-list): Explicit (void) match added
13013 (fun-or-proto-end): Add pure-virtual case return.
13015 * Project.ede: Update version
13017 * semantic-make.el: New make.bnf
13019 * make.bnf: Added ifdef, and ifndef tokens. (Oy)
13021 * make.bnf: Added ifdef, and ifndef commands.
13023 * semantic.el (semantic-before-toplevel-bovination-hook):
13024 New hook suggested by Klaus Berndl.
13025 (semantic-bovinate-toplevel): Do not parse anything if above hook returns nil.
13026 When a full reparse is needed, do not clear the cache till after the
13027 parse has happened, and everything was successful.
13029 2001-12-04 Eric M. Ludlam <zappo@gnu.org>
13031 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
13032 (semantic-c-nonterminal-children): New override fcn
13033 (semantic-default-c-setup): Add above override.
13035 * c.bnf (extern-c): Add quotes to the "C" string regex.
13037 * semanticdb.el (semanticdb-default-save-directory): New variable.
13038 (semanticdb-project-database): Added `reference-directory' slot.
13039 (semanticdb-create-database): Simplified if to existence of the found DB
13040 (semantic-get-database): Use `semantic-file-loaded-p'
13041 (semantic-file-loaded-p): Moved. Use eieio call.
13042 (semanticdb-file-table): Tables use file name w/out path.
13043 (semanticdb-full-filename): Tables use file name w/out path.
13044 (semanticdb-write-directory-p): Use new reference directory for tables.
13045 (semanticdb-cache-filename): New function to calc filename of a DB.
13046 (semanticdb-semantic-init-hook-fcn): use above Fcn for directory name.
13047 Always set the reference directory slot in the DB.
13048 Specify the file of new tables as the file name sans directory.
13050 * semantic-util-modes.el (semantic-auto-parse-bovinate):
13051 Enable syntax error `throw'ing. Catch
13052 those errors, and do not pester the user who is probably in the
13053 middle of thinking important thoughts, and is uninterested in having
13054 Emacs complain about such things.
13056 * semantic.el (semantic-flex-unterminated-syntax-throw-symbol):
13058 (semantic-flex): `throw' an error for incomplete syntax when above is non-nil.
13060 * working.el (working-message):
13061 Only display a canned message for the first entry.
13062 (working-status-forms): Clear mode line when using modeline mode.
13063 (working-status-timeout): Clear mode line when using modeline mode.
13065 2001-12-03 David Ponce <david@dponce.com>
13067 * semantic-util-modes.el (semantic-auto-parse-timer):
13068 Moved before first use.
13069 (semantic-auto-parse-idle-time): Added `:set' clause to re-setup the
13070 `semantic-auto-parse-timer' when the idle time value is changed.
13072 2001-12-03 Eric M. Ludlam <zappo@gnu.org>
13074 * semantic.el: Updated version to 1.4 beta 13
13076 2001-11-30 David Ponce <david@dponce.com>
13078 * working.el (append global-mode-string):
13079 Quoted `working-mode-line-message'.
13081 2001-11-30 Eric M. Ludlam <zappo@gnu.org>
13083 * semantic-util-modes.el (global-semantic-show-dirty-mode): Doc fix.
13084 (semantic-show-dirty-mode-setup): Doc fix.
13085 Use `semantic-make-local-hook' alias.
13086 (global-semantic-show-unmatched-syntax-mode): Doc fix
13087 (semantic-show-unmatched-syntax-mode-setup):
13088 Use `semantic-make-local-hook' alias.
13089 (semantic-auto-parse-working-in-modeline-flag): New variable
13090 (global-semantic-auto-parse-mode): Doc Fix
13091 (semantic-auto-parse-bovinate): Doc fix.
13092 Use the mode-line to display working messages when auto-parsing.
13093 (semantic-auto-parse-mode-setup): Doc Fix
13094 (semantic-auto-parse-mode): Doc Fix
13095 (global-semantic-summary-mode): Doc Fix
13096 (semantic-summary-mode-setup): Doc Fix
13097 (semantic-summary-mode): Doc Fix
13099 * working.el (working-message):
13100 Added sit-for to help force modeline updates.
13102 * semantic-c.el: New c.bnf fix for include filename.
13104 * c.bnf (filename): Fixed OLE to get the string from filename prefix.
13107 If `global-mode-string' is available, use it as the location to
13108 display mode-line based working messages.
13110 * senator.el (senator-minor-mode-setup):
13111 Use `semantic-make-local-hook' alias.
13113 * semantic-imenu.el (semantic-create-imenu-index):
13114 Use `semantic-make-local-hook' alias.
13116 * semantic.el (semantic-make-local-hook): New alias
13117 (semantic-set-toplevel-bovine-cache): Use this alias.
13119 * semantic-util-modes.el (semantic-auto-parse-bovinate):
13120 Enable quiting during a parse.
13122 * semantic-load.el: Add .bnf as a speedbar extension.
13123 New variable `semantic-load-turn-useful-things-on'.
13124 Consider which-func to be non-useful.
13125 Consider show-dirty-mode non-useful.
13126 Do not load semantic-sb for speedbar. This already happens.
13128 * semantic-util.el (semantic-bucketize):
13129 Remove ref to speedbar in doc string.
13131 * semanticdb.el (semanticdb-semantic-init-hook-fcn):
13132 When a table isn't valid, do not
13133 force a parse. This will happen in time.
13136 Changed how speedbar support for BNF files were added.
13138 * semantic-c.el: New c.bnf supporting float.h.
13141 Added support for float.h, where `float' was snagged as a keyword.
13143 2001-11-26 David Ponce <david@dponce.com>
13145 * semantic.el (semantic-flex): Handle broken strings.
13147 * senator.el (senator-minor-mode-name):
13148 Defined as constant. Moved just before it
13150 (senator-minor-mode-isearch-suffix): Ditto.
13152 (senator-minor-mode-on-hook): Removed.
13153 (senator-minor-mode-off-hook): Removed.
13154 (senator-minor-mode): Don't run on/off mode hooks.
13156 (senator-register-mode-menu-entry["Summaries"]): Added.
13157 (senator-register-mode-menu-entry"[Which Function"]): Added when
13158 'which-func feature is available.
13160 * semantic-util-modes.el (semantic-propertize):
13161 New function. Return a copy of STRING with
13162 text properties added.
13164 (semantic-mode-line-prefix): New option. Prefix added to minor mode
13165 indicators in the mode line. The default value use
13166 `semantic-propertize' to have this string displayed in 'bold face on
13169 (semantic-mode-line-update): Skip empty strings. Use
13170 `semantic-mode-line-prefix'.
13172 (semantic-show-dirty-mode-on-hook): Removed.
13173 (semantic-show-dirty-mode-off-hook): Removed.
13174 (semantic-show-dirty-mode): Don't run on/off mode hooks.
13176 (semantic-show-unmatched-syntax-mode-on-hook): Removed.
13177 (semantic-show-unmatched-syntax-mode-off-hook): Removed.
13178 (semantic-show-unmatched-syntax-mode): Don't run on/off mode hooks.
13180 (semantic-auto-parse-mode-on-hook): Removed.
13181 (semantic-auto-parse-mode-off-hook): Removed.
13182 (semantic-auto-parse-mode): Don't run on/off mode hooks.
13184 (global-semantic-summary-mode): New function. Toggle global use of
13185 `semantic-summary-mode'.
13186 (global-semantic-summary-mode): New variable. If non-nil enable
13187 global use of summary mode.
13188 (semantic-summary-mode-hook): New hook. Run at the end of function
13189 `semantic-summary-mode'.
13190 (semantic-summary-mode-map: New variable. Keymap for summary minor
13192 (semantic-summary-mode: New variable. Non-nil if summary minor mode
13194 (semantic-summary-mode-setup: New function. Setup
13195 `semantic-summary-mode'.
13196 (semantic-summary-mode): New function. Minor mode to show useful
13197 things about tokens in echo area.
13198 (semantic-add-minor-mode[semantic-summary-mode]): Added.
13200 * semantic-load.el: Added autoloads for `semantic-summary-mode'.
13201 (when semantic-load-turn-everything-on): Use
13202 `global-semantic-summary-mode'.
13204 2001-11-26 Richard Y. Kim <ryk@ap.com>
13206 * semantic.texi: Added "Lexer Overview" and "Lexer Output" nodes.
13208 2001-11-23 Richard Y. Kim <ryk@ap.com>
13210 * semantic.texi: Fixed a typo in last checkin. Sorry.
13212 * semantic.texi: Created "Overview" and "Semantic Components" chapters.
13214 2001-11-22 Eric M. Ludlam <zappo@gnu.org>
13216 * semantic-sb.el (semantic-fetch-dynamic-bovine):
13217 Set out to t when there is no parser available.
13219 2001-11-21 David Ponce <david@dponce.com>
13221 * senator.el (senator-minor-mode-name): Use "n" as default value.
13222 (senator-minor-mode-isearch-suffix): Use "i" as default value.
13224 (senator-jump-regexp): Added autoload cookie.
13226 (senator-register-mode-menu-entry["Senator"]): No more use
13229 (senator-status): Renamed from `senator-mode'.
13231 (senator-mode-line-update): Renamed from `senator-show-status'. Use
13232 `senator-status'. Use `semantic-mode-line-update' instead of
13233 `force-mode-line-update'. Removed "Emacs 21 goodies".
13235 (senator-minor-mode-setup): Removed call to `senator-show-status'.
13237 (senator-minor-mode): Use `senator-mode-line-update' instead
13238 of `force-mode-line-update'.
13239 (senator-isearch-toggle-semantic-mode): Ditto.
13240 (senator-isearch-mode-hook): Ditto.
13242 (semantic-add-minor-mode[senator-minor-mode]): Use 'senator-status.
13244 (semantic-add-minor-mode[senator-isearch-semantic-mode]): Added.
13246 * semantic-util-modes.el (semantic-update-mode-line):
13247 New option. If non-nil show enabled
13248 minor modes in the mode line.
13250 (semantic-minor-modes-status): New variable. String displayed in the
13251 mode line to show the Semantic minor modes which are locally enabled.
13253 (semantic-minor-mode-alist): New variable. Alist saying how to show
13254 Semantic minor modes in the mode line.a
13256 (semantic-mode-line-update): New function. Update display of Semantic
13257 minor modes in the mode line.
13259 (semantic-add-minor-mode): Update `semantic-minor-mode-alist'. Lazily
13260 install `semantic-minor-modes-status' as a dummy minor mode used to
13261 show Semantic minor modes status in the mode line.
13263 (semantic-show-dirty-mode): Use `semantic-mode-line-update'.
13264 (semantic-show-unmatched-syntax-mode): Ditto.
13265 (semantic-auto-parse-mode): Ditto.
13267 (semantic-add-minor-mode[semantic-show-dirty-mode]): Use "d" to
13268 indicate that the minor mode is enabled.
13269 (semantic-add-minor-mode[semantic-show-unmatched-syntax-mode]): Use
13270 "u" to indicate that the minor mode is enabled.
13271 (semantic-add-minor-mode[semantic-auto-parse-mode]): Use "a" to
13272 indicate that the minor mode is enabled.
13274 * semanticdb.el (global-semanticdb-minor-mode): Fixed bad setting of
13275 `semanticdb-global-mode'.
13277 2001-11-19 Richard Y. Kim <ryk@ap.com>
13280 Added comments on semantic-flex and in "document" node.
13281 This is only the first of many additions to be made in the future.
13283 2001-11-17 Eric M. Ludlam <zappo@gnu.org>
13285 * tests/test.cpp: Added extern "C" samples.
13287 2001-11-17 David Ponce <david@dponce.com>
13289 * senator.el (senator-last-local-item-name): Removed.
13290 (senator-last-global-item-name): Removed.
13291 (senator-new-menu-item-name): Removed.
13293 (senator-modes-menu-cache): New variable. Cache the last computed
13294 value of the "Modes" sub-menu.
13296 (senator-register-command-menu): Renamed from
13297 `senator-register-mode-menu-item'. Register and return a command menu
13298 specification instead of a pre-build menu item.
13299 (senator-register-mode-menu-entry): Clear the cached menu. Register
13300 specifications instead of actual menu items. Thus the menu building
13301 is clearly a separated task.
13303 (senator-base-local-label): New constant. Default name of the menu
13304 item used to change minor mode buffer local setting.
13305 (senator-base-global-label): New constant. Default name of the menu
13306 item used to change minor mode global setting.
13307 (senator-uniquify-count): New variable. Used to generate unique menu
13310 (senator-build-command-menu-item): New function. Return a command
13311 menu item with an unique name.
13313 (senator-build-mode-menu-items): With window system display minor mode
13314 labels as a disabled menu items to get a consistent look of the
13315 "Modes" menu both in Emacs and XEmacs. On text-only terminal no more
13316 use the hard coded strings " (In this buffer)" and " (Globally)" but
13317 the corresponding default name constant.
13319 (senator-build-modes-menu): Compute the value of the menu only if
13320 necessary. Return a cached value when available.
13321 Use "--" instead of single "-" for menu separator. The "Emacs Lisp
13322 Reference Manual" says that "separator-type is a string starting with
13323 two or more dashes".
13325 (senator-menu-bar): Use "--" instead of single "-" for menu separator.
13327 (semantic database menu item): When selected show if the database is
13328 persistent (saved on disk) or only available for the current session.
13330 2001-11-17 Eric M. Ludlam <zappo@gnu.org>
13332 * semantic-texi.el (semantic-default-texi-setup): Added autoload
13334 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
13335 (semantic-expand-c-nonterminal): Expand batched extern "c" entries.
13336 (semantic-default-c-setup): Added autoload
13338 * c.bnf (declaration): Added extern-c entry
13339 (extern-c-contents, extern-c): new rules
13341 * semantic-bnf.el (bnf-mode, semantic-bnf-mode): Added autoload
13343 * semantic-chart.el (semantic-chart-nonterminals-by-token):
13345 (semantic-chart-database-size): Added autoload
13346 (semantic-chart-nonterminal-complexity-token): Added autoload
13348 * semanticdb.el (global-semanticdb-minor-mode): Added autoload
13350 * semantic-el.el (semantic-default-elisp-setup): Added autoload
13352 * semantic-java.el (semantic-default-java-setup): Added autoload
13354 * semantic-make.el (semantic-default-make-setup): Added autoload
13356 * semantic-scm.el (semantic-default-scheme-setup): Added autoload
13358 * semantic-skel.el (semantic-default-skel-setup): Fixed typo in name.
13360 2001-11-14 David Ponce <david@dponce.com>
13362 * semantic-sb.el (semantic-fetch-dynamic-bovine):
13363 Fixed. Didn't get the tokens
13364 returned by `semantic-bovinate-toplevel'.
13366 * senator.el (senator-menu-item): Moved before it is first used.
13368 (senator-last-local-item-name): New variable.
13369 (senator-last-global-item-name): Ditto.
13370 (senator-registered-mode-entries): Ditto.
13371 (senator-registered-mode-settings): Ditto.
13373 (senator-new-menu-item-name): New function. Return a new unique
13374 generated menu item name.
13376 (senator-register-mode-menu-item): New function. Register a minor
13378 (senator-register-mode-menu-entry): New function. Register a minor
13380 (senator-build-mode-menu-items): New function. Return menu items for
13381 a registered minor mode.
13382 (senator-build-modes-menu): New function. Build and return the
13385 (senator-global-mode-options): Removed.
13386 (senator-global-mode-options-save): Renamed to
13387 `senator-save-registered-mode-settings'.
13389 (open code): Added registration of Semantic minor modes.
13391 (senator-menu-bar): Use `senator-build-modes-menu' to dynamically
13392 build the "Modes" sub-menu based on registered minor modes.
13394 2001-11-14 Eric M. Ludlam <zappo@gnu.org>
13396 * semantic.texi (miscellaneous): Renamed
13397 (minor modes): Added variable options for all the modes listed.
13399 * semantic-util-modes.el: (semantic-show-dirty-mode-*hook),
13400 (semantic-show-unmatched-syntax-mode-*hook),
13401 (semantic-unmatched-syntax-face),
13402 (semantic-auto-parse-mode-*hook): Add * as a user option.
13404 2001-11-13 Eric M. Ludlam <zappo@gnu.org>
13406 * semantic-util-modes.el (semantic-show-unmatched-syntax):
13407 Remove message about no bad syntax.
13409 2001-11-12 David Ponce <david@dponce.com>
13411 * senator.el (senator-global-mode-options):
13412 New constant. List of Semantic minor
13413 modes which can be enabled globally.
13415 (senator-global-mode-options-save): New command. Save current values
13416 of `senator-global-mode-options' using Custom."
13418 (senator-menu-bar): New menu items in the "Modes" sub-menu to toggle
13419 minor modes globally and save these settings via custom.
13421 * semanticdb.el (global-semanticdb-minor-mode):
13422 Set `semanticdb-global-mode' to the
13425 2001-11-10 Eric M. Ludlam <zappo@gnu.org>
13427 * semantic.texi (miscellaneous):
13428 Added `[global-]semantic-auto-parse-mode'.
13430 2001-11-10 David Ponce <david@dponce.com>
13432 * semantic.el (semantic-rebovinate-token):
13433 Removed specific error handler.
13435 (semantic-bovinate-nonterminal): Added general error handler.
13437 2001-11-08 Eric M. Ludlam <zappo@gnu.org>
13439 * semantic-make.el: New make.bnf 1.9
13441 * make.bnf (Makefile): Handle blank lines
13443 * Project.ede: Updated the web directory
13445 * senator.el, semantic-load.el, semantic-imenu.el, semantic.el:
13446 Removed all ^M line endings.
13448 * NEWS: Added new news.
13450 2001-11-07 David Ponce <david@dponce.com>
13452 * wisent/wisent-bovine.el (wisent-collect-unmatched-syntax):
13454 `wisent-skip-token-hook' hook function to add a lexical token to the
13455 cache of unmatched tokens.
13457 (wisent-bovinate-nonterminals): Use it to collect unmatched syntax
13460 (wisent-bovinate-toplevel): Clear the cache of unmatched syntax
13461 tokens after a partial re-parse.
13463 * wisent/wisent.el (wisent-skip-token-hook):
13464 New variable. Hook run when the parser
13465 skips a lexical token.
13467 (wisent-skip-token): Run `wisent-skip-token-hook'.
13468 (wisent-skip-block): Ditto.
13469 (wisent-parse): Ditto.
13471 (wisent--maxrhs, wisent-set-max-rhs): Removed. Unused.
13475 * semanticdb.el (semanticdb-toggle-global-mode):
13476 No more call `semanticdb-kill-hook'.
13477 When `semanticdb-write-directory-p' returns nil, that is indicating to
13478 not write the DB on disk, overlays were removed from the token cache
13479 by `semanticdb-kill-hook' and not recreated.
13481 * semantic-util-modes.el (semantic-auto-parse-interval): Removed.
13483 (semantic-auto-parse-idle-time): New variable. Time in seconds of
13484 idle time before auto-reparse.
13486 (semantic-auto-parse-timer): No more buffer local. Now an idle timer.
13488 (semantic-auto-parse-bovinate): Moved. Does nothing if
13489 `semantic-auto-parse-mode' is not enabled.
13491 (semantic-auto-parse-enabled-p): Moved. Also check
13492 `semantic-auto-parse-mode'.
13494 (semantic-auto-parse-triggering-delay): Removed.
13495 (semantic-auto-parse-change-hook): Removed.
13496 (semantic-auto-parse-stop-after-parse): Removed.
13498 (semantic-auto-parse-setup-timer): New function. Lazy initialization
13499 of the auto parse idle timer.
13500 (semantic-auto-parse-mode-setup): Use it.
13502 2001-11-02 David Ponce <david@dponce.com>
13504 * semantic.el (semantic-set-toplevel-bovine-cache):
13505 Made `after-change-functions'
13506 hook local using `make-local-hook' before using `add-hook' with the
13509 * semantic-imenu.el (semantic-create-imenu-index): Made
13510 `semantic-before-toplevel-cache-flush-hook' and
13511 `semantic-clean-token-hooks' locals using `make-local-hook' before
13512 using `add-hook' with the LOCAL flag set.
13514 * senator.el (senator-menu-bar): Added auto parse to "Modes" sub-menu.
13516 (senator-minor-mode-setup): Made
13517 `semantic-before-toplevel-cache-flush-hook' and
13518 `semantic-clean-token-hooks' locals using `make-local-hook' before
13519 using `add-hook' with the LOCAL flag set.
13521 * semantic-load.el:
13522 Added autoloads for `semantic-auto-parse-mode' minor mode.
13523 Turn on `global-semantic-auto-parse-mode' when
13524 `semantic-load-turn-everything-on' is non-nil.
13526 * semantic-util-modes.el:
13527 New `semantic-auto-parse-mode' minor mode to auto reparse buffer.
13529 (semantic-auto-parse-no-working-message): New variable. Non-nil
13530 disable display of working message during auto-parse.
13531 (semantic-auto-parse-interval): New variable. Time in seconds between
13532 buffer change and reparse.
13533 (semantic-auto-parse-max-buffer-size): New variable. Maximum size in
13534 bytes of buffers automatically reparsed.
13535 (semantic-auto-parse-timer): New variable. Timer used to schedule
13537 (semantic-auto-parse-bovinate): New function. Reparse the current
13539 (semantic-auto-parse-enabled-p): New function. Return non-nil if
13540 auto-parse is enabled for this buffer.
13541 (semantic-auto-parse-triggering-delay): New function. Return the time
13542 in seconds before auto-parse triggering.
13543 (semantic-auto-parse-change-hook): New function. Hook run to schedule
13544 the auto-parse task when Semantic detects a change in the current
13546 (semantic-auto-parse-stop-after-parse): New function. Hook run to
13547 stop scheduled auto-parse task after Semantic changed the token cache.
13548 (global-semantic-auto-parse-mode): New variable. If non-nil enable
13549 global use of auto-parse mode.
13550 (global-semantic-auto-parse-mode): New function. Toggle global use of
13551 `semantic-auto-parse-mode'.
13552 (semantic-auto-parse-mode-hook): New variable. Hook run at the end of
13553 function `semantic-show-dirty-mode'.
13554 (semantic-auto-parse-mode-on-hook): New variable. Hook run when
13555 auto-parse minor mode is turned on.
13556 (semantic-auto-parse-mode-off-hook): New variable. Hook run when
13557 auto-parse minor mode is turned off.
13558 (semantic-auto-parse-mode): New variable. Non-nil if auto-parse minor
13560 (semantic-auto-parse-mode-setup): New function. Setup
13561 `semantic-auto-parse-mode'.
13562 (semantic-auto-parse-mode): New function. Minor mode to auto parse
13563 buffer following changes.
13565 2001-10-31 Eric M. Ludlam <zappo@gnu.org>
13567 * semantic-util.el (semantic-prototype-nonterminal-default):
13568 Support reference &
13569 (semantic-uml-token-or-string-to-string): Support pointers *, and references &
13571 * working.el (working-mode-line-update): New compat alias
13572 (working-mode-line-message, working-use-echo-area-p): New vars
13573 (working-message): Renamed to working-message-echo.
13574 New function that obeys working-use-echo-area-p.
13575 (working-status-forms): Always reset working-mode-line-message
13576 (working-status-timeout): Resest working-mode-line-message
13577 (working-verify-mode-line): New test function.
13579 * semantic-sb.el (semantic-fetch-dynamic-bovine):
13580 If a file isn't in semanticdb, load
13581 it and bovinate it.
13583 2001-10-30 Eric M. Ludlam <zappo@gnu.org>
13585 * semanticdb.el (semanticdb-semantic-init-hook-fcn):
13586 For backward compatibility with
13587 old cache files, handle the case when the unmatched-syntax slot
13590 2001-10-28 Eric M. Ludlam <zappo@gnu.org>
13592 * semanticdb.el (semanticdb-table): Add unmatched-syntax slot.
13593 (semanticdb-semantic-init-hook-fcn): Set the unmatched syntax cache.
13594 (semanticdb-post-bovination-unmatched-syntax): New hook fcn.
13595 (semanticdb-hooks): Set our init hook into `semantic-init-db-hooks'.
13597 * semantic.el (semantic-init-db-hooks):
13598 New hook variable for semanticdb.
13599 (semantic-new-buffer-fcn): Call semantic-init-db-hooks before other hooks.
13600 (semantic-set-unmatched-syntax-cache): New function for semanticdb.
13601 (semantic-bovinate-nonterminals): Indent change.
13603 * semantic-load.el: Enable show-unmatched-syntax-mode by default.
13605 * tests/test.cpp (class3): Add local var.
13606 (method3_for_class3): Added class with parent decl-mods.
13608 * tests/test.c (dont_show_function): Text if 0 code.
13609 (vara4): Test casting in an expression.
13610 (funk3): Added interesting conditions to call to fun3
13612 * semantic.texi (Local Context):
13613 Removed old context analysis functions.
13614 Added xref to to new context analysis section.
13616 * semantic-analyze.el (semantic-analyze-token-type):
13617 New function extraced from
13618 'semantic-analyze-find-nonterminal-sequence'
13619 (semantic-analyze-find-nonterminal-sequence): Extracted token type analysis.
13620 (semantic-analyze-scoped-nonterminals): Added a comment about getting
13622 (semantic-analyze-scoped-types): Add in scope from functions with
13623 parnts. Add in context scopes (eg. code-wise use clauses)
13624 (semantic-analyze-possible-completions): Fixed search to use the
13626 Add in search for the local scope.
13628 * semantic-sb.el (semantic-sb-insert-details):
13629 When inserting a type's parts, bucketize
13630 them if they appear as tokens.
13632 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf 1.49
13633 (semantic-expand-c-nonterminal): Extract default value for vars
13635 * c.bnf (codeblock): Use codeblock-var-or-fun instead of var-or-fun
13636 (class-parents): Add opt-class-declmod to one-parent case.
13637 (opt-name): empty name gets "" string instead of nil.
13638 (opt-ref): Pass back a 1 for a ref match
13639 (codeblock-var-or-fun): New rule. Don't match anon types.
13640 (opt-initializers): Add coma prefixed initializer.
13641 (variablearg): Pass down a reference
13642 (expression): Send back start/end of the expression.
13644 2001-10-26 David Ponce <david@dponce.com>
13646 * semantic.el (semantic-unmatched-syntax-cache):
13647 New variable. Cached copy of
13648 unmatched syntax tokens.
13650 (semantic-unmatched-syntax-cache-check): New variable. Non nil if the
13651 unmatched syntax cache is out of date.
13653 (semantic-overlay-error-recovery-stack): Removed.
13654 (semantic-overlay-stack-add): Removed.
13655 (semantic-overlay-stack-clear): Removed.
13657 (semantic-bovine-umatched-syntax-refresh-needed-p): New function.
13658 Return non-nil if the unmatched syntax cache needs a refresh.
13660 (semantic-clear-unmatched-syntax-cache): New function. Clear
13661 `semantic-unmatched-syntax-cache'.
13663 (semantic-bovinate-unmatched-syntax): New function. Return the list
13664 of unmatched syntax tokens.
13666 (semantic-clear-toplevel-cache): Call
13667 `semantic-clear-unmatched-syntax-cache'.
13669 (semantic-bovinate-toplevel): Call
13670 `semantic-clear-unmatched-syntax-cache' after partial re-parse. Use
13671 `semantic-overlay-list' to setup token overlays after full re-parse.
13673 (semantic-set-toplevel-bovine-cache): Set
13674 `semantic-unmatched-syntax-cache-check' to nil. Run hook
13675 `semantic-unmatched-syntax-hook' to refresh highlighting of unmatched
13678 (semantic-change-function): Set
13679 `semantic-unmatched-syntax-cache-check' to t.
13681 (semantic-raw-to-cooked-token): Replaced token overlay by vector of
13682 START END positions.
13684 (semantic-bovinate-nonterminals): Setup
13685 `semantic-unmatched-syntax-cache'. No more use overlay recovery
13686 stack. No more run `semantic-unmatched-syntax-hook'.
13688 (semantic-rebovinate-token, semantic-bovinate-nonterminal): No more
13689 setup token overlays.
13691 * semantic-util-modes.el:
13692 (semantic-unmatched-syntax-overlay-p): New function.
13694 (semantic-showing-unmatched-syntax-p): Use `semantic-overlays-in'
13695 instead of `semantic-overlay-lists'. Use
13696 `semantic-unmatched-syntax-overlay-p'.
13698 (semantic-clean-unmatched-syntax-in-region):Moved for clarity.
13699 (semantic-clean-token-of-unmatched-syntax): Ditto.
13701 (semantic-clean-unmatched-syntax-in-buffer): New function.
13703 (semantic-hide-unmatched-syntax): Removed. Replaced by
13704 `semantic-clean-unmatched-syntax-in-buffer'.
13706 (semantic-show-unmatched-syntax): Clear any previous highlighting.
13707 No more use `semantic-overlay-stack-add'. Comment fixes.
13709 (semantic-next-unmatched-syntax): Use
13710 `semantic-unmatched-syntax-overlay-p'.
13712 (semantic-show-unmatched-syntax-mode-setup): Use the function
13713 `semantic-bovinate-unmatched-syntax' to get the list of unmatched
13714 syntax tokens. Then call `semantic-show-unmatched-syntax' to
13717 2001-10-26 Eric M. Ludlam <zappo@gnu.org>
13719 * document.el (document-massage-to-texinfo):
13720 When searching for things to wrap
13721 in @var, move search start point after each match to avoid
13722 double-match for THREE-WORD-SYMBOLS.
13724 * semantic-ctxt.el (semantic-ctxt-scoped-types, semantic-ctxt-scoped-types-default):
13727 * semantic-util.el (semantic-nonterminal-children-default):
13728 Handle anonymous types with children.
13730 2001-10-24 Eric M. Ludlam <zappo@gnu.org>
13732 * semantic.texi (Tools): Added a charts section
13733 (speedbar): Made note of semantic-load.el
13734 (imenu): Made note of semantic-load.el
13735 (charts): New section
13737 * semantic-util-modes.el (global-semantic-show-dirty-mode): Fixed doc.
13739 * semantic.texi (Bovinating, BNF conversion, Optional Lambda Expression):
13741 (Current Context): Renamed "suggestions" node to "syntax analysis"
13742 (Local Variables): Doc update from source
13743 (Derived Context): Doc update from source
13744 (Context Analysis): New section w/ doc copied from source
13745 (senator): xref syntax fix
13746 (miscellaneous): Updated from source. Added show-unmatched-syntax functions.
13748 * semantic-c.el: Updated for c.bnf
13749 (semantic-flex-c-if-0): Optimize #if 0 out of lexical stream.
13750 (semantic-flex-c-extensions): Added above.
13752 * c.bnf: Removed log comments.
13753 (unionparts): Fixed names
13754 (class-parents): Added opt-class-declmods.
13755 (typesimple): Fixed name of union parts
13756 (var-or-fun): Split to two sub-rules
13757 (opt-initializers): Fixed COMA case.
13758 (expression): Added cast info of an expression.
13760 * semantic-util-modes.el (semantic-show-dirty-mode-on-hook, semantic-show-dirty-mode-off-hook):
13763 * INSTALL: Fixed quoting problem with LOADPATH.
13765 * semanticdb.el (semanticdb-semantic-init-hook-fcn): Added comments.
13767 * semantic-load.el:
13768 Do not enable global-semantic-show-unmatched-syntax-mode when turning
13769 everything on until bugs in it are fixed.
13771 2001-10-17 Eric M. Ludlam <zappo@gnu.org>
13773 * semantic-bnf.el: By Juanma Barranquero <lektu@terra.es>:
13774 (which-func-modes): In Emacs 21, it can be t, so don't add
13777 2001-10-10 David Ponce <david@dponce.com>
13779 * wisent/wisent-java.el (wisent-java-get-local-variables):
13780 New implementation consistent with
13781 `semantic-java-get-local-variables'.
13783 * wisent/wisent-bovine.el (wisent-bovinate-region-until-error):
13784 New function. Counterpart of
13785 `semantic-bovinate-region-until-error'.
13787 2001-10-09 David Ponce <david@dponce.com>
13789 * semantic-ctxt.el (semantic-get-local-variables, semantic-get-local-arguments):
13793 * semantic-ctxt.el (semantic-get-local-variables): For consistency with
13794 `semantic-get-local-variables' return tokens without overlay.
13796 (semantic-get-all-local-variables-default): Always return a cons
13797 (LOCAL-ARGUMENTS . LOCAL-VARIABLES). Removed reversing of the result
13798 list because values returned by `semantic-get-local-arguments' and
13799 `semantic-get-local-variables' are already in correct order.
13801 2001-10-08 Eric M. Ludlam <zappo@gnu.org>
13804 Added an "example" target with skeletons bnf, and Lisp file.
13806 * semantic-load.el: Moved charting autoloads together.
13808 * semantic-c.el (semantic-toplevel-c-bovine-table): New c.bnf
13809 (semantic-c-classname): New state variable
13810 (semantic-c-reconstitute-token): handle constructor via
13811 `semantic-c-classname' and new auto-typeing information for implicitly
13813 (semantic-default-c-built-in-types): Deleted
13814 (semantic-default-c-setup): Don't assign
13815 `semantic-default-c-built-in-types'
13817 * c.bnf (unionpartsparts): new rule; used to be classparts
13818 (typesimple): When building a class, store off the classname found.
13819 Used to reconstitute functions later.
13820 (var-or-fun): Re-enable untyped functions and variables.
13822 * semantic-analyze.el (semantic-analyze-possible-completions):
13825 * semantic-analyze.el (semantic-analyze-current-local-variables):
13827 (semantic-analyze-find-nonterminal-sequence): Accept localvariable
13828 list, and scoped variable list.
13829 (semantic-analyze-type-parts, semantic-analyze-scoped-nonterminals,
13830 semantic-analyze-scoped-types): New functions
13831 (semantic-analyze-context, semantic-analyze-context-assignment,
13832 semantic-analyze-context-functionarg,
13833 semantic-analyze-context-return): New classes
13834 (semantic-analyze-current-context): Use new classes instead of hacking
13835 together a list. Collect new local variable and scoping information
13837 (semantic-analyze-type-constraint): New method set for new classes.
13838 (semantic-analyze-possible-completions): use new object returned by
13839 `semantic-analyze-current-context' to do the same thing.
13840 (semantic-analyze-show): New method set for new classes.
13841 (semantic-analyze-pop-to-context): Use new method.
13843 * semantic-util.el (semantic-default-built-in-types): Removed.
13845 * semantic.texi: Spelling and grammar fixes. (Thanks Colin Marquardt)
13846 Added detail about constructor specifier in tokens.
13848 * semantic-skel.el:
13849 Example on how to start an Emacs Lisp source target for a bnf file.
13851 * skeleton.bnf: Example on how to start a .bnf project.
13853 2001-10-08 David Ponce <david@dponce.com>
13855 * semantic-java.el (semantic-java-get-local-variables):
13856 New implementation consistent
13857 with `semantic-get-local-variables-default'.
13859 2001-10-05 David Ponce <david@dponce.com>
13861 * semantic-bnf.el: Merged wisent branch.
13863 * semantic.texi: Fixed typo.
13865 2001-10-05 Eric M. Ludlam <zappo@gnu.org>
13867 * semantic-analyze.el (semantic-analyze-current-local-variables):
13869 (semantic-analyze-find-nonterminals-by-prefix): New function
13870 (semantic-analyze-find-nonterminal-sequence): New arg TYPERETURN.
13871 (semantic-analyze-current-context): Get back the types from prefix
13872 sequence. Add them to the return value.
13873 (semantic-analyze-possible-completions): New command.
13874 (semantic-analyze-pop-to-context): Handle the types of the prefix.
13876 * semantic-c.el: New c.bnf
13878 * c.bnf (var-or-fun):
13879 Disable support (for now) of int declarations for vars
13880 and funs with unspecified types. Who does that anymore anyway?
13882 * semantic-ctxt.el (semantic-up-context):
13883 Specify a bounds type (ie, only go up withing
13884 the bounds of a specific token type.) Narrow region to that token.
13885 (semantic-up-context-default): Remove old narrowing code.
13886 (semantic-get-local-variables-default): Disable working messages.
13887 Go up w/in the scope of 'function only. Be sure to append old vars.
13888 (semantic-get-all-local-variables-default): Do not loop up contexts.
13889 Let the get-local-vars function do that.
13891 * semantic-util.el (semantic-find-nonterminal-by-type):
13892 Do not return built in types.
13893 This function is supposed to return non-type tokens which have TYPE
13896 * tests/test.c: Fixed typedef_of_anonymous_enum contents.
13898 * semantic-util-modes.el (semantic-next-unmatched-syntax): New function
13899 (semantic-clean-unmatched-syntax-in-region): Implemented.
13900 (semantic-clean-token-of-unmatched-syntax): New function for hook.
13901 (semantic-show-unmatched-syntax-mode-map): Add binding
13902 `semantic-show-unmatched-syntax-next'.
13903 (semantic-show-unmatched-syntax-mode-setup): Add pre clean token hook.
13904 (semantic-show-unmatched-syntax-next): New command.
13906 * semantic-ctxt.el (semantic-get-local-variables-default):
13907 Disable all hooks associated
13908 with unmatched syntax.
13910 * semantic-c.el: New c.bnf
13912 * c.bnf (UNDERP, UNDERUNDERP): New keywords
13913 (macro-or-include): Handle optional argument list
13914 (opt-define-arglist): New rules
13915 (var-or-func-decl): Account for optional _P before arglist.
13916 (opt-under-p): New rule
13917 (arg-list): Remove check for _P here. Regex wasn't working.
13918 (arg-sub-list): Unused.
13919 (expression): Add symbol as valid part.
13921 2001-10-04 David Ponce <david@dponce.com>
13923 * semantic-bnf.el (semantic-bnf-mode-keywords, semantic-bnf-syntax-help):
13925 to list of built ins.
13927 2001-10-04 Eric M. Ludlam <zappo@gnu.org>
13929 * tests/test.cpp: Forgot a semicolon.
13931 * tests/test.cpp, tests/test.c: A few more bits.
13933 * Project.ede: Added semantic-analyze.el
13935 * semantic-bnf.el (semantic-bnf-syntax-help):
13936 Added number to list of built ins.
13938 * semantic-util.el (semantic-current-nonterminal-of-type): New function
13939 (semantic-with-buffer-narrowed-to-current-token): New macro
13940 (semantic-with-buffer-narrowed-to-token): New macro
13942 * semantic.el (semantic-number-expression):
13943 Use number expression from semantic-java
13944 since it looks like the common way of parsing numbers for most
13947 * semantic-c.el: New c.bnf
13949 * c.bnf (expression): Use newer number token which handles floats.
13951 * semantic-ctxt.el (semantic-up-context-default):
13952 Narrow to current function token first.
13953 (semantic-get-local-variables-default): Collect variables from
13955 (semantic-ctxt-current-symbol-default): Break at beginning of buffer.
13956 (semantic-ctxt-current-argument): doc fix.
13957 (semantic-ctxt-current-argument-default): doc fix
13958 (semantic-suggest-lookup-item,
13959 semantic-suggest-variable-token-hierarchy,
13960 semantic-suggest-current-type): Deleted functionality moved to
13963 * semantic-analyze.el: Analysis of the current context.
13964 Uses semantic-ctxt to determine textual context around point.
13965 Uses searches to find the tokens associated with that context.
13967 2001-10-03 David Ponce <david@dponce.com>
13969 * wisent/wisent-java.el (wisent-java-number-regexp): Removed. Use
13970 `semantic-java-number-regexp' instead.
13972 (wisent-java-lex): Use `semantic-flex' 'number lexemes.
13974 (wisent-java-default-setup): BNF update.
13976 * wisent/wisent-java.bnf:
13977 In setup: Added setting of `semantic-number-expression'.
13979 * wisent/wisent-bovine.el (wisent-rebovinate-token):
13980 Call `semantic-pre-clean-token-hooks'.
13982 * semantic-java.el (semantic-java-number-regexp):
13983 New constant. Regular expression used
13984 by the lexer to match Java numbers.
13986 (semantic-toplevel-java-bovine-table, semantic-default-java-setup):
13989 * java.bnf: In setup: Added setting of `semantic-number-expression'.
13991 In grammar: Removed 'number nonterminal now directly provided as
13992 terminal by the lexer.
13995 Added (require 'senator) at compilation time to fix byte-compiler
13998 * senator.el (senator-menu-bar): New "Chart" and "Modes" sub-menus.
14000 * semantic.el: Added (require 'assoc) to fix byte-compiler warning.
14002 (semantic-flex): Fixed to handle numbers which are not symbols (that
14003 is for example floating point numbers starting with a dot like ".10").
14005 2001-10-03 Eric M. Ludlam <zappo@gnu.org>
14007 * semantic.texi (Settings): Added number expression doc.
14008 (Rules): Added large section about valid syntax tokens.
14010 * semantic-util-modes.el (global-semantic-show-dirty-mode): Doc Fix
14011 (semantic-show-dirty-mode-setup): Doc Fix
14012 (semantic-show-dirty-mode): Doc Fix
14013 (global-semantic-show-unmatched-syntax-mode): Doc Fix
14014 (semantic-clean-unmatched-syntax-in-region): New fn placeholder
14015 (semantic-show-unmatched-syntax-mode-map): Doc Fix
14016 (semantic-show-unmatched-syntax-mode-setup): Doc Fix
14017 (semantic-show-unmatched-syntax-mode): Doc Fix
14019 * Project.ede: Add semantic-util-modes.
14020 Update version number.
14022 * semantic-c.el: New c.bnf (1.43)
14024 * c.bnf (INLINE): Fix typo
14025 (opt-class-protection): EMPTY is valid match
14026 (opt-name): UNION can have class parts. Fix typedef name.
14027 (DECLMOD): Add METADECLMOD
14028 (metadeclmod, METADECLMOD): New rules
14029 (var-or-fun-decl): Accept metadeclmods in the middle.
14030 (fun-or-proto-end): Accept "= 0;" as a valid function end.
14031 (opt-expression): Deal with numbers.
14033 * semantic-chart.el (semantic-chart-database-size): New command.
14034 (semantic-chart-nonterminal-complexity-token): Get the Y label from
14035 token type name assoc list.
14037 * semantic-load.el: Added in chart autoloads.
14039 * semantic-bnf.el (semantic-bnf-mode-keywords):
14040 Support the new number keyword.
14042 * semantic-scm.el: New version of scheme.bnf.
14044 * scheme.bnf: Disable number matching.
14046 * semantic-make.el: New version of make.bnf.
14048 * make.bnf: Disable number matching.
14050 * semantic.el (semantic-version): Update to 1.4beta 12
14051 (semantic-pre-clean-token-hooks): New hook.
14052 (semantic-rebovinate-token): Call `semantic-pre-clean-token-hooks'
14053 (semantic-number-expression): New flex option
14054 (semantic-flex): Create number tokens from symbols if they match
14057 2001-10-02 David Ponce <david@dponce.com>
14059 * senator.el (global-senator-minor-mode):
14060 New variable and function to turn on/off
14061 `senator-minor-mode' in every Semantic enabled buffer.
14063 (senator-minor-mode): Added autoload cookie. Use
14064 `semantic-add-minor-mode' to register the minor mode.
14066 * semantic-util.el:
14067 (semantic-show-dirty-mode, semantic-show-unmatched-syntax-mode):
14068 All related code moved into semantic-util-modes.el.
14070 Added (require 'semantic-util-mode).
14072 * semantic-load.el: Updated minor mode autoloads.
14073 Use `global-senator-minor-mode', `global-semantic-show-dirty-mode' and
14074 `global-semantic-show-unmatched-syntax-mode' to globally turn on minor
14075 modes when `semantic-load-turn-everything-on' is non-nil.
14077 * semantic-util-modes.el:
14078 Initial revision. Implementation of Semantic minor modes.
14080 2001-09-30 David Ponce <david@dponce.com>
14082 * sformat.el (newstr):
14083 Local variable declared at compilation time to fix
14084 byte-compiler warnings.
14086 * senator.el (senator-completion-menu-window-offsets):
14087 Removed binding of unused
14090 (senator-minor-menu): Declared to fix byte-compiler warnings.
14092 (senator-minor-mode): Moved to fix byte-compiler warnings.
14094 2001-09-29 David Ponce <david@dponce.com>
14096 * semantic.el (semantic-dirty-token-hooks): Fixed doc string typo.
14098 (semantic-flex-start, semantic-flex-end, semantic-flex-text,
14099 semantic-bovine-toplevel-full-reparse-needed-p,
14100 semantic-bovine-toplevel-partial-reparse-needed-p): Moved to fix byte
14103 (semantic-token-with-position-p): To avoid implementation
14104 inconsistencies with `semantic-token-p' call it.
14106 (semantic-flex): Removed binding of unused local variable.
14108 * semantic-util.el:
14109 Require 'newcomment at compilation time to fix Emacs 21 byte-compiler
14112 (semantic-find-nonterminal-by-function): Ignore invalid children
14113 tokens when SEARCH-PARTS is not 'positiononly. Some improvements.
14115 (semantic-name-nonterminal, semantic-prototype-nonterminal-default,
14116 semantic-concise-prototype-nonterminal-default,
14117 semantic-uml-token-or-string-to-string,
14118 semantic-uml-abbreviate-nonterminal-default,
14119 semantic-uml-concise-prototype-nonterminal-default): Removed binding
14120 of unused local variables.
14122 * semantic-texi.el (semantic-texi-recursive-combobulate-list):
14123 Removed binding of unused
14126 * semantic-sb.el (semantic-sb-one-button):
14127 Removed binding of unused local variable.
14129 * semantic-imenu.el:
14130 Require 'imenu at compilation time to fix byte-compiler warnings.
14132 (semantic-create-imenu-index-1): Removed binding of unused local
14136 Require 'semantic-imenu at compilation time to fix byte-compiler
14139 * semantic-ctxt.el (semantic-ctxt-current-symbol-default, semantic-suggest-variable-token-hierarchy):
14140 Removed binding of unused
14144 Require 'semantic-imenu at compilation time to fix byte-compiler
14147 * semantic-bnf.el (semantic-bnf-find-setup-code, semantic-bnf-generate-and-load, semantic-bnf-find-state-position, semantic-bnf-ecsi):
14149 of unused local variables.
14151 * document.el (document-comment-start, document-comment-end, document-comment-line-prefix):
14152 Moved to document-vars.el to fix
14153 byte-compiler warnings.
14155 Removed extra (require 'document-vars).
14157 * document-vars.el:
14158 Require 'newcomment at compilation time to fix Emacs 21 byte-compiler
14161 (document-comment-start, document-comment-end,
14162 document-comment-line-prefix): Moved from document.el to fix
14163 byte-compiler warnings.
14165 2001-09-27 David Ponce <david@dponce.com>
14167 * wisent/wisent-java.el (wisent-java-default-setup): BNF update.
14169 * wisent/wisent-java.bnf:
14170 In setup: Removed unnecessary setting of `block-comment-end' which
14171 breaks `indent-new-comment-line'.
14173 * semantic-java.el (semantic-default-java-setup): BNF update.
14176 In setup: Removed unnecessary setting of `block-comment-end' which
14177 breaks `indent-new-comment-line'.
14179 2001-09-27 Eric M. Ludlam <zappo@gnu.org>
14181 * semantic-load.el: Added `semantic-show-unmatched-syntax-mode'.
14183 * semantic.el (semantic-unmatched-syntax-hook): New hook.
14184 (semantic-bovinate-nonterminals): Track all unmatched syntax elements.
14185 Call new hook with the unmatched syntax.
14187 * semantic-util.el (semantic-find-nonterminal-by-overlay, semantic-find-nonterminal-by-overlay-in-region, semantic-find-nonterminal-by-overlay-next, semantic-find-nonterminal-by-overlay-prev):
14188 Make sure the 'semantic
14189 part of the overlay is a token to be valid while searching.
14190 (semantic-show-unmatched-syntax-mode): New user option.
14191 (semantic-unmatched-syntax-face): New face.
14192 (semantic-show-unmatched-syntax): New function
14193 (semantic-show-unmatched-syntax-mode): New mode.
14195 2001-09-26 Eric M. Ludlam <zappo@gnu.org>
14197 * semantic-c.el (semantic-toplevel-c-bovine-table): Updated from c.bnf
14199 * c.bnf (enumsubparts): Account for commas
14200 (arg-sub-list): Account for commas
14201 (opt-expression): Account for floating point numbers,
14202 or struct dereferences.
14204 2001-09-26 David Ponce <david@dponce.com>
14206 * semantic-chart.el (semantic-chart-nonterminals-by-token):
14207 Changed the call to
14208 `semantic-find-nonterminal-by-token' to search in sub-parts of tokens.
14210 (semantic-chart-nonterminal-complexity-token): Changed call to
14211 `semantic-find-nonterminal-by-token' to use 'positiononly instead of
14214 * semantic-util.el (semantic-find-nonterminal-by-function):
14216 'positiononly value of the SEARCH-PARTS argument.
14218 2001-09-26 Eric M. Ludlam <zappo@gnu.org>
14220 * semantic-chart.el: Added a name to the complexity chart.
14222 * semantic.el: Update version numbers.
14224 * Project.ede: Updated version.
14226 2001-09-21 David Ponce <david@dponce.com>
14228 * wisent/wisent-java.el: Fixed byte compilation warnings.
14230 * wisent/wisent-bovine.el (wisent-bovinate-toplevel):
14231 Call `garbage-collect' before parsing to
14232 optimize memory use.
14234 * wisent/wisent.el (wisent-noninteractive):
14235 New function. Return non-nil if running
14236 without interactive terminal.
14238 (wisent-log-file): New constant. The logging file.
14240 (wisent-append-to-log-file): New function. Append contents of
14241 `wisent-log-buffer' to `wisent-log-file'.
14243 (wisent-log-conflicts): Display the number of conflicts found in the
14244 message log buffer or on console output when running in batch mode.
14246 (wisent-build-tables): In batch mode append the contents of the log
14247 buffer to `wisent-log-file'.
14249 * semantic.el (semantic-token-name, semantic-token-get, semantic-token-start, semantic-token-end, semantic-token-buffer, semantic-token-p, semantic-bovine-toplevel-full-reparse-needed-p, semantic-bovine-toplevel-partial-reparse-needed-p):
14253 (semantic-bovinate-toplevel): Garbage collector is run before parsing
14254 and suspended during parsing to speed up the parser and optimize
14257 * working.el (working-message-emacs, working-message-xemacs):
14258 Do nothing if running
14261 (working-run-with-timer, working-cancel-timer): Default implementation
14262 uses `working-message' instead of `message'. Moved the definitions
14263 after definition of `working-message' to avoid byte compiler warnings.
14265 2001-09-20 David Ponce <david@dponce.com>
14267 * wisent/wisent-java.el (wisent-java-default-setup): BNF update.
14269 * wisent/wisent-java.bnf:
14270 In setup: Renamed `wisent-flex-function' to `wisent-lexer-function'.
14271 Added setup of `wisent-flex-depth'.
14273 * wisent/wisent-bovine.el (wisent-flex-istream):
14274 No more buffer local. Its value is local in
14275 function `wisent-bovinate-nonterminal'.
14277 (wisent-flex-depth): New variable to specify how `semantic-flex' will
14278 setup the lexer input stream.
14280 (wisent-flex-function): Renamed to more appropriate
14281 `wisent-lexer-function'.
14283 (wisent-lexer-wrapper): Minor improvements.
14285 (wisent-bovinate-nonterminal): Local binding of `gc-cons-threshold'
14286 moved into `wisent-bovinate-toplevel'.
14288 (wisent-rebovinate-token, wisent-bovinate-from-nonterminal-full): Use
14289 `wisent-flex-depth'.
14291 (wisent-bovinate-toplevel): Performance improvement.
14293 2001-09-18 Eric M. Ludlam <zappo@gnu.org>
14295 * semantic-ctxt.el (semantic-function-argument-separation-character):
14298 2001-09-18 David Ponce <david@dponce.com>
14300 * semantic-imenu.el (semantic-create-imenu-subindex):
14301 Use `imenu--split-submenus' to sort
14302 and split sub index.
14304 2001-09-18 Eric M. Ludlam <zappo@gnu.org>
14306 * semantic-c.el (semantic-c-nonterminal-protection):
14307 Only check for class/struct if
14308 the token is a type. Otherwise, always default to public.
14310 * semantic-el.el (semantic-elisp-prototype-nonterminal): Deleted
14311 (semantic-default-elisp-setup): Remove reference to above.
14312 Set `semantic-function-argument-separator' and
14313 `semantic-function-argument-separatiion' to good values.
14315 * semantic-util.el (semantic-test-all-token->text-functions):
14317 (semantic-function-argument-separator): New variable
14318 (semantic-prototype-nonterminal-default): Use new variable above.
14319 (semantic-concise-prototype-nonterminal-default): Use new variable above.
14320 (semantic-uml-token-or-string-to-string): Always display argument list.
14321 (semantic-uml-arguments-to-string): Use above new variable.
14323 2001-09-18 David Ponce <david@dponce.com>
14325 * wisent/wisent.el (wisent-quote-p, wisent-backquote-p, wisent-action-expand):
14327 functions to expand a semantic action expression and return the list
14328 of `$i' placeholders it actually uses.
14330 (wisent-reduce-action): Use `wisent-action-expand' to expand semantic
14331 action expression and only bind `$i' placeholders actually used.
14333 * semantic-bnf.el (semantic-bnf-to-lalr-action):
14334 Because macro expansions are
14335 implementation dependent, only expand `backquote' forms instead of all
14338 (semantic-bnf-quote-p, semantic-bnf-backquote-p): New functions.
14340 2001-09-17 David Ponce <david@dponce.com>
14342 * wisent/wisent-java.bnf (class_declaration, field_declaration, method_declaration, formal_parameter, constructor_declaration, interface_declaration, abstract_method_declaration):
14343 Use ASSOC built-in instead of direct
14344 call to `semantic-bovinate-make-assoc-list' in semantic actions.
14346 * semantic-bnf.el (semantic-bnf-to-lalr-ASSOC, semantic-bnf-to-lalr-EXPANDTHING, semantic-bnf-to-lalr-EXPAND, semantic-bnf-to-lalr-EXPANDFULL, semantic-bnf-to-lalr-action):
14347 New functions to expand semantic actions
14350 (semantic-bnf-to-lalr-builtins): New variable. Hold expanders of
14351 Semantic built-in functions in LALR grammar.
14353 (semantic-bnf-matching-to-lalr): Use `semantic-bnf-to-lalr-action' to
14354 expand semantic actions.
14356 2001-09-14 Eric M. Ludlam <zappo@gnu.org>
14358 * tests/test.cpp (class3::method5_for_class3): New testing post-const.
14359 (tinitializers1): test initializers.
14361 * tests/test.c (funk2): Added pointer test.
14362 (funk3): Added local variables.
14364 * Project.ede: Version update.
14365 Added semantic-chart.el to tools.
14367 * semantic-load.el: Added a semantic-chart autoload.
14369 * semantic-chart.el:
14370 Chart some aspects of a file based on what Semantic knows.
14371 (Requires eieio 0.17 beta 3 or better)
14373 * semantic-c.el: Removed broken commentary
14375 2001-09-14 David Ponce <david@dponce.com>
14377 * wisent/wisent.el: Header comments: doc fixes.
14379 (wisent-working-...): Removed.
14381 (wisent-pack-grammar, wisent-set-derives, wisent-set-nullable,
14382 wisent-generate-states, wisent-lalr, wisent-build-states,
14383 wisent-compact-action-table, wisent-build-action-table,
14384 wisent-build-goto-table, wisent-build-reduction-table,
14385 wisent-build-terminal-table, wisent-build-tables,
14386 wisent-compile-grammar): Use the working API instead of
14387 wisent-working-... wrappers.
14389 (wisent-compile-grammar): Doc string fixes.
14391 * working.el (working-status-dynamic-type):
14392 Added `working-text-display' to the
14393 list of available functions.
14395 (working-number-display): Doc string fix.
14397 (working-text-display): New function to display step strings.
14399 * semantic-el.el (semantic-expand-elisp-nonterminal):
14400 After expanding NONTERM delete
14401 the overlay from its buffer.
14403 2001-09-13 David Ponce <david@dponce.com>
14405 * wisent/wisent.el: Header comments: Doc improvement.
14407 (wisent-log-buffer): Separate each compile log in the log buffer.
14409 (wisent-show, wisent-show-all): Removed.
14411 (wisent-free-all): Added missing global values.
14413 (wisent-build-tables): Skip lines after logging.
14415 2001-09-12 David Ponce <david@dponce.com>
14417 * wisent/wisent-expr.el: Header comments: Doc fixes.
14419 (wisent-expr-grammar): Removed. No more used.
14421 (wisent-expr-parser-tables): Updated to new format of Wisent's input
14422 grammar. Minor grammar improvements. Doc string. Grammar compiled
14425 (wisent-expr-operators): Terminal symbol name changes. Doc string.
14427 (wisent-expr-digits): Removed. No more used.
14429 (wisent-expr-number-regexp): New constant. Lexer regexp used to parse
14432 (wisent-expr-lexer-input-stream): Doc string.
14434 (wisent-expr-lexer): Doc string. Use `wisent-expr-number-regexp' to
14435 parse numbers. Minor improvements.
14437 (wisent-expr-error): Removed. No more used.
14439 (wisent-expr-test): Renamed to `wisent-expr'. Minor improvements.
14441 * semantic.el (find-file-hooks):
14442 Replaced `semantic-change-major-mode-hook-function'
14443 by `semantic-post-change-major-mode-function'.
14445 * wisent/wisent.el (wisent-parse):
14446 Missing space in parse error message.
14448 2001-09-12 Eric M. Ludlam <zappo@gnu.org>
14450 * semantic.texi (Extra Specifiers): Fix end of table location.
14452 * semantic.el: Revert old find-file-hook behavior.
14454 2001-09-12 David Ponce <david@dponce.com>
14456 * wisent/wisent.el: Header comments: Minor doc fix.
14458 (wisent-process-nonterminal): Missing declaration of local variable
14461 (wisent-parse): Minor improvement of parse error message.
14463 * wisent/wisent-calc.bnf, wisent/wisent-calc.el:
14464 Initial revision of the infix notation calculator sample program.
14466 2001-09-12 Eric M. Ludlam <zappo@gnu.org>
14468 * semantic.el (semantic-version): beta10. Oy.
14469 (semantic-token-with-position-p): Make sure trailing array is not a string.
14470 (sematic-find-file-function): New hook function.
14471 (find-file-hooks): Add above.
14473 * semantic.texi (Extra Specifiers):
14474 Specify dereference spec for C example is a NUMBER.
14475 Specify new pionter spec.
14476 Specify new prototype flag.
14478 * semantic-util.el: Doc fixes.
14479 (semantic-prototype-nonterminal-default): Use new version of pointer value.
14481 * semantic-imenu.el (semantic-create-imenu-subindex):
14482 Only create submenues if the token
14483 being expanded has a position available for jumping and sorting.
14485 * semantic-el.el (semantic-elisp-use-read):
14486 Extract contents of `eval-and-load'.
14487 Support autoload as a prototyping mechanism for functions.
14488 (semantic-expand-elisp-nonterminal): Expand nested definition lists.
14489 (semantic-default-elisp-setup): Use above.
14491 * semantic-c.el: New c.bnf.
14493 * c.bnf (var-or-func-decl):
14494 Change to host multiple postfix fcn modifiers, and
14496 (opt-reentrant): deleted
14497 (opt-initializers, opt-post-fcn-modifiers, post-fcn-modifiers): New rules
14499 2001-09-11 David Ponce <david@dponce.com>
14501 * wisent/wisent.el:
14502 Header comments: New input grammar format. New conflicts handling.
14504 (wisent--rprec): New variable for rules precedence.
14506 (wisent-pack-grammar): Setup rules precedence.
14508 (wisent-add-action): Handle S/R conflicts using terminals
14509 associativity and precedence, and rules precedence.
14511 (wisent-build-tables): Minor improvements.
14513 (wisent-process-nonterminal, wisent-process-grammar): New input
14514 grammar format with terminals associativity and precedence, and rules
14517 * wisent/wisent-java.el (wisent-java-parser-tables):
14518 New grammar format.
14520 * semantic-bnf.el (semantic-bovine-bnf-table):
14521 Added rules for %nonassoc, %left, %right
14522 statements. And %prec specification in BNF rules.
14524 (semantic-bnf-keyword-table): Added NONASSOC, LEFT, RIGHT and PREC
14527 (semantic-bnf-token-assoc-terms): New macro to return the list of
14528 terminal names from an 'assoc token.
14530 (semantic-bnf-to-lalr, semantic-bnf-matching-to-lalr): Updated to
14531 produce new Wisent grammar format.
14533 (semantic-bnf-find-terminal-assocs): New function to return
14534 associativity rules of terminals.
14536 2001-09-06 David Ponce <david@dponce.com>
14538 * wisent/wisent.el (wisent--action-table, wisent--nitems, wisent--nrules, wisent--nvars, wisent--nterms, wisent--nstates):
14541 (wisent--rules, wisent--conflicts-by-state, wisent--conflicts): New
14544 (wisent-terminal-symbol, wisent-item-symbol): New functions to get
14545 symbol value from respectively a terminal ID and an item number.
14547 (wisent-log-starts, wisent-log-nullables, wisent-log-rules,
14548 wisent-log-conflicts, wisent-log-rr-conflict, wisent-log-sr-conflict):
14549 New logging functions.
14551 (wisent-show-nullable, wisent-show-starts): Removed. Replaced by
14552 respectively `wisent-log-nullables' and `wisent-log-starts'.
14554 (wisent-add-action): Doc string. Use `wisent-log-rr-conflict' and
14555 `wisent-log-sr-conflict' to log conflicts.
14557 (wisent-build-states): Doc string. Initialize `wisent--conflicts' and
14558 `wisent--conflicts-by-state'.
14560 (wisent-build-tables): Setup `wisent--rules'. Removed call to
14561 `wisent-show-nullable' and `wisent-show-starts'. Log conflicts and
14562 grammar stuff after the parser tables have been built.
14564 2001-09-03 David Ponce <david@dponce.com>
14566 * senator.el (senator-show-status):
14567 Emacs 21.0.105 compatibility change. Set
14568 `senator-mode' local-map property to `mode-line-minor-mode-keymap'.
14569 The function `make-mode-line-mouse2-map' no more exists in 21.0.105.
14571 (senator-mode-line-toggle): Removed because of new mode line design
14572 for minor mode in GNU Emacs 21.0.105.
14574 * wisent/wisent-java.el (wisent-java-parser-tables, wisent-java-default-setup):
14577 (wisent-java-lex): No more raise an error when it finds a
14578 `semantic-flex' token not yet used by the parser. Return a valid
14579 lexical token instead and let the parser handle it.
14581 (wisent-java-get-local-variables): New function. Java specific
14582 'get-local-variables' override that uses the LALR parser.
14584 * wisent/wisent-java.bnf: In setup:
14586 Added 'field_declarations_opt' %start nonterminal.
14587 'get-local-variables' override: replaced
14588 `semantic-java-get-local-variables' by
14589 `wisent-java-get-local-variables'.
14593 Added 'field_declarations_opt', `field_declarations' and
14594 `field_declaration_maybe' nonterminals used to parse method and
14595 constructor local variables.
14597 * wisent/wisent-bovine.el (wisent-bovinate-from-nonterminal-full):
14598 New function, counterpart of
14599 `semantic-bovinate-from-nonterminal-full' for the LALR parser.
14601 2001-08-31 David Ponce <david@dponce.com>
14603 * wisent/wisent-java.el (wisent-java-parser-tables): BNF update.
14605 * wisent/wisent-java.bnf: In grammar:
14607 Removed all "(identity $1)" semantic actions and "()" ones in EMPTY
14608 matches as they are now the defaults. Moved call to
14609 `wisent-java-expand-nonterminal' from 'field_declaration' production
14610 in 'class_member_declaration' non terminal to 'field_declaration' non
14611 terminal. So re-parsing at `field_declaration' produces valid
14614 * wisent/wisent-bovine.el (wisent-token):
14615 Added 'reparse-symbol property to token.
14617 (wisent-bovinate-nonterminal): Only keep valid Semantic tokens from
14618 data returned by the LALR parser. When parser fails it returns the
14619 top element of its value stack as it is. This let a chance to get any
14620 valid tokens pushed into the stack before the failure. But at some
14621 point the top of stack element can contain a garbage value. So this
14624 (wisent-rebovinate-token): New function to re-parse a token.
14626 (wisent-bovinate-toplevel): Now handle partial re-parse!
14628 (semantic-bovinate-toplevel): New advice to delegate bovination to
14629 `wisent-bovinate-toplevel' if defined in
14630 `semantic-bovinate-toplevel-override'. Currently necessary to let
14631 `wisent-bovinate-toplevel' handle partial re-parse because
14632 `semantic-bovinate-toplevel' always clears existing tokens before
14633 calling `semantic-bovinate-toplevel-override'!
14635 2001-08-30 David Ponce <david@dponce.com>
14637 * wisent/wisent-bovine.el (wisent-bovinate-nonterminal, wisent-bovinate-toplevel):
14639 setup to `wisent-bovinate-toplevel '.
14641 * wisent/wisent-java.bnf:
14642 In setup, added lexer used by the LALR parser and call to
14643 `semantic-java-doc-setup'.
14645 * wisent/wisent-java.el: Use wisent-bovine.el gateway.
14647 (semantic-flex-token-value, semantic-flex-token-key): Removed. Now in
14650 (wisent-java-lex-istream): Removed.
14652 (wisent-java-lex): Use `wisent-flex-istream' instead of
14653 `wisent-java-lex-istream'. Removed `working' stuff now provided in
14654 wisent-bovine.el gateway.
14656 (wisent-java-bovinate-toplevel): Removed. Replaced by
14657 `wisent-bovinate-toplevel' in wisent-bovine.el gateway.
14659 (wisent-java-default-setup): BNF update.
14661 (wisent-java-parse, wisent-java-lex-buffer): Removed.
14663 * wisent/wisent.el (wisent-token): Removed. Now in wisent-bovine.el.
14665 * wisent/wisent-bovine.el:
14666 Initial revision of the Wisent - Semantic gateway.
14668 * wisent/wisent-expr.el: Removed version number from header.
14670 2001-08-30 Eric M. Ludlam <zappo@gnu.org>
14672 * semantic-ctxt.el:
14673 (semantic-up-context, semantic-beginning-of-context,
14674 semantic-end-of-context, semantic-get-local-variables,
14675 semantic-get-local-arguments, semantic-get-all-local-variables,
14676 semantic-ctxt-current-symbol, semantic-ctxt-current-assignment,
14677 semantic-ctxt-current-function, semantic-ctxt-current-argument):
14678 Fixed bug going to (point) instead of `point'.
14679 (semantic-get-local-variables): deoverlay the local variables.
14680 (semantic-get-local-variables-default): Move to the beginning of the
14681 current context before parsing.
14683 2001-08-30 David Ponce <david@dponce.com>
14685 * wisent/wisent-java.el (wisent-java-default-setup): BNF Update.
14687 * wisent/wisent-java.bnf: In setup, override `get-local-variables' with
14688 `semantic-java-get-local-variables'.
14690 * semantic-java.el (semantic-java-get-local-variables):
14691 New function. Java specific
14692 `get-local-variables' override.
14694 (semantic-default-java-setup): Override `get-local-variables' with
14695 `semantic-java-get-local-variables'.
14697 2001-08-28 David Ponce <david@dponce.com>
14699 * semantic.texi: Synchronized with semantic.el doc fixes.
14701 Added missing documentation for
14702 `semantic-after-toplevel-cache-change-hook' and documented new hook:
14703 `semantic-after-partial-cache-change-hook'.
14705 * semantic.el (semantic-after-partial-cache-change-hook):
14708 (semantic-remove-dirty-children-internal): Moved.
14710 (semantic-remove-dirty-children): Moved. Now remove all children of
14711 dirty tokens from `semantic-dirty-tokens'.
14713 (semantic-bovinate-toplevel): Call `semantic-remove-dirty-children'
14714 before partial reparse. Pass the list of updated tokens to hooks in
14715 `semantic-after-partial-cache-change-hook'.
14717 (semantic-rebovinate-token): No more need to call
14718 `semantic-remove-dirty-children'.
14720 2001-08-27 David Ponce <david@dponce.com>
14722 * semantic.el (semantic-clean-token-hooks, semantic-change-hooks, semantic-after-toplevel-bovinate-hook, semantic-before-toplevel-cache-flush-hook):
14725 (semantic-after-partial-cache-change-hook): New variable holding hooks
14726 run after the buffer token list has been updated after partial reparse
14729 (semantic-bovinate-toplevel): Run hooks in
14730 `semantic-after-partial-cache-change-hook' after partial reparse
14733 * senator.el (senator-minor-mode-name):
14734 Can be set to nil to disable display of the
14735 minor mode name in the mode line.
14737 (senator-minor-mode-isearch-suffix): New option to set up the string
14738 appended to the mode name when senator isearch mode is on.
14740 (senator-minor-mode-hook, senator-minor-mode-on-hook,
14741 senator-minor-mode-off-hook): Moved to group minor mode options
14744 (senator-menu-bar): For consistency always use "Senator" for the menu
14747 (senator-show-status): Use `senator-minor-mode-name' and
14748 `senator-minor-mode-isearch-suffix' settings.
14750 (senator-minor-mode-setup): Signal an error when attempting to turn on
14751 Senator minor mode in a buffer not set up for parsing.
14753 (senator-show-status, senator-mode-line-toggle): New GNU Emacs 21
14754 goodies to turn off Senator minor mode from the mode line or to turn
14755 it on or off from the the minor mode menu in the mode line.
14757 2001-08-22 Eric M. Ludlam <zappo@gnu.org>
14759 * semantic-el.el (semantic-elisp-clos-slot-property-string, semantic-elisp-clos-args-to-semantic):
14761 (semantic-elisp-form-to-doc-string): extract class slot details with
14763 (semantic-elisp-nonterminal-protection): New function.
14764 (semantic-default-elisp-setup): Remove old UML overrides, added
14765 `nonterminal-protection' override.
14767 2001-08-21 David Ponce <david@dponce.com>
14769 * wisent/wisent.el: Updated header comments.
14771 (wisent-default-action, wisent-process-nonterminal): Bison like
14774 (wisent-compile-grammar, wisent-parse): Updated doc strings.
14776 2001-08-18 Eric M. Ludlam <zappo@gnu.org>
14778 * semantic-c.el: New c.bnf 1.40
14779 (semantic-expand-c-nonterminal): Handle 'pointer stuff for variables.
14780 (semantic-c-reconstitute-token): Handle 'pointer stuff for functions.
14782 * c.bnf: Fixed the inclusion of * in variables and functions.
14784 2001-08-17 Eric M. Ludlam <zappo@gnu.org>
14786 * tests/test.cpp: Added test for protected section in a class.
14788 * tests/test.c: "register" test.
14789 Last fn has situations for testing local context.
14791 * Project.ede: Version change.
14793 * semantic.el (semantic-version): Update
14794 (semantic-toplevel-bovine-table): Removed main help on this variable,
14795 the details are in the texinfo manual now.
14797 * semantic.texi: Added a section on Extra Specifiers
14799 * semantic-util.el (semantic-override-table): Doc udpate.
14801 * semantic-c.el: New c.bnf (1.39)
14802 (semantic-c-nonterminal-protection): Fix default protection based on
14804 (semantic-default-c-setup): Added `semantic-c-nonterminal-protection'
14805 to the list of function overrides.
14807 * c.bnf: Added register.
14808 Added template w/ comment, but don't use it.
14810 2001-08-17 David Ponce <david@dponce.com>
14812 * wisent/wisent-java.el (semantic-java-lex):
14813 Reverted back to previous implementation used
14814 to find operator lexical tokens. The regexp based approach is
14817 (wisent-java-operator-regexp): Removed.
14819 2001-08-16 David Ponce <david@dponce.com>
14821 * wisent/wisent-java.el:
14822 Reorganized the code to fix byte-compilation problems.
14824 * wisent/wisent-java.el (wisent-java-number-regexps):
14825 Removed. Replaced by
14826 `wisent-java-number-regexp'.
14828 (wisent-java-number-regexp): New constant. Regular expression to
14829 match Java numbers.
14831 (wisent-java-operator-regexp): New constant. Regular expression to
14832 match Java operators.
14834 (wisent-java-lex): Improved lexical analysis of Java numbers and
14835 operators. Use `wisent-java-number-regexp' and
14836 `wisent-java-operator-regexp' to do one shot check for a number or
14839 2001-08-15 Eric M. Ludlam <zappo@gnu.org>
14842 Added a style guide chapter, with lots of details about different
14843 tokens, and whats in them.
14845 2001-08-14 David Ponce <david@dponce.com>
14847 * wisent/wisent-java.bnf:
14848 Updated %outputfile to wisent-java.el and %parsetable to
14849 `wisent-java-parser-tables'. Added %start tokens for alternate entry
14850 point nonterminals.
14852 * wisent/wisent.el (wisent-compiled-grammar-p):
14853 New function to check if grammar is
14856 (wisent-compile-grammar): Use `wisent-compiled-grammar-p' to check if
14857 the grammar is already compiled. If so just return it.
14859 * wisent/wisent-java.el: Clean byte-compilation.
14861 (wisent-java-grammar, wisent-java-parens, wisent-java-operators):
14862 Removed. Replaced by respectively `wisent-java-parser-tables' and
14863 `wisent-java-tokens'.
14865 (wisent-java-parser-tables): Generated from wisent-java.bnf.
14867 (wisent-java-keywords, wisent-java-tokens): New constants for Java
14868 keywords and lexical tokens. Generated from wisent-java.bnf.
14870 (semantic-flex-token-value, semantic-flex-token-key): New functions to
14871 search in the token table. These two functions should be moved to
14874 (wisent-java-lex): Use lexical stuff generated from wisent-java.bnf.
14876 (wisent-java-bovinate-toplevel): Use local value of
14877 `semantic-toplevel-bovine-table' instead of
14878 `wisent-java-parser-tables'.
14880 (wisent-java-mode-hook): Removed. Replaced by
14881 `wisent-java-default-setup'.
14883 (wisent-java-default-setup): New `java-mode' hook to setup the
14884 Semantic environment of the LALR parser. Partly generated from
14885 wisent-java.bnf. It replaces the default
14886 `semantic-default-java-setup' hook when wisent-java.el is loaded.
14888 (wisent-java-parse, wisent-java-lex-buffer): Use local value of
14889 `semantic-toplevel-bovine-table' instead of
14890 `wisent-java-parser-tables'.
14892 * semantic-bnf.el (semantic-bnf-to-lalr):
14893 Added new argument for alternate entry point
14894 nonterminals. Now generate parser tables like this:
14897 (wisent-compile-grammar
14899 '<start-nonterminals>))
14901 Thus the parser tables are compiled into the byte-code when the
14902 destination file source is byte-compiled.
14904 (semantic-bnf-generate-and-load): Pass the list of 'start tokens to
14905 `semantic-bnf-to-lalr'.
14907 2001-08-13 David Ponce <david@dponce.com>
14909 * wisent/wisent-java.el (wisent-java-lex):
14910 Fixed (wrong-type-argument integer-or-marker-p nil)
14911 when scanning a number at end of input stream.
14913 (wisent-java-lex-buffer): Fixed error caused by missing `working'
14916 * wisent/wisent.el (wisent-starts-nonterm):
14917 New constant for secondary entry point
14920 (wisent-reserved-symbols): Removed '$<name>' nonterminals which are
14921 now automatically reserved for internal use.
14923 (wisent-show-nullable): Insert newline before title.
14925 (wisent-show-starts): New function to report entry point
14928 (wisent-valid-nonterminal-p): '$<name>' nonterminals are now
14929 automatically reserved for internal use.
14931 (wisent-valid-terminal-p): Use `wisent-valid-nonterminal-p'.
14933 (wisent-build-tables): Add the table of defined entry point
14934 nonterminals to the parser tables.
14936 (wisent-process-grammar): New optional argument to specify a list of
14937 entry point nonterminals. Build the table of entry point nonterminals
14938 and add the corresponding start productions to the grammar definition.
14940 (wisent-compile-grammar): New optional argument to specify a list of
14941 entry point nonterminals.
14943 (wisent-parse-start): New function to return the first lexical token
14946 (wisent-parse): New argument to specify the nonterminal production
14947 used at parser initial state. So the parser can now use grammar
14950 * semantic-bnf.el (semantic-bnf-find-table-destination-old, semantic-bnf-find-table-destination, semantic-bnf-find-keyword-destination):
14951 Fixed "def[var|const]" regular
14952 expression to ensure that the searched variable or constant name is on
14955 * wisent/wisent.el:
14956 New customization group `wisent'. Minor code reorganization.
14958 (wisent-parse-max-stack-size, wisent-parse-max-recover,
14959 wisent-state-table-size): Now customizable.
14961 * wisent/wisent-java.bnf: Fixed %keywordtable variable name.
14962 Added install of overloaded functions in setup.
14963 Use @tag notation for the javadoc keywords to avoid conflicts with
14964 language reserved words.
14966 * semantic-bnf.el (semantic-bnf-token-table):
14967 Added declaration of local variable tsymb.
14969 (semantic-beginning-of-body): New function to move the point to the
14970 beginning of a function body.
14972 (semantic-bnf-find-setup-code): Use `semantic-beginning-of-body' to
14973 insert new setup code at the beginning of the setup function.
14975 (semantic-bnf-find-table-destination-old,
14976 semantic-bnf-find-table-destination,
14977 semantic-bnf-find-keyword-destination,
14978 semantic-bnf-find-token-destination): Fixed "def[var|const]" regular
14979 expression to ensure that the searched variable or constant name is on
14982 2001-08-12 Eric M. Ludlam <zappo@gnu.org>
14984 * semantic-ctxt.el (semantic-narrow-to-context, semantic-with-buffer-narrowed-to-context, semantic-point-at-beginning-of-command, semantic-point-at-end-of-command, semantic-narrow-to-command, semantic-with-buffer-narrowed-to-command):
14986 (semantic-end-of-command, semantic-beginning-of-context):
14987 Narrow to current context.
14988 (semantic-end-of-command-default, semantic-beginning-of-context-default):
14989 Use a search, and if that fails go to point-[min/max].
14990 (semantic-ctxt-current-assignment-default): Narrow to current statement.
14991 Use searching functions for an equals.
14993 2001-08-10 David Ponce <david@dponce.com>
14995 * semantic-java.el (semantic-java-keyword-table): Updated BNF grammar.
14997 (semantic-java-doc-tag, semantic-java-doc-tag-name): New functions to
14998 convert to/from javadoc @tag notation.
15000 (semantic-java-doc-keyword-before-p, semantic-java-doc-keywords-map,
15001 semantic-java-doc-setup): Take into account new @tag notation used for
15005 Use @tag notation for the javadoc keywords to avoid conflicts with
15006 language reserved words.
15008 2001-08-09 David Ponce <david@dponce.com>
15010 * wisent/wisent-java.bnf: Initial revision.
15012 * semantic-bnf.el (semantic-bovine-bnf-table, semantic-bnf-keyword-table):
15014 TOKENTABLE and PARSERMODE keywords.
15016 (semantic-bnf-token-name-symbol, semantic-bnf-token-token-type,
15017 semantic-bnf-token-token-value, semantic-bnf-token-rule-matchlist):
15018 New API macros/functions.
15020 (semantic-bnf-matching-to-lalr, semantic-bnf-terminal-token-p,
15021 semantic-bnf-find-terminals, semantic-bnf-find-terminal-symbols,
15022 semantic-bnf-to-lalr, semantic-bnf-find-parser-mode): New functions to
15023 generate tables for the LALR parser.
15025 (semantic-bnf-token-table, semantic-bnf-find-token-destination): New
15026 functions to generate a table of %token elements.
15028 (semantic-bnf-generate-and-load): Take into account new %tokentable
15029 and %parsermode declarations. Added generation of tables for the LALR
15032 (semantic-bnf-mode-keywords): Correctly highlight rule name when the
15033 colon is on a new line.
15035 (semantic-bnf-mode): Added specification of the
15036 `fill-paragraph-function'.
15038 (semantic-bnf-previous-colon-indentation): Improved indentation of
15039 rules when the colon and the matching list are on new lines.
15041 (semantic-bnf-fill-paragraph): New function to fill BNF comments.
15043 2001-08-08 Eric M. Ludlam <zappo@gnu.org>
15045 * Project.ede: Added the ChangeLog
15049 * tests/test.cpp: Added a reentrant example.
15051 * tests/test.c: Added typedef which was reported as not working.
15053 * semantic-sb.el (semantic-sb-button-token->text-function, semantic-sb-info-token->text-function):
15055 (semantic-sb-one-button): Use above to get abbreviation text.
15057 2001-08-04 David Ponce <david@dponce.com>
15059 * senator.el (senator-eldoc-print-current-symbol-info-default):
15060 Fixed void-variable
15061 error on `semanticdb-current-database' when the optional semanticdb
15062 feature is not provided.
15064 2001-08-02 David Ponce <david@dponce.com>
15066 * wisent/wisent.el (wisent-skip-token, wisent-skip-block):
15067 Do not clear the lookahead
15068 token nor call `wisent-errok' when at end of input to avoid infinite
15069 error recovery loop.
15071 (wisent-parse): Always return the value on top of the stack. Maybe it
15072 is a useful value when the parser returns after error recovery.
15074 * wisent/wisent-java.el (wisent-java-parse):
15075 Fixed missing `working' stuff.
15077 2001-08-01 Eric M. Ludlam <zappo@gnu.org>
15079 * semantic-c.el: New c.bnf.
15080 (semantic-c-reconstitute-token): Added reentrant support.
15082 * c.bnf: Support reentrant.
15084 2001-07-21 David Ponce <david@dponce.com>
15086 * wisent/wisent-java.el:
15087 Removed redefinitions of Semantic Flex functions which are now in
15090 (wisent-java-bovinate-toplevel): Added "LALR" indicator to
15091 `working-status-forms' message to distinguish LALR parsing from
15092 default Semantic one.
15094 2001-07-20 David Ponce <david@dponce.com>
15096 * semantic.el (semantic-flex-keyword-p, semantic-flex-buffer, semantic-flex-start, semantic-flex-end, semantic-flex-text, semantic-flex-list):
15098 `defsubst' instead of `defun' to improve performance of byte compiled
15101 2001-07-20 Eric M. Ludlam <zappo@gnu.org>
15103 * Project.ede: Version update.
15105 * semantic.el: Update version to beta 9
15108 Added bits about getting destructor information, and about
15109 semantic-current-nonterminal-parent.
15111 * semantic-util.el (semantic-name-nonterminal-default):
15112 Only get destructor flag if TOKEN
15115 * semanticdb.el (semanticdb-find-nonterminal-by-token):
15116 New fn by Jesper Nordenberg
15119 Return public for the protection on any class part which is unlabeled.
15121 * semantic-el.el: Support uml prototypes.
15123 2001-07-20 David Ponce <david@dponce.com>
15125 * wisent/wisent.el: Initial import of the Semantic LALR parser: Wisent.
15127 * wisent/wisent.el: New file.
15129 * wisent/wisent-java.el:
15130 Initial import of the Semantic LALR parser: Wisent.
15132 * wisent/wisent-java.el: New file.
15134 * wisent/wisent-expr.el:
15135 Initial import of the Semantic LALR parser: Wisent.
15137 * wisent/wisent-expr.el: New file.
15139 2001-07-19 Eric M. Ludlam <zappo@gnu.org>
15141 * semantic-util.el (semantic-concise-prototype-nonterminal-default):
15142 Add spaces before (,
15144 (semantic-uml-colon-string, semantic-uml-no-protection-string): New Var
15145 (semantic-uml-protection-to-string): Return no-protection-string, more
15147 (semantic-uml-arguments-to-string): Add some spaces into the text.
15148 (semantic-uml-prototype-nonterminal-default,
15149 semantic-uml-concice-prototype-nonterminal-default): Use
15152 * semantic.el (semantic-toplevel-bovine-table):
15153 Added text for the destructor.
15155 * semantic-util.el (semantic-token-function-destructor): New function
15156 (semantic-current-nonterminal-parent): New function
15157 (semantic-name-nonterminal-default): Handle destructor.
15158 (semantic-uml-arguments-to-string): Pass arguments into mapconcat.
15159 (semantic-uml-prototype-nonterminal-default): Fixed argument display
15160 to not use non-uml prototype to string function, and added support
15163 * semantic-util.el (semantic-token->text-functions):
15164 Added uml-concise... funciton.
15165 (semantic-uml-protection-to-string): Return nil for unknown protection.
15166 (semantic-uml-token-or-string-to-string): Convert a token or string
15167 into a UML like string. Taken from the body of
15168 `semantic-uml-abbreviate-nonterminal-default'.
15169 (semantic-uml-abbreviate-nonterminal-default): Use the above.
15170 (semantic-uml-arguments-to-string): Convert an argument list to a UML
15171 string list. Use in above.
15172 (semantic-uml-prototype-nonterminal-default): Use the above two new fns.
15173 (semantic-uml-concise-prototype-nonterminal[-default]): New functions
15174 (semantic-nonterminal-protection-default): Remove static from list of
15175 modifiers that mean private.
15177 2001-07-13 Eric M. Ludlam <zappo@gnu.org>
15179 * semantic-util.el (semantic-token-modifiers): New function.
15180 (semantic-uml-prototype-nonterminal): New function.
15181 (semantic-token->text-functions): Added above function.
15182 (semantic-face-alist): Added keyword font face, and more doc.
15183 (semantic-uml-protection-to-string): New function from
15184 semantic-utml-abbreviate-nonterminal-default.
15185 (semantic-abbreviate-nonterminal-default): Use above fn.
15186 (semantic-nonterminal-protection): Swap out friend, use protected.
15187 (semantic-nonterminal-protection-default): Use
15188 `semantic-token-modifiers' instead of
15189 `semantic-token-type-modifiers'.
15191 * senator.el (senator-jump): Push the mark before moving.
15194 Highlight &optional in prototypes with the keyword face.
15196 * semantic-c.el: Stop using friend, and use protected.
15198 * semantic.el: Updated version number.
15200 2001-06-11 Eric M. Ludlam <zappo@gnu.org>
15202 * semantic.texi (semantic-token-type-parent):
15203 Describe the format of the parent list.
15204 (semantic-token-type-parent-superclass,
15205 semantic-token-type-parent-implement): New function doc.
15207 * semantic.el (semantic-toplevel-bovine-table): Doc fix.
15209 * semantic-util.el (semantic-token-type-parent):
15210 Describe the format of the parent list.
15211 (semantic-token-type-parent-superclass,
15212 semantic-token-type-parent-implement): New functions.
15214 2001-06-06 Eric M. Ludlam <zappo@gnu.org>
15216 * tests/Project.ede: Project file for the tests directory.
15218 2001-06-05 Eric M. Ludlam <zappo@gnu.org>
15220 * semantic-c.el (semantic-default-c-path, semantic-default-c-built-in-types):
15222 (semantic-c-nonterminal-protection): New function
15223 (semantic-default-c-setup): Add an override table with above in it.
15225 * semantic.texi (semantic-override-table): Doc update.
15226 (semantic-nonterminal-protection): New doc.
15228 * semantic-util.el (semantic-override-table): Doc update.
15229 (semantic-uml-abbreviate-nonterminal-default): Display protection symbol
15230 (semantic-nonterminal-protection, semantic-nonterminal-protection-default):
15233 2001-06-03 Eric M. Ludlam <zappo@gnu.org>
15235 * semantic.el (semantic-toplevel-bovine-cache): Doc fix.
15236 (semantic-after-toplevel-bovinate-hook): Doc fix.
15237 (semantic-after-toplevel-cache-change-hook): Doc fix.
15239 * semanticdb.el (semanticdb-post-bovination):
15240 Update to take a parameter.
15242 * Project.ede: Updated version.
15244 * semanticdb.el (semanticdb-hooks):
15245 Use `semantic-after-toplevel-cache-change-hook'
15246 instead of `semantic-after-toplevel-bovinate-hook'.
15248 * semantic.el (semantic-version): New version
15249 ((semantic-toplevel-bovine-cache): Doc change.
15250 (semantic-after-toplevel-cache-change-hook): New hook.
15251 (semantic-clear-toplevel-cache): Do not call
15252 `semantic-after-toplevel-bovineate-hook' for 1.3 compatibility.
15253 Do call `semantic-after-toplevel-cache-change-hook'.
15254 (semantic-bovinate-toplevel): Do not call
15255 `semantic-after-toplevel-bovinate-hook' after custom parser.
15256 Call `semantic-after-toplevel-cache-change-hook' after full parse.
15258 * tests/test.cpp: Added new features of c.bnf 1.37.
15260 * semantic-c.el: New c.bnf
15261 Add throws to semantic-c-reconstitute-token.
15262 Add `throw' keyword.
15264 * c.bnf: Multi-inheritance for classes.
15265 Structs like classes for C++.
15266 No ; on name spaces.
15267 Throws for methods.
15268 (Bugs & patches from "Jesper Nordenberg" <mayhem@home.se>
15269 and Norbert Lindlbauer <Norbert_Lindlbauer@betaresearch.de>)
15271 2001-05-29 David Ponce <david@dponce.com>
15273 * semantic.el (semantic-remove-dirty-children, semantic-remove-dirty-children-internal):
15276 (semantic-rebovinate-token): Fixed "wrong-type-argument overlayp" bug.
15277 Use `semantic-remove-dirty-children' to remove the old token children
15278 from the dirty list before deorverlaying it.
15280 2001-05-28 David Ponce <david@dponce.com>
15282 * semantic-java.el (semantic-java-skip-spaces-backward, semantic-java-skip-spaces-forward):
15283 Changed definition from macro to
15284 more appropriate in-line function.
15286 2001-05-25 Eric M. Ludlam <zappo@gnu.org>
15288 * semantic-c.el: New c.bnf.
15290 * c.bnf (expression): Added string.
15292 2001-05-24 Eric M. Ludlam <zappo@gnu.org>
15295 Removed variables to stop message logging from working.*status fns.
15296 This was a merge error.
15298 2001-05-23 Eric M. Ludlam <zappo@gnu.org>
15300 * semantic-scm.el: New scheme.bnf
15302 * scheme.bnf: Fixed type on LOAD token generation.
15304 * working.el: Updated version number.
15305 (working-status-percentage-type, working-status-dynamic-type): added nil option
15306 (working-percentage-step): New variable.
15307 (working-last-percent): New variable.
15308 (working-message): Added `eval-and-compile' around it.
15309 (working-status-forms): Added `working-last-percent' to let statement.
15310 (working-status): Wrap body of code in an if statement to make sure
15311 we only display a message if `working-percentage-step' had passed.
15312 Enable nil message type.
15313 (working-dynamic-status): Enable nil message type.
15315 * tests/test.c: Test parsing of C files.
15317 2001-05-23 David Ponce <david@dponce.com>
15319 * semantic-java.el: Require 'senator at compile time.
15320 (semantic-default-java-setup): Rebuilt from updated java.bnf.
15323 Added `senator-step-at-token-ids' useful default value in language
15325 Removed in line CVS change log.
15327 * senator.el (senator-message):
15328 Removed. Replaced by new `working-message'
15331 (senator-step-at-parent): Now returns the outermost parent found
15332 instead of the innermost one.
15334 (senator-next-token, senator-previous-token, senator-jump,
15335 senator-beginning-of-defun, senator-isearch-toggle-semantic-mode): Use
15338 * working.el (working-message-emacs, working-message-xemacs, working-message):
15340 functions to display messages without logging.
15342 (working-status, working-dynamic-status): Use `working-message'.
15344 2001-05-21 David Ponce <david@dponce.com>
15346 * senator.el (senator-message): No more logging of messages on XEmacs.
15348 (senator-find-token-before, senator-find-previous-token,
15349 senator-find-last-token, senator-find-next-token): Removed these
15350 no more used functions.
15352 (senator-step-at-parent, senator-previous-token-or-parent): New
15355 (senator-next-token, senator-previous-token): New implementation
15356 based on `semantic-find-nonterminal-by-overlay-next' and
15357 `semantic-find-nonterminal-by-overlay-prev'.
15359 (senator-beginning-of-defun): Fixed the bad
15360 `senator-step-at-start-end-token-ids' value. Ensure that the
15361 point is always at the beginning of the previous token found.
15363 (senator-beginning-of-defun, senator-end-of-defun): Doc string
15364 updated to inform that the ARG parameter is not yet handled.
15366 2001-05-20 Eric M. Ludlam <zappo@gnu.org>
15368 * Project.ede: Fixed name.
15371 2001-05-18 Eric M. Ludlam <zappo@gnu.org>
15373 * semantic-util.el (semantic-find-documentation):
15374 Fixed to handle deoverlayed (from db)
15375 cases, plus normalized cases of slots in structs without position info.
15377 2001-05-16 David Ponce <david@dponce.com>
15379 * senator.el (senator-insert-foreign-token-default, senator-insert-foreign-token, senator-eldoc-print-current-symbol-info-default, senator-eldoc-print-current-symbol-info):
15380 Functions moved to avoid
15383 2001-05-16 Eric M. Ludlam <zappo@gnu.org>
15385 * INSTALL: Added info about adding speedbar to the load path.
15387 * semantic.el: Update version number.
15389 2001-05-15 David Ponce <david@dponce.com>
15391 * senator.el (senator-completion-flatten-stream):
15392 No more add function arguments to
15393 the completion stream.
15395 (senator-completion-function-args): New function to build a string of
15396 function argument names.
15398 (senator-completion-refine-name): New function to refine a token
15399 completion name in an incremental way.
15401 (senator-completion-uniquify-names): New function to uniquify token
15402 names in a completion stream.
15404 (senator-completion-stream): Use `senator-completion-uniquify-names'.
15406 2001-05-14 Eric M. Ludlam <zappo@gnu.org>
15409 Added new submenus for override functions, with big special detail
15410 about token->text functions.
15412 * semantic-imenu.el:
15413 Make sure that semantic-sb is loaded when this is loaded.
15414 Not because we needed it, but because speedbar will throw errors
15415 with semantic generated imenu tokens.
15417 2001-05-12 Eric M. Ludlam <zappo@gnu.org>
15419 * semantic.el (semantic-bovinate-nonterminal):
15420 When calculating the results, if
15421 there was no match, then the result stream equals the input stream, so
15422 remove the non-matching token from the return stream, claiming that
15423 nothing matched. This prevents repetitive parsing.
15424 (semantic-flex): If the comment-start-skip is matched, but
15425 forward-comment does nothing, then make sure we skip intervening
15426 boring characters so we don't loop infinitly.
15428 2001-05-09 David Ponce <david@dponce.com>
15430 * semanticdb.el (semanticdb-current-database-list):
15431 Fixed `expand-file-name' bug when
15432 `root' local variable is nil.
15434 2001-05-09 Eric M. Ludlam <zappo@gnu.org>
15436 * Project.ede: Version & files.
15438 * semantic-c.el: New c.bnf
15440 * c.bnf: Added inline method support.
15441 Store protection elements
15442 Change enum parts to be integer variables.
15444 2001-05-07 David Ponce <david@dponce.com>
15446 * semantic-util.el (semantic-prototype-nonterminal-default):
15447 Fixed extra space added
15448 before the name of simple tokens like 'include and 'package.
15450 * semantic-java.el (semantic-java-prototype-function, semantic-java-prototype-variable, semantic-java-prototype-type):
15451 Follows `semantic-colorize-text' API
15454 (semantic-java-prototype-include, semantic-java-prototype-package):
15455 Removed these unnecessary functions.
15457 2001-05-07 Eric M. Ludlam <zappo@gnu.org>
15459 * semantic-el.el (semantic-elisp-prototype-nonterminal):
15460 Changed with `semantic-colorize-text'.
15462 * semantic-bnf.el (semantic-bnf-mode):
15463 Removed `name-nonterminal' override.
15464 Added new values to `semantic-face-alist'
15465 (semantic-bnf-name-nonterminal): Removed.
15466 (semantic-summarize-nonterminal): Changed with `semantic-colorize-text'.
15468 * semantic-util.el (semantic-prototype-nonterminal):
15469 Pass parent/color to subfunction.
15471 * semantic-util.el (semantic-colorize-text):
15472 Take a token as a face class instead of a face.
15473 (semantic-face-alist): New.
15474 (semantic-name-nonterminal): Doc fix.
15475 (semantic-name-nonterminal-default): Use face-class.
15476 (semantic-prototype-nonterminal): Doc fix.
15477 (semantic-prototype-nonterminal-default): Use face-class.
15478 (semantic-concise-prototype-nonterminal): Doc fix
15479 (semantic-concise-prototype-nonterminal-default): Use face-class.
15480 (semantic-uml-abbreviate-nonterminal): Doc fix
15481 (semantic-uml-abbreviate-nonterminal-default): Use face-class.
15483 2001-05-07 David Ponce <david@dponce.com>
15485 * semantic-java.el (semantic-java-prototype-function, semantic-java-prototype-variable, semantic-java-prototype-type):
15486 Added implementation for the COLOR
15489 2001-05-06 David Ponce <david@dponce.com>
15491 * senator.el (senator-completion-menu-summary-function): Use
15492 `semantic-token->text-custom-list' type instead of function type.
15494 (senator-completion-menu-insert-function): Added choice between
15495 default `senator-completion-menu-insert-default' function or user's
15498 (senator-completion-menu-window-offsets): Fixed an Emacs 21 bug w/
15499 completion menu. Returned offsets are now rounded down.
15501 (senator-eldoc-use-color): New option.
15503 (senator-eldoc-print-current-symbol-info): Use new
15504 `senator-eldoc-use-color' option.
15506 Minor "checkdoc" fixes.
15508 * semantic-java.el:
15509 (semantic-java-prototype-function, semantic-java-prototype-variable,
15510 semantic-java-prototype-type, semantic-java-prototype-include,
15511 semantic-java-prototype-package, semantic-java-prototype-nonterminal):
15512 Added new `semantic-prototype-nonterminal' optional parameters PARENT
15513 and COLOR (not yet used).
15515 (semantic-java-prototype-nonterminal): Replaced default behavior
15516 `semantic-abbreviate-nonterminal' by
15517 `semantic-prototype-nonterminal-default'. Minor code cleanup.
15519 2001-05-05 Eric M. Ludlam <zappo@gnu.org>
15521 * semantic-imenu.el: Be safe about loading the imenu library.
15522 (semantic-imenu-summary-function): Use new
15523 `semantic-token->text-custom-list' for customization type.
15524 (semantic-which-function-use-color): New variable
15525 (semantic-default-which-function): Use
15526 `semantic-which-function-use-color' to draw the token with colors.
15528 * semantic-scm.el: Fixed the title comment.
15530 * semantic-load.el:
15531 Do not set up imenu code if the imenu library is not available.
15533 * semantic-bnf.el (semantic-bnf-mode):
15534 Added `semantic-bnf-name-nonterminal' as a new
15536 (semantic-bnf-name-nonterminal): New fcn
15537 (semantic-bnf-abbreviate-nonterminal, semantic-bnf-summarize-nonterminal):
15538 Use semantic-name-nonterminal for some things, accept parent/color
15539 arguments. Colorize text when appropriate.
15541 * semantic-el.el (semantic-elisp-prototype-nonterminal):
15542 Take parent/color argument.
15543 Use the color argument to colorize the output text.
15545 * semantic-util.el (semantic-override-table): Doc fix.
15546 (semantic-token->text-functions, semantic-token->text-custom-list): New var.
15547 (semantic-name-nonterminal, semantic-name-nonterminal-default): New fcn
15548 (semantic-abbreviate-nonterminal[-default]): Use semantic-name-nonterminal.
15549 Added color parameter.
15550 (semantic-summarize-nonterminal[-default]): Added color parameter.
15551 (semantic-prototype-nonterminal[-default]): Added color parameter.
15552 (semantic-concise-prototype-nonterminal[-default]): Added color parameter.
15553 (semantic-uml-abbreviate-nonterminal[-defailt]): New functions
15555 * semantic.el (semantic-version): Updated
15556 (semantic-token-p): nil is a symbol, so make sure that the 'token slot
15557 in a token is not nil.
15559 2001-05-04 David Ponce <david@dponce.com>
15561 * semantic.el (semantic-bovinate-nonterminal-check-obarray):
15563 remember streams already parsed for nonterminal symbols.
15565 (semantic-set-toplevel-bovine-cache): Cleanup
15566 `semantic-bovinate-nonterminal-check-obarray'.
15568 (semantic-bovinate-nonterminal-check): New function to check if a
15569 stream has already been parsed for nonterminal.
15571 (semantic-bovinate-nonterminal): Use
15572 `semantic-bovinate-nonterminal-check' to detect infinite recursion
15573 when doing a full reparse and abort parsing.
15575 2001-05-02 Eric M. Ludlam <zappo@gnu.org>
15577 * semantic-c.el: New c.bnf
15579 2001-05-01 Eric M. Ludlam <zappo@gnu.org>
15581 * c.bnf: Revamped lots of summary strings.
15582 Added `type' as a possible expansion in classsubparts.
15584 * document-vars.el: Checkdoc run.
15586 2001-04-30 Eric M. Ludlam <zappo@gnu.org>
15588 * semanticdb.el (semanticdb-project-roots): New variable
15589 (semanticdb-project-root-functions): New variable
15590 (semanticdb-current-database-list): New function
15591 (semanticdb-find-nonterminal-by-function): Use
15592 `semanticdb-current-database-list' to get list of databases if none
15595 * semantic-el.el (semantic-elisp-form-to-doc-string):
15596 Fixed final cond condition.
15598 2001-04-30 David Ponce <david@dponce.com>
15600 * java.bnf, semantic-java.el:
15601 Changed "version" javadoc keyword to not optional.
15603 2001-04-28 Eric M. Ludlam <zappo@gnu.org>
15606 Added new documentation strings to all the reparsing related hooks to
15607 be much more descriptive.
15609 * semantic.texi: Changed the title.
15610 Added new section `parser hooks', and moved the two
15611 `..reparse-needed' function doc in there, along with descriptions of
15612 all the hooks, sucked from the source.
15614 * semantic-bnf.el (semantic-bovine-bnf-table):
15615 Extract buffer strings without properties.
15616 Turn sublists in %put tokens into real tokens (with a symbol identifier)
15617 (semantic-bnf-mode): Add `semantic-bnf-nonterminal-children' to
15619 (semantic-bnf-nonterminal-children): New fcn.
15621 2001-04-27 David Ponce <david@dponce.com>
15623 * working.el (working-status, working-dynamic-status):
15624 No more log progress
15625 messages on Xemacs.
15627 2001-04-27 Eric M. Ludlam <zappo@gnu.org>
15630 Fixed reading of doc strings if they are not actually strings.
15632 2001-04-26 David Ponce <david@dponce.com>
15634 * semantic-java.el (semantic-java-keyword-table):
15635 reflect changes in java.bnf.
15637 (semantic-java-clean-docstring): removed.
15639 (semantic-java-find-documentation): use
15640 `semantic-find-doc-snarf-comment' instead of
15641 `semantic-java-clean-docstring'.
15643 (semantic-java-doc-line-tags, semantic-java-doc-with-name-tags,
15644 semantic-java-doc-with-ref-tags, semantic-java-doc-extra-type-tags,
15645 semantic-java-doc-extra-function-tags,
15646 semantic-java-doc-extra-variable-tags, semantic-java-doc-type-tags,
15647 semantic-java-doc-function-tags, semantic-java-doc-variable-tags): new
15648 variables to handle javadoc tags.
15650 (semantic-java-doc-keyword-before-p, semantic-java-doc-keywords-map,
15651 semantic-java-doc-setup): new functions to handle javadoc tags.
15653 (semantic-default-java-setup): reflect changes in java.bnf. Calls
15654 `semantic-java-doc-setup' to setup javadoc elements.
15656 * java.bnf: Added official javadoc line tag keywords.
15657 Provided a value for `block-comment-end'.
15659 * senator.el (senator-minor-mode, senator-minor-mode-setup): Doc fix.
15661 2001-04-26 Eric M. Ludlam <zappo@gnu.org>
15663 * semanticdb.el (semanticdb-kill-hook):
15664 Use semantic-active-p, instead of checking for
15665 the semantic table.
15667 2001-04-25 David Ponce <david@dponce.com>
15669 * semantic.el (semantic-new-buffer-fcn, semantic-change-major-mode-hook-function, semantic-post-change-major-mode-function):
15670 Fixed some problems when
15671 initializing Semantic enabled buffers.
15673 (semantic-changed-major-mode): Renamed to
15674 `semantic-changed-mode-buffers'.
15676 2001-04-25 Eric M. Ludlam <zappo@gnu.org>
15679 Added documentation for new functions in semantic-util, and semanticdb.
15681 * semanticdb.el (semanticdb-current-database): new function.
15682 (semanticdb-find-nonterminal-by-property,
15683 semanticdb-find-nonterminal-by-extra-spec,
15684 semanticdb-find-nonterminal-by-extra-spec-value): new functions.
15685 (semanticdb-find-nonterminal-by-function): Use
15686 `semanticdb-current-database' as a function, not a variable.
15688 * semantic-util.el:
15689 (semantic-find-nonterminal-by-extra-spec-value) New fcn.
15690 (semantic-read-symbol) show the default value, and return it.
15692 2001-04-23 David Ponce <david@dponce.com>
15694 * semantic-imenu.el (semantic-imenu-flush-fcn):
15695 Added missing `remove-hook' local flags.
15696 (semantic-create-imenu-index): Index creation could remove hook just
15697 added so moved `add-hook' after index creation.
15699 * senator.el: semantic-imenu not only required at compile time.
15700 (senator-momentary-highlight-face): Fixed typo.
15701 (add-log-current-defun): new advice.
15703 2001-04-22 Eric M. Ludlam <zappo@gnu.org>
15706 Change name of old find-file-hook to semantic-new-buffer-fcn.
15707 Do not call semantic-new-buffer-fcn in find-file-hook, only
15708 call it from the change-major-mode-hook stuff.
15710 2001-04-21 Eric M. Ludlam <zappo@gnu.org>
15713 Fixed up some docs, and added the semanticdb-persistent-path var too.
15715 * semantic.el: Changed the eval-defun function hook to be generic.
15716 Changed the change-major-mode sequence to a new function which
15717 will only clear the cache in a semantic buffer. It then tracks all
15718 buffers changed, and in a post-command-hook, follows the find-file
15719 hook code on every changed buffer.
15721 * semantic-util.el:
15722 When show-dirty-mode is on, add a rebovination into the after-save-hook.
15724 * semantic-el.el: Fixed problems with defstruct
15726 * semantic-ctxt.el:
15727 Make sure that semantic-case-fold is used for anything that uses
15728 regexps with names.
15730 * semantic-c.el: new c.bnf
15732 * c.bnf: Spelling error for integer.
15734 * INSTALL: Fixed instructions for .emacs files.
15736 * semanticdb.el: Small doc changes.
15737 When saving a database, use condition-case to protect against
15738 file errors, or file write-protection errors. This assumes that
15739 we aren't going to worry about caches in directories we can't write
15742 2001-04-19 David Ponce <david@dponce.com>
15744 * senator.el: Added isearch lazy highlighting support for XEmacs 21.4.
15746 2001-04-13 David Ponce <david@dponce.com>
15748 * java.bnf: Updated copyrights.
15750 2001-04-13 Eric M. Ludlam <zappo@gnu.org>
15752 * semantic-load.el: Added autoload `semantic-change-function-mark-dirty
15753 Add hook `semantic-change-hooks to contain above fcn.
15755 * semantic-util.el:
15756 Remove hokey semantic dependency, and explicitly depend on semantic.
15757 Moved several common token access functions back into semantic.el.
15758 Moved token overlay/deoverlay functions into semantic.el.
15759 Moved `semantic-file-token-stream' into this file.
15760 New fn `semantic-change-function-mark-dirty' to be used as
15761 a hook in `semantic-change-hooks'.
15764 Stop depending on semantic-util. Pull in the proper bits needed to
15765 operate in from semantic-util. (This makes undoes some of a previous
15766 check in.) This includes common token access, and deoverlay/overlay a
15768 Removed the after change function body, and call a hook.
15771 Fixed a type originally found in document.el (which created much of
15772 this documetnation.)
15774 * document.el: Fixed a type-o (found by Richard Kim)
15776 2001-04-13 David Ponce <david@dponce.com>
15778 * java.bnf: Added keyword summaries.
15780 * semantic-java.el (semantic-java-keyword-table):
15781 Added keyword summaries.
15783 2001-04-13 Eric M. Ludlam <zappo@gnu.org>
15785 * semantic-c.el: New c.bnf
15787 * c.bnf: Added built in types (void, char, etc) and summaries.
15789 * semantic-scm.el: New scheme.bnf.
15791 * scheme.bnf: Added some summaries to tokens.
15793 * semantic-make.el: New make.bnf
15796 Added a keyword table, and several new tokens and summaries.
15797 Added support for the include macro.
15799 * INSTALL: Added makefile tricks to the INSTALL process.
15801 * semantic.texi: Added semanticdb-mode-hooks.
15803 * semantic-imenu.el:
15804 Added `semantic-imenu-flush-fcn', and add it to the semanticdb-mode-hooks.
15807 Added `semanticdb-mode-hooks', run when the global semanticdb is
15809 Removed imenu reference when toggling semanticdb on and off.
15811 2001-04-12 David Ponce <david@dponce.com>
15813 * senator.el: Eliminated lots of compile warnings.
15815 (senator-minor-mode): No more use Emacs 21 `define-minor-mode' to
15816 avoid byte code incompatibilities between Emacs 21 and previous
15819 2001-04-12 Eric M. Ludlam <zappo@gnu.org>
15821 * Project.ede: Version, and some naming.
15823 * semanticdb.el: Added compile time require statements.
15826 Removed some compile time requirements. Accept the errors.
15827 Remove autoloads for functions defined locally.
15829 * semantic-util.el, semantic-texi.el, semantic-scm.el, semantic-java.el, semantic-imenu.el, semantic-ctxt.el, semantic-c.el, semantic-bnf.el:
15830 Added compile time require statements.
15832 2001-04-11 David Ponce <david@dponce.com>
15834 * senator.el (senator-completion-menu-window-offsets):
15835 On Emacs 21 add the window
15836 left margin width to XOFFSET.
15838 2001-04-10 David Ponce <david@dponce.com>
15840 * semanticdb.el (semanticdb-find-nonterminal-by-function):
15841 Search take into account
15842 the current buffer local value of `semantic-case-fold'.
15844 * semantic-util.el (semantic-find-nonterminal-by-name, semantic-find-nonterminal-by-function, semantic-find-nonterminal-by-function-first-match):
15846 account the current buffer local value of `semantic-case-fold'.
15848 2001-04-09 David Ponce <david@dponce.com>
15850 * senator.el: Fixed header comments and removed inline CVS change log.
15852 (senator-completion-menu-window-offsets): New function.
15854 (senator-completion-menu-point-as-event): When running Emacs, use
15855 `senator-completion-menu-window-offsets' to translate a point position
15856 in frame coordinates.
15858 2001-04-07 Eric M. Ludlam <zappo@gnu.org>
15860 * Project.ede: More project updates.
15863 A series of cleanup items submitted by Karl Eichwalder <keichwa@gmx.net>.
15865 * semantic-el.el: Handle double parent case for quoted toplevel code.
15868 Added equivalent modes setting from c.bnf w/ new semantic-bnf code.
15870 * semantic-ctxt.el:
15871 Fixed up some documentation that didn't mention the override function.
15873 * document.el: Added a note about texinfo generation.
15875 * semantic-bnf.el: Better speedbar support.
15876 Creates new local variable `semantic-equivalent-major-modes'.
15878 * semantic.el: Removed macros to semantic-util.
15879 Imported commands that deal specifically with parsing from semantic-util.
15881 * semantic-util.el:
15882 Copied some macros from semantic.el into semantic-util.el.
15883 Copied interactive parsing functions out of semantic-util.
15885 * semantic-imenu.el:
15886 Use `semantidb-equivalent-mode' instead of just comparing major modes.
15887 This lets C and C++ to show up in the same directory imenu menu.
15889 * semanticdb.el: Require semantic.
15890 When `semanticdb-persistent-path' is `project', and there are no
15891 project predicates, be equivalent to 'always.
15892 Added `semanticdb-equivalent-mode' function. Use it in the find function.
15894 * semantic-c.el: New c.bnf
15896 * c.bnf: Added name spaces, and references.
15898 2001-03-27 David Ponce <david@dponce.com>
15900 * senator.el (senator-completion-menu-popup):
15901 Fixed error when handling a simple
15902 list of menu items returned when the Semantic Database feature is
15905 2001-03-26 David Ponce <david@dponce.com>
15907 * senator.el (senator-find-nonterminal-by-name, senator-find-nonterminal-by-name-regexp, senator-complete-symbol, senator-eldoc-print-current-symbol-info-default):
15909 value returned by `semanticdb-find-nonterminal-by-name' and
15910 `semanticdb-find-nonterminal-by-name-regexp'.
15912 (senator-completion-menu-item, senator-completion-menu-popup): Added
15913 sub-menus for each file were tokens were found by Semantic Database
15916 * semantic-texi.el (semantic-texi-update-doc-from-texi, semantic-texi-goto-source):
15918 format of the value returned by `semanticdb-find-nonterminal-by-name'.
15920 * semantic-ctxt.el (semantic-suggest-lookup-item):
15921 new format of the value returned by
15922 `semanticdb-find-nonterminal-by-name'.
15924 * semanticdb.el (semanticdb-find-nonterminal-by-name, semanticdb-find-nonterminal-by-name-regexp, semanticdb-find-nonterminal-by-type, semanticdb-find-nonterminal-by-function):
15925 return the DB table where
15926 tokens were found as the first element of each returned list.
15928 2001-03-21 David Ponce <david@dponce.com>
15930 * semanticdb.el (semanticdb-toggle-global-mode):
15931 new function. Toggle use of the
15932 Semantic Database feature and update the environment of Semantic
15933 enabled buffers accordingly.
15935 * semantic-util.el (semantic-map-buffers):
15936 new function. Run a function for each
15937 Semantic enabled buffer found.
15939 * senator.el (senator-find-nonterminal-by-name, senator-find-nonterminal-by-name-regexp):
15940 return the complete list of
15941 tokens found instead of the ones from the first semanticdb table.
15943 (senator-completion-menu-do-complete, senator-completion-menu-item):
15944 use a one element array to pass and receive token instead of the token
15945 overlay. Thus can handle tokens without overlay, returned by
15948 (senator-completion-menu-point-as-event): New function that returns
15949 the text cursor position as an event.
15951 (senator-completion-menu-popup): Now a command. Uses
15952 `senator-completion-menu-point-as-event' to popup the menu at
15955 (senator-completion-menu-mouse-popup,
15956 senator-completion-menu-keyboard-popup): deleted. Replaced by
15957 `senator-completion-menu-popup'.
15959 (senator-prefix-map, senator-mode-map): updated to use
15960 `senator-completion-menu-popup'.
15962 (senator-menu-bar): Uses `senator-minor-mode-name' as menu title.
15963 Fixed typos. Replaced `global-semanticdb-minor-mode' by
15964 `semanticdb-toggle-global-mode' to enable/disable the Semantic
15967 2001-03-14 David Ponce <david@dponce.com>
15969 * semanticdb.el (semanticdb-find-nonterminal-by-function):
15970 avoid unneeded refreshes
15971 while typing with senator-eldoc mode.
15973 * semantic.el (semantic-read-event): replaced `cond' by `if' to fix a
15974 byte-compilation error on FSF Emacs.
15975 (semantic-rebovinate-token): delay rebovination if a [maybe temporary]
15976 re-parse error occurs.
15977 (semantic-flex): fixed the lexer to calm possible errant parsing.
15979 2001-03-12 David Ponce <david@dponce.com>
15981 * senator.el: New faster core search engine.
15983 Fixed `beginning-of-defun' and `end-of-defun' advices to accept
15984 optional argument ARG. Usage of ARG is not yet implemented.
15986 Fixed `insert-register' and `jump-to-register' advices to use
15989 Added new hippie expand try function `senator-try-expand-semantic'
15990 to try Semantic inline completion. This try function is
15991 automatically activated in Semantic enabled buffers.
15993 Many code cleanup and improvement.
15995 2001-03-10 Eric M. Ludlam <zappo@gnu.org>
15997 * semantic-bnf.el: Fixed indentation after ; bug.
15999 * semantic-c.el: New c.bnf.
16000 Added `semantic-c-reconstitute-token'.
16002 * c.bnf: Added lots of summaries to %tokens.
16003 variables and functions now share declmod and typedecl start
16004 match, and then get recombobulated later. Prevents massive
16007 * semantic.texi: Ran texinfo menu and node updating command.
16008 Added section mentioning semantic-java as an example expand function.
16010 * semantic-util.el:
16011 Removed UNTRUSTED from docs of find-nonterminal-by-overlay-[next/prev].
16012 Added Nonterminal region splicing section, with two non-working functions.
16013 When concatinating arguments for a concise prototype, make sure we
16014 can handle many types of argument lists without crashing.
16015 Command `bovinate' now checks the cache.
16017 * semantic-load.el:
16018 Senator and which-fun modes are now forced on, as opposed to just
16019 toggled on, hoping they were off before.
16021 * semantic-load.el: Added scm load.
16022 Added which-func turn on.
16023 Removed load path hacks.
16025 2001-03-08 David Ponce <david@dponce.com>
16027 * semantic-util.el: Fixed an infinite loop bug in
16028 `semantic-find-nonterminal-by-overlay-next' and
16029 `semantic-find-nonterminal-by-overlay-prev' when respectively the last
16030 or the first overlay are encountered.
16032 * semantic-java.el:
16033 Fixed `semantic-expand-java-nonterminal' which did not cleanup invalid
16034 expanded tokens and overlays.
16036 2001-03-05 David Ponce <david@dponce.com>
16038 * semantic.el: Fixed an XEmacs compatibility problem with `read-event'.
16040 2001-03-05 Eric M. Ludlam <zappo@gnu.org>
16043 Updated the chapter on senator to account for new features.
16045 2001-03-05 David Ponce <david@dponce.com>
16048 Improved function `semantic-bnf-find-state-position' to handle
16049 multiple match listes on the same line. Also, if a match occurs in a
16050 string or comment it is ignored.
16052 New function `semantic-bnf-skip-string-or-comment' to skip strings and
16055 Added font-locking for ASSOC, EXPAND and EXPANDFULL builtins.
16058 New `semantic-bovinate-nonterminal' with iterative parser.
16059 Removed no more needed function `semantic-bovinate-stream'.
16060 Fixed some side effect problems when the BNF source debugger
16063 * senator.el: Added new Eldoc suggestion mode feature.
16065 2001-03-01 Eric M. Ludlam <zappo@gnu.org>
16067 * semantic-bnf.el: Added summary support to BNF keywords.
16068 Properly use the override table.
16069 Added a completion keybinding.
16071 2001-02-28 David Ponce <david@dponce.com>
16073 * java.bnf, semantic-java.el:
16074 Fixed a bug on 'array_creation_expression' non-terminal which didn't
16075 match primitive type arrays.
16077 2001-02-28 Eric M. Ludlam <zappo@gnu.org>
16079 * semantic.texi: Added chapter on debugging.
16081 * semantic.el: Update doc to `semantic-bovinate-toplevel'.
16082 If doing a partial reparse fails, recurse for a full reparse.
16083 Renamed variables in the cooking function to be wordier.
16084 For the token reparser, do even more checks after cooking for
16085 an expansion to additional tokens. Queue a full reparse if it
16087 Make sure the reparse symbol is attached to the new token.
16089 2001-02-26 David Ponce <david@dponce.com>
16091 * semantic-java.el: Regenerated with new version of semantic-bnf.el.
16093 2001-02-24 Eric M. Ludlam <zappo@gnu.org>
16095 * semantic-c.el: Updated c.bnf, and semantic-bnf.el.
16097 * c.bnf: Added a few optimizations for structure parts.
16098 Used some %tokens in a few spots where I wasn't using them before.
16100 * semantic.el: Added `semantic-toplevel-bovine-table-source' variable.
16101 Incorporate David Ponce's reparse fix for compounded tokens.
16102 Use table source to do source-level debugging.
16103 Use new semantic-bnf API to find the bit of source to highlight.
16105 * semantic-scm.el: Scheme parser lisp stuff.
16107 * scheme.bnf: Scheme parser
16110 When making an init file, add in a new variable value identifying
16111 the .bnf source file it came from.
16112 Added a bunch of debugging routines for moving in the .bnf file.
16114 2001-02-23 David Ponce <david@dponce.com>
16117 Copied over all the menu items that used to be in semanic-mode.
16118 Added the new token cut/paste items into a menu.
16119 Added menu items to configure semantic-imenu and enable semantic-db.
16120 Added Options sub menu to customize Semantic, Senator, Semantic Imenu
16121 and Semantic Database.
16122 Fixed some XEmacs compatibility issues.
16123 Improved robustness of some functions.
16125 * semantic-util.el: Fixed some XEmacs compatibility issues.
16126 Added function `semantic-token-invisible-p'.
16128 2001-02-23 Eric M. Ludlam <zappo@gnu.org>
16130 * INSTALL: Added simplified installation instructions.
16132 * semantic-imenu.el:
16133 Moved all customizable items into semantic-imenu group.
16135 * semanticdb.el: Moved all customizable items into semanticdb group.
16137 * semantic-util.el:
16138 Added semantic-token-intangible-p and semantic-token-read-only-p.
16140 2001-02-22 David Ponce <david@dponce.com>
16143 Fixed "args-out-of-range" bugs when doc string is missing (nil)
16144 or an empty string ("").
16146 Minor typo on first line summary.
16148 * senator.el: Added token Copy, Cut & Paste and Register feature.
16150 Improvement to the senator-jump completion stuff:
16152 o The completion list is now cached (buffer local) and reused when
16153 possible. The cache is refreshed when parsing or partial parsing
16156 o Greatly simplified the way completion name are handled. Now only
16157 duplicated names are suffixed by parent names :-)
16159 Some minor `checkdoc' fixes.
16161 * java.bnf: Moved setup of Semantic variables from semantic-java.el.
16163 * semantic-java.el: Some code reorganization.
16165 Moved setup of Semantic variables to java.bnf.
16167 Added setup of variables `semantic-command-separation-character',
16168 `document-comment-start', `document-comment-line-prefix',
16169 `document-comment-end'.
16171 New `semantic-find-documentation' function override
16172 `semantic-java-find-documentation' which handles javadoc comments.
16174 2001-02-22 Eric M. Ludlam <zappo@gnu.org>
16176 * semantic.el: Updated several doc strings.
16178 * semantic-texi.el: Added `semantic-texi-goto-source'.
16180 * semantic-ctxt.el:
16181 Updated almost all doc strings to include override information.
16183 * document.el: Added `-' to meta variable name search.
16184 Added support to turn "text" to ``text'' in texinfo files.
16186 * semantic.texi: Updated lots of deffn, defvar, and defuns.
16187 Added local context section.
16188 Fixed compilation errors by adding the utilities section.
16190 2001-02-21 Eric M. Ludlam <zappo@gnu.org>
16192 * semantic-load.el: *** empty log message ***
16195 Rearranged things. There is now a languages target, full of the
16199 Added `user-visible' as an extra spec to variables and fns.
16200 Added override fns for `find-documentation', and `insert-foreign-token'.
16203 Added `semanticdb-set-buffer', and `semanticdb-refresh-table'.
16204 Added `find-file-match' param to all search routines.
16205 When a token is found in a file, make sure the file gets loaded into
16206 Emacs. Useful when additional work to a token needs to be done.
16207 Fixed a search bug related to `diff-mode' parameter.
16209 * semantic-util.el:
16210 Fixed bug in `semantic-summarize-nonterminal' for when a token
16211 type doesn't exist in the name list.
16213 * semantic-imenu.el:
16214 Fixed reversing of token problem when making type submenus, but
16215 without running through the bucket function.
16218 Moved where newlines were inserted for new function documentation.
16219 Support deffn with Command and Option descriptions.
16220 Protect against document generation switching buffers on us.
16222 * semantic-texi.el: Added 'x' version in -name-field-list.
16223 Fixed reversing problems in the return value of the texinfo parser.
16224 Added `semantic-texi-insert-foreign-token'.
16225 Added value for senator-step-at-start-end-token-ids.
16226 Added ':' as the relation-separator-character.
16227 Added semantic-texi-associate-files, semantic-texi-find-documentation,
16228 semantic-texi-update-doc-from-texi, semantic-texi-update-doc-from-source,
16229 and semantic-texi-updae-doc.
16231 * semantic.el: Added `user-visible' to the list of EXTRA-SPECs.
16232 Renamed `semantic-toplevel-bovinate-override' to
16233 `semantic-bovinate-toplevel-override'.
16234 Added more documentation to `semantic-clear-toplevel-cache'.
16235 Added semantic cache/partial reparse logic around foreign
16237 More doc for `semantic-flex-keyword-p'.
16239 2001-02-21 David Ponce <david@dponce.com>
16242 `senator-minor-mode-setup' now uses the `semantic-active-p' function
16243 to check if the current buffer is set up for parsing.
16245 `senator-full-token-name' now append the parent names in reverse order
16246 to the token name. Thus the `senator-jump' completion list is now
16247 easy to use. You can just type a partial token name and press ENTER
16248 to jump to it. If the name is not unique a completion buffer is
16249 displayed allowing to choose the right one.
16251 `senator-beginning-of-defun' and `senator-end-of-defun' now
16252 respectively step at start or end of tokens with identifier specified
16253 in `senator-step-at-token-ids'. Thus, adviced `beginning-of-defun'
16254 and `end-of-defun' now work with any tokens where you can step at.
16256 `senator-step-at-start-end-token-ids' can be set to `t' to step at
16257 start and end of any token where it is allowed to step.
16259 2001-02-20 David Ponce <david@dponce.com>
16262 Fixed: with `semantic-flex-enable-newlines' on, `semantic-flex' didn't
16263 catch newline when there was whitespace characters before it.
16265 2001-02-20 Eric M. Ludlam <zappo@gnu.org>
16267 * Project.ede: Version change. Added semantic-texi.
16269 * semantic-ctxt.el:
16270 Fixed up token identifying when in a sequence of dereferences.
16272 * semantic-texi.el:
16273 New File: Parse texinfo files using semantic's parsing override mechanism.
16275 * semantic-el.el: Added `semantic-elisp-prototype-nonterminal'.
16276 Use it as an override for `prototype-nonterminal' and `concise-prototype-nonterminal'.
16278 * semantic-util.el:
16279 Pulled the default body from `semantoc-prototype-nonterminal', and
16280 turned it into `semantic-prototype-nonterminal-default'.
16282 * semantic-c.el: New c.bnf.
16284 * c.bnf: Removed unused %put calls.
16286 * semantic.el: Version change.
16287 Added `semantic-active-p' function.
16288 Use `semantic-active-p' in `semantic-find-file-hook'.
16289 Add beef to `semantic-toplevel-bovinate-override' usage.
16290 Removed `reparse needed' message.
16292 * semantic-imenu.el:
16293 Added `semantic-imenu-expand-type-parts' variable. This lets you not
16294 bucketize a file, and still expand nodes.
16295 Added `semantic-imenu-expandable-token' variable. This lets you have
16296 parser that doesn't have type information, but still benifits from
16297 hierarchical tag display.
16298 Removed `notypecheck' from `semantic-create-imenu-index'.
16299 Use the above variables.
16301 2001-02-14 Eric M. Ludlam <zappo@gnu.org>
16304 Vectorized %put. New forms accept a list in either the token name
16305 or symbol/value pair.
16307 2001-02-09 Eric M. Ludlam <zappo@gnu.org>
16310 Fixed parse bug when a semantic-list was tested with a regex, then
16311 used with an EXPAND tag. Make sure the proper item is
16314 * c.bnf: Added ( testing to argument lists.
16316 * semantic-ctxt.el:
16317 Added section to determine the current local context (assignment,
16319 Added section for suggestions (incomplete) such as the type
16320 someting should be.
16322 2001-02-09 David Ponce <david@dponce.com>
16324 * semantic-java.el: Changed `semantic-overlay-delete' by better
16325 `semantic-deoverlay-token'.
16328 New implementation of completion menu to allow customization of menu
16329 item text and insert function.
16331 * semantic-util.el:
16332 `semantic-override-table' format changed to obarray.
16333 New function `semantic-install-function-overrides' to setup the
16335 Updated `semantic-fetch-overload' to use override table format.
16336 New functions `semantic-concise-prototype-nonterminal' and
16337 `semantic-concise-prototype-nonterminal-default' to get a concise
16338 prototype text from a token.
16340 * java.bnf, semantic-java.el: Honour last changes in semantic-util.el.
16342 2001-02-09 Eric M. Ludlam <zappo@gnu.org>
16344 * semantic-c.el: c.bnf changes.
16346 * c.bnf: Added type separation characters.
16347 Added all constituents of DECLMOD into their own tokens.
16348 Created a rule to create a list of declmods.
16351 `semantic-change-function' will now correctly navigate through
16352 all tokens hit by a change, and mark the first one found as dirty,
16353 and keep it that way. It used to mark all tokens, including enclosing
16354 types. Now it will only mark the innermost token.
16356 2001-02-08 Eric M. Ludlam <zappo@gnu.org>
16358 * semantic-util.el:
16359 `semantic-type-relation-separator-character' is now buffer local.
16360 `semantic-find-nonterminal-by-name', get children only if they are
16363 2001-02-05 David Ponce <david@dponce.com>
16366 Use new `semantic-type-relation-separator-character' format.
16367 New completion popup menu.
16369 * java.bnf, semantic-java.el:
16370 Use new `semantic-type-relation-separator-character' format.
16372 2001-02-03 Eric M. Ludlam <zappo@gnu.org>
16374 * semantic-util.el:
16375 Changed `semantic-type-relation-separator-character' to be a list.
16378 * semantic-ctxt.el: Added new context function that work ok with C.
16379 `semantic-end-of-command'
16380 `semantic-beginning-of-command'
16381 `semantic-ctxt-current-symbol'
16382 `semantic-ctxt-current-assignment'
16383 `semantic-ctxt-current-function'
16384 `semantic-ctxt-current-argument'
16385 and `-default' versions.
16387 2001-02-02 Eric M. Ludlam <zappo@gnu.org>
16389 * semanticdb.el: Protect against buffers without a parsing table.
16391 * semantic-c.el: New c.bnf
16393 * c.bnf: Added c++ to the list of language modes.
16394 Added lots of operator symbol tokens.
16395 Added DECLMOD symbol w/ complex regexp.
16396 Added CLASS, OPERATOR, PUBLIC, PRIVATE, and PROTECTED token keywords.
16397 Support parsing of a class.
16398 Add class bit parsing for functions.
16399 Add destructor bit parsing for functions.
16400 Allow operator symbols for methods.
16401 Added parent and destructor fields to extra-spec for functions.
16402 The function rule now returns a function or prototype.
16404 * semantic-bnf.el: Added support for multiple language modes in a list.
16405 When resetting buffers, reference the language modes as a list.
16406 Reset a buffer with the setupfunction when available.
16408 2001-02-01 David Ponce <david@dponce.com>
16410 * senator.el: `senator-last-name' removed.
16411 `senator-jump-completion-list' new variable.
16412 `senator-jump' simpler and more robust! Save the current
16413 completion table in `senator-jump-completion-list', then reuse it
16414 to retrieve the token association. Also, this solves jump
16415 conflicts when the same token name is present in different token
16417 `senator-completion-stream' Store the full token itself in the
16418 value part of each association.
16420 2001-02-01 Eric M. Ludlam <zappo@gnu.org>
16423 `senator-complete-symbol' now checks that it complete the same symbol
16424 to reuse `senator-last-completion-stat'. This is needed when for
16425 example completing "set..." and then completing "get..." at the same
16428 * senator.el: Removed compatibility code.
16429 Added isearch code, which was in `senator-isearch'. Made that shorter.
16430 `senator-step-at-start-end-p' fixed up.
16431 Use `semantic-nonterminal-children' instead of querying for type and
16432 then getting the parts.
16433 Use semantic's separator character.
16434 Added senator-find-nonterminal- .. functions. Uses semanticdb if loaded.
16435 When completing, use `senator-find...'.
16436 Also do a little more to track if we are doing the same completion.
16438 * semantic-util.el:
16439 Fixed `semantic-token-variable-default' which was using the wrong index.
16440 Fixed `semantic-find-nonterminal-by-name' to pass down new parameters.
16443 Parses variables with more than one declaration, such as "int i, k;".
16445 * semantic-java.el: New java.bnf.
16446 Expand java nonterminals so compounded variable declarations are
16447 separated into it's own token.
16449 * semantic.el: Fixed `semantic-token-with-position-p'.
16451 2001-01-31 Eric M. Ludlam <zappo@gnu.org>
16453 * java.bnf: Java bnf file developed for JDE.
16455 * semantic-java.el:
16456 Sources originally developed for the JDE for java parsing.
16458 * semantic-ctxt.el: Local context querying and navigation.
16460 * Project.ede: Project file.
16462 * semanticdb.el: Added `semanticdb-global-mode' variable.
16463 Changed -find-nonterminal-* to take `search-parts' and
16465 Added new -find- routines.
16467 * semantic.texi: Added `current context' chapter.
16468 Changed all MODIFIER references in token descriptions to EXTRA-SPEC.
16469 Documented `semantic-token-extra-spec' and friends.
16471 * semantic-util.el:
16472 Changed -modifiers to -extra-spec, and restored -modifiers to the old behavior.
16473 Moved `semantic-find-nonterminal-by-name'.
16474 Changed `semantic-find-nonterminal-by-token',
16475 `semantic-find-nonterminal-standard', and
16476 `semantic-find-nonterminal-by-type' to take `search-parts' and
16477 `search-include' parameters, and to use
16478 `semantic-find-nonterminal-by-function'.
16479 Changed `semantic-find-nonterminal-by-name-regexp',
16480 `semantic-find-nonterminal-by-property',
16481 `semantic-find-nonterminal-by-modifier',
16482 and `semantic-find-nonterminal-by-function' to take `search-parts' and
16483 `search-include' parameters.
16484 New fn `semantic-find-nonterminal-by-type-regexp'.
16485 Added new override methods to documentation string. (see semantic-ctxt.el)
16486 Use `semantic-token-extra-spec' where apropriate.
16487 Use `semantic-token-with-position-p' when returning token children.
16488 Added `semantic-narrow-to-token'.
16489 Added `semantic-show-dirty-mode' variable.
16491 * semantic-sb.el: Change -modifier to -extra-spec.
16493 * semantic-c.el: Updated with new c.bnf
16494 Fixed `semantic-expand-c-nonterminal' to use `-extra-spec'.
16497 Created a token keyword table. Use keywords in language def.
16498 Fixed `semantic-bnf-ASSOC' to add spaces in properly (dponce)
16499 Added `scopestart' to `semantic-bnf-to-bovine' fn. Use it.
16500 Tried to fix indentation bug for rules.
16502 * c.bnf: Added `codeblock' rule and `%scopestart'.
16504 * semantic.el: Version update.
16505 Renamed all MODIFIERS references to EXTRA-SPEC.
16506 Added `semantic-token-with-position-p'.
16507 Changed `semantic-bovinate-block-until-header' to
16508 `semantic-bovinate-region-until-error', and fixed it up.
16510 2001-01-25 Eric M. Ludlam <zappo@gnu.org>
16512 * semanticdb.el: Added `major-mode' to the table class.
16513 Added `semanticdb-live-p' method to database and table classes.
16514 Only save a database if it is live, and if
16515 `semanticdb-write-directory-p' returns non-nil.
16516 Make `semanticdb-save-all-db' interactive.
16517 Do not write a table if it is not live.
16518 Added `semanticdb-project-predicates' variable to help control
16519 `semanticdb-write-directoryp' when the persistent-path contains
16522 * semantic-util.el:
16523 Split `abbreviate-nonterminal' to the override fn, and a default fn.
16524 Change `semantic-nonterminal-children' to take an optional argument
16525 to only return children if they have positional data in them.
16527 * semantic-imenu.el:
16528 Only create menus from the database with files of the same mode.
16530 * semantic-bnf.el: Added token abbreviations.
16532 * semanticdb.el: Added placeholders for persistence control.
16534 * semantic.texi: Added many functions added to semantic-util.
16536 * semantic-imenu.el: Moved semantic-imenu-auto-rebuild-running.
16537 Protect against empty files.
16538 Added ability to rebuild all imenu menus under a given directory.
16540 2001-01-24 Eric M. Ludlam <zappo@gnu.org>
16542 * senator.el: Added some completion functions.
16544 * senator-isearch.el: *** empty log message ***
16546 * semantic-util.el:
16547 Change token accessors to handle new formats, including new functions
16548 `semantic-token-type-modifier', `semantic-token-function-modifier',
16549 `semantic-token-variable-modifier', `semantic-token-variable-const',
16550 and `semantic-token-modifier'.
16551 Updated `find-nonterminal-by-function' to take some control arguments.
16552 Added `semantic-find-nonterminal-by-name-regexp' and
16553 `semantic-find-nonterminal-by-modifier'.
16554 Document finding fn now handles inline strings, or positional
16556 Fixed prototype-nonterminal to use new API fns.
16558 * semantic-sb.el: Handle new modifiers storage.
16560 * semantic-make.el: New make.bnf.
16562 * semantic-imenu.el: Create imenu menus with all info from semanticdb.
16563 Added xemancs imenu compatibility func.
16564 Fixed the flush function to handle clean-token hook.
16566 * semantic-el.el: Create tokens for the new token format.
16568 * semantic-c.el: Fixed for new c.bnf.
16569 Fixed `semantic-expand-c-nonterminal' to build the correct format
16570 for the changed token types.
16572 * semantic-bnf.el: Added the new ASSOC keyword for the OLE.
16573 Added `semantic-bnf-generate-one-rule' and bind to bnf keymap.
16574 Remove parens from the syntax table, inherit from parent
16575 Add ; comment highlighting in OLE.
16576 Rehashed indentation engine to alow more natural lisp indentation
16579 * make.bnf, c.bnf: Added support for new token formats that use ASSOC.
16581 * semantic.el: Changed the definition of some tokens.
16582 Changed the meaning of MODIFIERS.
16583 Added fn `semantic-bovinate-make-assoc-list' for use in bnf files.
16585 2001-01-10 David Ponce <david@dponce.com>
16588 Fixed undeclared local variable 'slot' in `senator-menu-item'.
16590 2001-01-10 Eric M. Ludlam <zappo@gnu.org>
16593 Fixed object-write for tables to be very robust to errors when
16594 deoverlaying the cache. (This happens on exit, so it is very
16595 important this work.)
16597 * semantic.el: Removed some comments.
16598 Added a version string.
16599 Fixed the group description.
16602 Added `semantic-flex-map-keywords' and `semantic-flex-keywords' doc.
16604 2001-01-07 Eric M. Ludlam <zappo@gnu.org>
16606 * semanticdb.el: Added `semanticdb-find-nonterminal-by-name' content.
16609 Added `semantic-flex-map-keywords' and `semantic-flex-keywords'
16610 from David Ponce. Moved a few bits around.
16612 2001-01-06 Eric M. Ludlam <zappo@gnu.org>
16614 * semantic-imenu.el:
16615 Enable the use of the imenu splitup routines via `imenu-max-items'.
16617 * semantic-util.el: Fixed completing read to work with XEmacs
16618 Added `semantic-nonterminal-children' function.
16619 Added `semantic-type-relation-separator-character'
16620 Use the separator character in the abbreviate nonterminal fn.
16621 Fixed overlay and deoverlay-token to use `nonterminal-children', and
16622 to accept non-token items.
16624 * semantic-bnf.el: Added a space after all CR.
16625 Added a command to create a table w/out indentation.
16626 Bound old indentation command to C-cc
16628 * semantic-c.el: Updated from c.bnf.
16630 * c.bnf: Put `type' `t' onto some tokens.
16631 Struct and enums now match the braces, and return nil.
16632 Enum parts now have a token type of 'enum.
16633 Added ... to fuction arg lists.
16634 Match parens for arg lists.
16636 * semantic.el: Added semantic-bovine-toplevel-full-reparse-needed-p and
16637 semantic-bovine-toplevel-partial-reparse-needed-p.
16638 Used them in semantic-bovinate-toplevel.
16640 * semantic.texi: Added new functions in Compiling section.
16642 2001-01-03 David Ponce <david@dponce.com>
16644 * senator.el: New version 2.1.
16646 Fixed a nasty typo in `senator-minor-mode'. `run-hooks' were missing
16647 a quotation before their arguments. Thanks to "Charles Rich"
16648 <rich@merl.com> who has reported this bug.
16650 Added new `senator-jump' command. Thanks to "Eric M. Ludlam"
16651 <zappo@ultranet.com> and "T. V. Raman" <tvraman@almaden.ibm.com> for
16654 Added new `senator-minor-mode-name' option to customize the name
16655 displayed in the modeline when senator minor mode is on.
16657 When semantic isearch mode is on it now appends "/si" to the senator
16658 minor mode name displayed in the modeline.
16660 Added new keyboard shortcut "\C-," to toggle semantic search in
16663 Some code improvements.
16665 * senator-isearch.el: Improved isearch lazy highlighting support.
16667 2000-12-28 Eric M. Ludlam <zappo@gnu.org>
16670 When parsing a file, if text is found, and a token is returned, but
16671 that token's car is nil, do not save that token.
16672 This will let a language author specify characters in a rule that
16673 shouldn't be saved, speeding up the parsing process.
16675 2000-12-22 Eric M. Ludlam <zappo@gnu.org>
16678 Dump parsing of the lisp functions, and use a magic read function to
16679 pep up the speed of lisp parsing.
16683 2000-12-16 Eric M. Ludlam <zappo@gnu.org>
16685 * semantic.texi: Added info about %put in bnf mode.
16686 Added stuff about keyword tables in the Lexing chapter.
16689 * semanticdb.el: Fixed file loading to return an object.
16690 Fixed file reader to restore table parent-db slot.
16693 Renamed `semantic-flex-is-keyword' to `semantic-flex-keyword-p'.
16695 * semantic-bnf.el: Added put values of strings and lists.
16697 * semantic-bnf.el: Added %put to language to values to put on a symbol.
16698 `semantic-bnf-generate-and-load' not outputs a propertylist for
16702 Added `semantic-flex-keyword-put' and `semantic-flex-keyword-get'.
16703 `semantic-flex-make-keyword-table' not takes a property list also.
16705 2000-12-15 Eric M. Ludlam <zappo@gnu.org>
16707 * semanticdb.el: Added a parent object to tables.
16708 Added `semanticdb-full-filename'.
16709 Added error correction when loading a database.
16710 Removed error protection during a write.
16711 Fix `object-write' for tables; get the buffer of `semanticdb-full-filename'.
16712 Fix hook running for `semanticdb-semantic-init-hook-overload'.
16713 Set the parent of all tables in init hook.
16715 2000-12-12 David Ponce <david@dponce.com>
16717 * senator.el: `senator-mark-defun' now work on XEmacs too.
16720 Fixed a "side effect" bug with latest `beginning-of-defun' and
16721 `end-of-defun' advices. They caused font-lock, which uses
16722 beginning/end of defun to force a reparse. Thanks to "Eric M. Ludlam"
16723 <zappo@ultranet.com> for pointing this.
16725 Improved consistency with standard behaviour of `beginning-of-defun'
16726 (go to the beginning of the line where the defun starts) and
16727 `end-of-defun' (go to the beginning of the line following the end of
16730 Added useful advices for `narrow-to-defun', `mark-defun' and
16733 Advices are enabled when the functions are called interactively and
16734 `senator-minor-mode' is enabled.
16736 2000-12-12 Eric M. Ludlam <zappo@gnu.org>
16738 * semanticdb.el: Remove inheritance from eieio-speedbar-*.
16739 Added method for the database to get a table based on a filename.
16740 Used said method in the init hook.
16741 Added `semanticdb-file-stream', to return a stream for a file.
16743 2000-12-11 Eric M. Ludlam <zappo@gnu.org>
16745 * semantic-util.el:
16746 Fixed semantic-find-token to not expect that the token has a buffer.
16747 Use the current buffer if it doesn't have one. (see comment)
16750 Generation of tags will now run through semanticdb if it is active.
16751 As such, it is possible to view a file's tags without loading it into
16754 2000-12-11 David Ponce <david@dponce.com>
16756 * senator.el: Code cleanup and optimization.
16757 `senator-next-token' and `senator-previous-token' now correctly work
16758 when not binded to keyboard shortcuts.
16759 `beginning-of-defun' and `end-of-defun' advices no more need to be
16760 called interactively. So `narrow-to-defun' can use these advices when
16761 `senator-minor-mode' is enabled.
16764 Applied Eric Ludlam's patch. It adds a special face for senator to
16765 use for momentary highlight (requires latest semantic-util.el). If
16766 the user cancels the parse (C-g) when `senator-minor-mode'
16767 initializes, it doesn't kill the rest of the configuration. (Useful
16768 on a slow machine.)
16770 2000-12-10 Eric M. Ludlam <zappo@gnu.org>
16772 * semantic.texi: Added miscellaneous tool chapter.
16773 Added senator text.
16774 Added information for all the property functions.
16776 * semantic-c.el: New c.bnf.
16778 * c.bnf: Fix spelling errors.
16780 * semantic-util.el: Added `semantic-find-nonterminal-by-property'.
16781 Don't try to remove hooks in `semantic-unhighlight-token'.
16782 Fix some quoting in some macros to get hooks removed.
16783 Added `semantic-add-label', and `semantic-show-label' user fns.
16784 Fix `semantic-show-dirty-mode' to check for the right fcn when toggling.
16786 * semantic.el: Added `semantic-edits-are-safe' variable.
16787 Added PROPERTIES to standard token.
16788 Added accessors for PROPERTIES slot in a token.
16789 Added semantic-token-put, and -get functions.
16790 Put the parser nonterminal into the token when it isn't bovine-toplevel.
16791 Put 'dirty t into a token when it is edited.
16792 Removed 'dirty flag when it is rebovinated.
16794 * semantic.el: Made semanticdb-minor-mode and auto-load.
16796 * semanticdb.el: Fixed write to get point max from the correct place.
16798 2000-12-09 Eric M. Ludlam <zappo@gnu.org>
16800 * semanticdb.el: Require eieio-base for base classes.
16801 Added variable semanticdb-save-database-hooks.
16802 Added pointmax to the table class.
16803 Wrap the save fcn into condition-case to protect against errors.
16804 Added messages when saving the table.
16805 Track pointmax on save for each file.
16806 Reset the table on load if the table is out of date (pointmax /=)
16807 Wrap deoverlaying in a condition case, with clear-table as error condition.
16808 Added beginnings of utility functions.
16810 * semantic-util.el:
16811 Turn the highlight/unhighlight set into a stack of faces.
16812 Added `semantic-momentary-unhighlight-token' for momentary case.
16813 Handle the cache which no longer has buffer size in it.
16814 Removed `bovinate-nonterminal'
16815 `semantic-current-token' returns a token now, in addition to the message.
16817 * semantic.el: Added a working type tracking variable.
16818 Show working messages when reparsing.
16819 Change the cache to not have the size at the end. (It isn't used anymore.)
16820 Make sure during a reparse the the new overlay gets its token reset.
16823 Added new chapter for tools, and added speedbar, semanticdb, and senator.
16825 2000-12-08 Eric M. Ludlam <zappo@gnu.org>
16827 * semantic.el: Fixed rebovinate-token to handle types.
16830 Added variable `semantic-dirty-tokens' to track dirty tokens.
16831 Added hooks `semantic-dirty-token-hooks', and `semantic-clean-token-hooks'
16832 which run when a token is marked dirty or clean.
16833 Clear dirty tokens during a reparse.
16834 Call `semantic-after-toplevel-bovinate-hook' on a clear also.
16835 This lets us track the value of the cache better.
16836 In `semantic-bovinate-toplevel', added a new section which cleans
16837 all the dirty tokens, but only if we don't need a full reparse.
16838 In our change-function, add dirty tokens to the dirty token list,
16839 and don't bother with the type searching stuff. Call dirty-token-hooks.
16840 New function `semantic-rebovinate-token'.
16842 * semantic-util.el:
16843 Added show-dirty-mode, which highlights dirty tokens.
16844 Previous fn bovinate-nonterminal had its guts moved to semantic.el
16845 semantic-describe-token forces a reparse upon request.
16847 2000-12-08 David Ponce <david@dponce.com>
16849 * senator-isearch.el, senator.el: A bunch of XEmacs compatibility code!
16851 2000-12-08 Eric M. Ludlam <zappo@gnu.org>
16853 * semantic-util.el:
16854 When re-overlaying a buffer, put the 'semantic property onto the overlay.
16855 Added `bovinate-nonterminal' for splicing new data into an old token slot.
16856 Added `semantic-describe-token' for seeing what we think is under the cursor.
16858 * semantic.el: Added `semantic-raw-to-cooked-token' from the guts of
16859 `semantic-bovinate-nonterminals'.
16860 Added autoload for senator.
16862 2000-12-07 David Ponce <david@dponce.com>
16864 * senator.el: Applied Eric Ludlam's doc fix patch.
16866 2000-12-07 Eric M. Ludlam <zappo@gnu.org>
16868 * semantic-imenu.el: Fixed `summarize' misspelling.
16870 * semantic-util.el: Fixed misspelling of summarize.
16871 Deoverlayed tokens no longer contain the buffer.
16872 Implemented `semantic-deoverlay-cache' and `semantic-overlay-cache'.
16873 Added `semantic-deoverlay-list' and `semantic-overlay-list'.
16876 Fixed utils that fetch token extents to new vector mode w/out a buffer.
16877 Added `semantic-file-token-stream' to get a token stream for a file.
16879 * semanticdb.el: Add msg to `semanticdb-file-stream'.
16880 Add `semanticdb-minor-mode-p' to learn if its active.
16881 Fix kill hook to only bovinate if the buffer has a cache to save.
16883 * semanticdb.el: New file.
16885 2000-12-05 David Ponce <david@dponce.com>
16887 * senator.el: Improved consistency with built-in search commands.
16888 New search commands like the ones in the Emacs Search menu.
16889 Added a menu to senator minor mode.
16890 The common prefix key in senator minor mode is now "C-c ,".
16891 Updated header comments.
16894 * senator-isearch.el:
16895 Initial revision needed by senator.el 1.7 (version 2.0) and above.
16898 New major version 2.0 with [i]search feature and a senator minor mode.
16899 Added compatibility code between GNU Emacs 20.7 and 21.
16901 2000-12-05 Eric M. Ludlam <zappo@gnu.org>
16903 * semantic-util.el: Enable a face for momentary highlighting.
16904 Added code to convert a token list to/from overlays.
16906 2000-12-03 Eric M. Ludlam <zappo@gnu.org>
16908 * semantic.el: Added a defvar for semantic-init-hooks.
16909 Renamed to plural for hooks.
16912 Added the ability for a semantic token to contain an overlay, or numbers.
16913 Added a fn to get the CONS cell the overlay (or whatever) lives in.
16914 Added a find-file-hook, which turns around and calls `semantic-init-hook'
16915 when the table is availble for parsing.
16916 Move cache setting into a fcn to be called. This lets an external
16917 program set the cache (from a file perhaps.)
16919 2000-11-28 David Ponce <david@dponce.com>
16921 * senator.el: More performance improvements.
16922 New option `senator-highlight-found' to customize token highlighting.
16924 2000-11-27 David Ponce <david@dponce.com>
16927 Fixed a serious performance problem in `senator-next-token' and
16928 `senator-previous-token'.
16930 Before searching for a next or previous token the point was just moved
16931 to respectively the next or previous character. Thus, during
16932 navigation, the buffer was explored character by character :-(. Now
16933 `senator-next-token' and `senator-previous-token' skip whole tokens
16934 (unless they are 'type tokens which may include sub tokens).
16936 2000-11-18 Eric M. Ludlam <zappo@gnu.org>
16938 * semantic.el: Version number.
16940 2000-11-14 David Ponce <david@dponce.com>
16943 Minor change to `senator-next-token' and `senator-previous-token' to
16944 return the token at point. Useful when calling these commands
16948 Improved navigation in semantic token where to step at start and end.
16950 - `senator-next-token' move the point to the end of token if it was at
16951 beginning or in the middle of the token.
16953 - `senator-previous-token' move the point to the beginning of token if
16954 it was at end or in the middle of the token.
16956 2000-11-13 Eric M. Ludlam <zappo@gnu.org>
16958 * make.bnf: Fixed comment.
16960 * semantic-c.el: Reverted to previous version of keyword regexps.
16962 * semantic-bnf.el: Force the table to be cleared before a rebuild.
16963 Insert `nil' for keyword table if there are no keywords.
16965 * semantic-imenu.el:
16966 Added protection from imenu not existing on older XEmacsen.
16968 * semantic.el: Fixed XEmacs bug in `semantic-bovinate-nonterminals'.
16970 2000-11-10 David Ponce <david@dponce.com>
16973 Fixed a little bug in `senator-previous-token' navigation.
16975 * senator.el: Initial revision.
16977 2000-10-30 Eric M. Ludlam <zappo@gnu.org>
16979 * semantic.el: Added in some XEmacs overlay stuff.
16981 * c.bnf: Tidied up opt-array stuff.
16983 * semantic-c.el: Updated for new c.bnf
16985 2000-10-18 Eric M. Ludlam <zappo@gnu.org>
16987 * semantic.el: Fixed overlay aliases for XEmacs.
16988 Added `semantic-overlay-live-p' alias.
16989 Use `semantic-overlay-live-p' when needed so XEmacs works properly.
16991 * semantic-util.el: Fixed some byte compiler warnings.
16993 2000-10-17 Eric M. Ludlam <zappo@gnu.org>
16995 * semantic-util.el:
16996 Fixed some calls to overloaded functions to take the correct number
16999 2000-10-16 Eric M. Ludlam <zappo@gnu.org>
17002 Moved `semantic-after-toplevel-bovinate-hook' call to only happen when
17003 a buffer is actually reparsed.
17005 2000-10-12 Eric M. Ludlam <zappo@gnu.org>
17007 * semantic.el: Changed the overlay aliases to check the xemacs feature.
17008 Added the hooks `semantic-after-toplevel-bovinate-hook',
17009 `semantic-before-toplevel-cache-flush-hook' and
17010 `semantic-no-reparse-needed-change-hook'. Call then in the right
17012 Enable reparsing the the change hook to use the additions from
17013 semantics reparse not found change hook.
17015 * semantic-imenu.el:
17016 Updated the `semantic-imenu-goto-function' to check for deleted overlays.
17017 Added `semantic-imenu-flush-fcn' to be used as a hook.
17018 Changed what was `semantic-create-imenu-index' to
17019 `semantic-create-imenu-index-1'. The new `semantic-create-imenu-index'
17020 calls `semantic-create-imenu-index-1' after setting the goto fcn,
17021 and setting the flush hook to `semantic-imenu-flush-fcn'.
17022 Changed calls to `semantic-create-imenu-index' to -1.
17024 2000-10-10 Eric M. Ludlam <zappo@gnu.org>
17027 Added `comment-start' and `comment-start-skip' values in bnf mode.
17030 Make `semantic-ignore-comments' and `semantic-flex-depth' buffer local.
17032 2000-10-06 Eric M. Ludlam <zappo@gnu.org>
17034 * semantic-el.el: Added defsubst support.
17036 2000-10-05 Eric M. Ludlam <zappo@gnu.org>
17039 Set up to work with older speedbars again. (removing dframe references.)
17041 * semantic.texi: Added `semantic-find-nonterminal-by-overlay',
17042 `semantic-find-nonterminal-by-overlay-in-region', and
17043 `semantic-current-nonterminal'.
17045 * INSTALL: Fixed up a little
17047 * INSTALL: New file.
17049 2000-10-04 Eric M. Ludlam <zappo@gnu.org>
17051 * semantic-util.el:
17052 Fixed `semantic-token-variable-optsuffix' for overlay stuff.
17054 * semantic.el: Fixed `semantic-token-docstring' for overlay stuff.
17056 * semantic-util.el:
17057 Fixed throws finding to account for shorter tail of a nonterminal.
17058 Added `semantic-current-nonterminal' as a non-list producing short-cut
17059 for `semantic-find-nonterminal-by-overlay'.
17061 2000-10-03 Eric M. Ludlam <zappo@gnu.org>
17063 * semantic.el: Updated version number.
17065 2000-09-29 Eric M. Ludlam <zappo@gnu.org>
17067 * working.el: Fixed copyright.
17069 * semantic.el: Added `semantic-token-buffer'.
17071 * semantic-sb.el, semantic-el.el, document.el, semantic.texi:
17072 Fixed up with some API changes.
17074 * semantic-util.el:
17075 Several override methods find information about tokens, and took both
17076 a buffer, and a token. Tokens' overlay now have the buffer in it,
17077 so don't require this parameter anymore.
17079 * semantic.texi: Fixed up with some API changes.
17081 * working.el: Indentation and edebug updates.
17083 2000-09-28 Eric M. Ludlam <zappo@gnu.org>
17085 * working.el: Updated the version.
17086 Made the user options user options.
17089 * semantic-el.el: Specify to only nab 6 flex tokens from sub-lists.
17091 * semantic-imenu.el, semantic-mode.el, semantic-sb.el, semantic-util.el:
17092 Updated calls to `semantic-bovinate-toplevel'.
17095 Added `semantic-flex-depth', and `semantic-ignore-comments'.
17096 Removed depth/trashcomments from bovinate-toplevel.
17097 Removed comment stripping code from the parser.
17098 Do not add comments to the flex list, unless the variable is set.
17099 Added length parameter to the flexer. Lets a language only
17100 look at the first few tokens in a sublist.
17102 * semantic-bnf.el: Updated calls to `semantic-bovinate-toplevel'.
17105 Added long section describing some of semantics variables.
17107 * document.el: Changed use of `semantic-bovinate-toplevel'.
17109 2000-09-27 Eric M. Ludlam <zappo@gnu.org>
17112 Added `working-status-call-process', and `working-verify-sleep'.
17115 Added a special form `working-status-timeout' which uses a timer
17116 to display the dynamic message, letting the code run normally.
17117 Added timer workarounds.
17118 Added `working-wait-for-keypress' as an example.
17120 * semantic-imenu.el: Made customizable vars of type 'bool in 'boolean.
17122 * semantic-bnf.el: Quote the expression to eval after load.
17125 Added `semantic-bnf-mode' to `which-func-modes' for later use.
17127 * semantic-c.el: c.bnf changed.
17130 Moved `type' to be before `function' and `variable' in `declaration'.
17132 * semantic-imenu.el:
17133 Changed the default which-function to be a new function which
17134 intelligently builds a name.
17136 * semantic-imenu.el: Fixed default for `semantic-which-function'.
17138 * semantic-imenu.el: Make imenu config items buffer local.
17141 Added type internals check when determining if a change requires a
17144 * semantic-util.el: Added interactive bovinate fns from semantic.el.
17146 * semantic.el: `semantic-toplevel-bovine-cache-check' is now boolean.
17147 Moved bovinate fns into semantic-util.
17148 Moved all debug stuff to after the parser, and before the lexer.
17149 Added new `after-change-hook' entry `semantic-change-function'.
17150 This new function will set `semantic-toplevel-bovine-cache-check'
17151 to true based on what the user changed.
17153 * semantic-mode.el: Changed comment, and removed dynamic reparse stuff.
17155 * semantic-el.el: Added advice into the language.
17157 * semantic.el: Added some more overlay compatibility aliases.
17158 Added `semantic-clear-toplevel-cache' to `change-major-mode-hook'.
17160 * semantic-util.el:
17161 Added `semantic-find-nonterminal-by-overlay-in-region',
17162 `semantic-find-nonterminal-by-overlay-next', and
17163 `semantic-find-nonterminal-by-overlay-prev'.
17165 * semantic-imenu.el:
17166 Added a `which-function' hack to use with `which-function' mode.
17168 2000-09-26 Eric M. Ludlam <zappo@gnu.org>
17170 * semantic-util.el:
17171 summerize-nonterminal, prototype-nonterminal, and prototype-file all
17172 had incorrect overload function grabbing code. Set them up correctly.
17174 * semantic-mode.el: Added a lame menu for imenu soring functions
17176 * semantic-util.el:
17177 Reversed all compares in the semantic-sort functions because they were
17180 2000-09-25 Eric M. Ludlam <zappo@gnu.org>
17182 * semantic-imenu.el:
17183 nreverse sub-buckets because `semantic-bucketize' now leaves things in
17186 * semantic-util.el: Added a filter function to `semantic-bucketize'.
17187 Added many sortingfunctions of the form:
17188 `semantic-sort-tokens-by-name/type-in/decreasing[-ci]'
17190 * semantic-imenu.el:
17191 Added `semantic-imenu-sort-bucket-function' variable.
17192 Pass this to `semantic-bucketize'.
17194 * semantic-mode.el: Removed `checkdoc-add-to-list'.
17196 2000-09-22 Eric M. Ludlam <zappo@gnu.org>
17198 * semantic-util.el:
17199 Added spiffy functions for changing properties on a token's overlay.
17201 * semantic-imenu.el:
17202 Added interactive toggle functions for our sorting/binning variables.
17204 * semantic-mode.el: New file.
17206 * semantic-imenu.el:
17207 Added changes from David Ponce: no double separators, all types have submenus.
17208 Added `semantic-imenu-goto-function' which takes overlays for
17209 position. Replaced all explicit numbers with the overlay from the
17212 2000-09-21 Eric M. Ludlam <zappo@gnu.org>
17214 * semantic-bnf.el: Added symbol->name list to major-mode
17215 Added imenu index function to major-mode
17218 Fixed up struct/union variable declaration section to use new lexical
17219 tokens for struct/union.
17222 Fixed up struct/union variable declaration section of c.bnf.
17224 * semantic.texi: Fixed up for use with OVERLAY.
17225 Fixed up some descriptions of quoting, and updated the settings
17227 Broke the BNF converter section into sub-nodes.
17229 * semantic-el.el: Added support for methods and classes.
17231 2000-09-20 Eric M. Ludlam <zappo@gnu.org>
17233 * semantic.el: Fixed typo for delete-overlay in debug mode.
17236 In `semantic-expand-c-nonterminal', copy the overlay, not start/end.
17238 * semantic.el: Converted to use overlays instead of start/end.
17239 Added overlay compatibility section.
17240 Changed the doc string for `semantic-toplevel-bovine-table'.
17241 Added `semantic-overlay-error-recovery-stack',
17242 `semantic-overlay-stack-add', 'semantic-overlay-stack-clear',
17243 `semantic-delete-overlay-maybe'
17244 `semantic-clear-toplevel-cache' was updated to delete overlays.
17245 `semantic-token-extent/start/end' was changed to use the new
17246 `semantic-token-overlay' macro.
17247 `semantic-bovinate-toplevel' was updated to include a local scope of
17248 the overlay error stack.
17249 `semantic-bovinate-nonterminals' changed to convert START/END from the
17250 lambdas into overlays. Convert overlays from the return streamed
17251 onto the error recovery stack.
17252 Converted old overlay code in debugger to use compatibility layer.
17253 In `semantic-bovinate-stream', added an overlay stack to the local
17254 scope. Track the overlays from recursive parses, clear the error
17255 recovery stack whenever a failed match occurs. Return a list of
17256 overlays found during this parse as a third list in the return arg.
17257 Deleted ITERATE section.
17258 Return nothing if we have a failed match.
17259 In `semantic-bovinate-from-nonterminal', use car-safe.
17261 * semantic-util.el: Added `semantic-find-nonterminal-by-overlay'.
17263 2000-09-19 Eric M. Ludlam <zappo@gnu.org>
17265 * semantic-imenu.el: Added `semantic-imenu-bucketize-file' option.
17266 Added `semantic-imenu-buckets-to-submenu' option.
17267 When bucketize-file is nil, then do not put tokens into a bucket.
17268 When buckets-to-submenu is nil, then do not put buckets into menus,
17269 but only into sections divided with a separator.
17270 David Ponce fixed a reverse order problem.
17273 `semantic-flex-make-keyword-table' now returns the table instead of
17276 * c.bnf: Added %keywordtable
17279 Rearranged semantic-bnf-generate-and-load to do keyword table, and
17280 setup changes first, and the main table last.
17281 Added keywordtable keyword to bnf language.
17282 Added keywordtable finding function.
17284 * semantic-c.el: Updated for new semantic-bnf.
17286 * semantic-util.el:
17287 In semantic-bucketize, return only those buckets with stuff in them.
17289 * semantic-imenu.el:
17290 For types, do not show buckets if there is only one bucket.
17291 Added *typedef* to list of a types buckets to go to that class'
17292 definition. (David Ponce)
17294 2000-09-15 Eric M. Ludlam <zappo@gnu.org>
17297 Added `semantic-flex-keywords-obarray' and `semantic-flex-make-keyword-table'
17298 When a symbol is found in `semantic-flex', it is looked up in the
17299 obarray, and its symbol is then substituded in place of the symbol.
17301 * semantic-bnf.el: Tokens that are symbols now generate a keyword list.
17302 This list is passed to the flexer, and converted into an obarray.
17304 * semantic-imenu.el: Fixed reversing of indicies problem.
17305 Enable imenu--sort-by-name inside sub-sub menus
17306 Added *TypeDef* menu item for jumping to the definition of types, as
17307 opposed to their sub-parts.
17308 Fixed jumping to the end of a definition, not the beginning.
17310 2000-09-14 Eric M. Ludlam <zappo@gnu.org>
17312 * semantic-make.el: Fixed spelling mistake.
17314 * semantic-c.el: Rebuilt table from c.bnf.
17316 * c.bnf: Updated to use %token to make new tokens for use in RULES.
17318 * semantic-bnf.el: Added the %token token to the language.
17319 This generates smart regexps in the table.
17321 2000-09-13 Eric M. Ludlam <zappo@gnu.org>
17323 * semantic-bnf.el: Removed all indenting commands from code generation.
17324 Perform region indentation instead at the very end.
17327 `semantic-bnf-lambda-convert', EXPAND tokens should use the old
17328 `lambda' notation, and other code shoud use `semantic-lambda'.
17329 This fixes extra start/end data problems.
17332 Updated `semantic-bovinate-from-nonterminal' to remove the let statement.
17334 2000-09-11 Eric M. Ludlam <zappo@gnu.org>
17336 * c.bnf: Use new BNF settings section.
17338 * semantic-el.el: Updated for new semantic-lambda macro.
17339 Added support for backquote in a single expression.
17341 * semantic-c.el: Updated for new c.bnf.
17343 2000-09-09 Eric M. Ludlam <zappo@gnu.org>
17345 * semantic.texi: Fixed build errors.
17347 * semantic.texi: Added new section on the setup section and % tokens
17349 * make.bnf: Use new bnf settings section.
17352 New code generators for settings based on new tokens available in
17355 * semantic-make.el: Rebuilt using new semantic-bnf
17357 2000-09-08 Eric M. Ludlam <zappo@gnu.org>
17359 * semantic-sb.el: Updates to handle the new speedbar beta.
17362 Working is a part of semantic. Removed large crufty bits.
17363 Added `semantic-case-fold' for modes. Initialize `case-fold-search'
17364 from this when parsing.
17365 `semantic-bovinate-symbol-nonterminal-p' is now `defsubst'
17366 Added `semantic-lambda' macro for use in tables.
17368 * semantic-bnf.el: Updated language to include % token things.
17369 Updated output to use `semantic-lambda' macro. Updated language to
17371 Updated generator setup code to get the token stream, use %tokens
17372 parsed in the input file for file/table/mode detection.
17373 Passes token stream down to all the sub-functions.
17374 Updated font-lock keywords for % tokens.
17375 bnf-mode alias to semantic-bnf-mode
17376 Updated indent function to use lisp-indent-function whenever inside %( )%
17377 Added `semantic-bnf-in-settings-p' function.
17379 2000-07-07 Eric M. Ludlam <zappo@gnu.org>
17381 * semantic-sb.el: Remove any reference to parent part of types.
17382 We will just ignore it.
17384 2000-07-05 Eric M. Ludlam <zappo@gnu.org>
17386 * c.bnf: Support multiple continuous decl modifiers.
17387 Added modifiers into variables.
17389 * semantic-c.el: Updated to new c.bnf.
17390 Changed `semantic-expand-c-nonterminal' to use optsuffix for bit
17391 fields and arrays. Use modifiers for actual modifiers like static.
17393 * semantic-util.el: Added `semantic-token-variable-optsuffix'.
17394 Used above in `semantic-prototype-nonterminal'.
17395 Also added modifiers support to functions and types.
17398 Added OPTSUFFIX to variables for bit fields, or opt arrays.
17400 2000-07-04 Eric M. Ludlam <zappo@gnu.org>
17402 * semantic-imenu.el:
17403 Fix for imenu subindexes when a types PARTS is empty.
17405 2000-07-03 Eric M. Ludlam <zappo@gnu.org>
17407 * semantic.texi: Doc fix for semantic-token-variable-modifiers.
17409 * semantic-util.el: Fixed doc of type-modifiers.
17410 Fixed function-throws macro to be 6 not 5
17412 2000-07-01 Eric M. Ludlam <zappo@gnu.org>
17414 * semantic-util.el:
17415 Fixed left over `semantic-default-c-built-in-types' as
17416 `semantic-default-built-in-types'.
17418 * semantic.texi, semantic-util.el:
17419 Added semantic-find-inntermost-nonterminal-by-position.
17421 * semantic-make.el: Updated with make.bnf.
17423 * make.bnf, semantic-el.el: Updated for new elements in the tokens.
17425 * semantic-c.el: Updated with c.bnf.
17427 * c.bnf: Updated for new elements in the tokens.
17429 * semantic.texi: Syntax error.
17431 * semantic.texi: Various documentation updates.
17432 Added `semantic-token-type-modifiers', `semantic-token-function-modifiers',
17433 `semantic-token-function-throws'.
17435 * semantic-util.el:
17436 Added `semantic-token-type-modifiers', `semantic-token-function-modifiers',
17437 `semantic-token-function-throws'.
17439 * semantic.el: Updated documentation.
17441 2000-06-23 Eric M. Ludlam <zappo@gnu.org>
17443 * semantic-util.el:
17444 Added `semantic-current-token' to call semantic-find-nonterminal-by-position
17447 2000-06-20 Eric M. Ludlam <zappo@gnu.org>
17449 * semantic.el: Quick hack to make flex robust to broken lists.
17451 2000-06-16 Eric M. Ludlam <zappo@gnu.org>
17453 * semantic.el: Added fn to read nonterminals until it reached an error.
17455 Added `with-syntax-table'
17457 2000-06-14 Eric M. Ludlam <zappo@gnu.org>
17459 * semantic-imenu.el:
17460 Use imenu-summary-function for regular items, not just types.
17461 Maybe reverse this later.
17463 * semantic-util.el:
17464 Updated summerize to use the symbol->name assoc list.
17466 * semantic-util.el:
17467 Swapped summerize-nonterminal to call prototype-nonterminal,
17468 and prototype-nonterminal now some of the old guts of summerize.
17469 abbreviate now does some of the same things as the speedbar display.
17471 * semantic-imenu.el: Updated for new options in display.
17473 2000-06-13 Eric M. Ludlam <zappo@gnu.org>
17476 Added optional argument to bovinate to force a cache clear.
17478 * semantic-util.el:
17479 Added semantic-bucketize, and semantic-abbreviate-nonterminal.
17482 Removed the bucketizer, and used the new version now in semantic-util.
17484 * semantic-el.el: Build in imenu support
17486 * make.bnf: Added special equals and colon NTs
17488 * c.bnf: The table has moved.
17490 * semantic-make.el: Added imenu bovinator support.
17492 * semantic-imenu.el, semantic-c.el: New file.
17494 2000-06-11 Eric M. Ludlam <zappo@gnu.org>
17496 * semantic.texi: Patched with emacs texi functions.
17497 Added `semantic-flex-enable-newlines' and `semantic-flex-syntax-modifications'.
17499 * semantic.el: Added some ITERATE code which doesn't work yet.
17500 Added `semantic-symbol->name-assoc-list. (buffer local)
17501 Added `semantic-flex-syntax-modifications' (buffer-local)
17502 Use syntax-modifications to change the way parsing occurs.
17504 * semantic-el.el: Renamed to semantic-el.el.
17505 Removed all C stuff.
17506 Updated mega hook to a setup function.
17508 * semantic-make.el: Updated from mega-hook lambda to a setup function.
17509 Changed table to match new make.bnf
17512 Updated to use the new variable `semantic-symbol->name-assoc-list'.
17513 This lets languages define their own names for types of tokens.
17514 The bucketing code changed. It now uses a vector.
17516 * semantic-make.el, make.bnf: New file.
17518 2000-05-25 Eric M. Ludlam <zappo@gnu.org>
17520 * semantic.texi: Added text about semantic-token-extents.
17522 * semantic-util.el:
17523 Added a comment for finding some other utils functions in semantic.el
17526 2000-05-17 Eric M. Ludlam <zappo@gnu.org>
17528 * semantic.el: Added `semantic-token-extent'
17530 * semantic-sb.el: Added XEmacs invisibility hack stuff.
17532 2000-05-14 Eric M. Ludlam <zappo@gnu.org>
17534 * working.el: Fixed frame-width for XEmacs minibuffer strangeness.
17535 fixed up some animation stuff. (Old)
17537 2000-05-06 Eric M. Ludlam <zappo@gnu.org>
17539 * semantic.texi: Added small EDE reference
17541 * sformat.el: Added untokenizing regular expression generators.
17543 * document.el: Added file-header stuff.
17545 * semantic-el.el: Added updates from c.bnf
17547 * c.bnf: Use EXPANDFULL for enums, and for argument lists to functions.
17549 2000-05-04 Eric M. Ludlam <zappo@gnu.org>
17552 Added semantic-flex-start and semantic-flex-end functions.
17554 * semantic-util.el: Added flex option to the doc finder.
17556 * document-vars.el: New file.
17559 Converted all the CPCOMMENT stuff here, and made work with semantic.
17562 if no additional args are passed to sformat, then `format' will not be
17563 called on the result.
17565 * semantic.el: Added semantic group for custom.
17567 * semantic-util.el: Added find-documentation, and a snarf-doc command.
17569 * semantic-sb.el: Added autoexpand length variable.
17570 Moved making of invisible text.
17571 semantic-sb-buttons-plain no longer save-excursion/set-buffer.
17572 Removed region narrowing in semantic-sb-buttons.
17573 Bucket insertion will now skip the bucket if it only contains one item.
17575 * semantic-el.el: Added defcustom as variables for Emacs Lisp.
17577 2000-05-01 Eric M. Ludlam <zappo@gnu.org>
17579 * sformat.el: New file.
17581 2000-04-30 Eric M. Ludlam <zappo@gnu.org>
17583 * document.el: New file.
17585 * semantic.texi: Added piles o doc about util functions.
17587 * semantic.el: docstrings are now described as a position.
17588 Fixed other doc strings.
17589 semantic-bovinate-toplevel takes new CHECKCACHE argument.
17590 If buffer is different size from last time, re-parse.
17591 Added more info in semantic-flex reguarding END param.
17593 * semantic-util.el: Updated a bunch of documentation.
17594 Added semantic-find-nonterminal-by-position
17595 Fixed a bunch of misspelled &optionals
17596 Added a set buffer when finding nonterminals.
17597 Added semantic-find-documentation to find a doc string.
17598 Added semantic-find-doc-snarf-comment to get the actual text from a buffer.
17600 * semantic-el.el: Fixed Emacs Lisp codes to have doc-string positions.
17603 Fixed lisp expressions to have correct sizing information.
17605 * semantic-util.el:
17606 Added semantic-prototype-file as an overridable function.
17608 2000-04-29 Eric M. Ludlam <zappo@gnu.org>
17610 * semantic.el: Working msg now has filename in it.
17611 Added `returnonerror' flag to semantic-bovinate-nonterminals.
17612 goto (point-min) in `bovinate'
17613 Open/close paren matching now matches only one paren at a time.
17615 * semantic-util.el: Added scanning message to recursive search routine.
17617 * semantic-el.el: Updated w/ c.bnf.
17618 Added elisp override for finding dependencies.
17620 * c.bnf: Added support for Linux __P items.
17621 Added support for "..." fn prototypes.
17623 2000-04-28 Eric M. Ludlam <zappo@gnu.org>
17625 * semantic-util.el:
17626 Find dependency now uses EDE to track local includes if needed.
17629 Updated doc about include nonterms. (Added system flag.)
17631 * semantic-util.el:
17632 Added nil t to all parsing routines used for searching.
17633 Added new recursive find-by-name function.
17635 * semantic-sb.el: Added <> after system includes.
17637 * semantic-el.el: Updated for c.bnf
17639 * c.bnf: Added system flag to include files.
17641 2000-04-27 Eric M. Ludlam <zappo@gnu.org>
17643 * semantic-util.el: New file.
17645 * semantic.el: Removed some API functions to semantic-util.
17646 Require semantic-util.
17648 * semantic-sb.el: Fixed token display for misc items.
17650 * semantic-el.el: Added built-in types stuff.
17652 2000-04-25 Eric M. Ludlam <zappo@gnu.org>
17654 * semantic-bnf.el: Fixed first line comment.
17656 * semantic.el: Reverse the order of full expanded items.
17658 * semantic-sb.el: Fixed typo (extra parens)
17661 Added semantic-dependency-include-path, and semantic-find-dependency.
17662 These were in semantic-inc.el, but belong here with the override
17663 table. Fixed up semantic-find-nonterminal to use the new function.
17665 * semantic-el.el, semantic-sb.el:
17666 Removed semantic-inc, use new stuff in semantic.el for same behavior.
17668 * semantic.texi: Added stuff about EXPAND and EXPANDFULL
17671 Added support for the EXPANDFULL token when expanding semantic lists.
17673 * semantic-el.el: Change to c.bnf.
17676 structparts now uses EXPANDFULL to get positional information for it's
17677 sub parts. This simplified STRUCTSUBPARTS nonterminal
17680 Added support for a second type of inline token expantion which
17681 includes positional information.
17684 Fixed up the -c- hook to handle the default include path.
17686 * semantic-sb.el: Added some smarts about the new semantic-inc file.
17688 * semantic-inc.el: New file.
17690 2000-04-23 Eric M. Ludlam <zappo@gnu.org>
17692 * semantic-bnf.el, semantic.el, semantic-el.el, semantic-sb.el:
17693 Fixed copyright information.
17695 * c.bnf: Added copyright information.
17698 Added a package recommendation in Non-Terminals chapter.
17700 * semantic.el: Added a package recommendation to comments.
17702 * semantic-el.el: Added package support to Emacs Lisp table.
17704 * semantic-sb.el: Added support for `package'.
17706 2000-04-21 Eric M. Ludlam <zappo@gnu.org>
17708 * semantic.el: Documented some byte compiler warnings.
17710 2000-04-20 Eric M. Ludlam <zappo@gnu.org>
17712 * semantic-el.el: updated the C bnf to match c.bnf.
17714 * c.bnf: Macros split from 'variable' nt.
17715 Added knr-argument parsing.
17718 Added the ability to also reset all modes (and thereby hooks) for a given mode
17720 2000-04-16 Eric M. Ludlam <zappo@gnu.org>
17723 Turn `semantic-clear-toplevel-cache' into an interactive function.
17725 * semantic-sb.el: Added a Misc bucket for Speedbar.
17727 * semantic-el.el: Updated to new c.bnf
17729 * semantic-bnf.el: Added a .bnf speedbar extension.
17730 Make the return list compatible with speedbar.
17732 * c.bnf: Added `filename' for include rules.
17734 * semantic.el: Fixed up some documentation.
17736 * semantic.texi: Added a section on using the nonterminal token stream.
17738 2000-04-15 Eric M. Ludlam <zappo@gnu.org>
17740 * semantic.el: Fixed typo.
17743 Tried to speed up semantic-flex by using a short-circuit and around
17744 the -extentions section.
17746 * semantic-el.el: Fixed a "." punctuation regular expression.
17749 Added some doc about lexing extentions. Fixed spelling errors.
17752 Added big reference/compare cycle code. To use uncomment a section.
17754 2000-04-14 Eric M. Ludlam <zappo@gnu.org>
17756 * semantic.el: Added parser dumper.
17758 * semantic.el: Fixed byte compiled table bug.
17760 2000-01-25 Eric M. Ludlam <zappo@gnu.org>
17762 * semantic.el: Added debugging support for backquoted tables.
17765 Added support for the new speedbar tagging extentions.
17767 1999-12-17 Eric M. Ludlam <zappo@gnu.org>
17769 * semantic.el: Use assq instead of assoc for some lookups.
17771 * c.bnf: Added a splice , for varnamelist.
17774 Output tables now use backquote so that lambda expressions in the
17775 list can be byte compiled.
17778 Converted all tables to use backquote which then inlines lambda expressions.
17780 1999-12-13 Eric M. Ludlam <zappo@gnu.org>
17782 * semantic-el.el: don't concat numbers (for XEmacs). (by Jan Vroonhof)
17784 1999-06-14 Eric M. Ludlam <zappo@gnu.org>
17786 * semantic-el.el: Small tweek to cons cells.
17788 1999-06-06 Eric M. Ludlam <zappo@gnu.org>
17790 * semantic-bnf.el: Moved the doc into the info file.
17792 * c.bnf: Fixed up some language definitions.
17795 Added use of the flex extensions to strip out pre-processor symbols.
17798 Added extensions to the flexer so that the mode author can cause some
17799 syntax elements to be stripped (such as pre-processor symbols.)
17801 1999-05-27 Eric M. Ludlam <zappo@gnu.org>
17803 * semantic.texi: New file.
17805 * semantic-sb.el: Use the semantic token jump and summerize features.
17807 * semantic-el.el: Updated C code table and expander.
17809 * semantic.el: Changed the variable format a little bit.
17810 Added bovinate-debug
17811 Added overridable functions for jump/summerize.
17813 1999-05-23 Eric M. Ludlam <zappo@gnu.org>
17815 * semantic.el: Added a cache clear function.
17816 Fixed working message call.
17818 * semantic-bnf.el: Auto-clear when bovinating the BNF.
17819 Fixed working message call.
17821 * semantic-el.el: Fixed the C variables some.
17823 * semantic-sb.el: Fixed up jumping to non-toplevel token things.
17824 Added a parent token finder (a parent has a location)
17825 Fixed a little bit with centering.
17827 1999-05-22 Eric M. Ludlam <zappo@gnu.org>
17829 * working.el: Added bubble displays.
17831 1999-05-20 Eric M. Ludlam <zappo@gnu.org>
17833 * working.el: Fixed up doc strings.
17834 Fixed the dotgrowth display to change after growing beyond the edge of
17836 Added a utility fn for getting the frame size.
17837 Use utility in dotgrowth and bar-graph.
17839 1999-05-18 Eric M. Ludlam <zappo@gnu.org>
17842 Fixed the plain bar/percent display. Updated version to 1.1.
17844 * semantic.el: Added a simple cache.
17846 * semantic-el.el: Fixed compile warning.
17848 * semantic.el: fixed compile warnings.
17850 * semantic-sb.el: Added support for tag hierarchy methods.
17852 * semantic.el: Added a type macro.
17853 You can now force-fail a match in the debugger.
17855 * semantic-el.el: changes from c.bnf.
17857 * c.bnf: Fixed up the returns of some nonterminals.
17860 Made it do interesting things for what is returned the C bovinator.
17862 1999-05-17 Eric M. Ludlam <zappo@gnu.org>
17864 * semantic.el: Larger types now pass down only position.
17866 * semantic-bnf.el: Fixed lots o bugs.
17869 Added a variable expander, and improved bnf from c.bnf
17873 1999-05-14 Eric M. Ludlam <zappo@gnu.org>
17875 * semantic.el: Debugger fix for termianls.
17876 Convenience `bovinate' function.
17877 Infinite comment fix.
17878 Inline comment stripping.
17880 * semantic-bnf.el: New file.
17882 1999-05-07 Eric M. Ludlam <zappo@gnu.org>
17884 * semantic-el.el: Added some C rules (still broken though.)
17886 * semantic.el: Fixed to work in 20.2
17888 1999-05-06 Eric M. Ludlam <zappo@gnu.org>
17890 * semantic.el: Doces on the debugger.
17892 * semantic.el: Added small doc updates.
17893 Added a parse-table debugger, and debug entry point.
17895 * semantic-sb.el: Last of the changes needed for swapping name/tokensym
17897 * semantic.el: converted all synthetic words to reference nonterminals.
17899 1999-05-05 Eric M. Ludlam <zappo@gnu.org>
17901 * semantic-sb.el: New file.
17903 * semantic-el.el: Updated to put name before token symbol.
17906 Changed doc to want the NAME first in the synthetic tokens list.
17907 Added lots of macros for referencing return tokens.
17908 Mucked with working message code.
17910 * working.el: fixed to be more robust wrt frames again.
17912 1999-05-04 Eric M. Ludlam <zappo@gnu.org>
17914 * working.el: Update copyright.
17915 Added celeron-percent-display.
17916 Forced incoming precents to integer for status display.
17917 Fixed so if the current frame has no minibuffer, the correct frame
17919 Added `working-frame-animation-display' to handle generic animations.
17920 Converted the celeron to use the animator display.
17921 Added a bounce display.
17923 1999-05-03 Eric M. Ludlam <zappo@gnu.org>
17925 * semantic-el.el, semantic.el: New file.
17927 1998-12-18 Eric M. Ludlam <zappo@gnu.org>
17930 Added let of working-log-max into the displayers so they do not drop
17931 messages into the *Messages* buffer.
17933 1998-12-17 Eric M. Ludlam <zappo@gnu.org>
17935 * working.el: Removed a typo in ref1 defvar.
17937 * working.el: Fixed some spelling. Changed static to dynamic.
17939 * working.el: Updated backwards compatibility comment section.
17941 * working.el: Changed the custom variable names to be more consistant.
17943 * working.el: Fixed up documentation and such.
17944 Made to compile clean.
17946 * working.el: Added celeron, plus static status.
17948 1998-12-16 Eric M. Ludlam <zappo@gnu.org>
17950 * working.el: New file.