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

Side by Side Diff: tools/gn/misc/vim/autoload/gn.vim

Issue 2657853004: Improve vim's 'gf' for BUILD.gn files (Closed)
Patch Set: Created 3 years, 10 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 unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 " Copyright 2017 The Chromium Authors. All rights reserved. 1 " Copyright 2017 The Chromium Authors. All rights reserved.
2 " Use of this source code is governed by a BSD-style license that can be 2 " Use of this source code is governed by a BSD-style license that can be
3 " found in the LICENSE file. 3 " found in the LICENSE file.
4 4
5 function! gn#TranslateToBuildFile(name) abort 5 function! gn#TranslateToBuildFile(name) abort
6 " Strip '//' prefix 6 " Strip '//' prefix
7 let l:new_path = substitute(a:name, '\v^//', '', '') 7 let l:new_path = substitute(a:name, '\v^//', '', '')
8 8
9 " Strip the build target name (necessary if 'isfname' contains ':') 9 " Strip the build target name (necessary if 'isfname' contains ':')
10 let l:new_path = substitute(l:new_path, '\v:.*$', '', '') 10 let l:new_path = substitute(l:new_path, '\v:.*$', '', '')
11 11
12 " Append 'BUILD.gn', only if this is a directory and not a file 12 " Append 'BUILD.gn', only if this is a directory and not a file
13 if isdirectory(l:new_path) 13 " Prefer using maktaba if it's available, but fallback to an alternative
14 let l:new_path = substitute(l:new_path, '\v/?$', '/BUILD.gn', '') 14 if exists('*maktaba#path#Basename')
15 " Check if the last part of the path appears to be a file
16 if maktaba#path#Basename(l:new_path) !~# '\V.'
17 let l:new_path = maktaba#path#Join([l:new_path, 'BUILD.gn'])
18 endif
19 else
20 " This will break if 'autochdir' is enabled
21 if isdirectory(l:new_path)
22 let l:new_path = substitute(l:new_path, '\v/?$', '/BUILD.gn', '')
23 endif
15 endif 24 endif
16 return l:new_path 25 return l:new_path
17 endfunction 26 endfunction
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698