From mboxrd@z Thu Jan 1 00:00:00 1970 From: Carsten Dominik Subject: Re: Re: Integrating ctags & org mode (patch) Date: Fri, 18 Dec 2009 17:00:30 +0100 Message-ID: <8716B67D-2747-410C-AFB4-D158D107864E@gmail.com> References: <2AC5C31A-0ABA-4163-9F4F-9F0D26A6F538@gmail.com> Mime-Version: 1.0 (Apple Message framework v936) Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NLgOe-0003p3-5b for emacs-orgmode@gnu.org; Fri, 18 Dec 2009 12:13:44 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NLgOZ-0003lq-Hy for emacs-orgmode@gnu.org; Fri, 18 Dec 2009 12:13:43 -0500 Received: from [199.232.76.173] (port=53328 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NLgOZ-0003lk-Co for emacs-orgmode@gnu.org; Fri, 18 Dec 2009 12:13:39 -0500 Received: from ey-out-1920.google.com ([74.125.78.148]:16259) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NLgOZ-0000VX-0q for emacs-orgmode@gnu.org; Fri, 18 Dec 2009 12:13:39 -0500 Received: by ey-out-1920.google.com with SMTP id 4so848585eyg.34 for ; Fri, 18 Dec 2009 09:13:38 -0800 (PST) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Paul Sexton Cc: emacs-orgmode@gnu.org Hi Paul, I have now made a new hook `org-open-link-functions'. Each function in this hook will be called with the link text as the single argument. If the function feels responsible for this link, it should follow the link and return a non-nil value. If it does not feel responsible for the link, it should return nil. Can I persuade you to change your implementation to use this hook instead of a patch modifying org.el? The we could wrap this functionality into org-etags.el and include it with Emacs. Could you please at the same time start the paperwork with Emacs? To see how, follow the link near the end of http://orgmode.org Thanks - Carsten P.S. Actually, before getting to work on this, maybe you should wait for the discussion just started in another thread. On Dec 15, 2009, at 10:08 PM, Paul Sexton wrote: > Sorry guys, I seem to be spamming this topic, but I just fixed > another problem > -- properties on the link string were causing problems with find- > tag, which > expected a propertyless string. > > Fixed patch follows. > > ----BEGIN PATCH for org.el (delete this line)---- > 8349,8369c8349,8350 > { (condition-case nil (eval cmd) > { ;; ORG-TAGS > { (error > { (progn > { (widen) > { (condition-case nil (eval cmd) > { (error > { ;; No matching link found anywhere in this file > { ;; See if we can find a tag > { ;; If so, jump to it > { (let ((linktext path)) > { (set-text-properties 0 (length linktext) > { nil linktext) > { (condition-case nil (find-tag linktext) > { (error > { (cond > { (org-make-new-topics-for-missing-links-p > { (if (y-or-n-p > { (format "Topic `%S' not found; > append to > current buffer?" > { linktext)) > { (org-append-new-topic linktext nil))) > { (t > { (error "No match found"))))))))))))) > { > { > --- > } (condition-case nil (eval cmd) > } (error (progn (widen) (eval cmd)))))) > 8592,8595d8572 > { ;; ORG-TAGS > { ((not org-open-link-defaults-to-normal-string-search-p) > { ;; We don't want to search for a plain text match. > { (error "No match.")) > 8651,8682d8627 > { > { > { ;; ORG-TAGS > { > { (defvar org-open-link-defaults-to-normal-string-search-p nil > { "Behaviour when attempting to open a 'thisfile' hyperlink for > which no > { EXACT match can be found (i.e. no match in angled brackets, etc). > { If true (default), exhibit normal org behaviour of doing a search > for a string > { matching the link name. > { If nil, abort the attempt to open the link.") > { > { > { (defvar org-make-new-topics-for-missing-links-p nil > { "If true, when attempting to follow a 'plain' hyperlink for > which no precise > { match is found, offer to append a top-level heading with the same > name as the > { hyperlink, to the end of the buffer.") > { > { > { (defun org-append-new-topic (word) > { (interactive "s") > { (widen) > { (end-of-buffer) > { (newline 2) > { (insert (format "* <<%s>>" word)) ; <<<>>> to make radio word > { (backward-char 4) > { ;;(org-update-radio-target-regexp) > { (end-of-line) > { (newline 2) > { (next-line 2)) > { > { > { > ----END PATCH (delete this line)---- > > > > > > > _______________________________________________ > Emacs-orgmode mailing list > Please use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode - Carsten