Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 # Flag completion rule for bash. | 5 # Flag completion rule for bash. |
| 6 # To load in your shell, "source path/to/this/file". | 6 # To load in your shell, "source path/to/this/file". |
| 7 | 7 |
| 8 chrome_source=$(readlink -f $(dirname $BASH_SOURCE)/..) | 8 chrome_source=$(dirname $BASH_SOURCE)/.. |
| 9 if [ $(uname) = "Darwin" ] | |
| 10 then | |
| 11 chrome_source=$(python -c 'import os,sys;print os.path.realpath(sys.argv[1])'\ | |
| 12 $chrome_source) | |
|
Evan Martin
2012/02/17 20:23:17
Simpler:
chrome_source=$((cd $chrome_source && pwd
groby-ooo-7-16
2012/02/17 22:19:28
Surely you only meant one level of parens :)
On 2
| |
| 13 sed_expr='s/^[^/]*"\([^" /]*\)".*/--\1/p' | |
|
Evan Martin
2012/02/17 20:23:17
Why is this different between Darwin and not?
groby-ooo-7-16
2012/02/17 22:19:28
Because Darwin doesn't support \+. And if I'd read
| |
| 14 else | |
| 15 chrome_source=$(readlink -f $chrome_source) | |
| 16 sed_expr='s/^[^/]*"\([^" /]\+\)".*/--\1/p' | |
| 17 fi | |
| 9 | 18 |
| 10 _chrome_flag() { | 19 _chrome_flag() { |
| 11 local cur targets | 20 local cur targets |
| 12 cur="${COMP_WORDS[COMP_CWORD]}" | 21 cur="${COMP_WORDS[COMP_CWORD]}" |
| 13 targets=$(cd $chrome_source; \ | 22 targets=$(cd $chrome_source; \ |
| 14 git ls-files '*switches*' | \ | 23 git ls-files '*switches*' | \ |
| 15 xargs sed -ne 's/^[^/]*"\([^" /]\+\)".*/--\1/p') | 24 xargs sed -ne "$sed_expr") |
| 16 COMPREPLY=($(compgen -W "$targets" -- "$cur")) | 25 COMPREPLY=($(compgen -W "$targets" -- "$cur")) |
| 17 return 0 | 26 return 0 |
| 18 } | 27 } |
| 19 | 28 |
| 20 complete -F _chrome_flag google-chrome | 29 complete -F _chrome_flag google-chrome |
| 21 complete -F _chrome_flag chrome | 30 complete -F _chrome_flag chrome |
| 31 if [ $(uname) = "Darwin" ] | |
| 32 then | |
| 33 complete -F _chrome_flag Chromium | |
| 34 fi | |
| OLD | NEW |