Index: tools/gn/misc/vim/autoload/gn.vim |
diff --git a/tools/gn/misc/vim/autoload/gn.vim b/tools/gn/misc/vim/autoload/gn.vim |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c1df012149b944e1bcceefde79f5a74467c5efe0 |
--- /dev/null |
+++ b/tools/gn/misc/vim/autoload/gn.vim |
@@ -0,0 +1,17 @@ |
+" Copyright 2017 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. |
+ |
+function! gn#TranslateToBuildFile(name) abort |
+ " Strip '//' prefix |
+ let l:new_path = substitute(a:name, '\v^//', '', '') |
+ |
+ " Strip the build target name (necessary if 'isfname' contains ':') |
+ let l:new_path = substitute(l:new_path, '\v:.*$', '', '') |
+ |
+ " Append 'BUILD.gn', only if this is a directory and not a file |
+ if isdirectory(l:new_path) |
+ let l:new_path = substitute(l:new_path, '\v/?$', '/BUILD.gn', '') |
+ endif |
+ return l:new_path |
+endfunction |