diff options
author | William Carroll <wpcarro@gmail.com> | 2018-07-16T22·26-0400 |
---|---|---|
committer | William Carroll <wpcarro@gmail.com> | 2018-07-19T16·00-0400 |
commit | 71b20680a960dd0c524dc8cab8bad7a4329a54f1 (patch) | |
tree | e20901a30d779116b52a51b7ba88e718f4f21617 | |
parent | f84a9c64389010d6f569cb7fae1a5be95035330e (diff) |
Resolve tmux and realpath aliases
Falsely concluded that these aliases wouldn't work in sub-shells. After a second look, resolved the issues. This is preferable!
-rwxr-xr-x | emacs.d/open-from-iterm.sh | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/emacs.d/open-from-iterm.sh b/emacs.d/open-from-iterm.sh index e8857a1afbb4..cf7d7a2ed3bd 100755 --- a/emacs.d/open-from-iterm.sh +++ b/emacs.d/open-from-iterm.sh @@ -3,36 +3,35 @@ # To set this up, open iTerm2 -> Preferences -> Profiles -> Advanced # In the "Semantic History" section, choose "Always run command..." from the # dropdown and set the input text to: -# `~/dotfiles/emacs.d/open-from-iterm.sh \1 \2` +# `~/dotfiles/emacs.d/open-from-iterm.sh \1` -# NOTE: need to get $PATH set in here -# NOTE: these don't get forwarded into subshells -# # Alias applications since $PATH is unavailable +# Alias applications since $PATH is unavailable emacs=/usr/local/bin/emacsclient grep=/usr/local/bin/ggrep -# tmux=/usr/local/bin/tmux -# realpath=/Users/wpcarro/.nix-profile/bin/realpath - +tmux=/usr/local/bin/tmux +realpath=/Users/wpcarro/.nix-profile/bin/realpath e() { # Useful debugger when paired with `tail -f /tmp/debug.log` echo "$@" >>/tmp/debug.log } -# Need to use tmux here since \5 doesn't work as expected with Tmux. -pwd=$(/usr/local/bin/tmux display -pF '#{pane_current_path}') +# Need to query Tmux since iTerm's \5 variable doesn't work as expected with +# Tmux. +pwd=$($tmux display -pF '#{pane_current_path}') cd "$pwd" || exit -path=$(/Users/wpcarro/.nix-profile/bin/realpath "$1") +path=$($realpath "$1") # This is a bit of a hack, but we cannot rely on iTerm to regex our paths file=$($grep -P -o '^[^:]+' <<<"$path") number=$($grep -P -o '(?<=:)[0-9]+(?=:[0-9]+:$)' <<<"$path") +# Debugging e "file: $file" e "number: $number" -$emacs -n -e "(find-file \"$file\")" - if ! [ -z "$number" ]; then - $emacs -n -e "(goto-line $number)" + $emacs -n -e "(find-file \"$file\")" "(goto-line $number)" +else + $emacs -n -e "(find-file \"$file\")" fi |