emacs/lisp/cedet/srecode/java.el
David Engster 07a79ce4b4 * srecode.el:
* srecode/texi.el:
* srecode/template.el:
* srecode/java.el:
* srecode/insert.el:
* srecode/document.el:
* srecode/dictionary.el:
* srecode/compile.el:
* semantic/wisent/java-tags.el:
* semantic/texi.el:
* semantic/sort.el:
* semantic/lex-spp.el:
* semantic/idle.el:
* semantic/html.el:
* semantic/db-typecache.el:
* semantic/analyze/complete.el:
* ede/generic.el:
* ede/custom.el:
* ede/cpp-root.el:
* ede/base.el: Fix filenames in comments and headers.

* semantic/db-find.el:
* srecode/insert.el (srecode-insert-include-lookup):
* ede/proj-comp.el (ede-compilation-program): Fix it's -> its in
comments and docstrings.

* semantic/ctxt.el (semantic-end-of-context-default):
* semantic/find.el (semantic-find-tags-by-scope-protection):
* semantic/java.el (semantic-documentation-for-tag): Fix typos in
docstrings.

* semantic/db.el (semanticdb-table, semanticdb-abstract-cache)
(semanticdb-abstract-db-cache):
* semantic/decorate/include.el
(semantic-decoration-unknown-include-describe): Fix filenames in
docstring.

* semantic/ede-grammar.el (semantic-ede-grammar-compiler-wisent):
(semantic-ede-grammar-compiler-bovine): Fix requires that are
added to the grammar-make-script.
2011-11-03 21:03:45 +01:00

61 lines
2 KiB
EmacsLisp

;;; srecode/java.el --- Srecode Java support
;; Copyright (C) 2009-2011 Free Software Foundation, Inc.
;; Author: Eric M. Ludlam <eric@siege-engine.com>
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;;
;; Special support for the Java language.
;;; Code:
(require 'srecode/dictionary)
;;;###autoload
(defun srecode-semantic-handle-:java (dict)
"Add macros into the dictionary DICT based on the current java file.
Adds the following:
FILENAME_AS_PACKAGE - file/dir converted into a java package name.
FILENAME_AS_CLASS - file converted to a Java class name."
;; A symbol representing
(let* ((fsym (file-name-nondirectory (buffer-file-name)))
(fnox (file-name-sans-extension fsym))
(dir (file-name-directory (buffer-file-name)))
(fpak fsym)
)
(while (string-match "\\.\\| " fpak)
(setq fpak (replace-match "_" t t fpak)))
(if (string-match "src/" dir)
(setq dir (substring dir (match-end 0)))
(setq dir (file-name-nondirectory (directory-file-name dir))))
(while (string-match "/" dir)
(setq dir (replace-match "_" t t dir)))
(srecode-dictionary-set-value dict "FILENAME_AS_PACKAGE"
(concat dir "." fpak))
(srecode-dictionary-set-value dict "FILENAME_AS_CLASS" fnox)
))
(provide 'srecode/java)
;; Local variables:
;; generated-autoload-file: "loaddefs.el"
;; generated-autoload-load-name: "srecode/java"
;; End:
;;; srecode/java.el ends here