From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: dalanicolai Newsgroups: gmane.emacs.devel Subject: Request for review `image-roll.el` for Emacs core (or ELPA) Date: Mon, 18 Apr 2022 23:11:43 +0200 Message-ID: Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000ac6eba05dcf435b8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="27373"; mail-complaints-to="usenet@ciao.gmane.io" To: Emacs Devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Apr 18 23:13:21 2022 Return-path: Envelope-to: ged-emacs-devel@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 1ngYgS-0006xC-R3 for ged-emacs-devel@m.gmane-mx.org; Mon, 18 Apr 2022 23:13:20 +0200 Original-Received: from localhost ([::1]:47768 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ngYgR-0008Kk-JD for ged-emacs-devel@m.gmane-mx.org; Mon, 18 Apr 2022 17:13:19 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:60734) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ngYf8-0007NO-8F for emacs-devel@gnu.org; Mon, 18 Apr 2022 17:11:58 -0400 Original-Received: from mail-yb1-xb35.google.com ([2607:f8b0:4864:20::b35]:42756) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ngYf6-0004FV-9j for emacs-devel@gnu.org; Mon, 18 Apr 2022 17:11:57 -0400 Original-Received: by mail-yb1-xb35.google.com with SMTP id p65so27656360ybp.9 for ; Mon, 18 Apr 2022 14:11:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=UBuROGyY6wuRL8t7NvOzk/jCAdxPft2awjBPnYAygTo=; b=U+C+FEF0roy3kHMWz5m4nFSfxQA4biCUrVGBABBokdg0VkUDCORicz2H6WqumusZwj kdsT+AKePs52VHaxx7vlvyUCVZ6oFeMCzeP8qVaWqpazdTXv5y5iP5iFnUEM1YAJ9d8I oh2ycARPMWKqTlsAA8dX9iMD86KpcOkq0/qn3cUnieYC1sfFB1jfO2jdxh00dZZQ4jxF QtKntPWhc90atFsNnMztq/XoPHNltcmCWHOF1LJP412JzGpR2LoBdBoIbhblRWF07/lU 5+87D0Q8hKjrzbffw97fOjoR8AR5jiU/uXDXMtibQvQh6bgt8rbs9ITws51stBJ/2gXH uq5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=UBuROGyY6wuRL8t7NvOzk/jCAdxPft2awjBPnYAygTo=; b=M+ZpL/cKxZ5mPzxQnMP9Cg6jDbKxIM7T32kJAOZV2YdHg9l7D9OxLninBcGTOnqwmj d50zQoEvbcKZRdR9yqH3K3aJEev1mDkuaY3gtR1EAYhu9YSFamRZvVmWc1RlvrosJoOr ghGqI+tZplASziu1CmeVsT8zRf/Unfn9xStWmd9qgBxMD6C622tYE4Z+oHatp0atTwHA mX1NwJmNS+PcuJcYUSrK4U+V7s/Uw+7q06+pnoLP0tNk15IXXANwCr3Q2azXuFdQxZ+B dhXvhyyxYDmK36V2dWMv9TdX7TyNtMbkT4+DMvo7BW4m3Es78v7R5iothhAkp/szxkTT cc0w== X-Gm-Message-State: AOAM531HF/uUAsHsPfZxlFIIQ6z0BcAFYADneSbntHirPaXm1OyIrHOs C+lVsaZHREU6cD3UEpeqKlwzrCFzNqVaSBg7XtOWbXxKMCBLrg== X-Google-Smtp-Source: ABdhPJyhFj4ivdH+0lz4qi7mLGf8KzYuDD6YmDA3LoSTZxTanyYkge1vIvtF0c57bBer5+MOubxP5uL57s6EOBy4zE8= X-Received: by 2002:a05:6902:708:b0:645:83c:167f with SMTP id k8-20020a056902070800b00645083c167fmr6636302ybt.277.1650316314176; Mon, 18 Apr 2022 14:11:54 -0700 (PDT) Received-SPF: pass client-ip=2607:f8b0:4864:20::b35; envelope-from=dalanicolai@gmail.com; helo=mail-yb1-xb35.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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:288630 Archived-At: --000000000000ac6eba05dcf435b8 Content-Type: text/plain; charset="UTF-8" I have written a 'scroll/image roll' package that could be considered an extension to image-mode. The package provides a 'displaying' mechanism for displaying images/documents as a single 'virtual scroll'. The main feature/advantage of the package is that it allows for the 'much requested' continuous scrolling. In the package I have extracted (and improved) the 'display engine' (or whatever to call it), from some earlier experiments of implementing continuous scroll into doc-view and pdf-tools. The current package can be used for displaying documents like books, but also for displaying a selection of images. I first thought of calling it papyrus.el (because scroll and bookroll, would clutter too much the Emacs namespaces), but finally I thought, as it can be used to show images on a toll, and can be considered an extension to image-mode, it would be better to call it image-roll.el (or maybe just roll), opinions and suggestions about the name are very welcome. For testing, he package contains a `papyrus-demo` function that can simply be called after loading the package (best after starting from emacs -Q). Additionally, as a final step, and as an example of how the package can be used, I have included an `image-roll-directory` function in the last section (of 38 lines only) in the file, to provide an example of how the package can be used to display all images within some directory on a 'roll'. This is only a minimal example; as this does not have my priority, I did not bother to make it 'fit/scale' the images. However, I have written also an extension for `pdf-tools`, that provides a toggle function so that users can toggle between the 'single' page displaying, or the `image-roll` displaying. That file can be found here . That file can simply be downloaded and loaded (after first setting the path to image-roll.el at the top of the file, of course this requires pdf-tools to be installed). I would be happy with any feedback, and info about if and how (what is required) this could be added to Emacs core. If you think this package is not a good candidate for core (after the required modifications), then I would also be happy if it could be added to ELPA (although the package on itself is not very interesting, it should get used by 'extensions' e.g. for pdf-tools, dired, doc-view, djvu.el etc.). --000000000000ac6eba05dcf435b8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I have written a 'scroll/image roll' package = that could be considered an extension to image-mode.
The package = provides a 'displaying' mechanism for displaying images/documents a= s a single 'virtual scroll'. The main feature/advantage of the pack= age is that it allows for the 'much requested' continuous scrolling= .

In the package I have extracted (and improved) t= he 'display engine' (or whatever to call it), from some earlier exp= eriments of implementing continuous scroll into doc-view and pdf-tools.

The current package can be used for displaying docume= nts like books, but also for displaying a selection of images. I first thou= ght of calling it papyrus.el (because scroll and bookroll, would clutter to= o much the Emacs namespaces), but finally I thought, as it can be used to s= how images on a toll, and can be considered an extension to image-mode, it = would be better to call it image-roll.el (or maybe just roll), opinions and= suggestions about the name are very welcome.

For = testing, he package contains a `papyrus-demo` function that can simply be c= alled after loading the package (best after starting from emacs -Q).
<= div>=C2=A0Additionally, as a final step, and as an example of how the packa= ge can be used, I have included an `image-roll-directory` function in the l= ast section (of 38 lines only) in the file, to provide an example of how th= e package can be used to display all images within some directory on a '= ;roll'.
This is only a minimal example; as this does not have= my priority, I did not bother to make it 'fit/scale' the images.

However, I have written also an extension for `= pdf-tools`, that provides a toggle function so that users can toggle betwee= n the 'single' page displaying, or the `image-roll` displaying. Tha= t file can be found here. That file can simply be dow= nloaded and loaded (after first setting the path to image-roll.el at the to= p of the file, of course this requires pdf-tools to be installed).

I would be happy with any feedback, and info about if and = how (what is required) this could be added to Emacs core. If you think this= package is not a good candidate for core (after the required modifications= ), then I would also be happy if it could be added to ELPA (although the pa= ckage on itself is not very interesting, it should get used by 'extensi= ons' e.g. for pdf-tools, dired, doc-view, djvu.el etc.).
--000000000000ac6eba05dcf435b8--