From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id 4HubJiXF5F6TVQAA0tVLHw (envelope-from ) for ; Sat, 13 Jun 2020 12:23:01 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id 1DV1IiXF5F6bPAAA1q6Kng (envelope-from ) for ; Sat, 13 Jun 2020 12:23:01 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id CF1D19403E9 for ; Sat, 13 Jun 2020 12:23:00 +0000 (UTC) Received: from localhost ([::1]:60778 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jk5Ba-0002zc-JH for larch@yhetil.org; Sat, 13 Jun 2020 08:22:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57790) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jk5B9-0002zN-9B for emacs-orgmode@gnu.org; Sat, 13 Jun 2020 08:22:31 -0400 Received: from mail-wr1-x434.google.com ([2a00:1450:4864:20::434]:42406) by eggs.gnu.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jk5B7-0006Fz-JD for emacs-orgmode@gnu.org; Sat, 13 Jun 2020 08:22:30 -0400 Received: by mail-wr1-x434.google.com with SMTP id p5so12485572wrw.9 for ; Sat, 13 Jun 2020 05:22:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=ZR93idXbOBbVImnzR+Ej8RH/GJa130gs+lVBOzzTSxs=; b=pC9PtCymAZvFDSvygujAaBOqEdcOWFJOmGCo5zp3nclda9W3onChjjaCTdYZXc8d4O nHfl7t7eLmem0mX1M92MjIBHpF7D4DqWIc8idulrkM77kteAzxAheaCe8QRaZlQnuOmG YFH/AYtwS10xpFBgWYoGV873xBoIVW+7B6I1ufzdNcz5tvybcr9c3cL0Qt65VwWor7Kd YvaRN7nWPhKgIgq1p4yfeUj9Vd9sXkuhm8P4RGR1LPJ24egYqnaysgTXxSZXZT6inshx 8nGNKtHKn1imWre47EtVcTqQqMaunorqc6dC8NGtrdI9SomgRoJTMnn4IlkesdsmNvrO pvzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=ZR93idXbOBbVImnzR+Ej8RH/GJa130gs+lVBOzzTSxs=; b=JWLphNArX1fr/CUSEKEck4oSjDOAq2xovtkXGYhwZTa4ZXrWpW4vTukZyDBoNTJeGC e1+lfPD+jjVC2H4C9WjadwW21TGlHZLXCoB5lx/NCPR16rNWTSVZVdqiwdcWzYxXK1dD 6LfhrAWx7KcXszQEjuN/0RCgea0/YFti0YVv3rSIzccm18Ud51FwfPH+147cSon618IZ GObjYq/dOgqiUbPjrs+N1b2uwKmIJb1etm59gZ0NRK6ZUPjldiVQT2IP+TJ8sMVj3bjQ pzSAYKcEeW5GwP4h199jpnismqRK992ONreadhZ0Od5WYBE2qSv/OIrq2NWh4zOgRBBC JQFw== X-Gm-Message-State: AOAM533HbwmuhFXHHWszw5docjxgTpx8ULo3KaeCeWgqdm7fLBFzzGXL /eq5y0wNYRoXp14ZaumThBfTsRxn X-Google-Smtp-Source: ABdhPJxU/3e7SRY1BY8PzF4dl9jUtBS2OU4MwU3mvHiWfg8Yb3YrPpzg9RAbA0pzcfB5qtgLmMKaSA== X-Received: by 2002:a5d:4282:: with SMTP id k2mr19358434wrq.196.1592050942318; Sat, 13 Jun 2020 05:22:22 -0700 (PDT) Received: from freegnu (24.183.22.109.rev.sfr.net. [109.22.183.24]) by smtp.gmail.com with ESMTPSA id d2sm15016876wrs.95.2020.06.13.05.22.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 13 Jun 2020 05:22:21 -0700 (PDT) From: Jeremie Juste To: John Ciolfi Subject: Re: Bug: Option to disable evaluation of code blocks during export [9.3.7 (9.3.7-dist @ /PATH/TO/org/install/emacs/site-lisp/org/)] References: <87wo4di96o.fsf@nicolasgoaziou.fr> <87sgf0is40.fsf@nicolasgoaziou.fr> <87imfvguxw.fsf@nicolasgoaziou.fr> Date: Sat, 13 Jun 2020 14:22:19 +0200 In-Reply-To: <87imfvguxw.fsf@nicolasgoaziou.fr> (Nicolas Goaziou's message of "Sat, 13 Jun 2020 11:46:03 +0200") Message-ID: <87sgezdukk.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a00:1450:4864:20::434; envelope-from=jeremiejuste@gmail.com; helo=mail-wr1-x434.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. 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=_AUTOLEARN X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "emacs-orgmode@gnu.org" Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=fail (rsa verify failed) header.d=gmail.com header.s=20161025 header.b=pC9PtCym; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Spam-Score: 0.09 X-TUID: oL/3WAG5i8XT Hello, I understand the frustration of not being able to bend emacs to ones immediately. But many times my initial workflow turned out not to be the best one. I just wanted to share my workflow hoping that it might be a solution to the original post problem. >> Consider the scenario where a number of people are working on a common >> overall "book" which is constructed from many org-files. The >> "hardcoded" setting of :eval no-export header in individual blocks >> would mean that I cannot interactively enable or disable the >> evaluation of the blocks. At some point, I experienced the same problem and as the document get larger and larger it tends to complicate the management of code block evaluation. I have found two solutions to this problem using existing org-mode features. * First use global property header :eval yes, but evaluate only the sub-tree of interest when the need comes. For a book it might be a part, a chapter (even a paragraph by artificially creating a sub-tree at the desired point). In that way you have only one trigger to push to disable evaluation for the entire document. To makes things quicker one can define a way to change :eval from yes to no very quickly. (I use point registers for this purpose (info "(emacs) Registers"), but you could imagine a function with key-bindings) * Second The second solution could be to use checkpoints with cache for instance. Let say that, one wants to work on Part 1 only and wants to evaluate code just for this part then. The following work flow might be suitable. * Part 1 :PROPERTIES: :header-args: :eval yes :cache yes :END: #+BEGIN_SRC matlab A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1] #+END_SRC ** strip the header row #+BEGIN_SRC matlab A = [1 ; 2], B = A.', C = transpose(A) #+END_SRC * Part 2 :PROPERTIES: :header-args: :eval no :cache yes :END: #+BEGIN_SRC matlab ones(3,3) #+END_SRC HTH, Jeremie