Commit 9d14b9ec authored by Jesse McKenna's avatar Jesse McKenna Committed by Commit Bot

boilerplate.py: Ignore current-dir prefixes .\, ./

This change makes boilerplate.py trim a leading ".\" (Windows's
current-directory prefix) or "./" (Unix's current-directory prefix)
from the filename argument, if present.

This is a convenience change for cases where the current-directory
prefix is prepended. For example, Windows PowerShell automatically
prepends ".\" to a path when tab completion is used (e.g., typing
"chrome/b" and pressing tab results in ".\chrome\browser"). This
change will remove artifacts of this for users who use tab completion
while typing the filename argument.

Currently:
`tools/boilerplate.py .\test.h` produces include guard `__TEST_H_`
`tools/boilerplate.py ./test.cc` or `.mm` produces `#include "./test.h"`

With this change:
`tools/boilerplate.py .\test.h` produces include guard `TEST_H_`
`tools/boilerplate.py ./test.cc` or `.mm` produces `#include "test.h"`

Change-Id: I19fd2e72c58135b5e87d4a1e22ec8bc76ef326aa
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2157876
Commit-Queue: Jesse McKenna <jessemckenna@google.com>
Reviewed-by: default avatarRobert Sesek <rsesek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#761085}
parent 139a8f98
......@@ -55,6 +55,15 @@ def _CppHeader(filename):
])
def _RemoveCurrentDirectoryPrefix(filename):
current_dir_prefixes = [os.curdir + os.sep]
if os.altsep is not None:
current_dir_prefixes.append(os.curdir + os.altsep)
for prefix in current_dir_prefixes:
if filename.startswith(prefix):
return filename[len(prefix):]
def _RemoveTestSuffix(filename):
base, _ = os.path.splitext(filename)
suffixes = [ '_test', '_unittest', '_browsertest' ]
......@@ -94,6 +103,8 @@ def _ObjCppImplementation(filename):
def _CreateFile(filename):
filename = _RemoveCurrentDirectoryPrefix(filename)
contents = _GetHeader(filename) + '\n'
if filename.endswith('.h'):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment