From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id mANwHOgceWJJDQAAbAwnHQ (envelope-from ) for ; Mon, 09 May 2022 15:53:44 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id aIhwHOgceWKdBAAA9RJhRA (envelope-from ) for ; Mon, 09 May 2022 15:53:44 +0200 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 7663F1DFCC for ; Mon, 9 May 2022 15:53:43 +0200 (CEST) Received: from localhost ([::1]:51606 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1no3pW-0000DK-IK for larch@yhetil.org; Mon, 09 May 2022 09:53:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56796) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1no3jR-0000SM-Qx for emacs-orgmode@gnu.org; Mon, 09 May 2022 09:47:25 -0400 Received: from mail-qv1-xf33.google.com ([2607:f8b0:4864:20::f33]:38453) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1no3jP-0004Ob-Sp for emacs-orgmode@gnu.org; Mon, 09 May 2022 09:47:25 -0400 Received: by mail-qv1-xf33.google.com with SMTP id n10so984960qvi.5 for ; Mon, 09 May 2022 06:47:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:references:user-agent:from:to:cc:subject:date:in-reply-to :message-id:mime-version; bh=R9rMdwLJBxxFT4DHw/baS3BEbtm8ddxHH8Ps79u2VoM=; b=bDrtMBxJUKSz7tIaIFUEMTY/7FZdFTa2HmSYfvB5TYsE1vI1WPjbODMMs79+8xgHrJ OATxrtk2f4JHXgtAmtO3zlLqnNP7X+kdmzEiSdCcjlD9ESjWi6O3C3skOyubBNAqADb6 7R4T4d/fDWW8rgm9DasxkFOVfx2kJBV9frFGZp+6xeP/yBuhusjnIGbpff2qg3mT05fP hP7Had01uarD2wXffIzCN8EPr0LKKPnOxKGsI3CYF9RxOZ9q5n/C8LHFqb0b0hMQ4cH7 f9LiO4+oXQJYbSvKFe+zAF9VcjP+lr+NWSwiAGjGEX69QuKhLKHFWNEzptjW7pbg41PV Povw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:references:user-agent:from:to:cc:subject :date:in-reply-to:message-id:mime-version; bh=R9rMdwLJBxxFT4DHw/baS3BEbtm8ddxHH8Ps79u2VoM=; b=WHKT3mSUfdQvJduwIvc1IO2oesluzcyPZtkemlYraUfp8nkCAcU4lQZZ9TdyaINL9x +QNjXGc0HhmeX1+eNjZX5JUxR0Imq+7uGkanKQTUuOV5IsS3/vzwYCz1ugrA1UIUjd1I Vb790OCwzBdfmG6cJEuOH0daCp4MY9rioGeh5oMf8aGwAijUEi+Vj3SHZxb9rvt1EeT3 XKjsJ8SUH5dDco0mnYyoKJa+MHgc9M28THFcek0xDIGkQKnl98Sh/GJxg39WZMK1k/gs EqibfLB15Cv/W6YW2HFZUv1UOUYoiX+IVZgtoSKNVITk4lENx0XRRuSaUlfnIsxAHQJA y5/g== X-Gm-Message-State: AOAM532hu4FdPkSpA7kv6Lm3KkvM/sFhMbmoT2OOUhYuATMKlxZEqAAJ 75cickwB+qoycVnsHYJYeyvHd+HvuEM= X-Google-Smtp-Source: ABdhPJy5sb8FAjByy8rLa06uK7RZ7511zgwWmd4X+E2EfSXGigUCep6g2LW3D/VE3GFERjBmTW+lRA== X-Received: by 2002:a05:6214:d08:b0:45a:95b5:9c9c with SMTP id 8-20020a0562140d0800b0045a95b59c9cmr13251214qvh.69.1652104042041; Mon, 09 May 2022 06:47:22 -0700 (PDT) Received: from Johns-iMac.local ([2601:547:901:82e0:5477:7e71:735b:78c3]) by smtp.gmail.com with ESMTPSA id j17-20020ac874d1000000b002f39b99f6bdsm7877443qtr.87.2022.05.09.06.47.21 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 09 May 2022 06:47:21 -0700 (PDT) References: <87wnewufrz.fsf@mat.ucm.es> User-agent: mu4e 1.6.10; emacs 28.0.90 From: John Kitchin To: Uwe Brauer Cc: emacs-orgmode@gnu.org Subject: Re: how to best correct exams (code matlab) using org mode (and tables) Date: Mon, 09 May 2022 08:39:46 -0400 In-reply-to: <87wnewufrz.fsf@mat.ucm.es> Message-ID: MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::f33; envelope-from=johnrkitchin@gmail.com; helo=mail-qv1-xf33.google.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URI_DOTEDU=1.246 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1652104424; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=R9rMdwLJBxxFT4DHw/baS3BEbtm8ddxHH8Ps79u2VoM=; b=AgiaIDitVw0q02y5X4Cu/59NcNMEqhCPuhK1NA8tNDiNhqZ3cp04d6iMvUG4p8pq6AlSZd 8vbSMWvb5HyxIgEvPFqPMhyiKLgm6XcxBNUGdnf7gx2TWxdK/7lru/d/Cff1xmWdYrSWgE JNwfqu000l8OWV53YiplWIXrxR0BmDWPnvIa88ZhoMekkpTcD9y2JP9wY9vIkwMn8Y9zqW Z7t9q1rdJogee0dn2y/FEGAINUMFvgsy8FvVckhES24JMa2aJCU5PuarcLepLI0l86yYql vaJs822ke0b83mJB+x4TT+eHYmd6MELcjayf9JmSbtWWsn9HdXlEJiRscfVe4Q== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1652104424; a=rsa-sha256; cv=none; b=D1rP64qDHybEfF1rHF628ghzWbx7B/XrSu6mKevKDmQR2xYRVmcko1nIk/Hs7INhy9wwoj ioTt5JT3d8j9sCentRH+Bb9BWwy8ZWyiBIgcVutACPCA1DmVO8IN7O27KxrRqt6euC8Ofp ZeHGl5X82jeLWu9dnJYKPhyNA+F5whdpOPqeAcqC07hQHgGbNVUH+yDwfk7HJge/WdlC27 2OKiNp4nKpZg7OZG9DdmSDkOQhUVkEMo6+KgR5vs13zHfYBHZspQJsGmXWliRcmUuZ2wSM 0KRodBIgue0AeU94J73WQi7RcUVwxrNNTy88LXJeI8hDNnRwCCgy9tLFfzz5PQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=bDrtMBxJ; dmarc=fail reason="SPF not aligned (relaxed)" header.from=andrew.cmu.edu (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 5.70 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=bDrtMBxJ; dmarc=fail reason="SPF not aligned (relaxed)" header.from=andrew.cmu.edu (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 7663F1DFCC X-Spam-Score: 5.70 X-Migadu-Scanner: scn0.migadu.com X-TUID: YOOqCqUe3u0j I guess the best thing to do would be some combination of `htmlize-buffer' and adding tooltips to the markups. I don't see a super clear path to that at the moment. The htmlize-buffer is straightforward, and it would show where your remarks are. Getting from marginalia.org to tooltips in the right place though is not as straightforward. htmlize-buffer is only necessary if you want to see the syntax in the buffer. Here is some rough code that wraps the file in
 and
makes the text you added remarks on have tooltips associated with your
remarks. You could then return the feedback.html file.


#+BEGIN_SRC emacs-lisp
(let* ((hls (sort (org-remark-highlights-get) (lambda (a b) (> (caadr a) (caadr b)))))
       (notes (cl-loop for (key (start . end) type) in hls
		       collect
		       (progn
			 (with-current-buffer (org-remark-notes-buffer-get-or-create)
			   (goto-char
			    (org-find-property org-remark-prop-id key))
			   (save-restriction
			     (org-narrow-to-subtree)
			     (org-end-of-meta-data t)
			     (buffer-substring (point) (point-max))))))))

  (with-temp-file "feedback.html"    
    (insert-file-contents "some-file")
    
    (cl-loop for (key (start . end) type) in hls for note in notes
	     do
	     
	     (cl--set-buffer-substring start end
		   (format "%s"
			   note
			   (buffer-substring start end))))   
    (goto-char (point-min))
    (insert "
")
    (goto-char (point-max))
    (insert "
")) (browse-url "feedback.html")) #+END_SRC Uwe Brauer writes: > Hi > > I came around https://kitchingroup.cheme.cmu.edu/blog/2013/10/23/Writing-exams-in-org-mode/ > > Which is a bit outdated. > > My use case are to correct of matlab files, so usually I have a single org file with a table and insert the results. > > However what I missing is that my comments, and observations are difficult to track. > > I am now experimenting with org-remark putting the remarks and marks in the property sections of headers and use than > > columnview > like > > #+begin_src > #+BEGIN: columnview :maxlevel 2 :skip-empty-rows t :indent nil :hlines 2 :format "%5TODO(Status) %5Ap(Name) %5com(Comment) %5Ej1(Ej1/20) %5Ej2(Ej2/25) %5Ej3(Ej3/55) %5Res(Result)" > #+END: > #+end_src > > What do others use? > > Regards > > Uwe Brauer -- Professor John Kitchin Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 @johnkitchin http://kitchingroup.cheme.cmu.edu Pronouns: he/him/his