Skip to content

Instantly share code, notes, and snippets.

@markjaquith
Last active April 17, 2024 21:06
Show Gist options
  • Save markjaquith/4500280 to your computer and use it in GitHub Desktop.
Save markjaquith/4500280 to your computer and use it in GitHub Desktop.
Bash command to fix a quirk with Sublime Text 2's "subl" command. Sometimes, when using it, under hard-to-pinpoint circumstances, it will open up Sublime Text 2 completely blank (i.e. the file you asked it to open will not be open). This snippet fixes that by essentially kicking subl under the table to wake it up and then passing on the command …
function subl() {
if [[ ! -p /dev/stdin ]]; then
command subl > /dev/null 2>&1
fi
command subl "$@"
}
@n1k0
Copy link

n1k0 commented Jan 10, 2013

Thank you!

@damonjones
Copy link

Awesome!

@tednaleid
Copy link

Thanks, this was super annoying and seemed to happen about 1 out of 3 times (sometimes repeatedly.

@Teggy
Copy link

Teggy commented Jan 31, 2013

Nice. I do think that checking whether standard input is redirected (i.e., stdin isn't the terminal but comes from a pipe or a redirected file) is more portably done via test -t 0. Thus

function subl() {
  if [[ -t 0 ]]; then
    command subl > /dev/null 2>&1
  fi
  command subl $@
}

@binarysprocket
Copy link

Oh man, thank you so much for this. That used to be such a PITA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment