Eric,

One other followup.

(semantic-ectag-add-languge-support scala-mode "scala" "cotmnafVvTip")
  is only of value with the companion .ctags file.  I don't see where CEDET has a place for the accompanying ctags file in the CVS repo.

Here is the one I'm using at the moment.   Not sure what to do with it.
Note: It is flawed with regard to commented out code. 

--langdef=scala
--langmap=scala:.scala
--regex-Scala=/^[ \t]*class[ \t]*([a-zA-Z0-9_]+)/\1/c,class/
--regex-Scala=/^[ \t]*object[ \t]*([a-zA-Z0-9_]+)/\1/o,class/
--regex-scala=/^[ \t]*trait[ \t]*([a-zA-Z0-9_]+)/\1/t,class/
--regex-Scala=/^[ \t]*case[ \t]*class[ \t]*([a-zA-Z0-9_]+)/\1/m,class/
--regex-Scala=/^[ \t]*case[ \t]*object[ \t]*([a-zA-Z0-9_]+)/\1/n,class/
--regex-Scala=/^[ \t]*abstract[ \t]*class[ \t]*([a-zA-Z0-9_]+)/\1/a,class/
--regex-Scala=/^[ \t]*def[ \t]*([a-zA-Z0-9_]+)[ \t]*.*[:=]/\1/f,function/
--regex-Scala=/^[^\*\/]*[ \t]+val[ \t]*([a-zA-Z0-9_]+)[ \t]*[:=]/\1/V,value/
--regex-Scala=/[ \t]*var[ \t]*([a-zA-Z0-9_]+)[ \t]*[:=]/\1/v,variable/
--regex-Scala=/^[ \t]*type[ \t]*([a-zA-Z0-9_]+)[ \t]*[\[<>=]/\1/T,classs/
--regex-Scala=/^[ \t]*import[ \t]*([a-zA-Z0-9_{}., \t=>]+$)/\1/i,include/
--regex-Scala=/^[ \t]*package[ \t]*([a-zA-Z0-9_.]+$)/\1/p,package/


On Sun, Jul 5, 2009 at 11:35 AM, Eric M. Ludlam <eric@siege-engine.com> wrote:
Hi Ray,

 I'm integrating your patch.  Instead of patching semantic.el as below,
perhaps a configuration like this:

(defvar-mode-local scala-mode semantic-symbol->name-assoc-list
 '((type     . "Types")
   (variable . "Variables")
   (value    . "Values")
   (function . "Functions")
   (include  . "Dependencies")
   (package  . "Provides")
   )
 "List of tag classes, and strings to describe them.")

in semantic-ectag-lang.el would be better.  You can then change the
names to whatever you like.  As such, what should they be?  Should any
items be removed?

Thanks
Eric

On Sun, 2009-07-05 at 10:29 -0400, Ray Racine wrote:
> The following patch offers basic ctag support for Scala.  Generated
> via cvs diff -pu
>
> Index: semantic.el
> ===================================================================
> RCS file: /cvsroot/cedet/cedet/semantic/semantic.el,v
> retrieving revision 1.213
> diff -u -p -r1.213 semantic.el
> --- semantic.el    18 Apr 2009 16:29:18 -0000    1.213
> +++ semantic.el    5 Jul 2009 14:23:31 -0000
> @@ -87,6 +87,7 @@ external parser used.")
>  (defvar semantic-symbol->name-assoc-list
>    '((type     . "Types")
>      (variable . "Variables")
> +    (value    . "Values")
>      (function . "Functions")
>      (include  . "Dependencies")
>      (package  . "Provides"))
> Index: ctags/semantic-ectag-lang.el
> ===================================================================
> RCS file: /cvsroot/cedet/cedet/semantic/ctags/semantic-ectag-lang.el,v
> retrieving revision 1.9
> diff -u -p -r1.9 semantic-ectag-lang.el
> --- ctags/semantic-ectag-lang.el    10 Mar 2009 01:52:24 -0000    1.9
> +++ ctags/semantic-ectag-lang.el    5 Jul 2009 14:23:31 -0000
> @@ -68,6 +68,7 @@ KINDS are the kinds of tags to generate
>  (semantic-ectag-add-languge-support tcl-mode "tcl" "cmp")
>  ;(semantic-ectag-add-languge-support vera-mode "vera" "cdfgmPTv")
>  ;(semantic-ectag-add-languge-support verilog-mode "verilog" "cfm")
> +(semantic-ectag-add-languge-support scala-mode "scala"
> "cotmnafVvTip")
>
>  ;;; BUFFER PARSING HOOKS
>  ;;
> @@ -100,7 +101,7 @@ semantic parser."
>    (add-hook 'tcl-mode-hook 'semantic-ectag-simple-setup)
>    ;;(add-hook 'vera-mode-hook 'semantic-ectag-simple-setup)
>    ;;(add-hook 'verilog-mode-hook 'semantic-ectag-simple-setup)
> -
> +  (add-hook 'scala-mode-hook 'semantic-ectag-simple-setup)
>    )
>
>  (provide 'semantic-ectag-lang)
> Index: ctags/semantic-ectag-parse.el
> ===================================================================
> RCS
> file: /cvsroot/cedet/cedet/semantic/ctags/semantic-ectag-parse.el,v
> retrieving revision 1.15
> diff -u -p -r1.15 semantic-ectag-parse.el
> --- ctags/semantic-ectag-parse.el    16 Mar 2009 09:39:08 -0000
> 1.15
> +++ ctags/semantic-ectag-parse.el    5 Jul 2009 14:23:31 -0000
> @@ -236,17 +236,17 @@ parents running forward, such as namespa
>           (type nil)
>
>           (class-sym (cond
> -                     ((member class '(function variable label
> program))
> +                     ((member class '(function variable label program
> value))
>                        class)
>                       ((eq class 'prototype)
>                        (setq prototype t)
>                        'function)
> -                     ((member class '(namespace class struct union
> enum typedef))
> +                     ((member class '(namespace class trait struct
> union enum typedef))
>                        (setq type (symbol-name class))
>                        'type)
>                       ((eq class 'member)
>                        'variable)
> -                     ((eq class 'include)
> +                     ((member class '(include import))
>                        'include)
>                       ((or (eq class 'macro) (eq class 'define))
>                        (setq const t)
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Cedet-devel mailing list
> Cedet-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/cedet-devel