Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1716)

Unified Diff: tools/gn/misc/vim/autoload/gn.vim

Issue 2654673002: Add ftplugin for gn filetype (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | tools/gn/misc/vim/ftplugin/gn.vim » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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..73b8397b37c94077173d498e93a107f2bde25c0f
--- /dev/null
+++ b/tools/gn/misc/vim/autoload/gn.vim
@@ -0,0 +1,24 @@
+" 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:.*$', '', '')
+
+ " This section requires the open source vim-maktaba plugin. If it's not
+ " installed, there's not much we can do here
scottmg 2017/01/24 04:22:58 This seems a bit defeatist. Surely we could append
Nate Fischer 2017/01/24 18:12:19 Ok, I think I found a robust way to do it without
+ if exists('*maktaba#path#Basename')
+ " Append 'BUILD.gn', only if this doesn't already end in a filename (this
+ " checks if it has an extension)
+ if maktaba#path#Basename(l:new_path) !~# '\V.'
+ let l:new_path = maktaba#path#Join([l:new_path, 'BUILD.gn'])
+ endif
+ else
+ echoerr 'Please install vim-maktaba'
+ endif
+ return l:new_path
+endfunction
« no previous file with comments | « no previous file | tools/gn/misc/vim/ftplugin/gn.vim » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698