delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
X-Authentication-Warning: | dragon.dn.rsc.raytheon.com: agrimm owned process doing -bs |
Date: | Wed, 13 Oct 2004 15:58:02 -0600 (MDT) |
From: | Andrew Grimm <agrimm AT redwood DOT rsc DOT raytheon DOT com> |
X-X-Sender: | agrimm AT dragon |
To: | cygwin AT cygwin DOT com |
cc: | d_inabox AT yahoo DOT com |
Subject: | tcsh and chere-0.3-1 |
Message-ID: | <Pine.GSO.4.44.0410131538001.21185-100000@dragon> |
MIME-Version: | 1.0 |
X-SPAM: | 0.00 |
The new (very cool!) chere package doesn't work with tcsh, at least on my system. The problem is that "tcsh -l" doesn't work with any additional arguments. There is even a comment to that effect in the script: tcsh ) # Apparently -l only applies if it is the only argument # so this may not work SHELL_EXE="/bin/tcsh.exe" SHELL_CMD="-l -c \\\"cd '%L'; exec $SHELL_EXE\\\"" If I run this, the tcsh immediately bombs out, closing the shell window, because tcsh exits when it sees the additional arguments. There may not be a perfect solution because tcsh won't work with the code pattern used for the other shells. If you make the exec'd shell a login shell it cd's to your home directory which defeats the purpose of the package. This hack works for me, it doesn't create a real login shell but it fakes one fairly well: SHELL_CMD="-f -c \\\"if ( -f /etc/csh.login ) source /etc/csh.login; if ( -f /etc/csh.cshrc ) source /etc/csh.cshrc; if ( -f ~/.tcshrc ) source ~/.tcshrc; if ( -f ~/.login ) source ~/.login; cd '%L'; exec $SHELL_EXE\\\"" A more complicated line could be created to handle more unusual tcsh configurations but this approach works with the default setup. -Andy P.S. Output of "chere -r" as requested on bug reports (with the above modification to line 244 of the chere script): OS is CYGWIN_NT-5.0 chere version 0.3 --- ash keys --- --- bash keys --- --- cmd keys --- --- pdksh keys --- --- tcsh keys --- Directory menu item &Tcsh Here Directory command D:\cygwin\bin\rxvt.exe -e /bin/tcsh.exe -f -c "if ( -f /etc/csh.login ) source /etc/csh.login; if ( -f /etc/csh.cshrc ) source /etc/csh.cshrc; if ( -f ~/.tcshrc ) source ~/.tcshrc; if ( -f ~/.login ) source ~/.login; cd '%L'; exec /bin/tcsh.exe" Drive menu item &Tcsh Here Drive command D:\cygwin\bin\rxvt.exe -e /bin/tcsh.exe -f -c "if ( -f /etc/csh.login ) source /etc/csh.login; if ( -f /etc/csh.cshrc ) source /etc/csh.cshrc; if ( -f ~/.tcshrc ) source ~/.tcshrc; if ( -f ~/.login ) source ~/.login; cd '%L'; exec /bin/tcsh.exe" Uninstall description Cygwin Tcsh Prompt Here Uninstall command D:\cygwin\bin\sh -c "/bin/chere -u -s tcsh" --- zsh keys --- --- passwd keys --- -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |