mirror of https://github.com/Chizi123/.emacs.d.git

Chizi123
2018-11-17 c4001ccd1864293b64aa37d83a9d9457eb875e70
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
;ELC
;;; Compiled
;;; in Emacs version 26.1
;;; with all optimizations.
 
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
 
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 
(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\305\306\307\310\311\312%\210\313\314\315\316\311\306%\210\313\317\320\321\311\306%\210\322\323\324\325\326DD\327\330\331\332\333\311\306&    \210\322\334\324\325\335DD\336\337\340\330\341\311\306&    \210\322\342\324\325\343DD\344\330\345\337\346\311\306&    \210\322\347\324\325\350DD\351\337\352\330\353\311\306&    \210\322\354\324\325\355DD\356\330\357\311\306&\210\322\360\324\325\361DD\362\337\363\330\364\311\306&    \210\322\365\324\325\366DD\367\330\370\311\306&\210\322\371\324\325\372DD\373\330\374\311\306&\210\322\375\324\325\376DD\377\330\201@\311\306&\210\322\201A\324\325\201BDD\201C\330\325\311\306&\210\322\201D\324\325\201EDD\201F\330\353\311\306&\210\322\201G\324\325\201HDD\201I\330\353\337\352\311\306&    \210\322\201J\324\325\201KDD\201L\330\201M\337\363\311\306&    \210\322\201N\324\325\201ODD\201P\330\353\337\352\311\306&    \210\322\201Q\324\325\201RDD\201S\337\352\330\353\311\306&    \210\322\201T\324\325\201UDD\201V\330\201W\311\306&\210\322\201X\324\325\201YDD\201Z\330\353\337\352\311\306&    \210\322\201[\324\325\201\\DD\201]\337\352\330\353\311\306&    \210\322\201^\324\325\201_DD\201`\337\352\330\353\311\306&    \210\322\201a\324\325\201bDD\201c\337\352\330\353\311\306&    \210\322\201d\324\325\201eDD\201f\330\357\311\306&\210\322\201g\324\325\201hDD\201i\330\201j\311\306&\210\322\201k\324\325\201lDD\201m\337\352\330\353\311\306&    \210\322\201n\324\325\201oDD\201p\201q\201r\330\201s\311\306&    \210\322\201t\324\325\201uDD\201v\330\325\311\306&\210\322\201w\324\325\201xDD\201y\330\325\311\306&\210\322\201z\324\325\201{DD\201|\337\352\330\353\311\306&    \210\322\201}\324\325\201~DD\201\201\200\201\201\330\201\202\311\306&    \210\322\201\203\324\325\201\204DD\201\205\330\201\206\311\306&\210\201\207\201\210\201\211\307#\210\201\212\211\203\305\211@\201\210N\203\276\201\211N\204\276\201\213\201\211\201\210N#\210A\266\202\202\232\210\201\214\201\210\201\211\201\215#\210\322\201\211\324\325\201\216DD\201\217\201\200\201\220\330\201\221\311\306&    \210\322\201\222\324\325\201\223DD\201\224\330\325\311\306&\207" [require cl-lib ewoc compile etags custom-declare-group ggtags nil "GNU Global source code tagging system." :group tools custom-declare-face ggtags-highlight ((t (:underline t))) "Face used to highlight a valid tag at point." ggtags-global-line ((t (:inherit secondary-selection))) "Face used to highlight matched line in Global buffer." custom-declare-variable ggtags-executable-directory funcall function #[0 "\300\207" [nil] 1] "If non-nil the directory to search global executables." :type (choice (const :tag "Unset" nil) directory) :risky t ggtags-oversize-limit #[0 "\300\207" [10485760] 1] "The over size limit for the  GTAGS file.\nWhen the size of the GTAGS file is below this limit, ggtags\nalways maintains up-to-date tags for the whole source tree by\nrunning `global -u'. For projects with GTAGS larger than this\nlimit, only files edited in Ggtags mode are updated (via `global\n--single-update')." :safe numberp (choice (const :tag "None" nil) (const :tag "Always" t) number) ggtags-include-pattern #[0 "\300\207" [("^\\s-*#\\s-*\\(?:include\\|import\\)\\s-*[\"<]\\(?:[./]*\\)?\\(.*?\\)[\">]" . 1)] 1] "Pattern used to detect #include files.\nValue can be (REGEXP . SUB) or a function with no arguments.\nREGEXP should match from the beginning of line." (choice (const :tag "Disable" nil) (cons regexp integer) function) stringp ggtags-use-project-gtagsconf #[0 "\300\207" [t] 1] "Non-nil to use GTAGSCONF file found at project root.\nFile .globalrc and gtags.conf are checked in order.\n\nNote: GNU Global v6.2.13 has the feature of using gtags.conf at\nproject root. Setting this variable to nil doesn't disable this\nfeature." booleanp boolean ggtags-project-duration #[0 "\300\207" [600] 1] "Seconds to keep information of a project in memory." number ggtags-process-environment #[0 "\300\207" [nil] 1] "Similar to `process-environment' with higher precedence.\nElements are run through `substitute-env-vars' before use.\nGTAGSROOT will always be expanded to current project root\ndirectory. This is intended for project-wise ggtags-specific\nprocess environment settings. Note on remote hosts (e.g. tramp)\ndirectory local variables is not enabled by default per\n`enable-remote-dir-locals' (which see)." ggtags-list-of-string-p (repeat string) ggtags-auto-jump-to-match #[0 "\300\207" [history] 1] "Strategy on how to jump to match: nil, first or history.\n\n    nil: never automatically jump to any match;\n  first: jump to the first match;\nhistory: jump to the match stored in search history." (choice (const :tag "First match" first) (const :tag "Search History" history) (const :tag "Never" nil)) ggtags-global-window-height #[0 "\300\207" [8] 1] "Number of lines for the *ggtags-global* popup window.\nIf nil, use Emacs default." (choice (const :tag "Default" nil) integer) ggtags-global-abbreviate-filename #[0 "\300\207" [40] 1] "Non-nil to display file names abbreviated e.g. \"/u/b/env\".\nIf an integer abbreviate only names longer than that number." (choice (const :tag "No" nil) (const :tag "Always" t) integer) ggtags-split-window-function #[0 "\207" [split-window-preferred-function] 1] "A function to control how ggtags pops up the auxiliary window." ggtags-use-idutils #[0 "\300\301!\205\302\207" [executable-find "mkid" t] 2] "Non-nil to also generate the idutils DB." ggtags-use-sqlite3 #[0 "\300\207" [nil] 1] "Use sqlite3 for storage instead of Berkeley DB.\nThis feature requires GNU Global 6.3.3+ and is ignored if `gtags'\nisn't built with sqlite3 support." ggtags-extra-args #[0 "\300\207" [nil] 1] "Extra arguments to pass to `gtags' in `ggtags-create-tags'." (repeat string) ggtags-sort-by-nearness #[0 "\300\207" [nil] 1] "Sort tags by nearness to current directory.\nGNU Global 6.5+ required." ggtags-update-on-save #[0 "\300\207" [t] 1] "Non-nil to update tags for current buffer on saving." ggtags-global-output-format #[0 "\300\207" [grep] 1] "Global output format: path, ctags, ctags-x, grep or cscope." (choice (const path) (const ctags) (const ctags-x) (const grep) (const cscope)) ggtags-global-use-color #[0 "\300\207" [t] 1] "Non-nil to use color in output if supported by Global.\nNote: processing colored output takes noticeable time\nparticularly when the output is large." ggtags-global-ignore-case #[0 "\300\207" [nil] 1] "Non-nil if Global should ignore case in the search pattern." ggtags-global-treat-text #[0 "\300\207" [nil] 1] "Non-nil if Global should include matches from text files.\nThis affects `ggtags-find-file' and `ggtags-grep'." ggtags-global-search-libpath-for-reference #[0 "\300\207" [t] 1] "If non-nil global will search GTAGSLIBPATH for references.\nSearch is only continued in GTAGSLIBPATH if it finds no matches\nin current project." ggtags-global-large-output #[0 "\300\207" [1000] 1] "Number of lines in the Global buffer to indicate large output." ggtags-global-history-length #[0 "\207" [history-length] 1] "Maximum number of items to keep in `ggtags-global-search-history'." integer ggtags-enable-navigation-keys #[0 "\300\207" [t] 1] "If non-nil key bindings in `ggtags-navigation-map' are enabled." ggtags-find-tag-hook #[0 "\300\207" [nil] 1] "Hook run immediately after finding a tag." :options (recenter reposition-window) hook ggtags-get-definition-function #[0 "\300\207" [ggtags-get-definition-default] 1] "Function called by `ggtags-show-definition' to get definition.\nIt is passed a list of definition candidates of the form:\n\n (TEXT NAME FILE LINE)\n\nwhere TEXT is usually the source line of the definition.\n\nThe return value is passed to `ggtags-print-definition-function'." ggtags-print-definition-function #[0 "\300\207" [#[257 "\300\301\206\302\"\207" [ggtags-echo "%s" "[definition not found]"] 4 "\n\n(fn S)"]] 1] "Function used by `ggtags-show-definition' to print definition." ggtags-mode-sticky #[0 "\300\207" [t] 1] "If non-nil enable Ggtags Mode in files visited." ggtags-mode-prefix-key #[0 "\300\207" [#1=""] 1 #1#] "Key binding used for `ggtags-mode-prefix-map'.\nUsers should change the value using `customize-variable' to\nproperly update `ggtags-mode-map'." :set #[514 "\302\300!\2031\2031\302!\205J\211\203\303\304#\210\210\211\2031\302\301!\2031    \2031\303    #\210\305\"\207" [ggtags-mode-map ggtags-mode-prefix-map boundp define-key nil set-default] 7 "\n\n(fn SYM VALUE)"] key-sequence ggtags-completing-read-function #[0 "\300\207" [nil] 1] "Ggtags specific `completing-read-function' (which see).\nNil means using the value of `completing-read-function'." (choice (const :tag "Use completing-read-function" nil) function) defvaralias ggtags-highlight-tag-delay ggtags-highlight-tag (saved-value saved-variable-comment) put make-obsolete-variable "0.8.11" #[0 "\300\207" [0.25] 1] "If non-nil time in seconds before highlighting tag at point.\nSet to nil to disable tag highlighting." #[514 "\300\301!\203\n\301!\210\302\"\207" [fboundp ggtags-setup-highlight-tag-at-point set-default] 5 "\n\n(fn SYM VALUE)"] (choice (const :tag "Disable" nil) number) ggtags-bounds-of-tag-function #[0 "\300\207" [#[0 "\300\301!\207" [bounds-of-thing-at-point symbol] 2]] 1] "Function to get the start and end positions of the tag at point."] 10)
#@53 Stem of message to print when no matches are found.
(defvar ggtags-global-error "match" (#$ . 9795))
(defconst ggtags-bug-url "https://github.com/leoliu/ggtags/issues")
(defvar ggtags-global-last-buffer nil)
(defvar ggtags-global-continuation nil)
(defvar ggtags-current-tag-name nil)
(defvar ggtags-highlight-tag-overlay nil)
(defvar ggtags-highlight-tag-timer nil)
#@27 
 
(fn MESSAGE &rest BODY)
(defalias 'ggtags-with-temp-message '(macro . #[385 "\300\301!\300\302!\303\304BDD\305\306\307B\310\311\206\312\313\314\fEFEEE\207" [make-symbol "-init-time-" "-tmp-msg-" let ((float-time)) with-temp-message prog1 progn message "%sdone (%.2fs)" "" - (float-time)] 16 (#$ . 10168)]))
(byte-code "\300\301\302\303#\210\304\301\305\306#\300\207" [put ggtags-with-temp-message edebug-form-spec t function-put lisp-indent-function 1] 4)
#@81 Delay running `compilation-finish-functions' until after BODY.
 
(fn &rest BODY)
(defalias 'ggtags-delay-finish-functions '(macro . #[128 "\300\301!\300\302!\303\304BD\305\306\307\310\311\312\313BBE\314BBB\315\316B\317\320    E\321\322\323\324\fFEF\257\207" [make-symbol "-saved-" "-exit-args-" let (compilation-finish-functions) (setq-local compilation-finish-functions nil) add-hook 'compilation-finish-functions lambda (&rest args) setq (args) (nil t) unwind-protect progn setq-local compilation-finish-functions and apply #'run-hook-with-args 'compilation-finish-functions] 16 (#$ . 10644)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put ggtags-delay-finish-functions lisp-indent-function 0 put edebug-form-spec t] 5)
#@19 
 
(fn &rest BODY)
(defalias 'ggtags-ensure-global-buffer '(macro . #[128 "\300\301\302\303BBE\207" [progn (or (and (buffer-live-p ggtags-global-last-buffer) (with-current-buffer ggtags-global-last-buffer (derived-mode-p 'ggtags-global-mode))) (error "No global buffer found")) with-current-buffer ggtags-global-last-buffer] 6 (#$ . 11400)]))
(byte-code "\300\301\302\303#\210\304\301\305\306#\300\207" [put ggtags-ensure-global-buffer edebug-form-spec t function-put lisp-indent-function 0] 4)
#@53 Return non-nil if XS is a list of strings.
 
(fn XS)
(defalias 'ggtags-list-of-string-p #[257 "\300\301\"\207" [cl-every stringp] 4 (#$ . 11901)])
#@13 
 
(fn FILE)
(defalias 'ggtags-ensure-localname #[257 "\211\205\f\300\301\"\206\f\211\207" [file-remote-p localname] 4 (#$ . 12054)])
#@67 Print formatted text to echo area.
 
(fn FORMAT-STRING &rest ARGS)
(defalias 'ggtags-echo #[385 "\301\302\303#)\207" [message-log-max nil apply message] 6 (#$ . 12196)])
#@56 Move to line number LINE in current buffer.
 
(fn LINE)
(defalias 'ggtags-forward-to-line #[257 "\211\250\203 \211\300Y\204\301\302\303\304E\"\210\214~\210eb\210\211Sy)\207" [1 signal wrong-type-argument (integer 1) line] 6 (#$ . 12374)])
#@43 Quit selected window and kill its buffer.
(defalias 'ggtags-kill-window #[0 "\300\301!\207" [quit-window t] 2 (#$ . 12622) nil])
#@13 
 
(fn NAME)
(defalias 'ggtags-program-path #[257 "\203    \301\"\207\207" [ggtags-executable-directory expand-file-name] 4 (#$ . 12757)])
#@84 Return non-nil if successfully running PROGRAM with ARGS.
 
(fn PROGRAM &rest ARGS)
(defalias 'ggtags-process-succeed-p #[385 "\300!\3011\302\303\304\211\211&\305U0\202\"\306\307\310!#\210\304\262\207" [ggtags-program-path (error) apply process-file nil 0 message "`%s' failed: %s" error-message-string] 10 (#$ . 12902)])
#@27 
 
(fn PROGRAM &rest ARGS)
(defalias 'ggtags-process-string #[385 "\300\301!r\211q\210\302\303\304\305\306!\307\"\310$\216\311\312\313!\314\315\314&db\210\316\314x\210\317e`\"\303U\2047\320\321#\210\262*\207" [generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 apply process-file ggtags-program-path nil t "     \n " buffer-substring-no-properties error "`%s' non-zero exit: %s"] 10 (#$ . 13240)])
(defalias 'ggtags-tag-at-point #[0 " \211:\205\211@A\211\301\"\266\202\266\202\207" [ggtags-bounds-of-tag-function buffer-substring-no-properties] 8])
(defvar ggtags-projects (make-hash-table :size 7 :test 'equal))
#@73 compiler-macro for inlining `ggtags-project-p'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-p (and (vectorp cl-x) (>= (length cl-x) 9) (memq (aref cl-x 0) cl-struct-ggtags-project-tags) t)) nil] 9 (#$ . 13943)])
(put 'ggtags-project-p 'compiler-macro 'ggtags-project-p--cmacro)
#@13 
 
(fn CL-X)
(defalias 'ggtags-project-p #[257 "\301!\205\211G\302Y\205\211\303H>\205\304\207" [cl-struct-ggtags-project-tags vectorp 9 0 t] 3 (#$ . 14337)])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put ggtags-project-p side-effect-free error-free put ggtags-project cl-deftype-satisfies] 5)
#@76 compiler-macro for inlining `ggtags-project-root'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-root--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-root (or (and (memq (aref cl-x 0) cl-struct-ggtags-project-tags)) (signal 'wrong-type-argument (list 'ggtags-project cl-x))) (aref cl-x 1)) nil] 9 (#$ . 14663)])
(put 'ggtags-project-root 'compiler-macro 'ggtags-project-root--cmacro)
#@138 Access slot "root" of `(ggtags-project (:constructor ggtags-project--make) (:copier nil) (:type vector) :named)' struct CL-X.
 
(fn CL-X)
(defalias 'ggtags-project-root #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-ggtags-project-tags 0 signal wrong-type-argument ggtags-project 1] 5 (#$ . 15112)])
(byte-code "\300\301\302\303#\300\207" [function-put ggtags-project-root side-effect-free t] 4)
#@80 compiler-macro for inlining `ggtags-project-tag-size'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-tag-size--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-tag-size (or (and (memq (aref cl-x 0) cl-struct-ggtags-project-tags)) (signal 'wrong-type-argument (list 'ggtags-project cl-x))) (aref cl-x 2)) nil] 9 (#$ . 15536)])
(put 'ggtags-project-tag-size 'compiler-macro 'ggtags-project-tag-size--cmacro)
#@142 Access slot "tag-size" of `(ggtags-project (:constructor ggtags-project--make) (:copier nil) (:type vector) :named)' struct CL-X.
 
(fn CL-X)
(defalias 'ggtags-project-tag-size #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-ggtags-project-tags 0 signal wrong-type-argument ggtags-project 2] 5 (#$ . 16005)])
(byte-code "\300\301\302\303#\300\207" [function-put ggtags-project-tag-size side-effect-free t] 4)
#@80 compiler-macro for inlining `ggtags-project-has-refs'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-has-refs--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-has-refs (or (and (memq (aref cl-x 0) cl-struct-ggtags-project-tags)) (signal 'wrong-type-argument (list 'ggtags-project cl-x))) (aref cl-x 3)) nil] 9 (#$ . 16441)])
(put 'ggtags-project-has-refs 'compiler-macro 'ggtags-project-has-refs--cmacro)
#@142 Access slot "has-refs" of `(ggtags-project (:constructor ggtags-project--make) (:copier nil) (:type vector) :named)' struct CL-X.
 
(fn CL-X)
(defalias 'ggtags-project-has-refs #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-ggtags-project-tags 0 signal wrong-type-argument ggtags-project 3] 5 (#$ . 16910)])
(byte-code "\300\301\302\303#\300\207" [function-put ggtags-project-has-refs side-effect-free t] 4)
#@86 compiler-macro for inlining `ggtags-project-has-path-style'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-has-path-style--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-has-path-style (or (and (memq (aref cl-x 0) cl-struct-ggtags-project-tags)) (signal 'wrong-type-argument (list 'ggtags-project cl-x))) (aref cl-x 4)) nil] 9 (#$ . 17346)])
(put 'ggtags-project-has-path-style 'compiler-macro 'ggtags-project-has-path-style--cmacro)
#@148 Access slot "has-path-style" of `(ggtags-project (:constructor ggtags-project--make) (:copier nil) (:type vector) :named)' struct CL-X.
 
(fn CL-X)
(defalias 'ggtags-project-has-path-style #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-ggtags-project-tags 0 signal wrong-type-argument ggtags-project 4] 5 (#$ . 17845)])
(byte-code "\300\301\302\303#\300\207" [function-put ggtags-project-has-path-style side-effect-free t] 4)
#@81 compiler-macro for inlining `ggtags-project-has-color'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-has-color--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-has-color (or (and (memq (aref cl-x 0) cl-struct-ggtags-project-tags)) (signal 'wrong-type-argument (list 'ggtags-project cl-x))) (aref cl-x 5)) nil] 9 (#$ . 18299)])
(put 'ggtags-project-has-color 'compiler-macro 'ggtags-project-has-color--cmacro)
#@143 Access slot "has-color" of `(ggtags-project (:constructor ggtags-project--make) (:copier nil) (:type vector) :named)' struct CL-X.
 
(fn CL-X)
(defalias 'ggtags-project-has-color #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-ggtags-project-tags 0 signal wrong-type-argument ggtags-project 5] 5 (#$ . 18773)])
(byte-code "\300\301\302\303#\300\207" [function-put ggtags-project-has-color side-effect-free t] 4)
#@79 compiler-macro for inlining `ggtags-project-dirty-p'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-dirty-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-dirty-p (or (and (memq (aref cl-x 0) cl-struct-ggtags-project-tags)) (signal 'wrong-type-argument (list 'ggtags-project cl-x))) (aref cl-x 6)) nil] 9 (#$ . 19212)])
(put 'ggtags-project-dirty-p 'compiler-macro 'ggtags-project-dirty-p--cmacro)
#@141 Access slot "dirty-p" of `(ggtags-project (:constructor ggtags-project--make) (:copier nil) (:type vector) :named)' struct CL-X.
 
(fn CL-X)
(defalias 'ggtags-project-dirty-p #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-ggtags-project-tags 0 signal wrong-type-argument ggtags-project 6] 5 (#$ . 19676)])
(byte-code "\300\301\302\303#\300\207" [function-put ggtags-project-dirty-p side-effect-free t] 4)
#@77 compiler-macro for inlining `ggtags-project-mtime'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-mtime--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-mtime (or (and (memq (aref cl-x 0) cl-struct-ggtags-project-tags)) (signal 'wrong-type-argument (list 'ggtags-project cl-x))) (aref cl-x 7)) nil] 9 (#$ . 20109)])
(put 'ggtags-project-mtime 'compiler-macro 'ggtags-project-mtime--cmacro)
#@139 Access slot "mtime" of `(ggtags-project (:constructor ggtags-project--make) (:copier nil) (:type vector) :named)' struct CL-X.
 
(fn CL-X)
(defalias 'ggtags-project-mtime #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-ggtags-project-tags 0 signal wrong-type-argument ggtags-project 7] 5 (#$ . 20563)])
(byte-code "\300\301\302\303#\300\207" [function-put ggtags-project-mtime side-effect-free t] 4)
#@81 compiler-macro for inlining `ggtags-project-timestamp'.
 
(fn CL-WHOLE-ARG CL-X)
(defalias 'ggtags-project-timestamp--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block ggtags-project-timestamp (or (and (memq (aref cl-x 0) cl-struct-ggtags-project-tags)) (signal 'wrong-type-argument (list 'ggtags-project cl-x))) (aref cl-x 8)) nil] 9 (#$ . 20990)])
(put 'ggtags-project-timestamp 'compiler-macro 'ggtags-project-timestamp--cmacro)
#@143 Access slot "timestamp" of `(ggtags-project (:constructor ggtags-project--make) (:copier nil) (:type vector) :named)' struct CL-X.
 
(fn CL-X)
(defalias 'ggtags-project-timestamp #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-ggtags-project-tags 0 signal wrong-type-argument ggtags-project 8] 5 (#$ . 21464)])
(byte-code "\300\301\302\303#\300\207" [function-put ggtags-project-timestamp side-effect-free t] 4)
#@155 compiler-macro for inlining `ggtags-project--make'.
 
(fn CL-WHOLE &cl-quote &key ROOT TAG-SIZE HAS-REFS HAS-PATH-STYLE HAS-COLOR DIRTY-P MTIME TIMESTAMP)
(defalias 'ggtags-project--make--cmacro #[385 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\300\306\"A@\300\307\"A@\300\310\"A@\211\203`\211@\311>\203H\211AA\262\2025\312\n>A@\203W\313\262\2025\314\315@\"\210\2025\210\316\317\320\313 \313        & \207" [plist-member :root :tag-size :has-refs :has-path-style :has-color :dirty-p :mtime :timestamp (:root :tag-size :has-refs :has-path-style :has-color :dirty-p :mtime :timestamp :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:root :tag-size :has-refs :has-path-style :has-color :dirty-p :mtime :timestamp)" cl--defsubst-expand (root tag-size has-refs has-path-style has-color dirty-p mtime timestamp) (cl-block ggtags-project--make (vector 'ggtags-project root tag-size has-refs has-path-style has-color dirty-p mtime timestamp))] 24 (#$ . 21904)])
(put 'ggtags-project--make 'compiler-macro 'ggtags-project--make--cmacro)
#@134 Constructor for objects of type `ggtags-project'.
 
(fn &key ROOT TAG-SIZE HAS-REFS HAS-PATH-STYLE HAS-COLOR DIRTY-P MTIME TIMESTAMP)
(defalias 'ggtags-project--make #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\300\306\"A@\300\307\"A@\300\310\"A@\211\203`\211@\311>\203H\211AA\262\2025\312\n>A@\203W\313\262\2025\314\315@\"\210\2025\210\316\317                                &    \207" [plist-member :root :tag-size :has-refs :has-path-style :has-color :dirty-p :mtime :timestamp (:root :tag-size :has-refs :has-path-style :has-color :dirty-p :mtime :timestamp :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:root :tag-size :has-refs :has-path-style :has-color :dirty-p :mtime :timestamp)" vector ggtags-project] 19 (#$ . 23020)])
(byte-code "\300\301\302\303#\304\305\306\211\307\303\310\311\305\306&    \207" [function-put ggtags-project--make side-effect-free t cl-struct-define ggtags-project nil vector ((cl-tag-slot) (root) (tag-size) (has-refs) (has-path-style) (has-color) (dirty-p) (mtime) (timestamp)) cl-struct-ggtags-project-tags] 11)
#@13 
 
(fn ROOT)
(defalias 'ggtags-make-project #[257 "\211;\204 \302\303\304\305E\"\210\306!\307!\310\311\312\"P\313\314\315\316\"!\233\211:\205\235\211@A\211:\205\233\211A\211:\205\231\211@\211\317\314\315\320 \"!8\211\205h\211\321V\204g\3221\\\310\311\323\"\324\232?0\202d\325\326\"\210\327\262\205h\330\331\311\332\333\334$\205r\335\331\311\336\334#\205{\337\340\341\342\n\327\343!\343 &        #\266\204\266\202\262\262\266\202\262)\207" [default-directory ggtags-projects signal wrong-type-argument string root file-name-as-directory file-remote-p ggtags-process-string "global" "-p" 5 file-attributes expand-file-name "GTAGS" 7 "GRTAGS" 32768 (debug error) "-crs" "" message "ggtags-make-project: %S" nil has-refs ggtags-process-succeed-p "--path-style" "shorter" "--help" has-path-style "--color" has-color puthash vector ggtags-project float-time] 25 (#$ . 24130)])
#@16 
 
(fn PROJECT)
(defalias 'ggtags-project-expired-p #[257 "\211\302H>\204\303\304\305D\"\210\211\306H\302W\206.\307 \302H>\204(\303\304\305D\"\210\306HZ    V\207" [cl-struct-ggtags-project-tags ggtags-project-duration 0 signal wrong-type-argument ggtags-project 8 float-time] 6 (#$ . 25035)])
#@113 Update PROJECT's modtime and if current file is newer.
Value is new modtime if updated.
 
(fn &optional PROJECT)
(defalias 'ggtags-project-update-mtime-maybe #[256 "\211\206\301 \302!\205j\211G\303Y\205j\211\304H>\205j\305 :\205j\306\305 !\304H>\2044\307\310\311D\"\210\312HV\205j\211\304H>\204J\307\310\311D\"\210\211\211\313\314I\266\211\304H>\204`\307\310\311D\"\210\211\211\312\306\305 !I\262\207" [cl-struct-ggtags-project-tags ggtags-find-project vectorp 9 0 visited-file-modtime float-time signal wrong-type-argument ggtags-project 7 6 t] 7 (#$ . 25341)])
#@26 
 
(fn &optional PROJECT)
(defalias 'ggtags-project-oversize-p #[256 "\204\302\207\303=\203\303\207\206\304 \211\205-\211\305H    >\204(\306\307\310D\"\210\211\311HV\262\207" [ggtags-oversize-limit cl-struct-ggtags-project-tags nil t ggtags-find-project 0 signal wrong-type-argument ggtags-project 2] 7 (#$ . 25931)])
(defvar ggtags-last-default-directory nil nil)
(make-variable-buffer-local 'ggtags-last-default-directory)
#@47 Internal variable for project root directory.
(defvar ggtags-project-root 'unset (#$ . 26373))
(make-variable-buffer-local 'ggtags-project-root)
(defalias 'ggtags-find-project #[0 "    \232\204\n\305\302!\210\306\n \"\307!\2037\211G\310Y\2037\211\311H\f>\2037\312!\2033\313\n \"\210\314 \202u\211\202u    \3151K\316\317    !\320\321\322\"P!0\202O\210\202R\206a\323    \324\"\211\205_\316\325!!\262\211\205u\306\n \"\203r\314 \202u\326\n!\207" [ggtags-last-default-directory default-directory ggtags-project-root ggtags-projects cl-struct-ggtags-project-tags kill-local-variable gethash vectorp 9 0 ggtags-project-expired-p remhash ggtags-find-project (error) file-name-as-directory file-remote-p ggtags-process-string "global" "-pr" locate-dominating-file #[257 "\300\301\302\"!\207" [file-regular-p expand-file-name "GTAGS"] 5 "\n\n(fn DIR)"] file-truename ggtags-make-project] 7])
(defalias 'ggtags-current-project-root #[0 "\301 \205\301 \211\302H>\204\303\304\305D\"\210\211\306H\262\207" [cl-struct-ggtags-project-tags ggtags-find-project 0 signal wrong-type-argument ggtags-project 1] 5])
(defalias 'ggtags-check-project #[0 "\300 \206\301\302!\207" [ggtags-find-project error "File GTAGS not found"] 2])
(defalias 'ggtags-ensure-project #[0 "\300 \206 \301\302!\210\303 \207" [ggtags-find-project call-interactively ggtags-create-tags ggtags-check-project] 2])
#@77 Save Gnu Global's specific environment variables.
 
(fn &optional NOCONFIRM)
(defalias 'ggtags-save-project-settings #[256 "\306 \210\307\310 \311\n \312 \211\313H\f>\204\314\315\316D\"\210\211\317H\262?\205'\320C#\321 \322\211:\203U@\262\323\324\"\203N\325\326\"\327\330\325\326\"!QB\262A\262\202-\211\237\266\203!\331\332!\333\322\302#\210\307(\334 \210)\204\233\335\331\336)\"\337\"\211\340\267\202\225\341\342!\202\226\322\202\226\343 \210\344\202\226\345 \210\344\202\226\322\262\204o\346 \210\347 ,\207" [inhibit-read-only default-directory ggtags-process-environment process-environment cl-struct-ggtags-project-tags help-form ggtags-check-project t ggtags-current-project-root append ggtags-find-project 0 signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" delete-dups nil string-match "^\\(GTAGS[^=\n]*\\|MAKEOBJDIRPREFIX\\)=" match-string 1 "=" getenv format "y: save\nn: don't save\n=: diff\n?: help\n" add-dir-local-variable delete-trailing-whitespace read-char-choice "Save `%s'? (y/n/=/?) " (121 110 61 63) #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (110 125 121 131 61 135 63 142)) user-error "Aborted" diff-buffer-with-file loop help-form-show save-buffer kill-buffer delete-trailing-lines buffer-file-name] 11 (#$ . 27768) "P"])
(defalias 'ggtags-toggle-project-read-only #[0 "\304 \210\305?\306 \307\310\300#\210\311 \210\312 \210 \203'\313\203$\314\202%\315!\210\316\317!\203:\320\321\2037\322\2028\323\"\210*\207" [buffer-read-only default-directory inhibit-read-only buffer-file-name ggtags-check-project t ggtags-current-project-root add-dir-local-variable nil save-buffer kill-buffer read-only-mode 1 -1 called-interactively-p interactive message "Project read-only-mode is %s" "on" "off"] 6 nil nil])
#@157 Visit the root directory of (current) PROJECT in dired.
When called with a prefix \[universal-argument], choose from past projects.
 
(fn &optional PROJECT)
(defalias 'ggtags-visit-project-root #[256 "\301;\203\n\2029\302!\2034G\303Y\2034\304H>\2034\304H>\204.\305\306\307D\"\210\310H\2029\311 \210\312 !\207" [cl-struct-ggtags-project-tags dired vectorp 9 0 signal wrong-type-argument ggtags-project 1 ggtags-ensure-project ggtags-current-project-root] 6 (#$ . 29601) (byte-code "\205\302\303    \"C\207" [current-prefix-arg ggtags-projects completing-read "Project: "] 3)])
#@72 Eval BODY in current project's `process-environment'.
 
(fn &rest BODY)
(defalias 'ggtags-with-current-project '(macro . #[128 "\300\301!\300\302!\303\304B\305B\306\307\310\311\312    \313\314\fEE\315BBB\306\312    \316\317\320 EDE\321BBBBDE\322\323B\324\325EEE\207" [make-symbol "-gtagsroot-" "-ggtags-project-root-" let* (ggtags-project-root) ((when (ggtags-find-project) (ggtags-ensure-localname (directory-file-name (ggtags-current-project-root))))) process-environment append let ((process-environment (copy-sequence process-environment))) and setenv "GTAGSROOT" ((mapcar #'substitute-env-vars ggtags-process-environment)) list concat "GTAGSROOT=" ((and (ggtags-find-project) (not (ggtags-project-has-refs (ggtags-find-project))) (list "GTAGSLABEL=ctags"))) unwind-protect save-current-buffer setq ggtags-project-root] 16 (#$ . 30199)]))
(byte-code "\300\301\302\303#\210\304\301\305\306#\300\207" [put ggtags-with-current-project edebug-form-spec t function-put lisp-indent-function 0] 4)
(defalias 'ggtags-get-libpath #[0 "\306 \205\f\307\310\311 !!\312\313    !\203\314\315\"\210\316\317\n\")    \205(\320PC\306 \205I\306 \211\321H >\204>\322\323\324D\"\210\211\325H\262?\205I\326C$\327\321\330\331\332!\333\"\334$\216r\335\336!+\266\202\211\205r\316\337\340\341\f!\"\342\343 !\344#\"\207" [ggtags-project-root process-environment ggtags-process-environment cl-struct-ggtags-project-tags default-directory path-separator ggtags-find-project ggtags-ensure-localname directory-file-name ggtags-current-project-root append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" 0 signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" make-byte-code "\300\211\207" vconcat vector [ggtags-project-root] 2 getenv "GTAGSLIBPATH" apply-partially concat file-remote-p split-string regexp-quote t] 11])
#@60 Get file name relative to current project root.
 
(fn FILE)
(defalias 'ggtags-project-relative-file #[257 "\300 \210\301!\203\302\303\304 \"\203\304 \202\305\306\"\"\207\207" [ggtags-check-project file-name-absolute-p file-relative-name string-prefix-p ggtags-current-project-root locate-dominating-file "GTAGS"] 6 (#$ . 32051)])
#@63 Return non-nil if FILE is part of current project.
 
(fn FILE)
(defalias 'ggtags-project-file-p #[257 "\305 \205\225\306\307!r\211q\210\310\311\312\313\314!\315\"\316$\216\305 \205$\317\320\321 !!\322\323    !\2032\324\325\"\210\326\327\n\")    \205@\330PC\305 \205a\305 \211\311H >\204V\331\332\333D\"\210\211\334H\262?\205a\335C$\310\311\336\313\314!\337\"\316$\216r\321 \340\341\342!\343\344\343\345\346\347 !\350Q&\210,\266eb\210\351\352\343\344#*?\262\207" [ggtags-project-root process-environment ggtags-process-environment cl-struct-ggtags-project-tags default-directory ggtags-find-project generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 ggtags-ensure-localname directory-file-name ggtags-current-project-root append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" "\300\211\207" [ggtags-project-root] process-file ggtags-program-path "global" nil t "-vP" "^" ggtags-project-relative-file "$" re-search-forward "^file not found"] 13 (#$ . 32396)])
#@13 
 
(fn ROOT)
(defalias 'ggtags-invalidate-buffer-project-root #[257 "\300\301\302\303\304\305!\306\"\307\310%\311 \"\207" [mapc make-byte-code 257 "r\211q\210    \205\302\300    \"\205\303\304!)\207" vconcat vector [buffer-file-truename string-prefix-p kill-local-variable ggtags-project-root] 4 "\n\n(fn BUF)" buffer-list] 8 (#$ . 33537)])
#@368 Create tag files (e.g. GTAGS) in directory ROOT.
If file .globalrc or gtags.conf exists in ROOT, it will be used
as configuration file per `ggtags-use-project-gtagsconf'.
 
If file gtags.files exists in ROOT, it should be a list of source
files to index, which can be used to speed gtags up in large
source trees. See Info node `(global)gtags' for details.
 
(fn ROOT)
(defalias 'ggtags-create-tags #[257 "\306!\211G\307U\203\310\311!\210\312\313\314\315\316\317!!!!\"\210    \320 \205)\314\316\321 !!\322\306!\2037\312\313\"\210\323\324\n\")\205E\325PC\320 \205f\320 \211\307H >\204[\326\327\330D\"\210\211\331H\262?\205f\332C$\333\307\334\335\336!\337\"\340$\216r\f\205\251\341\342\211\343\342:\203\247@\262\315    \"\262\344!\205\226\211\262?\211\262\203\247A\262\202\266\204\211\204\276\345\346!\204\276\347\350!\203\276\312\346\351\"\210\352 \353\211\342C\333\307\354\335\336\"\355\"\331$\216\203\341\211\356 \240\210\357\360\"\210\317!\322\361\362 \205\355\363@\205\373\364\365\366\367#\205\373\366\n\205\370 \205\n\314\f!F\"A\"B\3711\372\373\365#0\202Q \203I\211A@;\203I\374A@\342\343C\375#)\266\203\203I\372\373\365\376\363\"#\202O\326@A\"\262\210)\266\357\377\352 Z#\210)\266+\266\201D\201E!!\210\357\201F\"\210)\207" [process-environment ggtags-project-root ggtags-process-environment cl-struct-ggtags-project-tags ggtags-use-project-gtagsconf ggtags-use-idutils copy-sequence 0 error "No root directory provided" setenv "GTAGSROOT" ggtags-ensure-localname expand-file-name directory-file-name file-name-as-directory ggtags-find-project ggtags-current-project-root append mapcar substitute-env-vars "GTAGSROOT=" signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" make-byte-code "\300\211\207" vconcat vector [ggtags-project-root] 2 (".globalrc" "gtags.conf") nil t file-exists-p getenv "GTAGSLABEL" yes-or-no-p "Use `ctags' backend? " "ctags" float-time "`gtags' in progress..." "\300\205\301\242\203\302\303\301\242\"\207\302\304!\207" [message #1="%s" nil] current-message message #1# cl-remove-if null "--idutils" ggtags-process-succeed-p "gtags" "--sqlite3" "--help" "--gtagsconf" (error) apply ggtags-process-string "mkid not found" string-match cl-remove "%sdone (%.2fs)" ggtags-use-sqlite3 ggtags-extra-args default-directory inhibit-changing-match-data ggtags-invalidate-buffer-project-root file-truename "GTAGS generated in `%s'"] 18 (#$ . 33884) "DRoot directory: "])
#@54 Explain how each file is indexed in current project.
(defalias 'ggtags-explain-tags #[0 "\305 \210\306 \205\307\310\311 !!\312\313    !\203\314\315\"\210\316\317\n\")    \205+\320PC\306 \205L\306 \211\321H >\204A\322\323\324D\"\210\211\325H\262?\205L\326C$\327\321\330\331\332!\333\"\334$\216r\311 \335\336\337!\340P!,\207" [ggtags-project-root process-environment ggtags-process-environment cl-struct-ggtags-project-tags default-directory ggtags-check-project ggtags-find-project ggtags-ensure-localname directory-file-name ggtags-current-project-root append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" 0 signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" make-byte-code "\300\211\207" vconcat vector [ggtags-project-root] 2 compilation-start ggtags-program-path "gtags" " --explain"] 11 (#$ . 36383) (byte-code "\300\301 \210\302\303\304\305#\204\306\307!\210\207" [nil ggtags-check-project ggtags-process-succeed-p "gtags" "--explain" "--help" user-error "Global 6.4+ required"] 5)])
#@258 Update GNU Global tag database.
Do nothing if GTAGS exceeds the oversize limit unless FORCE.
 
When called interactively on large (per `ggtags-oversize-limit')
projects, the update process runs in the background without
blocking emacs.
 
(fn &optional FORCE)
(defalias 'ggtags-update-tags #[256 "\211\306=\203\200\307 \203\200\310 \205\311\312\313 !!\314\315    !\203%\316\317\"\210\320\321\n\")    \2053\322PC\310 \205T\310 \211\323H >\204I\324\325\326D\"\210\211\327H\262?\205T\330C$\331\323\332\333\334!\335\"\336$\216r\f\203m\337C\202n r\340\341!q\210\3414\342\343\344\345\346$-\207\211\204\250\310 \205=\307 ?\205=\310 \211\323H >\204\240\324\325\326D\"\210\211\347H\262\205=\310 \205\264\311\312\313 !!\314\315    !\203\302\316\317\"\210\320\321\n\")    \205\320\322PC\310 \205\361\310 \211\323H >\204\346\324\325\326D\"\210\211\327H\262?\205\361\330C$\331\323\332\333\334!\350\"\336$\216r\351 \352\211\345C\331\323\353\333\334\"\354\"\327$\216\203$\211\355 \240\210\356\357\"\210\360\361\362\"\210\344 \356\363\351 Z#\210)\266\202\266\202+\266\202\207" [ggtags-project-root process-environment ggtags-process-environment cl-struct-ggtags-project-tags ggtags-auto-jump-to-match display-buffer-overriding-action interactive ggtags-project-oversize-p ggtags-find-project ggtags-ensure-localname directory-file-name ggtags-current-project-root append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" 0 signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" make-byte-code "\300\211\207" vconcat vector [ggtags-project-root] 2 display-buffer-no-window compilation-start "global -u" add-hook compilation-finish-functions ggtags-update-tags-finish nil t 6 [ggtags-project-root] float-time "`global -u' in progress..." "\300\205\301\242\203\302\303\301\242\"\207\302\304!\207" [message #1="%s" nil] current-message message #1# ggtags-process-string "global" "-u" "%sdone (%.2fs)" mode-name] 14 (#$ . 37435) (byte-code "\301 \210\302 \211\303H>\204\304\305\306D\"\210\211\211\307\310I\266\311C\207" [cl-struct-ggtags-project-tags ggtags-check-project ggtags-find-project 0 signal wrong-type-argument ggtags-project 8 -1 interactive] 5)])
#@26 
 
(fn &optional BUF HOW)
(defalias 'ggtags-update-tags-finish #[512 "\211\203\203\301\302\"\203\303!\207\304 \211\305H>\204$\306\307\310D\"\210\211\211\311\312I\266\304 \211\305H>\204<\306\307\310D\"\210\211\211\313\314 I\262\207" [cl-struct-ggtags-project-tags string-prefix-p "exited abnormally" display-buffer ggtags-find-project 0 signal wrong-type-argument ggtags-project 6 nil 7 float-time] 7 (#$ . 39663)])
#@30 
 
(fn FILE &optional NOWAIT)
(defalias 'ggtags-update-tags-single #[513 ";\204 \305\306\307\310E\"\210\311!?\205\211\312 \205!\313\314\315 !!\316\317    !\203/\320\321\"\210\322\323\n\")    \205=\324PC\312 \205^\312 \211\325H >\204S\305\306\326D\"\210\211\327H\262?\205^\330C$\331\325\332\333\334!\335\"\336$\216r\315 \337\340\341!\342\205{\325\342\343\344 !&,\266\202\207" [ggtags-project-root process-environment ggtags-process-environment cl-struct-ggtags-project-tags default-directory signal wrong-type-argument string file file-remote-p ggtags-find-project ggtags-ensure-localname directory-file-name ggtags-current-project-root append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" 0 ggtags-project 3 "GTAGSLABEL=ctags" make-byte-code "\300\211\207" vconcat vector [ggtags-project-root] 2 process-file ggtags-program-path "global" nil "--single-update" ggtags-project-relative-file] 14 (#$ . 40100)])
#@63 Delete file GTAGS, GRTAGS, GPATH, ID etc. generated by gtags.
(defalias 'ggtags-delete-tags #[0 "\306 \205\231\307\310\311\312\313\314\315!\316\"\317\320%\321\306 \322#\"\323\204$\324\325!\210r\326!q\210p\327 \210\330\211\322\211\322\331 \210\332\333!\210+\2111\334\335\336\337#!\210\340!\210)\266\341!\311\342\343\314\315!\344\"\345$\216\346!\210\347\350!\205\224\3511{\352\353\"0\202\201\354\355\"\262\210\356\306 2\"\210\3573!\205\224\3603!)\262\266\203\207" [default-directory buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks inhibit-read-only ggtags-current-project-root "\\`\\(?:G\\(?:PATH\\|R?TAGS\\)\\|ID\\)\\'" cl-remove-if-not make-byte-code 257 "\303\300\304!\303\305\306#)\266\203)\207" vconcat vector [case-fold-search inhibit-changing-match-data nil file-name-nondirectory t string-match] 8 "\n\n(fn FILE)" directory-files t "*GTags File List*" user-error "No tag files found" get-buffer-create kill-all-local-variables nil erase-buffer run-hooks temp-buffer-setup-hook princ mapconcat identity "\n" internal-temp-output-buffer-show get-buffer-window 0 "\301\300!\205\n\302\303\300\"\207" [window-live-p quit-window t] 3 fit-window-to-buffer yes-or-no-p "Remove GNU Global tag files? " (debug error) mapc delete-file message "Error: %S" remhash overlayp delete-overlay standard-output ggtags-projects ggtags-highlight-tag-overlay] 11 (#$ . 41063) (byte-code "\300\301 \210\207" [nil ggtags-check-project] 2)])
(defvar ggtags-completion-cache nil nil)
(make-variable-buffer-local 'ggtags-completion-cache)
(defvar ggtags-completion-flag "")
(defvar ggtags-completion-table (completion-table-dynamic #[257 "\211\306Q\211    @\232\204\212\211\3071\206\n\310 \205\311\312\313 !!\314\315 !\203*\316\317\"\210\320\321\f\") \2058\322PC\310 \205Y\310 \211\323H >\204N\324\325\326D\"\210\211\327H\262?\205Y\330C$\331\323\332\333\334!\335\"\336$\216r\337\340\341\342\314(\205t\343\344P D\"#\345\346#+\266\2020\202\210\210\347B\210    A\207" [ggtags-completion-flag ggtags-completion-cache ggtags-project-root process-environment ggtags-process-environment cl-struct-ggtags-project-tags "$" (debug error) ggtags-find-project ggtags-ensure-localname directory-file-name ggtags-current-project-root append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" 0 signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" make-byte-code "\300\211\207" vconcat vector [ggtags-project-root] 2 split-string apply ggtags-process-string "global" ("--ignore-case") "-c" "\n" t nil completion-ignore-case] 14 "\n\n(fn PREFIX)"]))
#@49 A function for `completion-at-point-functions'.
(defalias 'ggtags-completion-at-point #[0 " \211:\205\211@A\211\211W\205\211    E\266\202\266\202\207" [ggtags-bounds-of-tag-function ggtags-completion-table] 8 (#$ . 43706)])
#@60 
 
(fn &optional TYPE CONFIRM PROMPT REQUIRE-MATCH DEFAULT)
(defalias 'ggtags-read-tag #[1280 "\305 \210\211\206    \306 \206\307\310\206\311!!:\203q@\211\312=\203kA\211:\203e\211@\211\204_A\211:\203Y\211@\211\313=\203SA\211\204M\314\202N\262\202T\262\202Z\262\202`\262\202f\262\202l\262\202\251\315=\203|\316\202\251\317=\203\207\320\202\251\321=\203\222\322\202\251\323=\203\235\324\202\251;\203\250\202\251\203\323\325 \210    \206\266\n\326\327\203\301\330\202\302\331# \332\332\211&)\202\347\203\335\333!\202\347\334\335%\211)\207" [ggtags-completion-flag ggtags-completing-read-function completing-read-function ggtags-completion-table ggtags-current-tag-name ggtags-ensure-project ggtags-tag-at-point capitalize symbol-name tag or definition "T" symbol "s" reference "r" id "I" path "P" ggtags-update-tags completing-read format "%s (default %s): " "%s: " nil substring-no-properties ggtags-read-tag t] 15 (#$ . 43942)])
(defalias 'ggtags-sort-by-nearness-p #[0 "\205    \301\302\303\304#\207" [ggtags-sort-by-nearness ggtags-process-succeed-p "global" "--nearness=." "--help"] 4])
#@23 
 
(fn CMD &rest ARGS)
(defalias 'ggtags-global-build-command #[385 "\305\306\307\310!!\311\312\313\"    \205\314\n\2053\315 \2053\315 \211\316H >\204*\317\320\321D\"\210\211\322H\262\2053\323\324 \2059\325\315 \205X\315 \211\316H >\204O\317\320\321D\"\210\211\326H\262\205X\327\f\205]\330\n;\203h\n\202\253\n\331=\203s\332\202\253\n\333=\203~\334\202\253\n\335=\203\211\336\202\253\n\337=\203\224\340\202\253\n\341=\203\237\342\202\253\n\343=\203\252\344\202\253\332\257    \"\345\346\347\332\"\350#\207" [ggtags-global-output-format ggtags-global-ignore-case ggtags-global-use-color cl-struct-ggtags-project-tags ggtags-global-treat-text append shell-quote-argument ggtags-program-path "global" "-v" format "--result=%s" "--ignore-case" ggtags-find-project 0 signal wrong-type-argument ggtags-project 5 "--color=always" ggtags-sort-by-nearness-p "--nearness=." 4 "--path-style=shorter" "--other" definition nil reference "--reference" symbol "--symbol" path "--path" grep "--grep" idutils "--idutils" mapconcat identity delq " "] 14 (#$ . 45122)])
(defvar ggtags-global-start-marker nil)
(defvar ggtags-global-start-file nil)
(defvar ggtags-tag-ring-index nil)
(defvar ggtags-global-search-history nil)
(defvar ggtags-auto-jump-to-match-target nil)
(defvar ggtags-global-exit-info nil nil)
(make-variable-buffer-local 'ggtags-global-exit-info)
(defalias 'ggtags-global-save-start-marker #[0 "\302!\205\303\304!\210\305\211\207" [ggtags-global-start-marker ggtags-tag-ring-index markerp nil xref-push-marker-stack t] 2])
#@36 
 
(fn COMMAND &optional DIRECTORY)
(defalias 'ggtags-global-start #[513 "\211\206\306      \307\f!\203\310\f!\204\311  *\312\313\314\"+\"8,\315\316!\210\317 \210-\320 \205<\321\322\306 !!\323\324.!.\203L\325\326\"\210\327\330 \").\205[\331PC\320 \205}\320 \211\332H/>\204r\333\334\335D\"\210\211\336H\262?\205}\337C$.\340\332\341\342\343!\344\"\345$\216rr0\203\231\346C\202\23311\347\350\")q\210\351\303!\210p\2112,\266\202*\207" [default-directory ggtags-split-window-function split-window-preferred-function ggtags-process-environment ggtags-global-start-marker buffer-file-name ggtags-current-project-root markerp marker-position point-marker 4 assoc ggtags-global-search-id ggtags-navigation-mode 1 ggtags-update-tags ggtags-find-project ggtags-ensure-localname directory-file-name append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" 0 signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" make-byte-code "\300\211\207" vconcat vector [ggtags-project-root] 2 display-buffer-no-window compilation-start ggtags-global-mode make-local-variable ggtags-global-start-file ggtags-global-search-history ggtags-auto-jump-to-match-target ggtags-project-root process-environment cl-struct-ggtags-project-tags ggtags-auto-jump-to-match display-buffer-overriding-action ggtags-global-last-buffer] 14 (#$ . 46689)])
(defalias 'ggtags-find-tag-continue #[0 "\303!\203rq\210\304\305!)\204\306\307!\210rq\210\310\311!\210    \3121*\313\311!0\202.\210\202/\210\314 *\207" [ggtags-global-last-buffer ggtags-split-window-function split-window-preferred-function buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" ggtags-navigation-mode 1 (error) compilation-next-error compile-goto-error] 2 nil nil])
#@23 
 
(fn CMD &rest ARGS)
(defalias 'ggtags-find-tag #[385 "\300 \210\301\302\303#!\207" [ggtags-check-project ggtags-global-start apply ggtags-global-build-command] 7 (#$ . 48494)])
#@63 Calculate the include file based on `ggtags-include-pattern'.
(defalias 'ggtags-include-file #[0 "\204\301\207\302!\203 \207:\203+@A\211\212\303 \210\304!\205'\305!)\266\202\207\306\307\"\210\301\207" [ggtags-include-pattern nil functionp beginning-of-line looking-at match-string warn "Invalid value for `ggtags-include-pattern': %s"] 6 (#$ . 48681)])
#@282 Find NAME by context.
If point is at a definition tag, find references, and vice versa.
If point is at a line that matches `ggtags-include-pattern', find
the include file instead.
 
When called interactively with a prefix arg, always find
definition tags.
 
(fn NAME &optional WHAT)
(defalias 'ggtags-find-tag-dwim #[513 "\302 \210\211\303=\203 \304!\207\211\305=\2046\2036\306 \211\307H    >\204(\310\311\312D\"\210\211\313H\262\2036\314!\204:\315!\207\316\317\320\321 \322\323!!#\324\322!#\207" [buffer-file-name cl-struct-ggtags-project-tags ggtags-check-project include ggtags-find-file definition ggtags-find-project 0 signal wrong-type-argument ggtags-project 3 ggtags-project-file-p ggtags-find-definition ggtags-find-tag format "--from-here=%d:%s" line-number-at-pos shell-quote-argument ggtags-project-relative-file "--"] 9 (#$ . 49057) (byte-code "?\205\301 \302 \210\211\203\211\303D\202\304\305\"\205\305D\207" [current-prefix-arg ggtags-include-file ggtags-ensure-project include ggtags-read-tag definition] 4)])
#@14 
 
(fn EVENT)
(defalias 'ggtags-find-tag-mouse #[257 "\300\301!\211@\262!r\302\303\304\305\306!\307\"\310$\216\311@\312\"\210\212\313\301!!b\210\314\315!+\207" [internal--before-with-selected-window event-start make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord posn-point call-interactively ggtags-find-tag-dwim] 8 (#$ . 50109) "e"])
#@13 
 
(fn NAME)
(defalias 'ggtags-find-definition #[257 "\300\301\302\303!#\207" [ggtags-find-tag definition "--" shell-quote-argument] 6 (#$ . 50515) (byte-code "\301\302\"C\207" [current-prefix-arg ggtags-read-tag definition] 3)])
#@18 
 
(fn TYPE NAME)
(defalias 'ggtags-setup-libpath-search #[514 "\205\302 \211\205,\211C\303C\211\304\305\306\307\310\n\n        $\311\"\312\313%\240\210\211\242\211\262\262\207" [ggtags-global-search-libpath-for-reference ggtags-global-continuation ggtags-get-libpath nil make-byte-code 514 "\f:\203\231\f@\211\306=\203\224\fA\211:\203\213\211@\211\306=\203\202A\211:\203w\211A\211\204l\307\310!r\211q\210\311\306\312\313\314!\315\"\316$\216\317\302\242\302\211\242A\240\210\242!\302\242\203Q\303\242\320 \203_\321\300\322\301!\"\202f\303\242\"*\262\202r\323\"\262\202}\323\"\262\202\206\323\"\262\202\217\323\"\262\202\230\323\"\207\323\"\207" vconcat vector [ggtags-global-exit-info default-directory 0 generate-new-buffer " *temp*" make-byte-code "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 file-name-as-directory ggtags-find-project ggtags-find-tag shell-quote-argument ggtags-global-handle-exit ggtags-global-continuation] 14 "\n\n(fn BUF HOW)"] 15 (#$ . 50752)])
#@13 
 
(fn NAME)
(defalias 'ggtags-find-reference #[257 "\300\301\"\210\302\301\303\304!#\207" [ggtags-setup-libpath-search reference ggtags-find-tag "--" shell-quote-argument] 6 (#$ . 51805) (byte-code "\301\302\"C\207" [current-prefix-arg ggtags-read-tag reference] 3)])
#@68 Find tag NAME that is a reference without a definition.
 
(fn NAME)
(defalias 'ggtags-find-other-symbol #[257 "\300\301\"\210\302\301\303\304!#\207" [ggtags-setup-libpath-search symbol ggtags-find-tag "--" shell-quote-argument] 6 (#$ . 52082) (byte-code "\301\302\"C\207" [current-prefix-arg ggtags-read-tag symbol] 3)])
#@16 
 
(fn PATTERN)
(defalias 'ggtags-quote-pattern #[257 "\300\301!!\207" [prin1-to-string substring-no-properties] 4 (#$ . 52411)])
#@16 
 
(fn PATTERN)
(defalias 'ggtags-idutils-query #[257 "\300\301\302\303!#\207" [ggtags-find-tag idutils "--" ggtags-quote-pattern] 6 (#$ . 52547) (byte-code "\300\301\302\"C\207" [ggtags-read-tag id t] 3)])
#@141 Grep for lines matching PATTERN.
Invert the match when called with a prefix arg \[universal-argument].
 
(fn PATTERN &optional INVERT-MATCH)
(defalias 'ggtags-grep #[513 "\300\301\205\302\303\304!$\207" [ggtags-find-tag grep "--invert-match" "--" ggtags-quote-pattern] 8 (#$ . 52761) (byte-code "\301\302\303\203 \304\202\f\305#D\207" [current-prefix-arg ggtags-read-tag definition confirm "Inverted grep pattern" "Grep pattern"] 4)])
#@39 
 
(fn PATTERN &optional INVERT-MATCH)
(defalias 'ggtags-find-file #[513 "\301\302\301\205    \303\304\305!$)\207" [ggtags-global-output-format path ggtags-find-tag "--invert-match" "--" ggtags-quote-pattern] 8 (#$ . 53210) (byte-code "\301\302\303\203 \304\202\f\305\306\307\310!%D\207" [current-prefix-arg ggtags-read-tag path confirm "Inverted path pattern" "Path pattern" nil thing-at-point filename] 7)])
#@154 List tags matching REGEXP in DIRECTORY (default to project root).
When called interactively with a prefix, ask for the directory.
 
(fn REGEXP DIRECTORY)
(defalias 'ggtags-find-tag-regexp #[514 "\300 \210\301\302\303\211\304\305\306!%\307!\"\207" [ggtags-check-project ggtags-global-start ggtags-global-build-command nil "-l" "--" ggtags-quote-pattern file-name-as-directory] 10 (#$ . 53632) (byte-code "\301 \210\302\303\304\305#\203\306\307\310\211\304$\202\311 D\207" [current-prefix-arg ggtags-check-project ggtags-read-tag "" t "POSIX regexp" read-directory-name "Directory: " nil ggtags-current-project-root] 6)])
#@97 Invoke FN with each file found.
FN is invoked while *ggtags-global* buffer is current.
 
(fn FN)
(defalias 'ggtags-foreach-file #[257 "\302!\203rq\210\303\304!)\204\305\306!\210rq\210\212eb\210\3071+\310\311\312\"\210\3130\2023\314\315\"\210\316\262\205X\211\317\320`\321\"\322!    >\204K\323\324\325D\"\210\211\311H\2628@@!\210\202*\207" [ggtags-global-last-buffer cl-struct-compilation--message-tags buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" (debug error) compilation-next-error 1 file t message "compilation-next-error: %S" nil 2 get-text-property compilation-message type-of signal wrong-type-argument compilation--message] 8 (#$ . 54265)])
#@224 Query replace FROM with TO on files in the Global buffer.
If not in navigation mode, do a grep on FROM first.
 
Note: the regular expression FROM must be supported by both
Global and Emacs.
 
(fn FROM TO &optional DELIMITED)
(defalias 'ggtags-query-replace #[770 "\204 \302\303!\210)\304\305$\207" [ggtags-navigation-mode ggtags-auto-jump-to-match nil ggtags-grep (let ((files)) (ggtags-ensure-global-buffer (ggtags-with-temp-message "Waiting for Grep to finish..." (while (get-buffer-process (current-buffer)) (sit-for 0.2))) (ggtags-foreach-file (lambda (file) (push (expand-file-name file) files)))) (ggtags-navigation-mode -1) (nreverse files)) tags-query-replace] 9 (#$ . 54968) (byte-code "\300\301\302\211#\211@A@\3038E\207" [query-replace-read-args "Query replace (regexp)" t 2] 5)])
#@12 
 
(fn CMD)
(defalias 'ggtags-global-normalise-command #[257 "\300\301\302\303!!\304P\"\203\305\306\225\"\207\207" [string-match regexp-quote ggtags-global-build-command nil "\\s-*" substring-no-properties 0] 5 (#$ . 55774)])
#@22 
 
(fn CMD DIRECTORY)
(defalias 'ggtags-global-search-id #[514 "\300\301\302\303\"\304!Q!\207" [sha1 make-string 1 0 ggtags-global-normalise-command] 7 (#$ . 56009)])
(defalias 'ggtags-global-current-search #[0 "\304!\203rq\210\305\306!)\204\307\310!\210rq\210\311    @!\n \312 \313\314 \315 \"\257)\207" [ggtags-global-last-buffer compilation-arguments default-directory ggtags-process-environment buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" ggtags-global-normalise-command line-number-at-pos buffer-substring-no-properties line-beginning-position line-end-position] 7])
#@13 
 
(fn DATA)
(defalias 'ggtags-global-rerun-search #[257 "\211:\205k\211@A\211:\205i\211@A\211:\205g\211@A\211:\205e\211@A\211:\205c\211@A\211?\205a\n r\304\211\305\306!\",q\210\307\310\311\312\313\314\315\n!\316\"\317\320%\304\321$)\266\205\266\202\266\202\266\202\266\202\266\202\207" [ggtags-process-environment ggtags-project-root default-directory ggtags-auto-jump-to-match nil ggtags-global-start ggtags-global-build-command add-hook compilation-finish-functions make-byte-code 514 "rq\210\301\300!\210\302 )\207" vconcat vector [ggtags-forward-to-line compile-goto-error] 4 "\n\n(fn BUF MSG)" t] 24 (#$ . 56628)])
(defvar ggtags-global-search-ewoc nil nil)
(make-variable-buffer-local 'ggtags-global-search-ewoc)
(defvar ggtags-view-search-history-last nil)
(defvar ggtags-view-search-history-mode-map (byte-code "\300 \301\302\303#\210\301\304\303#\210\301\305\306#\210\301\307\306#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\211\207" [make-sparse-keymap define-key "p" ggtags-view-search-history-prev "\360" "n" ggtags-view-search-history-next "\356" " " ggtags-view-search-history-kill [remap yank] #[256 "\300!\207" [yank] 3 "\n\n(fn &optional ARG)" "P"] "" ggtags-view-search-history-update "r" ggtags-save-to-register " " ggtags-view-search-history-action "q" ggtags-kill-window] 5))
(defalias 'ggtags-view-search-history-remember #[0 "\302!\211\205 \211\211\303H\262\262\211\207" [ggtags-global-search-ewoc ggtags-view-search-history-last ewoc-locate 2] 4])
#@22 
 
(fn &optional ARG)
(defalias 'ggtags-view-search-history-next #[256 "\211\206\301\211\211\302W\262\203\303\202\304\305!\"\306 \210\207" [ggtags-global-search-ewoc 1 0 ewoc-goto-prev ewoc-goto-next abs ggtags-view-search-history-remember] 6 (#$ . 58213) "p"])
#@22 
 
(fn &optional ARG)
(defalias 'ggtags-view-search-history-prev #[256 "\300\206\301[!\207" [ggtags-view-search-history-next 1] 3 (#$ . 58489) "p"])
#@25 
 
(fn &optional APPEND)
(defalias 'ggtags-view-search-history-kill #[256 "\302!\206    \303\304!\305\"\306\307!\203\307!\202d\"\310\311G\312\313\314HDD%\210\2039\315\316\"\210\202=\317!\210\320\321\")\207" [ggtags-global-search-ewoc inhibit-read-only ewoc-locate user-error "No node at point" ewoc-next filter-buffer-substring ewoc-location put-text-property 0 yank-handler #[257 "\204\211@c\207\304\305\304\306!)\262?\205\307!\211\203)\310A@#\210\2020\311A@\"\210A@\211)\207" [ggtags-global-search-ewoc inhibit-read-only inhibit-changing-match-data ggtags-view-search-history-last t "[     \n]*\\'" looking-at ewoc-locate ewoc-enter-before ewoc-enter-last] 6 "\n\n(fn ARG)"] 2 kill-append nil kill-new t ewoc-delete] 12 (#$ . 58646) "P"])
#@84 Update `ggtags-global-search-history' to current buffer.
 
(fn &optional NOCONFIRM)
(defalias 'ggtags-view-search-history-update #[256 "\302 \205\211\204\303\304!\205\305\306\"\307\310!\207" [ggtags-global-search-ewoc ggtags-global-search-history buffer-modified-p yes-or-no-p "Modify `ggtags-global-search-history'?" ewoc-collect identity set-buffer-modified-p nil] 4 (#$ . 59429) "P"])
(defalias 'ggtags-view-search-history-action #[0 "\301!\206    \302\303!\211\304H\262\305 \210\306\307!\210\310A!\207" [ggtags-global-search-ewoc ewoc-locate user-error "No search at point" 2 ggtags-view-search-history-remember quit-window t ggtags-global-rerun-search] 3 nil nil])
(defvar ggtags-view-search-history-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [ggtags-view-search-history-mode-hook variable-documentation put "Hook run after entering SearchHist mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp ggtags-view-search-history-mode-map definition-name ggtags-view-search-history-mode] 4)
(defvar ggtags-view-search-history-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\210\303\311\323\324#\207" [ggtags-view-search-history-mode-abbrev-table ggtags-view-search-history-mode-map variable-documentation put purecopy "Keymap for `ggtags-view-search-history-mode'." boundp ggtags-view-search-history-mode-syntax-table definition-name ggtags-view-search-history-mode (lambda (#1=#:def-tmp-var) (defvar ggtags-view-search-history-mode-syntax-table #1#)) make-syntax-table "Syntax table for `ggtags-view-search-history-mode'." (lambda (#1#) (defvar ggtags-view-search-history-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `ggtags-view-search-history-mode'." derived-mode-parent special-mode custom-mode-group ggtags] 5)
#@273 Major mode for viewing search history.
 
In addition to any hooks its parent mode `special-mode' might have run,
this mode runs the hook `ggtags-view-search-history-mode-hook', as the final or penultimate step
during initialization.
 
\{ggtags-view-search-history-mode-map}
(defalias 'ggtags-view-search-history-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315 !\204'\316 \317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324 \325\"\204R \"=\204R\326 \325\"C#\210\327 !\210\330\f!\210 \"\306\331!\210\332\306\333!\210\334\307#\335\336\337\332\307$\210)\340\341!\207" [delay-mode-hooks major-mode mode-name ggtags-view-search-history-mode-map ggtags-view-search-history-mode-syntax-table ggtags-view-search-history-mode-abbrev-table make-local-variable t special-mode ggtags-view-search-history-mode "SearchHist" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table ggtags-enable-navigation-keys nil bookmark-make-record-function ggtags-make-bookmark-record add-hook kill-buffer-hook ggtags-view-search-history-update run-mode-hooks ggtags-view-search-history-mode-hook local-abbrev-table truncate-lines] 5 (#$ . 61585) nil])
(defalias 'ggtags-view-search-history-restore-last #[0 "\205;\3022;\303\304\211\203\305    \306\"\202\307    \"\262\2037\310H=\2031\311!b\210\312\302\304\"\210\303\262\202\n\303\266\2020\207" [ggtags-view-search-history-last ggtags-global-search-ewoc --cl-block-nil-- nil t ewoc-nth 0 ewoc-next 2 ewoc-location throw] 5])
#@90 Pop to a buffer to view or re-run past searches.
 
\{ggtags-view-search-history-mode-map}
(defalias 'ggtags-view-search-history #[0 "\204\305\306!\210    \307\310\311!\210\312 \210\313 \210\314C\314C\314\315\240\210\316\240\210\317\320\321\322\323\"\324\"\325\326%\262\327\330\"\266\211\203N\211@\331\f\"\210A\266\202\202<\210\332 \210\333\314!\210\334\314\335\336 \337\"\"*\207" [ggtags-global-search-history ggtags-split-window-function inhibit-read-only split-window-preferred-function ggtags-global-search-ewoc user-error "No search history" t pop-to-buffer "*Ggtags Search History*" erase-buffer ggtags-view-search-history-mode nil #[257 "\300\301\302#\207" [propertize face minibuffer-prompt] 5 "\n\n(fn S)"] #[257 "\301\302!r\211q\210\303\304\305\306\307!\310\"\311$\216c\210\312\313!\210m\203\"\202+\314`d\315$\210\316 *\207" [font-lock-constant-face generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 forward-sexp -1 put-text-property face buffer-string] 8 "\n\n(fn CMD)"] make-byte-code 257 "\211:\205}\211@A\211:\205{\211@A\211:\205y\211@A\211:\205w\211@A\211:\205u\211@A\211:\205s\211@A\211?\205q\n \300\242\302!\301\242!\303\300\242\304!\303\300\242\305!\306\f!\303\300\242\307!\303\310\311\312\313\"\314\315#\261 \266\206\266\202\266\202\266\202\266\202\266\202\266\202\207" vconcat vector [" cmd: " "\n" " dir: " "line: " number-to-string "text: " propertize make-string 32 45 face shadow] 35 "\n\n(fn DATA)" ewoc-create "Global search history keys:  n:next  p:prev  r:register  RET:choose\n" ewoc-enter-last ggtags-view-search-history-restore-last set-buffer-modified-p fit-window-to-buffer floor frame-height 2] 10 (#$ . 63279) nil])
#@107 Save current search session to register R.
Use \[jump-to-register] to restore the search session.
 
(fn R)
(defalias 'ggtags-save-to-register #[257 "\301\302\262\303\304\203\305!\211\306H\262A\202\307 \310\311\312%\"\207" [ggtags-global-search-ewoc nil #[257 "\211:\205K\211@A\211:\205I\211@A\211:\205G\211@A\211:\205E\211@A\211:\205C\211A\211?\205A \300\301\302$!\266\204\262\266\202\266\202\266\202\266\202\207" [princ format "a ggtags search session `%s' in directory `%s' at line %d."] 20 "\n\n(fn DATA)"] set-register registerv-make ewoc-locate 2 ggtags-global-current-search :jump-func ggtags-global-rerun-search :print-func] 10 (#$ . 65057) (byte-code "\300\301!C\207" [register-read-with-preview "Save search to register: "] 2)])
(defalias 'ggtags-make-bookmark-record #[0 "\205\302\303\"\304    \203\305    !\211\306H\262A\202\307 B\310BB\207" [ggtags-current-tag-name ggtags-global-search-ewoc format "*ggtags %s*" ggtags-search ewoc-locate 2 ggtags-global-current-search ((handler . ggtags-bookmark-jump))] 5])
#@12 
 
(fn BMK)
(defalias 'ggtags-bookmark-jump #[257 "\300\301\302\"!\207" [ggtags-global-rerun-search bookmark-prop-get ggtags-search] 5 (#$ . 66118)])
#@55 Browse FILE in hypertext (HTML) form.
 
(fn FILE LINE)
(defalias 'ggtags-browse-file-as-hypertext #[514 "\211\250\203 \211\306Y\204\307\310\311\312E\"\210\203\313!\204\"\314\315\"\210\316 \210\313\317\320\321 \"!\204\240\322\323!\203\234\321     \324 \205D\325\326\321 !!\327\330\n!\203R\331\332\"\210\333\334 \")\n\205`\335PC\324 \205\201\324 \211\336H\f>\204v\307\310\337D\"\210\211\340H\262?\205\201\341C$\342\336\343\344\345!\346\"\347$\216r\350\351!\210+\266)\202\240\352\353!\210\350\354\355\356\357\"\360!$\361\362!\363! >\204\277\307\310\364D\"\210\211\365H\262!\366\232\204\317\352\367\"\210\370\371!\203\332\372\373\"\210\374!\207" [default-directory ggtags-project-root process-environment ggtags-process-environment cl-struct-ggtags-project-tags cl-struct-url-tags 1 signal wrong-type-argument (integer 1) line file-exists-p error "File `%s' doesn't exist" ggtags-check-project expand-file-name "HTML" ggtags-current-project-root yes-or-no-p "No hypertext form exists; run htags? " ggtags-find-project ggtags-ensure-localname directory-file-name append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" 0 ggtags-project 3 "GTAGSLABEL=ctags" make-byte-code "\300\211\207" vconcat vector [ggtags-project-root] 2 ggtags-process-string "htags" user-error "Aborted" "gozilla" "-p" format "+%d" file-relative-name file-name-extension url-generic-parse-url type-of url 6 "html" "No hypertext form for `%s'" called-interactively-p interactive message "Browsing %s" browse-url] 13 (#$ . 66274) (byte-code "\204    \204\302\303\304\211\305$\306\307\310\"D\207    \311 D\207" [current-prefix-arg buffer-file-name read-file-name "Browse file: " nil t read-number "Line: " 1 line-number-at-pos] 5)])
#@75 Move to the next (newer) mark in the tag marker ring.
 
(fn &optional ARG)
(defalias 'ggtags-next-mark #[256 "\302!\203\n\303\304!\210\211\203\305\202\306    \206\307 \210\310\311!\"\312    \"\311!    Z\313\314\315\316\"\211\317\267\202B\320\202C\321\202C\322\202C\323\262\324!\203P\325\202Q\326$\210\324!\204^\327 \202f\330\324!!\210b\207" [xref--marker-ring ggtags-tag-ring-index ring-empty-p user-error "Tag ring empty" ring-plus1 ring-minus1 xref-push-marker-stack 0 ring-length ring-ref ggtags-echo "%d%s marker%s" mod 10 #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (1 54 2 58 3 62)) "st" "nd" "rd" "th" marker-buffer "" " (dead)" ding switch-to-buffer] 9 (#$ . 68042) nil])
#@59 Move to the previous (older) mark in the tag marker ring.
(defalias 'ggtags-prev-mark #[0 "\300\301!\207" [ggtags-next-mark previous] 2 (#$ . 68787) nil])
(defvar ggtags-view-tag-history-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\211\207" [make-sparse-keymap define-key "\356" next-error-no-select "\360" previous-error-no-select "q" ggtags-kill-window] 5))
(defvar ggtags-view-tag-history-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [ggtags-view-tag-history-mode-hook variable-documentation put "Hook run after entering TagHist mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp ggtags-view-tag-history-mode-map definition-name ggtags-view-tag-history-mode] 4)
(defvar ggtags-view-tag-history-mode-map (make-sparse-keymap))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\311\312 !\210\306\301N\204-\302\306\301\303\313!#\210\302\310\314\315#\210\302\310\316\317#\207" [ggtags-view-tag-history-mode-map variable-documentation put purecopy "Keymap for `ggtags-view-tag-history-mode'." boundp ggtags-view-tag-history-mode-syntax-table definition-name ggtags-view-tag-history-mode (lambda (#1=#:def-tmp-var) (defvar ggtags-view-tag-history-mode-syntax-table #1#)) make-syntax-table "Syntax table for `ggtags-view-tag-history-mode'." derived-mode-parent tabulated-list-mode custom-mode-group ggtags] 5)
#@527 Major mode derived from `tabulated-list-mode' by `define-derived-mode'.
It inherits all of the parent's attributes, but has its own keymap
and syntax table:
 
  `ggtags-view-tag-history-mode-map' and `ggtags-view-tag-history-mode-syntax-table'
 
which more-or-less shadow tabulated-list-mode's corresponding tables.
 
In addition to any hooks its parent mode might have run,
this mode runs the hook `ggtags-view-tag-history-mode-hook', as the final or penultimate step
during initialization.
 
\{ggtags-view-tag-history-mode-map}
(defalias 'ggtags-view-tag-history-mode #[0 "\305\300!\210\306\307 \210\310\311\307\312N\203\313\310\312\307\312N#\210\314 !\204'\315 \316 \"\210\317\f!\211\2035\211\320 =\203;\321\f\322 \"\210\210\323 !\210\324\f!\210)\325\326!\207" [delay-mode-hooks major-mode mode-name ggtags-view-tag-history-mode-map ggtags-view-tag-history-mode-syntax-table make-local-variable t tabulated-list-mode ggtags-view-tag-history-mode "TagHist" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table use-local-map set-syntax-table run-mode-hooks ggtags-view-tag-history-mode-hook] 5 (#$ . 70331) nil])
#@205 Pop to a buffer listing visited locations from newest to oldest.
The buffer is a next error buffer and works with standard
commands `next-error' and `previous-error'.
 
\{ggtags-view-tag-history-mode-map}
(defalias 'ggtags-view-tag-history #[0 "\306!\203\n\307\310!\210    \311\312\313!\210\314 \210\315 \210\316p\317\320\321 \210\322\323\324\325 \326\"\"*\207" [xref--marker-ring ggtags-split-window-function inhibit-read-only split-window-preferred-function next-error-function next-error-last-buffer ring-empty-p user-error "Tag ring empty" t pop-to-buffer "*Tag Ring*" erase-buffer ggtags-view-tag-history-mode ggtags-view-tag-history-next-error #[0 "\302!C\303!\206 \304\305!\306\307\310\311\312\313\314\242\315\"!T\316]\317BB\320\321\211\211:\203P@\262\322!\262\205;\323!G\203F]\202G\211\266\202A\262\202&\266\203\324]\325BB\326\321\211\211:\203\212@\262\327!\206m\330\262\313\314\315\"!T\203\200]\202\201\211\266\202A\262\202]\266\203\331]\332BB\333BBB\"\334 \210\335\336\337\340\341\311    #\342\"\343\344%\"\207" [xref--marker-ring tabulated-list-format ring-length ring-elements user-error "Tag ring empty" #[257 "\300\301!\207" [next-error 0] 3 "\n\n(fn BUTTON)"] #[257 "r\300!q\210\212\211b\210\301 \302 {*\207" [marker-buffer line-beginning-position line-end-position] 3 "\n\n(fn M)"] apply vector "ID" floor log 10 2 (car-less-than-car) "Buffer" nil marker-buffer buffer-name 6 (t :right-align t) "Position" marker-position 1 8 ((lambda (x y) (< (string-to-number (aref (cadr x) 2)) (string-to-number (aref (cadr y) 2)))) :right-align t) (("Contents" 100 t)) tabulated-list-init-header mapcar make-byte-code 257 "\300\242\303!\203+\304\305\300\242!\306\303!!\307\310\311\312\313    \314\301\257    \305\315!!\302!$\2024\304\305\300\242!\316\317\211$D\300\211\242S\240\210\207" vconcat [marker-buffer vector number-to-string buffer-name face link follow-link t marker action marker-position "(dead)" "?"] 13 "\n\n(fn X)"] 17] ("ID" . t) tabulated-list-print fit-window-to-buffer nil floor frame-height 2 tabulated-list-entries tabulated-list-sort-key] 5 (#$ . 71543) nil])
#@28 
 
(fn &optional ARG RESET)
(defalias 'ggtags-view-tag-history-next-error #[512 "\211\204 \300!\210\202eb\210\300\301`!\203\302\202\303!\210\304 \203'\305\304 `\"\210\306\301`!\307\"\310!\203T\211\304 \311 =\203E\312\313!!\210\202K\314\313!!\210\315!b\262\202W\316\317!\207" [forward-button button-at 0 1 get-buffer-window set-window-point button-get marker markerp selected-window pop-to-buffer marker-buffer switch-to-buffer marker-position error "Dead marker"] 7 (#$ . 73691)])
#@44 Get the total of matches and db file used.
(defalias 'ggtags-global-exit-message-1 #[0 "\212db\210\300\301\302\303#\2035\304\305!\203\306\202\307\304\310!!\311\312\313 \303#\2051\304\305!\203.\314\2021\304\310!B\2028\306\302B)\207" [re-search-backward "^\\w+ \\(not found\\)\\|^\\([0-9]+\\) \\w+ located" nil t match-string 1 0 string-to-number 2 re-search-forward "using \\(?:\\(idutils\\)\\|'[^']*/\\(\\w+\\)'\\)" line-end-position "ID"] 5 (#$ . 74195)])
#@90 A function for `compilation-exit-message-function'.
 
(fn PROCESS-STATUS EXIT-STATUS MSG)
(defalias 'ggtags-global-exit-message-function #[771 "\303 \211:\205b\211@A\211E\211\304U\203%\305    !\203%\n\204%\306\304V\2030\202[\307\310\211\311U\203=\312\202>\313\314\267\202X\315\202Y\316\202Y\317\202Y\320\202Y\321\202Y\322!#B\266\202\266\202\207" [ggtags-global-exit-info ggtags-global-start-marker ggtags-global-continuation ggtags-global-exit-message-1 0 markerp nil format "found %d %s" 1 car cadr #s(hash-table size 5 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("GTAGS" 68 "GSYMS" 72 "GRTAGS" 76 "GPATH" 80 "ID" 84)) ("definition" "definitions") ("symbol" "symbols") ("reference" "references") ("file" "files") ("identifier" "identifiers") ("match" "matches")] 14 (#$ . 74667)])
#@14 
 
(fn START)
(defalias 'ggtags-global-column #[257 "\300\301 \302\303$\211\205\211Z\207" [text-property-any line-end-position global-color t] 6 (#$ . 75504)])
(defvar ggtags-global-error-regexp-alist-alist (byte-code "\301\302\303\304\305\306\307\310C\311BBBBB\312\313\314\307\315C\316BBBBB\317BBBB\"\207" [compilation-error-regexp-alist-alist append (path "^\\(?:[^\"'\n]*/\\)?[^ )    \n]+$" 0) (ctags "^\\([^     \n]+\\)[     ]+\\(.*?\\)[     ]+\\([0-9]+\\)$" 2 3 nil nil 2 (1 font-lock-function-name-face)) ctags-x "^\\([^     \n]+\\)[     ]+\\([0-9]+\\)[     ]+\\(\\(?:[^/\n]*/\\)?[^     \n]+\\)" 3 2 #[0 "\300\301\225T!\207" [ggtags-global-column 0] 2] (nil 3 (1 font-lock-function-name-face)) grep "^\\(.+?\\):\\([0-9]+\\):\\(?:$\\|[^0-9\n]\\|[0-9][^0-9\n]\\|[0-9][0-9].\\)" 1 #[0 "\300\301\225T!\207" [ggtags-global-column 2] 2] (nil 1) ((cscope "^\\(.+?\\)[     ]+\\([^     \n]+\\)[     ]+\\([0-9]+\\).*\\(?:[^0-9\n]\\|[^0-9\n][0-9]\\|[^:\n][0-9][0-9]\\)$" 1 3 nil nil 1 (2 font-lock-function-name-face)))] 10))
#@18 
 
(fn START END)
(defalias 'ggtags-abbreviate-file #[514 "\302\247\203ZZ\202\303\304b\210\305V\205.`V\205.\"Z\262\202)\207" [ggtags-global-abbreviate-filename inhibit-read-only t 999 #[514 "\211\300v\210`^\301v\210`]b\210Z\300X\203\302\202'\303T\304\305$\210ZS\207" [1 -1 0 put-text-property invisible t] 9 "Return the length of the text made invisible.\n\n(fn START END)"] 0] 9 (#$ . 76502)])
#@18 
 
(fn START END)
(defalias 'ggtags-abbreviate-files #[514 "b\210@    \236A\211A@\n\205<\205<\303@\304#\205<\n\247\203*\305!G\nV\203\306\224\307\"\203\310\224\225\"\210\202\207" [compilation-error-regexp-alist ggtags-global-error-regexp-alist-alist ggtags-global-abbreviate-filename re-search-forward t match-string get-text-property compilation-message ggtags-abbreviate-file] 8 (#$ . 76937)])
(defvar ggtags-global-output-lines 0 nil)
(make-variable-buffer-local 'ggtags-global-output-lines)
#@39 
 
(fn &optional BUFFER DESIRED-POINT)
(defalias 'ggtags-global--display-buffer #[512 "\206p\302!?\205\303\304\")\262\305!\205A\211\306!r\307\310\311\312\313!\314\"\315$\216\316@\317\"\210\320!\210\205<b*\262\262\207" [ggtags-split-window-function split-window-preferred-function get-buffer-window display-buffer (nil (allow-no-window . t)) windowp internal--before-with-selected-window make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord compilation-set-window-height] 11 (#$ . 77452)])
#@52 Called from `compilation-filter-hook' (which see).
(defalias 'ggtags-global-filter #[0 "\306\307    `\"\210)\310\311    \312#\203\313\314!\210\n\315    `\"\\\211\316V\203. \203.\317\320\f\206,e\"\210 \321=\203\271\247\203\271\f\204\271\322\n\\V\203\271\323d!V\203\271\324!\210\325\326!\210\320\320C\325\327!\210\320\330\327\331\332\333\334\335!\336\"\337\340%\320\312$\210\331\341\342\334\335\"\343\"\344$\216 \203\222\345C\202\22411\3461\246\3122\347p`\")0\202\255\210\350\351!\210\352 \210*\266\353\341\320\354p`%\210\325\355!\210\n-V\205\316-\356\\-\357\360\n\"\207" [ansi-color-apply-face-function compilation-filter-start ggtags-global-output-lines ggtags-navigation-mode compilation-current-error ggtags-auto-jump-to-match #[771 "\211\205\300#\210\301\302\303$\207" [ansi-color-apply-overlay-face put-text-property global-color t] 8 "\n\n(fn BEG END FACE)"] ansi-color-apply-on-region re-search-backward "^ *Using \\(?:config file '.*\\|default configuration.\\)\n" t replace-match "" count-lines 30 ggtags-global--display-buffer nil history 10 line-number-at-pos ggtags-forward-to-line make-local-variable ggtags-auto-jump-to-match-target compilation-finish-functions add-hook make-byte-code 128 "\300\240\207" vconcat vector [] 3 "\n\n(fn &rest ARGS)" 0 "\303\302!\210\300\301\242\205\304\305\302\301\242#\207" [compilation-finish-functions make-local-variable apply run-hook-with-args] 4 display-buffer-no-window (error) compilation-auto-jump message "ggtags: history match invalid, jump to first match instead" first-error run-with-idle-timer #[514 "\300!\205 rq\210\211b)\207" [buffer-live-p] 4 "\n\n(fn BUF PT)"] ggtags-global-large-output 500 ggtags-echo "Output %d lines (Type `C-c C-k' to cancel)" display-buffer-overriding-action compilation-auto-jump-to-first-error] 11 (#$ . 78026)])
#@74 A function for `compilation-finish-functions' (which see).
 
(fn BUF HOW)
(defalias 'ggtags-global-handle-exit #[514 "\203\f\306\211\"\207\307\310\"\203-\311 \210\212db\210\312\313\306\314#)\205m\315\316    \"\210\317    \n\"\207 \205m\320e\321\"\211\205H\211\320\212b\210\306\210`)\321\"\262\262\203T\f\205m\311 \207\322\323 \324\325$\211\203d\211\326!\266\210\304\327!\210\330\314\"\207" [ggtags-global-continuation ggtags-project-root ggtags-projects ggtags-auto-jump-to-match ggtags-navigation-mode timer-list nil string-prefix-p "exited abnormally" ggtags-global--display-buffer re-search-backward "^global: \\(?:G\\(?:PATH\\|\\(?:RTAG\\|SYM\\|TAG\\)S\\)\\) not found.$" t ggtags-echo "WARNING: Global tag files missing in `%s'" remhash compilation-next-single-property-change compilation-message cl-find compilation-auto-jump :key timer--function timer-event-handler -1 ggtags-navigation-mode-cleanup] 7 (#$ . 79883)])
(defvar ggtags-global-mode-font-lock-keywords '(("^Global \\(exited abnormally\\|interrupt\\|killed\\|terminated\\)\\(?:.*with code \\([0-9]+\\)\\)?.*" (1 'compilation-error) (2 'compilation-error nil t)) ("^Global found \\([0-9]+\\)" (1 compilation-info-face))))
(defvar ggtags-global-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [ggtags-global-mode-hook variable-documentation put "Hook run after entering Global mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp ggtags-global-mode-map definition-name ggtags-global-mode] 4)
(defvar ggtags-global-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\207" [ggtags-global-mode-abbrev-table ggtags-global-mode-map variable-documentation put purecopy "Keymap for `ggtags-global-mode'." boundp ggtags-global-mode-syntax-table definition-name ggtags-global-mode (lambda (#1=#:def-tmp-var) (defvar ggtags-global-mode-syntax-table #1#)) make-syntax-table "Syntax table for `ggtags-global-mode'." (lambda (#1#) (defvar ggtags-global-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `ggtags-global-mode'." derived-mode-parent compilation-mode] 5)
#@256 A mode for showing outputs from gnu global.
 
In addition to any hooks its parent mode `compilation-mode' might have run,
this mode runs the hook `ggtags-global-mode-hook', as the final or penultimate step
during initialization.
 
\{ggtags-global-mode-map}
(defalias 'ggtags-global-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315 !\204'\316 \317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324 \325\"\204R @=\204R\326 \325@C#\210\327 !\210\330\f!\210 @\306\331!\210A\306\332!\210B\306\333!\210C\306\334!\210D\306\335!\210EC\336F!\203\226\337\340\341F!\" G\342=\203\255\306\343!\210\306\344!\210#?$\202\303G\204\274\306\344!\210\345$\202\303\306\344!\210\307$\306\346!\210\345&\306\347!\210\350'\306\351!\210\345)\306\352!\210\307*\306\353!\210\307+\306\354!\210\355,\306\356!\210\357.\306\360!\210\3070\306\361!\210\3071\362\363!\210\364\365\366\345\367$\210\364\370\371\345\307$\210\306\372!\210\373:\306\374!\210\345<\364\375\376\345\307$\210)\377\201H!\207" [delay-mode-hooks major-mode mode-name ggtags-global-mode-map ggtags-global-mode-syntax-table ggtags-global-mode-abbrev-table make-local-variable t compilation-mode ggtags-global-mode "Global" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table compilation-error compilation-error-regexp-alist-alist compilation-mode-font-lock-keywords compilation-window-height compilation-error-regexp-alist markerp buffer-local-value ggtags-project-root marker-buffer history ggtags-auto-jump-to-match-target compilation-auto-jump-to-first-error nil compilation-scroll-output compilation-first-column 0 compilation-error-screen-columns compilation-disable-input compilation-always-kill compilation-error-face compilation-info compilation-exit-message-function ggtags-global-exit-message-function find-file-suppress-same-file-warnings truncate-lines jit-lock-register ggtags-abbreviate-files add-hook compilation-filter-hook ggtags-global-filter local compilation-finish-functions ggtags-global-handle-exit bookmark-make-record-function ggtags-make-bookmark-record ggtags-enable-navigation-keys kill-buffer-hook #[0 "\300\301!\207" [ggtags-navigation-mode -1] 2] run-mode-hooks local-abbrev-table ggtags-global-error ggtags-global-error-regexp-alist-alist ggtags-global-mode-font-lock-keywords ggtags-global-window-height ggtags-global-output-format ggtags-global-start-marker ggtags-auto-jump-to-match ggtags-global-mode-hook] 5 (#$ . 82336) nil])
(defvar ggtags-navigation-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\321#\210\301\323\324#\210\301\325\326#\210\301\327\330#\210\301\331\330#\210\301\332\333#\210\211\207" [make-sparse-keymap define-key "\356" next-error "\360" previous-error "\375" ggtags-navigation-next-file "\373" ggtags-navigation-previous-file "\275" ggtags-navigation-start-file "\276" ggtags-navigation-last-error "\274" first-error "\223" ggtags-navigation-isearch-forward "\363s" " " #[0 "\301!\203rq\210\302\303!)\204\304\305!\210rq\210\306 )\207" [ggtags-global-last-buffer buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" kill-compilation] 2 nil nil] "\357" ggtags-navigation-visible-mode [return] ggtags-navigation-mode-done " " [remap xref-pop-marker-stack] ggtags-navigation-mode-abort] 5))
(defvar ggtags-mode-map-alist (byte-code "\301BC\207" [ggtags-navigation-map ggtags-enable-navigation-keys] 2))
(defvar ggtags-navigation-mode-map (byte-code "\300 \300\301!\302\303\301B#\210\302\304\305#\210\302\306\307#\210\302\310\311#\210\302\312\313#\210\302\314\315#\210\302\316\317#\210\302\320\321#\210\302\322\323#\210\302\324\325#\210\302\326\327#\210\207" [make-sparse-keymap "GG-Navigation" define-key [menu-bar ggtags-navigation] [visible-mode] (menu-item "Visible mode" ggtags-navigation-visible-mode :button (:toggle ignore-errors (ggtags-ensure-global-buffer visible-mode))) [done] (menu-item "Finish navigation" ggtags-navigation-mode-done) [abort] (menu-item "Abort" ggtags-navigation-mode-abort) [last-match] (menu-item "Last match" ggtags-navigation-last-error) [first-match] (menu-item "First match" first-error) [previous-file] (menu-item "Previous file" ggtags-navigation-previous-file) [next-file] (menu-item "Next file" ggtags-navigation-next-file) [isearch-forward] (menu-item "Find match with isearch" ggtags-navigation-isearch-forward) [previous] (menu-item "Previous match" previous-error) [next] (menu-item "Next match" next-error)] 7))
#@56 Move to NAME tag in current line.
 
(fn &optional NAME)
(defalias 'ggtags-move-to-tag #[256 "\211\206\211?\206\301\302!\303P!?\205\\`\304\305\306\307\310\311!\312\"\313\314%\315\"\316 \210\211\317\320\317:\203M@\262\321\322 \320#\211\262?\211\262\203MA\262\202-\266\203\203X\323\224b\202Zb\266\202\207" [ggtags-current-tag-name looking-at regexp-quote "\\_>" mapcar make-byte-code 257 "\301\302\300!\"\207" vconcat vector [format regexp-quote] 5 "\n\n(fn FMTSTR)" ("\\_<%s\\_>" "%s\\_>" "%s") beginning-of-line nil t re-search-forward line-end-position 0] 12 (#$ . 87136)])
#@27 
 
(fn &optional BUF KILL)
(defalias 'ggtags-navigation-mode-cleanup #[512 "\206\301!\205/r\211q\210\302p!\203\303 \210\304\305!\203'\306 \203'\307p!\210\205.\310!)\207" [ggtags-global-last-buffer buffer-live-p get-buffer-process kill-compilation derived-mode-p ggtags-global-mode get-buffer-window quit-windows-on kill-buffer] 5 (#$ . 87739)])
(defalias 'ggtags-navigation-mode-done #[0 "\302\303!\210\304\305\306 \207" [tags-loop-scan tags-loop-operate ggtags-navigation-mode -1 t (ggtags-find-tag-continue) ggtags-navigation-mode-cleanup] 2 nil nil])
#@62 Abort navigation and return to where the search was started.
(defalias 'ggtags-navigation-mode-abort #[0 "\301\302!\210\303\304\305\"\210\205\306!?\205\304\307 \207" [ggtags-global-start-marker ggtags-navigation-mode -1 ggtags-navigation-mode-cleanup nil t markerp xref-pop-marker-stack] 3 (#$ . 88313) nil])
#@10 
 
(fn N)
(defalias 'ggtags-navigation-next-file #[257 "\301!\203rq\210\302\303!)\204\304\305!\210rq\210\306!\210\307 )\207" [ggtags-global-last-buffer buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" compilation-next-file compile-goto-error] 3 (#$ . 88635) "p"])
#@10 
 
(fn N)
(defalias 'ggtags-navigation-previous-file #[257 "\300[!\207" [ggtags-navigation-next-file] 3 (#$ . 88942) "p"])
#@51 Move to the file where navigation session starts.
(defalias 'ggtags-navigation-start-file #[0 "\206\302\303!\304    !\203r    q\210\305\306!)\204\307\310!\210r    q\210\31124\312\313\314\315\316\317!\320\"\321\322%!0\211\204?\302\323\"\202G\211\211b\210\324 \262\262)\207" [ggtags-global-start-file ggtags-global-last-buffer user-error "Cannot decide start file" buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" --cl-block-nil-- ggtags-foreach-file make-byte-code 257 "\301\300\"\205 \302\303`\"\207" vconcat vector [file-equal-p throw --cl-block-nil--] 4 "\n\n(fn FILE)" "No matches for `%s'" compile-goto-error] 8 (#$ . 89071) nil])
(defalias 'ggtags-navigation-last-error #[0 "\301!\203rq\210\302\303!)\204\304\305!\210rq\210db\210\306\307!\210\310 )\207" [ggtags-global-last-buffer buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" compilation-previous-error 1 compile-goto-error] 2 nil nil])
#@27 
 
(fn &optional REGEXP-P)
(defalias 'ggtags-navigation-isearch-forward #[256 "\302!\203rq\210\303\304!)\204\305\306!\210rq\210    \203!\307\202\"\310\301\307!\210\311\312p!!r\313\314\315\316\317!\320\"\321$\216\322@\323\"\210\324!\210\325 \210\301!\210\326 *\262\262)\207" [ggtags-global-last-buffer visible-mode buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" 1 -1 internal--before-with-selected-window get-buffer-window make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord isearch-forward beginning-of-line compile-goto-error] 9 (#$ . 90048) "P"])
#@22 
 
(fn &optional ARG)
(defalias 'ggtags-navigation-visible-mode #[256 "\301!\203rq\210\302\303!)\204\304\305!\210rq\210\306!)\207" [ggtags-global-last-buffer buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" visible-mode] 3 (#$ . 90706) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar ggtags-global-line-overlay nil)
(defalias 'ggtags-global-next-error-function #[0 "    =\205\201\306 \210\307 \210\310 \203\311\312\313\n!\"\210 \203 \314\315!\210\3161y\317    !\2035r    q\210\320\321!)\2049\322\323!\210r    q\210\324\f!\204N\325``\"\326\f\327\330#\210\331\f\332 \333 p$\210\334 @'\"\335#\336\337\340\341&#\342\343\344 B(#\262)0\202}\210\202~\210\345\346!\207" [next-error-last-buffer ggtags-global-last-buffer buffer-file-name ggtags-mode-sticky ggtags-global-line-overlay compilation-arguments ggtags-move-to-tag ggtags-global-save-start-marker ggtags-project-update-mtime-maybe message "File `%s' is newer than GTAGS" file-name-nondirectory ggtags-mode 1 (error) buffer-live-p derived-mode-p ggtags-global-mode error "No global buffer found" overlayp make-overlay overlay-put face ggtags-global-line move-overlay line-beginning-position line-end-position ggtags-global-search-id cl-remove :test equal :key car add-to-history ggtags-global-search-history ggtags-global-current-search run-hooks ggtags-find-tag-hook default-directory ggtags-global-history-length] 8])
(put 'ggtags-navigation-mode-lighter 'risky-local-variable t)
#@64 Ligher for `ggtags-navigation-mode'; set to nil to disable it.
(defvar ggtags-navigation-mode-lighter '(" GG[" (:eval (if (not (buffer-live-p ggtags-global-last-buffer)) '(:propertize "??" face error help-echo "No Global buffer") (with-current-buffer ggtags-global-last-buffer (pcase (or ggtags-global-exit-info '(0 0 "")) (`(,exit ,count ,db) `((:propertize ,(pcase db (`"GTAGS" "D") (`"GRTAGS" "R") (`"GSYMS" "S") (`"GPATH" "F") (`"ID" "I")) face success) (:propertize ,(pcase (get-text-property (line-beginning-position) 'compilation-message) (`nil "?") (_ (number-to-string (- (line-number-at-pos) 4)))) face success) "/" (:propertize ,(number-to-string count) face success) ,(unless (zerop exit) `(":" (:propertize ,(number-to-string exit) face error))))))))) "]") (#$ . 92212))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313\314\315& \207" [custom-declare-variable ggtags-navigation-mode funcall function #[0 "\300\207" [nil] 1] "Non-nil if Ggtags-Navigation mode is enabled.\nSee the `ggtags-navigation-mode' command\nfor a description of this minor mode.\nSetting this variable directly does not take effect;\neither customize it (see the info node `Easy Customization')\nor call the function `ggtags-navigation-mode'." :set custom-set-minor-mode :initialize custom-initialize-default :group ggtags-navigation :type boolean] 12)
#@294 Toggle Ggtags-Navigation mode on or off.
With a prefix argument ARG, enable Ggtags-Navigation mode if ARG is
positive, and disable it otherwise.  If called from Lisp, enable
the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'.
\{ggtags-navigation-mode-map}
 
(fn &optional ARG)
(defalias 'ggtags-navigation-mode #[256 "\302 \303\300\304=\203\305\300!?\202\306!\307V\"\210\203.\310\301\311\"\210\312\313\314\"\210\312\315\316\"\210\202=\317\311    \"\320\313\314\"\210\320\315\316\"\210\321\322\305\300!\203I\323\202J\324\"\210\325\326!\203t\327\300!\210\302 \203b\211\302 \232\203t\330\331\332\305\300!\203o\333\202p\334#\266\210\335 \210\305\300!\207" [ggtags-navigation-mode emulation-mode-map-alists current-message set-default toggle default-value prefix-numeric-value 0 add-to-list ggtags-mode-map-alist add-hook next-error-hook ggtags-global-next-error-function minibuffer-setup-hook ggtags-minibuffer-setup-function delq remove-hook run-hooks ggtags-navigation-mode-hook ggtags-navigation-mode-on-hook ggtags-navigation-mode-off-hook called-interactively-p any customize-mark-as-set "" message "Ggtags-Navigation mode %sabled%s" "en" "dis" force-mode-line-update] 7 (#$ . 93572) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar ggtags-navigation-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\311\211%\207" [ggtags-navigation-mode-map ggtags-navigation-mode-hook variable-documentation put "Hook run after entering or leaving `ggtags-navigation-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode ggtags-navigation-mode (:eval (and (or ggtags-enable-navigation-keys ggtags-mode) ggtags-navigation-mode-lighter)) boundp nil] 6)
(defalias 'ggtags-minibuffer-setup-function #[0 "\301\300!\210\302\211\207" [ggtags-enable-navigation-keys make-local-variable nil] 2])
#@81 Kill all buffers visiting files in current project.
 
(fn &optional INTERACTIVE)
(defalias 'ggtags-kill-file-buffers #[256 "\300 \210\301 \302 B\303\304 \211\203K\211@\305!\205!\211p=?\205!\306!\211\203C\307\310\311\312\313\314!\315\"\316\317%\"\203C\320!\203CT\262\210A\266\202\202 \210\205_\321\322\211\323U\203]\324\202^\325#\207" [ggtags-check-project ggtags-current-project-root ggtags-get-libpath 0 buffer-list buffer-live-p buffer-file-name cl-some make-byte-code 257 "\301\300\"\207" vconcat vector [string-prefix-p] 4 "\n\n(fn DIR)" kill-buffer message "%d %s killed" 1 "buffer" "buffers"] 13 (#$ . 95546) "p"])
(defalias 'ggtags-after-save-function #[0 "\302 \205\303 \210\205    \205\304\305\"\207" [buffer-file-name ggtags-update-on-save ggtags-find-project ggtags-project-update-mtime-maybe ggtags-update-tags-single nowait] 3])
#@236 Asynchronously pipe the output of running CMDS to BUFFER.
When finished invoke CALLBACK in BUFFER with process exit status.
If SYNC is non-nil, synchronously run CMDS and call CALLBACK.
 
(fn BUFFER CMDS CALLBACK &optional CUTOFF SYNC)
(defalias 'ggtags-global-output #[1283 "\204\300\301!\210\302\303!!\203\"\304\305\302!#\210\306\302!!\210@A\205@\303!\203>rq\210\307d!)\202?\310\\\311\312\n%\313\314\315\316\317!\320\"\321\322%\313\314\323\316\317\f!\324\"\325\326%\327\330\"\210\203r\331\"\210\332\"\210\333\334\330#\210\333\335\310#\210\203\230\336\334\"?\205\231\337\340\"\210\202\210\207" [error "Output buffer required" get-buffer-process get-buffer message "Warning: detected %S already running in %S; interrupting..." interrupt-process line-number-at-pos 0 apply start-file-process make-byte-code 514 "\301\302!!\205Br\302!q\210\303!b\210\211c\210\304\305\306\305\"\307\303!`\"\\#\266\303!`\310\223\210\311d!\300V\205A\312!\205A\313p!)\207" vconcat vector [buffer-live-p process-buffer process-mark process-put :nlines process-get count-lines nil line-number-at-pos process-live-p interrupt-process] 10 "\n\n(fn PROC STRING)" "\301!\302>\205&r\303!q\210\304\305\"\210\306\307\310\311\312!\313\"\314$\216\300\315!!*\207" [process-status (exit signal) process-buffer set-process-buffer nil make-byte-code 0 "\301\300\302\303#\207" vconcat vector [process-put :callback-done t] 4 process-exit-status] 8 "\n\n(fn PROC MSG)" set-process-query-on-exit-flag nil set-process-filter set-process-sentinel process-put :callback-done :nlines process-get accept-process-output 1] 16 (#$ . 96422)])
#@41 
 
(fn CODE &optional (MODE major-mode))
(defalias 'ggtags-fontify-code #[385 "\211\203 \211A\262\242\202\203\301\302\303\304G\\D\"\210\305!\204*\301\306\307\310E\"\210;\203S\311\312!r\211q\210\313\314\315\316\317!\320\"\304$\216c\210 \210\321 \210\322 *\262\202T\207" [major-mode signal wrong-number-of-arguments ggtags-fontify-code 2 functionp wrong-type-argument function mode generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] font-lock-ensure buffer-string] 10 (#$ . 98091)])
#@13 
 
(fn DEFS)
(defalias 'ggtags-get-definition-default #[257 "\211@@\205\300@@!A\205\301P\207" [ggtags-fontify-code " [guess]"] 3 (#$ . 98666)])
#@13 
 
(fn NAME)
(defalias 'ggtags-show-definition #[257 "\306 \210\307\236A@p\310\311!\312\313E    \n\314\315\316\317\320    \n\n&\321\"\322\323% \324 \2056\325\326\327 !!\330\331\f!\203D\332\333\"\210\334\335 \")\f\205R\336PC\324 \205t\324 \211\337H.>\204i\340\341\342D\"\210\211\343H\262?\205t\344C$\314\337\345\317\320!\346\"\347$\216r\350\351\352!\353 \203\226\354    B\202\230B\355$+\266\202\207" [ggtags-global-error-regexp-alist-alist ggtags-get-definition-function ggtags-print-definition-function ggtags-project-root process-environment ggtags-process-environment ggtags-check-project grep get-buffer-create " *ggtags-definition*" "--result=grep" "--path-style=absolute" make-byte-code 257 "eb\210\306\307\301\306\310#\203$\311\312\225T\313 \"\300\314\315!\316\314\312!!FB\262\202\211\237\262\317\303!\210r\302q\210\305\304!!)\207" vconcat vector [nil re-search-forward t buffer-substring-no-properties 2 line-end-position match-string 1 string-to-number kill-buffer] 8 "\n\n(fn STATUS)" ggtags-find-project ggtags-ensure-localname directory-file-name ggtags-current-project-root append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" 0 signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" "\300\211\207" [ggtags-project-root] 2 ggtags-global-output ggtags-program-path "global" ggtags-sort-by-nearness-p "--nearness=." 100 cl-struct-ggtags-project-tags] 19 (#$ . 98821) (byte-code "\301\302\"C\207" [current-prefix-arg ggtags-read-tag definition] 3)])
(defvar ggtags-mode-prefix-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\210\301\330\331#\210\301\332\333#\210\301\334\335#\210\301\336\337#\210\211\207" [make-sparse-keymap define-key [134217855] ggtags-delete-tags "\360" ggtags-prev-mark "\356" ggtags-next-mark "\346" ggtags-find-file "\357" ggtags-find-other-symbol "\347" ggtags-grep "\351" ggtags-idutils-query "\342" ggtags-browse-file-as-hypertext "\353" ggtags-kill-file-buffers "\350" ggtags-view-tag-history "\352" ggtags-visit-project-root "\257" ggtags-view-search-history [134217760] ggtags-save-to-register [134217765] ggtags-query-replace "\277" ggtags-show-definition] 5))
(defvar ggtags-mode-map (byte-code "\304 \304\305!\306\307\310#\210\306\311\312#\210\306\313\314#\210\306    #\210\306\315\305B#\210\306\316\317\320\321\322\323\324\n\"\257#\210\306\325\326#\210\306\327\330#\210\306\331\332#\210\306\333\334#\210\306\335\336#\210\306\337 #\210\306\340\341#\210\306\342\343#\210\306\344\345#\210\306\346\347#\210\306\350\351#\210\306\352\353#\210\306\354\355#\210\306\356 #\210\306\357\360#\210\306\361\362#\210\306\363\364#\210\306\365\366#\210\306\367\370#\210\306\371\372#\210\306\373\374#\210\306\375\376#\210\306\377\201@#\210\306\201A\201B#\210\306\201C\201D#\210\306\201E\201F#\210\306\201G\201H#\210\306\201I\201J#\210\306\201K\201L#\210\306\201M\201N#\210\207" [ggtags-mode-prefix-key ggtags-mode-prefix-map ggtags-bug-url menu-bar-separator make-sparse-keymap "Ggtags" define-key "\256" ggtags-find-tag-dwim [134217821] ggtags-find-reference [201326638] ggtags-find-tag-regexp [menu-bar ggtags] [report-bugs] menu-item "Report bugs" (lambda nil (interactive) (browse-url ggtags-bug-url) (message "Please visit %s" ggtags-bug-url)) :help format "Visit %s" [custom-ggtags] (menu-item "Customize Ggtags" (lambda nil (interactive) (customize-group 'ggtags))) [eldoc-mode] (menu-item "Toggle eldoc mode" eldoc-mode :button (:toggle . eldoc-mode)) [save-project] (menu-item "Save project settings" ggtags-save-project-settings) [toggle-read-only] (menu-item "Toggle project read-only" ggtags-toggle-project-read-only :button (:toggle . buffer-read-only)) [visit-project-root] (menu-item "Visit project root" ggtags-visit-project-root) [sep2] [browse-hypertext] (menu-item "Browse as hypertext" ggtags-browse-file-as-hypertext :enable (ggtags-find-project)) [delete-tags] (menu-item "Delete tags" ggtags-delete-tags :enable (ggtags-find-project) :help "Delete file GTAGS, GRTAGS, GPATH, ID etc.") [kill-buffers] (menu-item "Kill project file buffers" ggtags-kill-file-buffers :enable (ggtags-find-project)) [view-tag] (menu-item "View tag history" ggtags-view-tag-history) [pop-mark] (menu-item "Pop mark" xref-pop-marker-stack :help "Pop to previous mark and destroy it") [next-mark] (menu-item "Next mark" ggtags-next-mark) [prev-mark] (menu-item "Previous mark" ggtags-prev-mark) [sep1] [previous-error] (menu-item "Previous match" previous-error) [next-error] (menu-item "Next match" next-error) [rerun-search] (menu-item "View past searches" ggtags-view-search-history) [save-to-register] (menu-item "Save search to register" ggtags-save-to-register) [find-file] (menu-item "Find files" ggtags-find-file) [query-replace] (menu-item "Query replace" ggtags-query-replace) [idutils] (menu-item "Query idutils DB" ggtags-idutils-query) [grep] (menu-item "Grep" ggtags-grep) [find-symbol] (menu-item "Find other symbol" ggtags-find-other-symbol :help "Find references without definition") [find-tag-regexp] (menu-item "Find tag matching regexp" ggtags-find-tag-regexp) [show-definition] (menu-item "Show definition" ggtags-show-definition) [find-reference] (menu-item "Find reference" ggtags-find-reference) [find-tag-continue] (menu-item "Continue find tag" tags-loop-continue) [find-tag] (menu-item "Find tag" ggtags-find-tag-dwim) [update-tags] (menu-item "Update tag files" ggtags-update-tags :visible (ggtags-find-project)) [run-gtags] (menu-item "Run gtags" ggtags-create-tags :visible (not (ggtags-find-project)))] 12))
(defvar ggtags-mode-line-project-keymap (byte-code "\300 \301\302\303#\210\211\207" [make-sparse-keymap define-key [mode-line mouse-1] ggtags-visit-project-root] 5))
(put 'ggtags-mode-line-project-name 'risky-local-variable t)
#@167 Mode line construct for displaying current project name.
The value is the name of the project root directory. Setting it
to nil disables displaying this information.
(defvar ggtags-mode-line-project-name '("[" (:eval (let ((name (if (stringp ggtags-project-root) (file-name-nondirectory (directory-file-name ggtags-project-root)) "?"))) (propertize name 'face compilation-info-face 'help-echo (if (stringp ggtags-project-root) (concat "mouse-1 to visit " ggtags-project-root) "mouse-1 to set project") 'mouse-face 'mode-line-highlight 'keymap ggtags-mode-line-project-keymap))) "]") (#$ . 104814))
#@91 Non-nil if Ggtags mode is enabled.
Use the command `ggtags-mode' to change this variable.
(defvar ggtags-mode nil (#$ . 105418))
(make-variable-buffer-local 'ggtags-mode)
#@261 Toggle Ggtags mode on or off.
With a prefix argument ARG, enable Ggtags mode if ARG is
positive, and disable it otherwise.  If called from Lisp, enable
the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'.
\{ggtags-mode-map}
 
(fn &optional ARG)
(defalias 'ggtags-mode #[256 "\304 \305=\203 ?\202\306!\307V\310    !\210\203J\311\312\313\314\315$\210\311\316\317\315\211$\210\n\2043\320\302!\210\321\322\323\324\325B\326\327$\210\330 >\204s\331 \332\"\202s\333\312\313\315#\210\333\316\317\315#\210\334\335\302!\326\"\211\335\302!=\204i\336\302\"\210\210\337\330 \"\340\341!\210\342\343\203}\344\202~\345\"\210\346\347!\203\242\304 \203\222\211\304 \232\203\242\350\351\352\203\235\353\202\236\354#\266\210\355 \210\207" [ggtags-mode ggtags-highlight-tag eldoc-documentation-function mode-line-buffer-identification current-message toggle prefix-numeric-value 0 ggtags-setup-highlight-tag-at-point add-hook after-save-hook ggtags-after-save-function nil t completion-at-point-functions ggtags-completion-at-point make-local-variable ignore advice--add-function :after-until #[0 "\300\301!\207" [advice--buffer-local eldoc-documentation-function] 2] #[257 "\300\301\"\207" [advice--set-buffer-local eldoc-documentation-function] 4 "\n\n(fn GV--VAL)"] ggtags-eldoc-function ((name . ggtags-eldoc-function) (depth . -100)) ggtags-mode-line-project-name append (ggtags-mode-line-project-name) remove-hook advice--remove-function advice--buffer-local advice--set-buffer-local delq ggtags-cancel-highlight-tag-at-point keep-timer run-hooks ggtags-mode-hook ggtags-mode-on-hook ggtags-mode-off-hook called-interactively-p any " in current buffer" message "Ggtags mode %sabled%s" "en" "dis" force-mode-line-update] 7 (#$ . 105596) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar ggtags-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\311\211%\207" [ggtags-mode-map ggtags-mode-hook variable-documentation put "Hook run after entering or leaving `ggtags-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode ggtags-mode (:eval (if ggtags-navigation-mode "" " GG")) boundp nil] 6)
#@37 Keymap used for valid tag at point.
(defvar ggtags-highlight-tag-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\305#\210\211\207" [make-sparse-keymap define-key [S-mouse-1] ggtags-find-tag-dwim [S-down-mouse-1] ignore [S-mouse-3] ggtags-find-reference [S-down-mouse-3]] 5) (#$ . 107877))
(byte-code "\301\302\303\304#\210\301\302\305#\210\301\302\306\307#\207" [ggtags-highlight-tag-map put ggtags-active-tag face ggtags-highlight keymap help-echo "S-mouse-1 for definitions\nS-mouse-3 for references"] 4)
#@13 
 
(fn FLAG)
(defalias 'ggtags-setup-highlight-tag-at-point #[257 "\211\204\301 \207\302!\204\303\304\305#\211\207\306\304#\207" [ggtags-highlight-tag-timer ggtags-cancel-highlight-tag-at-point timerp run-with-idle-timer t ggtags-highlight-tag-at-point timer-set-idle-time] 5 (#$ . 108428)])
#@29 
 
(fn &optional KEEP-TIMER)
(defalias 'ggtags-cancel-highlight-tag-at-point #[256 "\211\204\302!\203\303!\210\304    \205\305    !\210\304\211\207" [ggtags-highlight-tag-timer ggtags-highlight-tag-overlay timerp cancel-timer nil delete-overlay] 3 (#$ . 108734)])
(defalias 'ggtags-highlight-tag-at-point #[0 "\205\202    \205\202\306 \205\202\307\n!\204!\310``\311\312$\313\n\314\315C#\210  \n\203F\316!p=\203F\317!@U\203F\320!AU\203F\311\202\200\203j\311\321\322@A\" \")\203j\323@Ap$\210\313\324\325#\202\200\323@\206r`A\206x`p$\210\313\324\311#\266\202\207" [ggtags-mode ggtags-project-root ggtags-highlight-tag-overlay ggtags-bounds-of-tag-function completion-ignore-case ggtags-completion-table ggtags-find-project overlayp make-overlay nil t overlay-put modification-hooks #[642 "?\205\300!\207" [delete-overlay] 5 "\n\n(fn O AFTER &rest ARGS)"] overlay-buffer overlay-start overlay-end test-completion buffer-substring-no-properties move-overlay category ggtags-active-tag] 7])
(defvar ggtags-eldoc-cache nil nil)
(make-variable-buffer-local 'ggtags-eldoc-cache)
#@69 A function suitable for `eldoc-documentation-function' (which see).
(defalias 'ggtags-eldoc-function #[0 "\303 \211\205W\211\211@\232\203A@\202U    \205U\304 \205U\305\306\307\310\311!\312\"\313\314%\211C\31518\316!0\202R\317\320\321!\322\"\211\320\321!=\204K\323\321\"\210\210\324\325\"\262\210)\326\262\207" [ggtags-eldoc-cache ggtags-project-root ggtags-print-definition-function ggtags-tag-at-point ggtags-find-project make-byte-code 257 "\300D\302!\207" vconcat vector [ggtags-eldoc-cache eldoc-message] 3 "\n\n(fn S)" (file-error) ggtags-show-definition advice--remove-function advice--buffer-local eldoc-documentation-function ggtags-eldoc-function advice--set-buffer-local message "Function `ggtags-eldoc-function' disabled for eldoc in current buffer: %S" nil] 8 (#$ . 109848)])
#@29 
 
(fn NAME LINE &rest ARGS)
(defalias 'ggtags-goto-imenu-index #[642 "\300!\210\301!\207" [ggtags-forward-to-line ggtags-move-to-tag] 5 (#$ . 110661)])
#@56 A function suitable for `imenu-create-index-function'.
(defalias 'ggtags-build-imenu-index #[0 "\205\305!\211\205\300\306\307!r\211q\210\310\311\312\313\314!\315\"\316$\216\3171\221    \320 \205.\321\322\323 !!\324\325\n!\203<\326\327\"\210\330\331 \")\n\205J\332PC\320 \205k\320 \211\311H\f>\204`\333\334\335D\"\210\211\336H\262?\205k\337C$\310\311\340\313\314!\341\"\316$\216r\342\343\344!\345\346\345\347\350\n&+\266\202\311U0\202\231\351\352\"\210\345\262\205\275eb\210\345\353\354\345\346#\203\271\355\356!\357\355\316!!\360EB\262\202\240\211\237\262*\262\207" [buffer-file-name ggtags-project-root process-environment ggtags-process-environment cl-struct-ggtags-project-tags file-relative-name generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 (debug error) ggtags-find-project ggtags-ensure-localname directory-file-name ggtags-current-project-root append copy-sequence setenv "GTAGSROOT" mapcar substitute-env-vars "GTAGSROOT=" signal wrong-type-argument ggtags-project 3 "GTAGSLABEL=ctags" "\300\211\207" [ggtags-project-root] process-file ggtags-program-path "global" nil t "-x" "-f" message "ggtags-build-imenu-index: %S" re-search-forward "^\\([^     ]+\\)[     ]+\\([0-9]+\\)" match-string 1 string-to-number ggtags-goto-imenu-index] 13 (#$ . 110821)])
#@71 A function suitable for `hippie-expand-try-functions-list'.
 
(fn OLD)
(defalias 'ggtags-try-complete-tag #[257 "\304\305!\210\211\204'\306 @\206``\"\210    \307\232?\205&\310 \205&\311\312    \n\"\313\" \2044\211\2032\314 \210\315\207\316 @!\210 A\317\207" [ggtags-bounds-of-tag-function he-search-string ggtags-completion-table he-expand-list require hippie-exp he-init-string "" ggtags-find-project sort all-completions string-lessp he-reset-string nil he-substitute-string t] 5 (#$ . 112191)])
#@24 
 
(fn &optional FORCE)
(defalias 'ggtags-reload #[256 "\300\301\"\210\302\301!\207" [unload-feature ggtags require] 4 (#$ . 112698) "P"])
(provide 'ggtags)