aboutsummaryrefslogtreecommitdiff
path: root/bash
diff options
context:
space:
mode:
authorTom Ryder <tom@sanctum.geek.nz>2013-07-30 14:58:54 +1200
committerTom Ryder <tom@sanctum.geek.nz>2013-07-30 14:58:54 +1200
commitf2ed10433e2dcf4a57f04b4e10e0ec8e0d30d119 (patch)
treee564125478224eade8cc6218418ca4c93ae08ab1 /bash
parentBracing variable for safety (diff)
downloaddotfiles-f2ed10433e2dcf4a57f04b4e10e0ec8e0d30d119.tar.gz
dotfiles-f2ed10433e2dcf4a57f04b4e10e0ec8e0d30d119.zip
More portable non-surprise syntax for functions
<tyrmored> is this syntax actually problematic? <tyrmored> function whatever { <tyrmored> thangs <tyrmored> } <zendeavor> !pf function <greybot> http://mywiki.wooledge.org/BashPitfalls#pf25 -- Don't do this! -- function foo() <tyrmored> i know it's bashism, but is it bad practice <tyrmored> yeah i know that much <tyrmored> (no parens, that is) <zendeavor> it's not necessarily a bashism, but the function keyword has implications in other shells <zendeavor> and, perhaps someday in the future, for bash as well <tyrmored> hmm, so i should use this syntax even if the scripts are explicitly bash? <ffio> hi zendeavor :) <zendeavor> you should use foo() { echo bar; } <tyrmored> rightoh <zendeavor> no surprising behaviour that way, ever <tyrmored> makes sense <zendeavor> it won't matter *much* but element of least surprise
Diffstat (limited to 'bash')
-rw-r--r--bash/bashrc.d/cd.bash3
-rw-r--r--bash/bashrc.d/grep.bash2
-rw-r--r--bash/bashrc.d/ls.bash2
-rw-r--r--bash/bashrc.d/prompt.bash2
-rw-r--r--bash/bashrc.d/tmux.bash2
5 files changed, 6 insertions, 5 deletions
diff --git a/bash/bashrc.d/cd.bash b/bash/bashrc.d/cd.bash
index 79e610d8..35900b7f 100644
--- a/bash/bashrc.d/cd.bash
+++ b/bash/bashrc.d/cd.bash
@@ -1,6 +1,6 @@
# If given two arguments to cd, replace the first with the second in $PWD,
# emulating a Zsh function that I often find useful; preserves options too
-function cd {
+__cd() {
while getopts lPe opt
do
local opts="$opts -$opt"
@@ -12,4 +12,5 @@ function cd {
builtin cd $opts "$@"
fi
}
+alias cd='__cd'
diff --git a/bash/bashrc.d/grep.bash b/bash/bashrc.d/grep.bash
index e5a568e1..ea75bd8e 100644
--- a/bash/bashrc.d/grep.bash
+++ b/bash/bashrc.d/grep.bash
@@ -1,5 +1,5 @@
# Function returns calculated options for grep
-function __grepopts {
+__grepopts() {
local grepopts='-I'
local grephelp=$(grep --help)
echo $grephelp | grep -- --color &>/dev/null \
diff --git a/bash/bashrc.d/ls.bash b/bash/bashrc.d/ls.bash
index 03150fea..5dd65b48 100644
--- a/bash/bashrc.d/ls.bash
+++ b/bash/bashrc.d/ls.bash
@@ -1,5 +1,5 @@
# Function returns calculated options for ls
-function __lsopts {
+__lsopts() {
local lsopts=
local lshelp=$(ls --help)
echo $lshelp | grep -- --color &>/dev/null \
diff --git a/bash/bashrc.d/prompt.bash b/bash/bashrc.d/prompt.bash
index 26f9f87a..69f9bf7a 100644
--- a/bash/bashrc.d/prompt.bash
+++ b/bash/bashrc.d/prompt.bash
@@ -1,5 +1,5 @@
# Frontend to controlling prompt
-function prompt {
+prompt() {
local ret=$?
local colors=$(tput colors 2>/dev/null)
local color reset branch state url root
diff --git a/bash/bashrc.d/tmux.bash b/bash/bashrc.d/tmux.bash
index 8d5382e9..ee47e7fc 100644
--- a/bash/bashrc.d/tmux.bash
+++ b/bash/bashrc.d/tmux.bash
@@ -1,5 +1,5 @@
# Attach to existing tmux session rather than create a new one if possible
-function tmux {
+tmux() {
if [[ -n "$@" ]]; then
command tmux "$@"
else