From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eduardo Ochs Newsgroups: gmane.emacs.help Subject: Re: Workshop to save M$ Windows users - help needed Date: Mon, 4 Oct 2021 00:06:52 -0300 Message-ID: References: <837deua1sd.fsf@gnu.org> <834k9y9ysj.fsf@gnu.org> <87r1d151x1.fsf@logand.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="11305"; mail-complaints-to="usenet@ciao.gmane.io" Cc: help-gnu-emacs To: Tomas Hlavaty Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Mon Oct 04 05:08:06 2021 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mXEKj-0002hA-3o for geh-help-gnu-emacs@m.gmane-mx.org; Mon, 04 Oct 2021 05:08:05 +0200 Original-Received: from localhost ([::1]:40216 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mXEKg-00031O-Dn for geh-help-gnu-emacs@m.gmane-mx.org; Sun, 03 Oct 2021 23:08:02 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59962) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mXEJo-00031E-4p for help-gnu-emacs@gnu.org; Sun, 03 Oct 2021 23:07:08 -0400 Original-Received: from mail-pf1-x42e.google.com ([2607:f8b0:4864:20::42e]:44869) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mXEJm-0008J5-EI; Sun, 03 Oct 2021 23:07:07 -0400 Original-Received: by mail-pf1-x42e.google.com with SMTP id 145so13250827pfz.11; Sun, 03 Oct 2021 20:07:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=quqlSHJKXRKTRKok7rGyacGsJ3N49FlStOg2QbS9L/8=; b=CezwR0/O4GrnTEB0qN8J/aIHSEJNgY+WrFLeq3NvQF68FvNfMAYZAhUglsjlt1HjcO UE24+Fu7AaDy9ZiT4Rrc5yrx7mp5Pf/4dSBHIHL7hI80zL/7Jy5/1mHBDphHI6DQBhng m8Moqdn71s3bvDsCdtV1fasZ/ltUIIlhE7nDfnzYKeeR1xowMxX7GbWhl08ZTtjQHJux ogvTCzl6m/bBH/6BJLgpafAwrSZBecauW++LSdOyMUiKzYtrH5yZdpuLccSVR9ObFGsz PcoZg+m8jBAEmViv5hcTX6uoF2Q/v/RCjRhqsnnXAa0eKOT6JEcsIBGeVWYAQVk0uLU5 lJsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=quqlSHJKXRKTRKok7rGyacGsJ3N49FlStOg2QbS9L/8=; b=I/qy9OyV8Kc71AlWeafbfck6kKj7XiNAnpqEof8E+ffifNtB0oYee0Oa2rzI974+Xm 6Kdxs0ZAf/2jJ0aaHb7zcci1dH4FRODR4Ma8BOBjd3dhBgZBxgWBWTjs2P9VY0mmbsVL IrmDzb8WL66sCm5IOj7yQPbvmvCOXejZOmpiU+ujcAzmRgFgMi68dUVZCBLvM6GAImy9 JeaDsvw00W/s4MjLXYIfWmLNcwXMya8OW8NTbBr7kez7X8v3SMRDwSnhJUhkwTzPYNNn C0qzRWm49d9LJ7oA8Ut1oM7BYyEXqnpLgjj2ocRIRJPrEAYGbe8ITifKShRIldf61OhU KxqA== X-Gm-Message-State: AOAM530snsZrJV/f8SPcBo+3A3+A4brRA5YRmSWAwi27CwkeJ/aj078M mGrvg5c9UV+39fJdVSkHZfontTpm0OKLPCXOVtI+37GmxCE= X-Google-Smtp-Source: ABdhPJwuiUZz3HYjWYhdAxwf403MpSwu/6jBAxvwJr4ZsEKFJgcKgxBwkb7FExMxeFYCLYzITHLoDmc7e+aQhigQPy8= X-Received: by 2002:a05:6a00:9c:b0:448:603f:720b with SMTP id c28-20020a056a00009c00b00448603f720bmr22892193pfj.66.1633316824425; Sun, 03 Oct 2021 20:07:04 -0700 (PDT) In-Reply-To: <87r1d151x1.fsf@logand.com> Received-SPF: pass client-ip=2607:f8b0:4864:20::42e; envelope-from=eduardoochs@gmail.com; helo=mail-pf1-x42e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:133529 Archived-At: On Sun, 3 Oct 2021 at 16:44, Tomas Hlavaty wrote: > > Emacs should be able to download the files even on Windows without > installing wget, e.g. this should work: > > (eww "http://www.gnu.org/software/emacs/emacs-paper.html") > > There is a variable url-cache-directory suggesting that caching can > happen transparently. Maybe you could even supply your own > url-cache-creation-function. Or figure out what functions you could > reuse to simulate wget and your caching strategy in pure Emacs more > closely. > > I know you want to do it manually, but why bother beginners with that? Hi Tomas, I've tried to implement something like what you are proposing. It seems that the right tool for that, at least for the simplest cases, is `url-retrieve-synchronously'. It is documented here: (find-node "(url)Retrieving URLs") (find-node "(url)Retrieving URLs" "url-retrieve-synchronously") (find-node "(url)Dealing with HTTP documents") Straight.el uses `url-retrieve-synchronously' here: https://github.com/raxod502/straight.el#getting-started Try this: (find-ebuffer (url-retrieve-synchronously "https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el" 'silent 'inhibit-cookies) "\n\n") The "\n\n" will put the point after the response headers. I thought that it would be trivial to write a "fake wget" for eshell using `url-retrieve-synchronously'. The part of adding a new builting seems to be easy, see: (find-node "(eshell)Built-ins" "eshell/ls") (find-eshellfile "") (find-eshellgrep "grep --color=auto -nH --null -e eshell/ *.el") but I couldn't get the error checking right, and at some point I stopped trying. Then I saw this thread, https://lists.gnu.org/archive/html/emacs-devel/2021-03/threads.html#01359 and it convinced me that using a real wget would be the right thing to do. I have some code for playing with url-retrieve here, if you'd like to try: http://angg.twu.net/elisp/url-retrieve-test.el http://angg.twu.net/elisp/url-retrieve-test.el.html (find-wgeta-elisp "http://angg.twu.net/elisp/url-retrieve-test.el") Cheers, Eduardo Ochs http://angg.twu.net/#eev