unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#5831: 23.1.94; htmlfontify's `hfy-which-etags' not finding etags  "standalone"
@ 2010-04-03 18:41 MON KEY
  2012-05-31 17:40 ` Glenn Morris
  0 siblings, 1 reply; 3+ messages in thread
From: MON KEY @ 2010-04-03 18:41 UTC (permalink / raw)
  To: 5831

`hfy-which-etags' fails when the etags executable in path is of type
"standalone" (not sure if this w32 specific):

(shell-command-to-string (concat hfy-etags-bin " --version"))

(executable-find hfy-etags-bin)
 ;=> "<MY-W32-PATH>/emacs-23.1.94/bin/etags.exe"

(executable-find "etags")
 ;=> "<MY-W32-PATH>/emacs-23.1.94/bin/etags.exe"

(equal (executable-find hfy-etags-bin)
       (executable-find "etags"))
 ;=> t

 (shell-command-to-string (concat  hfy-etags-bin " --version")))

 ;=> "etags (standalone 17.38.1.4)
 ; |  Copyright (C) 2010 Free Software Foundation, Inc.
 ; |  This program is distributed under the terms in ETAGS.README"

Its unlikey we wouldn't have an etags in path...

On a GNU/Linux evaluating same I get:

(shell-command-to-string (concat  hfy-etags-bin " --version"))
 ;=> "etags (GNU Emacs 23.1.90)
 ; |  Copyright (C) 2009 Free Software Foundation, Inc.
 ; |  This program is distributed under the terms in ETAGS.README"

and `hfy-which-etags' conditional _does_ match this etags exectuable.

`hfy-which-etags' conditional string-match evaluations should have a rule to
match a ``standalone'' etags.

The problem is that when `hfy-which-etags' returns false
it causes `hfy-etags-cmd' to fail:

 (cdr (assoc (hfy-which-etags) hfy-etags-cmd-alist))
  ;=> nil

if we add a new rule to `hfy-which-etags' conditional:

  ((string-match "standalone" v) "emacs etags")

then we get the appropriate shell script template:

 (cdr (assoc (hfy-which-etags) hfy-etags-cmd-alist))

 ;=> for src in `find . -type f`;
 ; |   do
 ; |     ETAGS=%s;
 ; |   { ...  lots more ellided ... }

This won't change htmlfontify's reliance on a POSIX friendly shell
(nor should it). However, the user shouldn't be restricted from using
this library _because_ she is using the executable distributed _with_
her local Emacs...

Patch follows:

;;; ==============================

*** lisp/htmlfontify.el	2010-03-10 20:20:34.000000000 -0500
--- buffer-content-3664ZIc	2010-04-03 14:28:32.493000000 -0400
***************
*** 391,397 ****
  (defun hfy-which-etags ()
    "Return a string indicating which flavour of etags we are using."
    (let ((v (shell-command-to-string (concat hfy-etags-bin " --version"))))
!     (cond ((string-match "exube" v) "exuberant ctags")
            ((string-match "GNU E" v) "emacs etags"    )) ))

  (defcustom hfy-etags-cmd
--- 391,398 ----
  (defun hfy-which-etags ()
    "Return a string indicating which flavour of etags we are using."
    (let ((v (shell-command-to-string (concat hfy-etags-bin " --version"))))
!     (cond ((string-match "standalone" v) "exuberant ctags")
!           ((string-match "exube" v) "exuberant ctags")
            ((string-match "GNU E" v) "emacs etags"    )) ))

  (defcustom hfy-etags-cmd

;;; ==============================

/s_P\







^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-05-31 17:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-03 18:41 bug#5831: 23.1.94; htmlfontify's `hfy-which-etags' not finding etags "standalone" MON KEY
2012-05-31 17:40 ` Glenn Morris
2012-05-31 17:56   ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).