1RDM(7)                           User Commands                          RDM(7)
2
3
4

NAME

6       rdm - manual page for rdm 2.31.127
7

SYNOPSIS

9       rdm [OPTION]...
10

DESCRIPTION

12       RTags  is a client/server application that indexes C/C++ code and keeps
13       a persistent file-based database of references,  declarations,  defini‐
14       tions,  symbolnames  etc. There's also limited support for ObjC/ObjC++.
15       It allows you to find symbols  by  name  (including  nested  class  and
16       namespace scope). Most importantly we give you proper follow-symbol and
17       find-references  support.  We  also  have  neat  little   things   like
18       rename-symbol,       integration       with       clang's      "fixits"
19       (http://clang.llvm.org/diagnostics.html). We also integrate  with  fly‐
20       make  using  clang's  vastly  superior errors and warnings. Since RTags
21       constantly will reindex "dirty" files you get live updates of  compiler
22       errors  and warnings. Since we already know how to compile your sources
23       we have a way to quickly bring up the preprocessed output of  the  cur‐
24       rent source file in a buffer.
25
26       While  existing  taggers like gnu global, cscope, etags, ctags etc do a
27       decent job for C they often fall a little bit short for C++.  With  its
28       incredible  lexical  complexity, parsing C++ is an incredibly hard task
29       and we make no bones about the fact that the only reason we are able to
30       improve    on    the    current    tools    is    because    of   clang
31       (http://clang.llvm.org/).  RTags  is  named  RTags  in  recognition  of
32       Roberto  Raggi on whose C++ parser we intended to base this project but
33       he assured us clang was the way to go. The name stuck though.
34

OPTIONS

36       --help|-h
37              Display this page.
38
39       --version
40              Display version.
41
42       --include-path|-I [arg]
43              Add additional include path to clang.
44
45       --no-libclang-include-path
46              Don't use the include path from libclang.
47
48       --isystem|-s [arg]
49              Add additional system include path to clang.
50
51       --define|-D [arg]
52              Add additional define directive to clang.
53
54       --default-argument [arg]
55              Add additional argument to clang.
56
57       --log-file|-L [arg]
58              Log to this file.
59
60       --crash-dump-file [arg]
61              File to dump crash log to (default is <datadir>/crash.dump).
62
63       --setenv|-e [arg]
64              Set this environment variable (--setenv "foobar=1").
65
66       --no-Wall|-W
67              Don't use -Wall.
68
69       --Weverything|-u
70              Use -Weverything.
71
72       --verbose|-v
73              Change verbosity, multiple -v's are allowed.
74
75       --job-count|-j [arg]
76              Spawn this many concurrent processes for indexing.
77
78       --test|-t [arg]
79              Run this test.
80
81       --tempdir [arg]
82              Use this directory for temporary files. Clang generates a lot of
83              these  and  rtags  will  periodically  clean out this directory.
84              Default is $TMPDIR/rtags/
85
86       --test-timeout|-z [arg]
87              Timeout for test to complete.
88
89       --clean-slate|-C
90              Clear out all data.
91
92       --disable-sighandler|-x
93              Disable signal handler to dump stack for crashes.
94
95       --silent|-S
96              No logging to stdout/stderr.
97
98       --exclude-filter|-X [arg]
99              Files to exclude from rdm, default "*/CMakeFiles/*;*/cmake*/Mod‐
100              ules/*;*/conftest.c*;/tmp/*;/private/tmp/*;/private/var/*".
101
102       --socket-file|-n [arg]
103              Use this file for the server socket (default ~/.rdm).
104
105       --data-dir|-d [arg]
106              Use   this   directory   to   store   persistent  data  (default
107              $XDG_CACHE_HOME/rtags otherwise ~/.cache/rtags).
108
109       --ignore-printf-fixits|-F
110              Disregard any clang fixit that looks like  it's  trying  to  fix
111              format for printf and friends.
112
113       --error-limit|-f [arg]
114              Set error limit to argument (-ferror-limit={arg} (default 50).
115
116       --block-argument|-G [arg]
117              Block  this  argument  from  being  passed  to  clang.  E.g. rdm
118              --block-argument -fno-inline
119
120       --no-spell-checking|-l
121              Don't pass -fspell-checking.
122
123       --large-by-value-copy|-r [arg]
124              Use -Wlarge-by-value-copy=[arg] when invoking clang.
125
126       --allow-multiple-sources|-m
127              Don't merge source files added with -c.
128
129       --no-startup-project|-o
130              Don't restore the last current project on startup.
131
132       --no-no-unknown-warnings-option|-Y
133              Don't pass -Wno-unknown-warning-option.
134
135       --ignore-compiler|-b [arg]
136              Ignore this compiler.
137
138       --compiler-wrappers [arg]
139              Consider these filenames compiler wrappers (split on ;), default
140              ccache".
141
142       --watch-system-paths|-w
143              Watch system paths for changes.
144
145       --rp-visit-file-timeout|-Z [arg]
146              Timeout  for  rp  visitfile  commands in ms (0 means no timeout)
147              (default 60000).
148
149       --rp-indexer-message-timeout|-T [arg]
150              Timeout for rp  indexer-message  in  ms  (0  means  no  timeout)
151              (default 60000).
152
153       --rp-connect-timeout|-O [arg]
154              Timeout for connection from rp to rdm in ms (0 means no timeout)
155              (default 0).
156
157       --rp-connect-attempts [arg]
158              Number of times rp attempts to connect to rdm before giving  up.
159              (default 3).
160
161       --rp-nice-value|-a [arg]
162              Nice value to use for rp (nice(2)) (default is no nicing).
163
164       --suspend-rp-on-crash|-q
165              Suspend rp in SIGSEGV handler (default off).
166
167       --rp-log-to-syslog
168              Make rp log to syslog.
169
170       --start-suspended|-Q
171              Start out suspended (no reindexing enabled).
172
173       --separate-debug-and-release|-E
174              Normally  rdm  doesn't  consider  release and debug as different
175              builds. Pass this if you want it to.
176
177       --separate-32-bit-and-64-bit
178              Normally rdm doesn't consider -m32 and -m64 as different builds.
179              Pass this if you want it to.
180
181       --ignore-include-path-differences-in-usr  Don't  consider  sources that
182              only  differ  in  includepaths  within   /usr   (not   including
183              /usr/home/) as different builds.
184
185       --max-crash-count|-K [arg]
186              Max number of crashes before giving up a sourcefile (default 5).
187
188       --max-socket-write-buffer-size [arg]
189              Max number of bytes buffered after EAGAIN.
190
191       --completion-cache-size|-i [arg]
192              Number of translation units to cache (default 10).
193
194       --completion-no-filter
195              Don't filter private members and destructors from completions.
196
197       --completion-logs
198              Log more info about completions.
199
200       --completion-diagnostics [optional]
201              Send diagnostics from completion thread.
202
203       --rp-daemon
204              Keep rp's alive as daemons and cache the last tu.
205
206       --max-include-completion-depth [arg]
207              Max recursion depth for header completion (default 3).
208
209       --allow-Wpedantic|-P
210              Don't  strip  out -Wpedantic. This can cause problems in certain
211              projects.
212
213       --allow-Werror
214              Don't strip out -Werror and -Wfatal-errors. By default these are
215              stripped out.
216
217       --enable-compiler-manager|-R
218              Query  compilers  for their actual include paths instead of let‐
219              ting clang use its own.
220
221       --enable-NDEBUG|-g
222              Don't remove -DNDEBUG from compile lines.
223
224       --progress|-p
225              Report compilation progress in diagnostics output.
226
227       --max-file-map-cache-size|-y [arg]
228              Max files to cache per query (Should not exceed  maximum  number
229              of open file descriptors allowed per process) (default 500).
230
231       --no-filemanager-watch|-M
232              Don't use a file system watcher for filemanager.
233
234       --no-filemanager
235              Don't scan project directory for files. (rc -P won't work).
236
237       --no-file-lock
238              Disable  file  locking. Not entirely safe but might improve per‐
239              formance on certain systems.
240
241       --pch-enabled
242              Enable PCH (experimental).
243
244       --no-filesystem-watcher|-B
245              Disable file system watching altogether. Reindexing  has  to  be
246              triggered manually.
247
248       --arg-transform|-V [arg]
249              Use  arg to transform arguments. [arg] should be executable with
250              (execv(3)).
251
252       --no-comments
253              Don't parse/store doxygen comments.
254
255       --inactivity-timeout [arg]
256              Time in seconds after which rdm will quit  if  there's  been  no
257              activity (N.B., once rdm has quit, something will need to re-run
258              it!).
259
260       --daemon
261              Run as daemon (detach from terminal).
262
263       --log-file-log-level [arg]
264              Log level for log file (default is error), options  are:  error,
265              warning, debug or verbose-debug.
266
267       --watch-sources-only
268              Only watch source files (not dependencies).
269
270       --debug-locations [arg]
271              Set debug locations.
272
273       --validate-file-maps
274              Spend some time validating project data on startup.
275
276       --tcp-port [arg]
277              Listen on this tcp socket (default none).
278
279       --rp-path [arg]
280              Path to rp.
281
282       --log-timestamp
283              Add timestamp to logs.
284
285       --log-flush
286              Flush stderr/stdout after each log.
287
288       --sandbox-root [arg]
289              Create  index  using  relative  paths  by stripping dir (enables
290              copying of tag index db files without need to reindex).
291
292       --poll-timer [arg]
293              Poll the database of the current project every <arg> seconds.
294
295       --no-realpath
296              Don't use realpath(3) for files
297
298       --config|-c [arg]
299              Use this file (instead of ~/.rdmrc).
300
301       --no-rc|-N
302              Don't load any rc files.
303

SEE ALSO

305       rc(7)
306
307
308
309rdm 2.31.127                      March 2019                            RDM(7)
Impressum