Skip to content

Commit 68a7776

Browse files
committed
Tmain: add a case for testing -P,--with-pseudo-tags option of readtags
Signed-off-by: Masatake YAMATO <[email protected]>
1 parent eeb6759 commit 68a7776

File tree

5 files changed

+213
-0
lines changed

5 files changed

+213
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
!_JSON_OUTPUT_VERSION 0.0 /in development/
2+
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
3+
!_TAG_FILE_SORTED 0 /0=unsorted, 1=sorted, 2=foldcase/
4+
!_TAG_PROGRAM_AUTHOR Universal Ctags Team //
5+
!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/
6+
!_TAG_PROGRAM_URL https://ctags.io/ /official site/
7+
!_TAG_PROGRAM_VERSION 0.0.0 /9b73623f/
8+
!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/
9+
!_TAG_OUTPUT_FILESEP slash /slash or backslash/
10+
!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/
11+
!_TAG_KIND_DESCRIPTION!C d,macro /macro definitions/
12+
!_TAG_KIND_DESCRIPTION!C e,enumerator /enumerators (values inside an enumeration)/
13+
!_TAG_KIND_DESCRIPTION!C f,function /function definitions/
14+
!_TAG_KIND_DESCRIPTION!C g,enum /enumeration names/
15+
!_TAG_KIND_DESCRIPTION!C h,header /included header files/
16+
!_TAG_KIND_DESCRIPTION!C l,local /local variables/
17+
!_TAG_KIND_DESCRIPTION!C m,member /struct, and union members/
18+
!_TAG_KIND_DESCRIPTION!C p,prototype /function prototypes/
19+
!_TAG_KIND_DESCRIPTION!C s,struct /structure names/
20+
!_TAG_KIND_DESCRIPTION!C t,typedef /typedefs/
21+
!_TAG_KIND_DESCRIPTION!C u,union /union names/
22+
!_TAG_KIND_DESCRIPTION!C v,variable /variable definitions/
23+
!_TAG_KIND_DESCRIPTION!C x,externvar /external and forward variable declarations/
24+
!_TAG_KIND_DESCRIPTION!C z,parameter /function parameters inside function definitions/
25+
!_TAG_KIND_DESCRIPTION!C L,label /goto labels/
26+
!_TAG_KIND_DESCRIPTION!C D,macroparam /parameters inside macro definitions/
27+
main input.c /^int main (void) { return 0; }$/;" f typeref:typename:int
28+
!_TAG_KIND_DESCRIPTION!EmacsLisp u,unknown /unknown type of definitions/
29+
!_TAG_KIND_DESCRIPTION!EmacsLisp f,function /functions/
30+
!_TAG_KIND_DESCRIPTION!EmacsLisp v,variable /variables/
31+
!_TAG_KIND_DESCRIPTION!EmacsLisp c,const /constants/
32+
!_TAG_KIND_DESCRIPTION!EmacsLisp m,macro /macros/
33+
!_TAG_KIND_DESCRIPTION!EmacsLisp a,alias /aliases for functions/
34+
!_TAG_KIND_DESCRIPTION!EmacsLisp V,varalias /aliases for variables/
35+
!_TAG_KIND_DESCRIPTION!EmacsLisp s,subst /inline function/
36+
!_TAG_KIND_DESCRIPTION!EmacsLisp i,inline /inline function/
37+
!_TAG_KIND_DESCRIPTION!EmacsLisp e,error /errors/
38+
!_TAG_KIND_DESCRIPTION!EmacsLisp M,minorMode /minor modes/
39+
!_TAG_KIND_DESCRIPTION!EmacsLisp D,derivedMode /derived major mode/
40+
!_TAG_KIND_DESCRIPTION!EmacsLisp C,custom /customizable variables/
41+
!_TAG_KIND_DESCRIPTION!EmacsLisp G,group /customization groups/
42+
!_TAG_KIND_DESCRIPTION!EmacsLisp H,face /customizable faces/
43+
!_TAG_KIND_DESCRIPTION!EmacsLisp T,theme /custom themes/
44+
afunc input.el /^(defun afunc () nil)$/;" f
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
!_JSON_OUTPUT_VERSION 0.0 /in development/
2+
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
3+
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
4+
!_TAG_KIND_DESCRIPTION!C D,macroparam /parameters inside macro definitions/
5+
!_TAG_KIND_DESCRIPTION!C L,label /goto labels/
6+
!_TAG_KIND_DESCRIPTION!C d,macro /macro definitions/
7+
!_TAG_KIND_DESCRIPTION!C e,enumerator /enumerators (values inside an enumeration)/
8+
!_TAG_KIND_DESCRIPTION!C f,function /function definitions/
9+
!_TAG_KIND_DESCRIPTION!C g,enum /enumeration names/
10+
!_TAG_KIND_DESCRIPTION!C h,header /included header files/
11+
!_TAG_KIND_DESCRIPTION!C l,local /local variables/
12+
!_TAG_KIND_DESCRIPTION!C m,member /struct, and union members/
13+
!_TAG_KIND_DESCRIPTION!C p,prototype /function prototypes/
14+
!_TAG_KIND_DESCRIPTION!C s,struct /structure names/
15+
!_TAG_KIND_DESCRIPTION!C t,typedef /typedefs/
16+
!_TAG_KIND_DESCRIPTION!C u,union /union names/
17+
!_TAG_KIND_DESCRIPTION!C v,variable /variable definitions/
18+
!_TAG_KIND_DESCRIPTION!C x,externvar /external and forward variable declarations/
19+
!_TAG_KIND_DESCRIPTION!C z,parameter /function parameters inside function definitions/
20+
!_TAG_KIND_DESCRIPTION!EmacsLisp C,custom /customizable variables/
21+
!_TAG_KIND_DESCRIPTION!EmacsLisp D,derivedMode /derived major mode/
22+
!_TAG_KIND_DESCRIPTION!EmacsLisp G,group /customization groups/
23+
!_TAG_KIND_DESCRIPTION!EmacsLisp H,face /customizable faces/
24+
!_TAG_KIND_DESCRIPTION!EmacsLisp M,minorMode /minor modes/
25+
!_TAG_KIND_DESCRIPTION!EmacsLisp T,theme /custom themes/
26+
!_TAG_KIND_DESCRIPTION!EmacsLisp V,varalias /aliases for variables/
27+
!_TAG_KIND_DESCRIPTION!EmacsLisp a,alias /aliases for functions/
28+
!_TAG_KIND_DESCRIPTION!EmacsLisp c,const /constants/
29+
!_TAG_KIND_DESCRIPTION!EmacsLisp e,error /errors/
30+
!_TAG_KIND_DESCRIPTION!EmacsLisp f,function /functions/
31+
!_TAG_KIND_DESCRIPTION!EmacsLisp i,inline /inline function/
32+
!_TAG_KIND_DESCRIPTION!EmacsLisp m,macro /macros/
33+
!_TAG_KIND_DESCRIPTION!EmacsLisp s,subst /inline function/
34+
!_TAG_KIND_DESCRIPTION!EmacsLisp u,unknown /unknown type of definitions/
35+
!_TAG_KIND_DESCRIPTION!EmacsLisp v,variable /variables/
36+
!_TAG_OUTPUT_FILESEP slash /slash or backslash/
37+
!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/
38+
!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/
39+
!_TAG_PROGRAM_AUTHOR Universal Ctags Team //
40+
!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/
41+
!_TAG_PROGRAM_URL https://ctags.io/ /official site/
42+
!_TAG_PROGRAM_VERSION 0.0.0 /9b73623f/
43+
afunc input.el /^(defun afunc () nil)$/;" f
44+
main input.c /^int main (void) { return 0; }$/;" f typeref:typename:int
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/sh
2+
3+
# Copyright: 2023 Masatake YAMATO
4+
# License: GPL-2
5+
6+
READTAGS=$3
7+
#V="valgrind --leak-check=full --track-origins=yes -v"
8+
V=
9+
10+
. ../utils.sh
11+
12+
if ! [ -x "${READTAGS}" ]; then
13+
skip "no readtags"
14+
fi
15+
16+
echo '# ACTION=LIST'
17+
${V} ${READTAGS} -t ./ptag-sort-no.tags -P -l
18+
19+
echo '# ACTION=NAME'
20+
${V} ${READTAGS} -t ./ptag-sort-yes.tags --with-pseudo-tags - main

Tmain/readtags-with-list-pseudo-tags.d/stderr-expected.txt

Whitespace-only changes.
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
# ACTION=LIST
2+
!_JSON_OUTPUT_VERSION 0.0 /in development/
3+
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
4+
!_TAG_FILE_SORTED 0 /0=unsorted, 1=sorted, 2=foldcase/
5+
!_TAG_PROGRAM_AUTHOR Universal Ctags Team //
6+
!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/
7+
!_TAG_PROGRAM_URL https://ctags.io/ /official site/
8+
!_TAG_PROGRAM_VERSION 0.0.0 /9b73623f/
9+
!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/
10+
!_TAG_OUTPUT_FILESEP slash /slash or backslash/
11+
!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/
12+
!_TAG_KIND_DESCRIPTION!C d,macro /macro definitions/
13+
!_TAG_KIND_DESCRIPTION!C e,enumerator /enumerators (values inside an enumeration)/
14+
!_TAG_KIND_DESCRIPTION!C f,function /function definitions/
15+
!_TAG_KIND_DESCRIPTION!C g,enum /enumeration names/
16+
!_TAG_KIND_DESCRIPTION!C h,header /included header files/
17+
!_TAG_KIND_DESCRIPTION!C l,local /local variables/
18+
!_TAG_KIND_DESCRIPTION!C m,member /struct, and union members/
19+
!_TAG_KIND_DESCRIPTION!C p,prototype /function prototypes/
20+
!_TAG_KIND_DESCRIPTION!C s,struct /structure names/
21+
!_TAG_KIND_DESCRIPTION!C t,typedef /typedefs/
22+
!_TAG_KIND_DESCRIPTION!C u,union /union names/
23+
!_TAG_KIND_DESCRIPTION!C v,variable /variable definitions/
24+
!_TAG_KIND_DESCRIPTION!C x,externvar /external and forward variable declarations/
25+
!_TAG_KIND_DESCRIPTION!C z,parameter /function parameters inside function definitions/
26+
!_TAG_KIND_DESCRIPTION!C L,label /goto labels/
27+
!_TAG_KIND_DESCRIPTION!C D,macroparam /parameters inside macro definitions/
28+
!_TAG_KIND_DESCRIPTION!EmacsLisp u,unknown /unknown type of definitions/
29+
!_TAG_KIND_DESCRIPTION!EmacsLisp f,function /functions/
30+
!_TAG_KIND_DESCRIPTION!EmacsLisp v,variable /variables/
31+
!_TAG_KIND_DESCRIPTION!EmacsLisp c,const /constants/
32+
!_TAG_KIND_DESCRIPTION!EmacsLisp m,macro /macros/
33+
!_TAG_KIND_DESCRIPTION!EmacsLisp a,alias /aliases for functions/
34+
!_TAG_KIND_DESCRIPTION!EmacsLisp V,varalias /aliases for variables/
35+
!_TAG_KIND_DESCRIPTION!EmacsLisp s,subst /inline function/
36+
!_TAG_KIND_DESCRIPTION!EmacsLisp i,inline /inline function/
37+
!_TAG_KIND_DESCRIPTION!EmacsLisp e,error /errors/
38+
!_TAG_KIND_DESCRIPTION!EmacsLisp M,minorMode /minor modes/
39+
!_TAG_KIND_DESCRIPTION!EmacsLisp D,derivedMode /derived major mode/
40+
!_TAG_KIND_DESCRIPTION!EmacsLisp C,custom /customizable variables/
41+
!_TAG_KIND_DESCRIPTION!EmacsLisp G,group /customization groups/
42+
!_TAG_KIND_DESCRIPTION!EmacsLisp H,face /customizable faces/
43+
!_TAG_KIND_DESCRIPTION!EmacsLisp T,theme /custom themes/
44+
main input.c /^int main (void) { return 0; }$/
45+
!_TAG_KIND_DESCRIPTION!EmacsLisp u,unknown /unknown type of definitions/
46+
!_TAG_KIND_DESCRIPTION!EmacsLisp f,function /functions/
47+
!_TAG_KIND_DESCRIPTION!EmacsLisp v,variable /variables/
48+
!_TAG_KIND_DESCRIPTION!EmacsLisp c,const /constants/
49+
!_TAG_KIND_DESCRIPTION!EmacsLisp m,macro /macros/
50+
!_TAG_KIND_DESCRIPTION!EmacsLisp a,alias /aliases for functions/
51+
!_TAG_KIND_DESCRIPTION!EmacsLisp V,varalias /aliases for variables/
52+
!_TAG_KIND_DESCRIPTION!EmacsLisp s,subst /inline function/
53+
!_TAG_KIND_DESCRIPTION!EmacsLisp i,inline /inline function/
54+
!_TAG_KIND_DESCRIPTION!EmacsLisp e,error /errors/
55+
!_TAG_KIND_DESCRIPTION!EmacsLisp M,minorMode /minor modes/
56+
!_TAG_KIND_DESCRIPTION!EmacsLisp D,derivedMode /derived major mode/
57+
!_TAG_KIND_DESCRIPTION!EmacsLisp C,custom /customizable variables/
58+
!_TAG_KIND_DESCRIPTION!EmacsLisp G,group /customization groups/
59+
!_TAG_KIND_DESCRIPTION!EmacsLisp H,face /customizable faces/
60+
!_TAG_KIND_DESCRIPTION!EmacsLisp T,theme /custom themes/
61+
afunc input.el /^(defun afunc () nil)$/
62+
# ACTION=NAME
63+
!_JSON_OUTPUT_VERSION 0.0 /in development/
64+
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
65+
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
66+
!_TAG_KIND_DESCRIPTION!C D,macroparam /parameters inside macro definitions/
67+
!_TAG_KIND_DESCRIPTION!C L,label /goto labels/
68+
!_TAG_KIND_DESCRIPTION!C d,macro /macro definitions/
69+
!_TAG_KIND_DESCRIPTION!C e,enumerator /enumerators (values inside an enumeration)/
70+
!_TAG_KIND_DESCRIPTION!C f,function /function definitions/
71+
!_TAG_KIND_DESCRIPTION!C g,enum /enumeration names/
72+
!_TAG_KIND_DESCRIPTION!C h,header /included header files/
73+
!_TAG_KIND_DESCRIPTION!C l,local /local variables/
74+
!_TAG_KIND_DESCRIPTION!C m,member /struct, and union members/
75+
!_TAG_KIND_DESCRIPTION!C p,prototype /function prototypes/
76+
!_TAG_KIND_DESCRIPTION!C s,struct /structure names/
77+
!_TAG_KIND_DESCRIPTION!C t,typedef /typedefs/
78+
!_TAG_KIND_DESCRIPTION!C u,union /union names/
79+
!_TAG_KIND_DESCRIPTION!C v,variable /variable definitions/
80+
!_TAG_KIND_DESCRIPTION!C x,externvar /external and forward variable declarations/
81+
!_TAG_KIND_DESCRIPTION!C z,parameter /function parameters inside function definitions/
82+
!_TAG_KIND_DESCRIPTION!EmacsLisp C,custom /customizable variables/
83+
!_TAG_KIND_DESCRIPTION!EmacsLisp D,derivedMode /derived major mode/
84+
!_TAG_KIND_DESCRIPTION!EmacsLisp G,group /customization groups/
85+
!_TAG_KIND_DESCRIPTION!EmacsLisp H,face /customizable faces/
86+
!_TAG_KIND_DESCRIPTION!EmacsLisp M,minorMode /minor modes/
87+
!_TAG_KIND_DESCRIPTION!EmacsLisp T,theme /custom themes/
88+
!_TAG_KIND_DESCRIPTION!EmacsLisp V,varalias /aliases for variables/
89+
!_TAG_KIND_DESCRIPTION!EmacsLisp a,alias /aliases for functions/
90+
!_TAG_KIND_DESCRIPTION!EmacsLisp c,const /constants/
91+
!_TAG_KIND_DESCRIPTION!EmacsLisp e,error /errors/
92+
!_TAG_KIND_DESCRIPTION!EmacsLisp f,function /functions/
93+
!_TAG_KIND_DESCRIPTION!EmacsLisp i,inline /inline function/
94+
!_TAG_KIND_DESCRIPTION!EmacsLisp m,macro /macros/
95+
!_TAG_KIND_DESCRIPTION!EmacsLisp s,subst /inline function/
96+
!_TAG_KIND_DESCRIPTION!EmacsLisp u,unknown /unknown type of definitions/
97+
!_TAG_KIND_DESCRIPTION!EmacsLisp v,variable /variables/
98+
!_TAG_OUTPUT_FILESEP slash /slash or backslash/
99+
!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/
100+
!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/
101+
!_TAG_PROGRAM_AUTHOR Universal Ctags Team //
102+
!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/
103+
!_TAG_PROGRAM_URL https://ctags.io/ /official site/
104+
!_TAG_PROGRAM_VERSION 0.0.0 /9b73623f/
105+
main input.c /^int main (void) { return 0; }$/

0 commit comments

Comments
 (0)