Index: tools/sublime/compile_flags.py |
diff --git a/tools/sublime/compile_flags.py b/tools/sublime/compile_flags.py |
new file mode 100755 |
index 0000000000000000000000000000000000000000..341b9b99a6d0edcc4bae52ec497115a4cc1444a3 |
--- /dev/null |
+++ b/tools/sublime/compile_flags.py |
@@ -0,0 +1,46 @@ |
+#!/usr/bin/python |
sashab
2016/07/08 00:58:26
Just rename this to ninja_options_script.py and de
jkarlin
2016/07/18 17:48:55
Done. Note that the parameters are different, so t
|
+# |
+# Copyright 2016 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+# |
+# Usage within SublimeClang: |
+# "sublimeclang_options_script": "python |
+# ${project_path}/src/tools/sublime/compile_flags.py \ |
+# -d '${project_path}/../depot_tools'" |
sashab
2016/07/08 00:58:27
-d '/path/to/depot_tools'
sashab
2016/07/08 00:58:27
-d '/path/to/depot_tools'
jkarlin
2016/07/18 17:48:55
Done.
|
+# |
+# |
+# NOTE: ${project_path} expands to the directory of the Sublime project file, |
+# and SublimgClang passes the absolute file path to the current file as an |
sashab
2016/07/08 00:58:26
SublimeClang*
jkarlin
2016/07/18 17:48:55
Done.
|
+# additional argument. You should change the -d argument to point to your |
+# depot_tools directory. |
+ |
+import imp |
+import optparse |
+import os |
+import sys |
+ |
+ycm_module_path = os.path.normpath( |
+ os.path.join(os.path.dirname(os.path.abspath(__file__)), |
+ '../vim/chromium.ycm_extra_conf.py')) |
+ycm_extra_conf = imp.load_source('ycm_extra_conf', ycm_module_path) |
+ |
+def main(): |
+ usage = "usage: %prog [options] file" |
+ parser = optparse.OptionParser(usage) |
+ parser.add_option("-d", "--depot_tools", dest="depot_path", |
+ help="path to depot_tools") |
+ (options, args) = parser.parse_args() |
+ if options.depot_path: |
+ os.environ["PATH"] += ":%s" % options.depot_path |
+ if len(args) != 1: |
+ parser.error("incorrect number of arguments") |
+ |
+ path = os.path.realpath(args[0]) |
+ results = ycm_extra_conf.FlagsForFile(path) |
+ |
+ for flag in results['flags']: |
+ print flag |
+ |
+if __name__ == "__main__": |
+ main() |