Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
[ramk@xxxxxxxxxxxxxxxxx: Bug#339635: zsh: zsh-mime-handler used even in the case of executable files]
- X-seq: zsh-workers 22394
- From: Clint Adams <schizo@xxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxx
- Subject: [ramk@xxxxxxxxxxxxxxxxx: Bug#339635: zsh: zsh-mime-handler used even in the case of executable files]
- Date: Fri, 31 Mar 2006 09:22:40 -0500
- Cc: 339635-forwarded@xxxxxxxxxxxxxxx
Another patch from R.Ramkumar for which I hold no opinion.
----- Forwarded message from "R.Ramkumar" <ramk@xxxxxxxxxxxxxxxxx> -----
Date: Thu, 17 Nov 2005 23:34:25 +0530
From: "R.Ramkumar" <ramk@xxxxxxxxxxxxxxxxx>
To: Debian Bug Tracking System <submit@xxxxxxxxxxxxxxx>
Subject: Bug#339635: zsh: zsh-mime-handler used even in the case of executable files
Package: zsh
Version: 4.2.5-22
Severity: wishlist
Tags: patch
Some scripts end with a .sh (a common example being autogen.sh). For
such scripts, zsh-mime-handler ends up executing the mime action for
the suffix sh, which sometimes happens to be to just display the
file. This, I guess is due to alias -s, which blindly maps in case
the suffix matches. To counter this, it would be good if
zsh-mime-handler uses a style to take a set of patterns that would
be executed as-is, despite having a suffix found in the mime
configuration. I am enclosing a patch for the same. I have made the
set of executable files as the default for this style, I hope this
deviation from the original behaviour is acceptable.
Content-Description: Patch for the execute-as-is style to zsh-mime-handler
--- zsh-mime-handler.orig 2005-11-17 23:21:14.000000000 +0530
+++ zsh-mime-handler 2005-11-17 23:31:37.000000000 +0530
@@ -45,6 +45,22 @@
context=":mime:.${suffix}:"
local handler flags no_sh no_bg
+local -a exec_asis
+
+# Set to a list of patterns which are ignored and executed as they are,
+# despite being called for interpretation by the mime handler.
+# Defaults to executable files, which ensures that they are executed as
+# they are, even if they have a suffix.
+zstyle -a $context execute-as-is exec_asis || exec_asis=('*(*)')
+
+local pattern
+
+for pattern in $exec_asis; do
+ if [[ $1 = ${~pattern} ]]; then
+ $@
+ return 0
+ fi
+done
zstyle -s $context handler handler ||
handler="${zsh_mime_handlers[$suffix]}"
Hope this helps :)
Regards,
Ramkumar
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (101, 'testing')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/dash
Kernel: Linux 2.6.14-archck1
Locale: LANG=en_IN, LC_CTYPE=en_IN (charmap=UTF-8)
Versions of packages zsh depends on:
ii debconf [debconf-2.0] 1.4.58 Debian configuration management sy
ii libc6 2.3.5-6 GNU C Library: Shared libraries an
ii libncurses5 5.4-9 Shared libraries for terminal hand
Versions of packages zsh recommends:
ii libcap1 1:1.10-14 support for getting/setting POSIX.
ii libpcre3 6.4-1.0.1 Perl 5 Compatible Regular Expressi
-- no debconf information
--
WARN_(accel)("msg null; should hang here to be win compatible\n");
-- WINE source code
----- End forwarded message -----
Messages sorted by:
Reverse Date,
Date,
Thread,
Author