From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Laimonas =?UTF-8?Q?V=C4=97bra?= Newsgroups: gmane.emacs.bugs Subject: bug#24439: ispell.el; cutom setting `ispell-library-directory'; patch Date: Sat, 24 Sep 2016 20:47:15 +0300 Message-ID: <57E6BC23.7000503@yahoo.com> References: <57DB4C52.1050307@yahoo.com> <83h99g5ooh.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------080504070308030602030201" X-Trace: blaine.gmane.org 1474739333 8419 195.159.176.226 (24 Sep 2016 17:48:53 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 24 Sep 2016 17:48:53 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0 SeaMonkey/2.40 Cc: 24439@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Sep 24 19:48:49 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bnr3k-0006ty-QY for geb-bug-gnu-emacs@m.gmane.org; Sat, 24 Sep 2016 19:48:21 +0200 Original-Received: from localhost ([::1]:34946 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bnr3j-0000g6-BH for geb-bug-gnu-emacs@m.gmane.org; Sat, 24 Sep 2016 13:48:19 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:37400) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bnr3X-0000ep-Bm for bug-gnu-emacs@gnu.org; Sat, 24 Sep 2016 13:48:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bnr3S-0002Pg-Ee for bug-gnu-emacs@gnu.org; Sat, 24 Sep 2016 13:48:06 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:56763) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bnr3S-0002PW-As for bug-gnu-emacs@gnu.org; Sat, 24 Sep 2016 13:48:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1bnr3R-0006mR-Uo for bug-gnu-emacs@gnu.org; Sat, 24 Sep 2016 13:48:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Laimonas =?UTF-8?Q?V=C4=97bra?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 24 Sep 2016 17:48:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 24439 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 24439-submit@debbugs.gnu.org id=B24439.147473924426014 (code B ref 24439); Sat, 24 Sep 2016 17:48:01 +0000 Original-Received: (at 24439) by debbugs.gnu.org; 24 Sep 2016 17:47:24 +0000 Original-Received: from localhost ([127.0.0.1]:34720 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bnr2p-0006lV-Mj for submit@debbugs.gnu.org; Sat, 24 Sep 2016 13:47:24 -0400 Original-Received: from nm4-vm6.bullet.mail.ne1.yahoo.com ([98.138.91.97]:40527) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bnr2o-0006lG-9d for 24439@debbugs.gnu.org; Sat, 24 Sep 2016 13:47:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1474739236; bh=JR4YQyzkOPONLtYrO2DiZ9PSlhMN3JC4766oHV8iM5E=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From:Subject; b=SgtXFED1L/M7IMzPw6Z5d1vcPLMIXq1KxGoXxDJwuXs0Qk4jNPuQ6kbDqZIDixtHuLHwREtw2T1ntgPOSE+0EMDmZrpCsCv8ujVgymv1BAiEUKjBdOYVAqiTVN9KMECU1bYwpcOiAGwW+BhnE6m+eAJVFFe+YXgXoXfS0ZVVgvcOvZhRDkvPw8qzjJFExJ0m0aNlH/jrg2E9lD8a9A3Jr3LjasXvSRTmq6iaVrfqqlF+Ys9wilOPMqHD8RnxhxQx2UpXZ+++55uTvMC6rcwJs1WaszqgD+ReddOytX4iWLcGgooa2ac0ZUTRWa338Tx3ls5U1R5VpAKnVny6zmT3nA== Original-Received: from [98.138.100.114] by nm4.bullet.mail.ne1.yahoo.com with NNFMP; 24 Sep 2016 17:47:16 -0000 Original-Received: from [98.138.226.58] by tm105.bullet.mail.ne1.yahoo.com with NNFMP; 24 Sep 2016 17:47:16 -0000 Original-Received: from [127.0.0.1] by smtp209.mail.ne1.yahoo.com with NNFMP; 24 Sep 2016 17:47:16 -0000 X-Yahoo-Newman-Id: 543886.98428.bm@smtp209.mail.ne1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: GKw6M94VM1lMQ3fdJ9Mzk5OYRLHyfXbMAk3HvYLqway24yx Zn1gugNlOWZXsltWFm8hyjs4IKl5wQx45Yt3wwa.EdafQUCpIfpzFUErJH1O eG_47KOb9asMwCkBIECksPigPnZgvTZ9yn_K3TML5h9.TCLuVkBbBpJWAYnl aYC_MYY0To0nyCDw4HiIKA0FQ37hZiH.jOS6q5XCqzdbJ91v72Y.z4XPqcjY OeMylIqkVjhlFX3L4jfgEEcMoKgX53efP9KroH.BkaQ05YjWrMrYNpcMrhUj k9OA3YlrxhvJG3gW9IGnnr5qseIgwrzJ8HBrAb27hTuzbV35vdxnoh_5vvel VARl455M9.MU5dEp_K39b5yFHY6JIrWyDCZ80tyoYNAoTZTBYcKIQW.S0M5R xFiXujyQWr3ZbAecfNyzgKUzb4V7bIUDO1tulCRRMKdIrnY59vo.sbgc7eSL TwpQVRfVbt6rwNbQ4OhVxVzR0wVnVBeYtGmbWyLYTudYfHCWxt.YZmr4Pnwc MSwRb_JMVGci5WjZA3etR3WFmZr2NzCqsKB_aCx2zJU6AcVKFMBU6GdjDJd. sCALL X-Yahoo-SMTP: _HanV_GswBBF01DkIFVlggE60r.1.Ajy974h In-Reply-To: <83h99g5ooh.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:123650 Archived-At: This is a multi-part message in MIME format. --------------080504070308030602030201 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Eli Zaretskii wrote: >> Sorry, that is not true (mistakenly thought, that fopen won't work with >> windows paths). Then i should really rebuild ispell with LIBDIR set to >> native path and it will work with Emacs. > > I think you don't even need that. You need to set ISPELL_DICTDIR in > the environment to point to that directory. > > (The reason I didn't suggest this earlier is that I didn't know Cygwin > can fopen Windows-style absolute file names.) Actually that won't work with current ispell.el, because LIBRARYVAR is completely ignored and dictionaries searched only in LIBDIR (though it can be overridden by LIBRARYVAR). Fixed this and other (-d with an absolute path) issues in attached patch. Below is a explanatory test: (require 'ispell) ispell ;; cygwin ispell reports its LIBDIR as (ispell-check-version) "/usr/local/lib" ;; and it's not a correct/existing windows path (file-exists-p "/usr/local/lib") nil (shell-command-to-string "cygpath -w /usr/local/lib") "C:\\cygwin64\\usr\\local\\lib " ;; so ispell.el still can not see valid/installed dictionaries (shell-command-to-string "ls -l /usr/local/lib") "total 1126 lrwxrwxrwx 1 Admin None 16 Jul 29 01:38 american.hash -> americanmed.hash -rw-r--r-- 1 Admin None 1125408 Jul 29 01:38 americanmed.hash -rw-r--r-- 1 Admin None 24095 Jul 29 01:38 english.aff lrwxrwxrwx 1 Admin None 16 Jul 29 01:38 english.hash -> americanmed.hash " (ispell-valid-dictionary-list) ("default") ;; Though now we can add dictionaries explicitly (-d with an absolute path) ispell-local-dictionary-alist nil (add-to-list 'ispell-local-dictionary-alist '("american" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-d" "c:/cygwin64/usr/local/lib/american.hash") nil iso-8859-1)) (("american" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-d" "c:/cygwin64/usr/local/lib/american.hash") nil iso-8859-1)) (add-to-list 'ispell-local-dictionary-alist '("english" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-d" "c:/cygwin64/usr/local/lib/english.hash") nil iso-8859-1)) (("english" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-d" "c:/cygwin64/usr/local/lib/english.hash") nil iso-8859-1) ("american" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-d" "c:/cygwin64/usr/local/lib/american.hash") nil iso-8859-1)) (ispell-valid-dictionary-list) ("american" "english" "default") ;; or we can set ispell LIBRARYVAR (default: ISPELL_DICTDIR) environment variable (setq ispell-local-dictionary-alist nil) nil (ispell-valid-dictionary-list) ("default") (setenv "ISPELL_DICTDIR" "c:/cygwin64/usr/local/lib") "c:/cygwin64/usr/local/lib" (setq ispell-library-directory (ispell-check-version)) "c:/cygwin64/usr/local/lib" (ispell-valid-dictionary-list) ("english" "american" "default") --------------080504070308030602030201 Content-Type: text/plain; charset=UTF-8; name="ispell.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="ispell.patch" LS0tIGxpc3AvdGV4dG1vZGVzL2lzcGVsbC5lbC5vcmlnCTIwMTUtMDQtMDIgMTA6MjM6MDYu MDAwMDAwMDAwICswMzAwCisrKyBsaXNwL3RleHRtb2Rlcy9pc3BlbGwuZWwJMjAxNi0wOS0y NCAxNzo1ODoyMS42Mzc4NDExMDAgKzAzMDAKQEAgLTg0OCw3ICs4NDgsMTIgQEAKICAgKGxl dCAoKGRlZmF1bHQtZGlyZWN0b3J5IChvciAoYW5kIChib3VuZHAgJ3RlbXBvcmFyeS1maWxl LWRpcmVjdG9yeSkKIAkJCQkgICAgdGVtcG9yYXJ5LWZpbGUtZGlyZWN0b3J5KQogCQkJICAg ICAgIGRlZmF1bHQtZGlyZWN0b3J5KSkKLQlyZXN1bHQgc3RhdHVzIGlzcGVsbC1wcm9ncmFt LXZlcnNpb24pCisJKGdldC1jb25maWctdmFyCisJIChsYW1iZGEgKHZhcikKKwkgICAod2hl biAocmUtc2VhcmNoLWZvcndhcmQKKwkJICAoY29uY2F0IHZhciAiID0gXFxcIlxcKC4rP1xc KVxcXCIiKSBuaWwgdCkKKwkgICAgIChtYXRjaC1zdHJpbmcgMSkpKSkKKwlyZXN1bHQgbGli dmFyIHN0YXR1cyBpc3BlbGwtcHJvZ3JhbS12ZXJzaW9uKQogCiAgICAgKHdpdGgtdGVtcC1i dWZmZXIKICAgICAgIChzZXRxIHN0YXR1cyAoaXNwZWxsLWNhbGwtcHJvY2VzcwpAQCAtODcw LDkgKzg3NSwxMyBAQAogCQkJCSAiLCAiCiAJCQkJIGlzcGVsbC12ZXJzaW9uKSkKIAkgICAg KG1lc3NhZ2UgIiVzIiByZXN1bHQpKQotCTs7IHJldHVybiBsaWJyYXJ5IGRpcmVjdG9yeS4K LQkoaWYgKHJlLXNlYXJjaC1mb3J3YXJkICJMSUJESVIgPSBcXFwiXFwoW14gXHRcbl0qXFwp XFxcIiIgbmlsIHQpCi0JICAgIChzZXRxIHJlc3VsdCAobWF0Y2gtc3RyaW5nIDEpKSkpCisJ OzsgcmV0dXJuIExJQkRJUiBvciBMSUJSQVJZVkFSIChvdmVycmlkZXMgTElCRElSKSBlbnYu CisJKHByb2duCisJICAoc2V0cSByZXN1bHQgKGZ1bmNhbGwgZ2V0LWNvbmZpZy12YXIgIkxJ QkRJUiIpCisJCWxpYnZhciAoZnVuY2FsbCBnZXQtY29uZmlnLXZhciAiTElCUkFSWVZBUiIp KQorCSAgKHdoZW4gbGlidmFyCisJICAgIChzZXRxIGxpYnZhciAoZ2V0ZW52IGxpYnZhcikp CisJICAgICh1bmxlc3MgKG1lbWJlciBsaWJ2YXIgJyhuaWwgIiIpKSAoc2V0cSByZXN1bHQg bGlidmFyKSkpKSkKICAgICAgIChnb3RvLWNoYXIgKHBvaW50LW1pbikpCiAgICAgICAoaWYg KG5vdCAobWVtcSBzdGF0dXMgJygwIG5pbCkpKQogCSAgKGVycm9yICIlcyBleGl0ZWQgd2l0 aCAlcyAlcyIgaXNwZWxsLXByb2dyYW0tbmFtZQpAQCAtMTQ2MywyMyArMTQ3MiwyOSBAQAog CiAgIChsZXQgKChkaWN0cyAoYXBwZW5kIGlzcGVsbC1sb2NhbC1kaWN0aW9uYXJ5LWFsaXN0 IGlzcGVsbC1kaWN0aW9uYXJ5LWFsaXN0KSkKIAkoZGljdC1saXN0IChjb25zICJkZWZhdWx0 IiBuaWwpKQotCW5hbWUgZGljdC1ibmFtZSkKKwkoZGljdC1sb2NhdGUKKwkgKGxhbWJkYSAo ZGljdCAmb3B0aW9uYWwgZGlyKQorCSAgIChsb2NhdGUtZmlsZSAoZmlsZS1uYW1lLW5vbmRp cmVjdG9yeSBkaWN0KQorCQkJYCgsKG9yIGRpciAoZmlsZS1uYW1lLWRpcmVjdG9yeSBkaWN0 KSkpCisJCQkodW5sZXNzIChmaWxlLW5hbWUtZXh0ZW5zaW9uIGRpY3QpICcoIi5oYXNoIiAi LmhhcyIpKSkpKQorCW5hbWUgZGljdC1leHBsdCBkaWN0LWJuYW1lKQogICAgIChkb2xpc3Qg KGRpY3QgZGljdHMpCiAgICAgICAoc2V0cSBuYW1lIChjYXIgZGljdCkKLQkgICAgZGljdC1i bmFtZSAob3IgKGNhciAoY2RyIChtZW1iZXIgIi1kIiAobnRoIDUgZGljdCkpKSkKLQkJCSAg IG5hbWUpKQotICAgICAgOzsgSW5jbHVkZSBpZiB0aGUgZGljdGlvbmFyeSBpcyBpbiB0aGUg bGlicmFyeSwgb3IgZGlyIG5vdCBkZWZpbmVkLgotICAgICAgKGlmIChhbmQKLQkgICBuYW1l Ci0JICAgOzsgRm9yIEFzcGVsbCwgd2UgYWxyZWFkeSBrbm93IHdoaWNoIGRpY3Rpb25hcmll cyBleGlzdC4KLQkgICAob3IgaXNwZWxsLXJlYWxseS1hc3BlbGwKLQkgICAgICAgOzsgSW5j bHVkZSBhbGwgZGljdGlvbmFyaWVzIGlmIGxpYiBkaXJlY3Rvcnkgbm90IGtub3duLgotCSAg ICAgICA7OyBTYW1lIGZvciBIdW5zcGVsbCwgd2hlcmUgaXNwZWxsLWxpYnJhcnktZGlyZWN0 b3J5IGlzIG5pbC4KLQkgICAgICAgKG5vdCBpc3BlbGwtbGlicmFyeS1kaXJlY3RvcnkpCi0J ICAgICAgIChmaWxlLWV4aXN0cy1wIChjb25jYXQgaXNwZWxsLWxpYnJhcnktZGlyZWN0b3J5 Ci0JCQkJICAgICAgIi8iIGRpY3QtYm5hbWUgIi5oYXNoIikpCi0JICAgICAgIChmaWxlLWV4 aXN0cy1wIChjb25jYXQgaXNwZWxsLWxpYnJhcnktZGlyZWN0b3J5Ci0JCQkJICAgICAgIi8i IGRpY3QtYm5hbWUgIi5oYXMiKSkpKQorCSAgICA7OyBFeHBsaWNpdGx5ICh2aWEgaXNwZWxs LWFyZ3MpIHNwZWNpZmllZCBkaWN0aW9uYXJ5LgorCSAgICBkaWN0LWV4cGx0IChjYXIgKGNk ciAobWVtYmVyICItZCIgKG50aCA1IGRpY3QpKSkpCisJICAgIGRpY3QtYm5hbWUgKG9yIGRp Y3QtZXhwbHQgbmFtZSkpCisgICAgICAoaWYgKGFuZCBuYW1lCisJICAgICAgIChvcgorCQk7 OyBJbmNsdWRlIGFsbCBmb3IgQXNwZWxsICh3ZSBhbHJlYWR5IGtub3cgZXhpc3RpbmcgZGlj dHMpCisJCWlzcGVsbC1yZWFsbHktYXNwZWxsCisJCTs7IEluY2x1ZGUgYWxsIGlmIGBpc3Bl bGwtbGlicmFyeS1kaXJlY3RvcnknIGlzIG5pbCAoSHVuc3BlbGwpCisJCShub3QgaXNwZWxs LWxpYnJhcnktZGlyZWN0b3J5KQorCQk7OyBJZiBleHBsaWNpdCAoLWQgd2l0aCBhbiBhYnNv bHV0ZSBwYXRoKSBhbmQgZXhpc3RpbmcgZGljdC4KKwkJKGFuZCBkaWN0LWV4cGx0CisJCSAg ICAgKGZpbGUtbmFtZS1hYnNvbHV0ZS1wIGRpY3QtZXhwbHQpCisJCSAgICAgKGZ1bmNhbGwg ZGljdC1sb2NhdGUgZGljdC1leHBsdCkpCisJCTs7IElmIGRpY3QgbG9jYXRlZCBpbiBgaXNw ZWxsLWxpYnJhcnktZGlyZWN0b3J5Jy4KKwkJKGZ1bmNhbGwgZGljdC1sb2NhdGUgZGljdC1i bmFtZSBpc3BlbGwtbGlicmFyeS1kaXJlY3RvcnkpKSkKIAkgIChwdXNoIG5hbWUgZGljdC1s aXN0KSkpCiAgICAgZGljdC1saXN0KSkKIAo= --------------080504070308030602030201--