Skip to content

Commit f43ec12

Browse files
committed
Merge pull request #95 from liancheng/master
Refined exuberant-ctags extension for Scala
2 parents 9503614 + c3630af commit f43ec12

File tree

2 files changed

+13
-9
lines changed

2 files changed

+13
-9
lines changed

tool-support/src/emacs/contrib/README

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,13 @@ Scala
1313
o objects
1414
t traits
1515
m case-classes
16+
M case-objects
1617
a abstract-classes
1718
f functions
1819
V values
1920
v variables
2021
T types
22+
p packages
2123

2224
The default in the scala mode is to parse scala files for all the
2325
above kinds to produce tags. This can give a rather huge amount of
Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
--langdef=Scala
22
--langmap=Scala:.scala
3-
--regex-Scala=/^[^\*\/]*class[ \t]*([a-zA-Z0-9_]+)/\1/c,classes/
4-
--regex-Scala=/^[^\*\/]*object[ \t]*([a-zA-Z0-9_]+)/\1/o,objects/
5-
--regex-scala=/^[^\*\/]*trait[ \t]*([a-zA-Z0-9_]+)/\1/t,traits/
6-
--regex-Scala=/^[^\*\/]*case[ \t]*class[ \t]*([a-zA-Z0-9_]+)/\1/m,case-classes/
7-
--regex-Scala=/^[^\*\/]*abstract[ \t]*class[ \t]*([a-zA-Z0-9_]+)/\1/a,abstract-classes/
8-
--regex-Scala=/^[^\*\/]*def[ \t]*([a-zA-Z0-9_]+)[ \t]*.*[:=]/\1/f,functions/
9-
--regex-Scala=/^[^\*\/]*val[ \t]*([a-zA-Z0-9_]+)[ \t]*[:=]/\1/V,values/
10-
--regex-Scala=/^[^\*\/]*var[ \t]*([a-zA-Z0-9_]+)[ \t]*[:=]/\1/v,variables/
11-
--regex-Scala=/^[^\*\/]*type[ \t]*([a-zA-Z0-9_]+)[ \t]*[\[<>=]/\1/T,types/
3+
--regex-scala=/^\s*((\<(abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<class\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/c,classes/e
4+
--regex-scala=/^\s*((\<(abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<object\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/o,objects/e
5+
--regex-scala=/^\s*((\<(abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<trait\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/t,traits/e
6+
--regex-scala=/^\s*((\<(abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<case\s+class\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/m,case-classes/e
7+
--regex-scala=/^\s*((\<(abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<case\s+object\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/M,case-objects/e
8+
--regex-scala=/^\s*.*\<abstract\>.*\<class\s+(\<[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\>)/\1/a,abstract-classes/e
9+
--regex-scala=/^\s*((\<(override|abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<def\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/f,functions/e
10+
--regex-scala=/^\s*((\<(override|abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<val\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/V,values/e
11+
--regex-scala=/^\s*((\<(override|abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<var\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/v,variables/e
12+
--regex-scala=/^\s*((\<(override|abstract|final|sealed|implicit|lazy|private|protected)\>|(\[[[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?\]))\s*)*\<type\s+([[:alpha:]][[:alnum:]]*(_[[:alnum:][:punct:]])?)/\6/T,types/e
13+
--regex-scala=/^\s*\<package\>\s+([[:alpha:]][[:alnum:][:punct:]]*)/\1/p,packages/e

0 commit comments

Comments
 (0)