Function: semantic-decoration-unknown-include-describe

semantic-decoration-unknown-include-describe is an interactive and byte-compiled function defined in include.el.gz.

Signature

(semantic-decoration-unknown-include-describe)

Documentation

Describe the current unknown include.

Argument EVENT is the mouse clicked event.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/cedet/semantic/decorate/include.el.gz
;;; Unknown Include functions
;;
(defun semantic-decoration-unknown-include-describe ()
  "Describe the current unknown include.
Argument EVENT is the mouse clicked event."
  (interactive)
  (let ((tag (semantic-current-tag))
	(mm major-mode))
    (with-output-to-temp-buffer (help-buffer) ; "*Help*"
      (help-setup-xref (list #'semantic-decoration-unknown-include-describe)
		       (called-interactively-p 'interactive))
      (princ "Include File: ")
      (princ (semantic-format-tag-name tag nil t))
      (princ "\n\n")
      (princ (substitute-command-keys "\
This header file has been marked \"Unknown\".
This means that Semantic has not been able to locate this file on disk.

When Semantic cannot find an include file, this means that the
idle summary mode and idle completion modes cannot use the contents of
that file to provide coding assistance.

If this is a system header and you want it excluded from Semantic's
searches (which may be desirable for speed reasons) then you can
safely ignore this state.

If this is a system header, and you want to include it in Semantic's
searches, then you will need to use:

M-x semantic-add-system-include RET /path/to/includes RET

or, in your .emacs file do:

  (semantic-add-system-include \"/path/to/include\" \\='"))
      (princ (symbol-name mm))
      (princ (substitute-command-keys ")

to add the path to Semantic's search.

If this is an include file that belongs to your project, then you may
need to update `semanticdb-project-roots' or better yet, use `ede'
to manage your project.  See the ede manual for projects that will
wrap existing project code for Semantic's benefit.
"))

      (when (or (eq mm 'c++-mode) (eq mm 'c-mode))
	(princ "
For C/C++ includes located within a project, you can use a special
EDE project that will wrap an existing build system.  You can do that
like this in your .emacs file:

  (ede-cpp-root-project \"NAME\" :file \"FILENAME\" :locate-fcn \\='MYFCN)

See the CEDET manual, the EDE manual, or the commentary in
ede/cpp-root.el for more.

If you think this header tag is marked in error, you may need to do:

C-u M-x bovinate RET

to refresh the tags in this buffer, and recalculate the state."))

      (princ "
See the Semantic manual node on SemanticDB for more about search paths.")
      )))