This is an extension of this question
How do I use Notepad++ (or other) with msysgit?
i have done all combinations that i can think of for my shell script. when i have my cygwin console (im using mintty if it matters) i can type
npp {file}
and the file opens correctly. but when i do a
git rebase -i HEAD~5
npp opens with a blank new document, not the interactive file to control the rebase. any idea why this would be happening?
git --version git version 1.7.9
latest version of cygwin on a windows 7 machine and NPP 5.9.8
also, here is my wrapper script
#!/bin/sh
"C:/Program Files (x86)/Notepad++/notepad++.exe" -multiInst -notabbar \
-nosession -noPlugin "$*"
Notepad++ is often preferred over Vim as the default Git editor for commit text.
I've created a simple script for running arbitrary Windows commands with UNIX-style path arguments:
cygrun.sh
#!/bin/sh
if test -z "$1"; then
echo "Usage: $(basename "$0" .sh) program [argument]..."
exit 1
fi
program=$1
shift
if test $# -ge 0; then
IFS=$'\n'
exec "$program" $(cygpath -w "$@")
else
exec "$program"
fi
Here's how I can use it in my git config (assuming cygrun
is a symlink to cygrun.sh
somewhere in PATH):
[core]
editor = cygrun 'C:/Program Files/Notepad2/Notepad2.exe'
[difftool "diffmerge"]
cmd = cygrun 'C:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe' \"$LOCAL\" \"$REMOTE\"
This way one script can fits many similar use cases, there's no need to create a separate wrapper every time. It can be convenient to use from command line as well.
I was correct about my cygwin path issue. i changed my shell wrapper to this
#!/bin/sh
'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar \
-nosession -noPlugin "$(cygpath -w "$*")"
and it worked perfectly.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With