diff --git a/Documentation/Developers/CHANGELOG-RENE b/Documentation/Developers/CHANGELOG-RENE index 12da98275..15d83ee90 100644 --- a/Documentation/Developers/CHANGELOG-RENE +++ b/Documentation/Developers/CHANGELOG-RENE @@ -11,6 +11,8 @@ - improved Build-Pkg argument parsing further - improved create_package_db to not include failed packages into the database file + - Tobias C. Rittweiler and Rene Rebe: added editor search to the gui_* STONE + modules *) 2003-08-29 (2.0.0-rc1 - 2.0.0-rc2) diff --git a/package/base/sysfiles/stone_gui_dialog.sh b/package/base/sysfiles/stone_gui_dialog.sh index 758cff9cf..18cb06db2 100644 --- a/package/base/sysfiles/stone_gui_dialog.sh +++ b/package/base/sysfiles/stone_gui_dialog.sh @@ -167,7 +167,16 @@ gui_yesno() { # Use: gui_edit "Text" "File" # gui_edit() { - eval "${EDITOR:-vi} $2" + # find editor + for x in $EDITOR vi nvi emacs xemacs pico ; do + if which $x > /dev/null + then xx=$x ; break ; fi + done + if [ "$xx" ] ; then + eval "$xx $2" + else + gui_message "Cannot find any editor. Make sure \$EDITOR is set." + fi } # Use: gui_cmd "Title" "Command" diff --git a/package/base/sysfiles/stone_gui_text.sh b/package/base/sysfiles/stone_gui_text.sh index 13a51c1b2..4952a57f3 100644 --- a/package/base/sysfiles/stone_gui_text.sh +++ b/package/base/sysfiles/stone_gui_text.sh @@ -93,7 +93,16 @@ gui_message() { # Use: gui_edit "Text" "File" # gui_edit() { - eval "${EDITOR:-vi} $2" + # find editor + for x in $EDITOR vi nvi emacs xemacs pico ; do + if which $x > /dev/null + then xx=$x ; break ; fi + done + if [ "$xx" ] ; then + eval "$xx $2" + else + gui_message "Cannot find any editor. Make sure \$EDITOR is set." + fi } # Use: gui_cmd "Title" "Command" diff --git a/package/base/sysfiles/stone_gui_x11.sh b/package/base/sysfiles/stone_gui_x11.sh index ab2a37f97..2ec2089b7 100644 --- a/package/base/sysfiles/stone_gui_x11.sh +++ b/package/base/sysfiles/stone_gui_x11.sh @@ -36,7 +36,16 @@ gui_dialog() { } gui_edit() { - xterm -T "STONE - $1" -n "STONE" -e bash -c "${EDITOR:-vi} $2" + # find editor + for x in $EDITOR vi nvi emacs xemacs pico ; do + if which $x > /dev/null + then xx=$x ; break ; fi + done + if [ "$xx" ] ; then + xterm -T "STONE - $1" -n "STONE" -e bash -c "$xx $2" + else + gui_message "Cannot find any editor. Make sure \$EDITOR is set." + fi } gui_cmd() {