* Feature Request. org-bibtex-tags-are-keywords inherit tags @ 2014-04-04 10:43 Leonard Randall 2014-04-04 11:31 ` Leonard Randall 0 siblings, 1 reply; 9+ messages in thread From: Leonard Randall @ 2014-04-04 10:43 UTC (permalink / raw) To: emacs-orgmode [-- Attachment #1: Type: text/plain, Size: 492 bytes --] Hi, Right now when you run org-bibtex with org-bibtex-tags-are-keywords set to true, only the tags assigned directly to the headline are converted. So for instance if run org bibtex on a file set up like this. * Authority :auth: ** Kant's Views on authority :Kant: :properties: (bibliography info here) :end: This behavior is controlled by the function org-bibtex-headline in org-bibtex.el. I can change the behavior on my machine by changing `org-get-local-tags-at' to `org-get-tags-at' in [-- Attachment #2: Type: text/html, Size: 1127 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Feature Request. org-bibtex-tags-are-keywords inherit tags 2014-04-04 10:43 Feature Request. org-bibtex-tags-are-keywords inherit tags Leonard Randall @ 2014-04-04 11:31 ` Leonard Randall 2014-04-17 14:25 ` Bastien 0 siblings, 1 reply; 9+ messages in thread From: Leonard Randall @ 2014-04-04 11:31 UTC (permalink / raw) To: emacs-orgmode [-- Attachment #1: Type: text/plain, Size: 2665 bytes --] Hi, I apologize, for the last short post. The keybinding for new headline in org-mode sends an email in gmail. Let us try this again. Right now when you run org-bibtex with org-bibtex-tags-are-keywords set to true, only the tags assigned directly to the headline are converted. So, for instance, if I run org bibtex on a file set up like this. #+---------------------EXAMPLE-------------------------------------------- * Journal articles on Authortity :auth: ** Kant's Mature View of Legal Authority :Kant: :PROPERTIES: (bib info here) :END: #+-----------------------END-EXAMPLE-------------------------------------- The .bib file that is exported only inherits the second tag `:Kant:' Having tag inheritance would be very useful for organizing large bibliographies. This would give people the convenience of managing and organizing the files in org-mode, but still allow them to use some of the convenient features of gui based bibtex browsers. It would also allow people to share their bibliographies, along with their tags with colleagues who have not yet been converted to using org-mode. This relevant behavior is controlled by the function org-bibtex-headline in org-bibtex.el. I can change the behavior on my machine by changing `org-get-local-tags-at' to `org-get-tags-at' in my local version of org-bibtex.el. This of course does not fix the bug I mentioned last week. (Bug: Error with org-bibtex export with tags when using custom bibtypes<http://thread.gmane.org/gmane.emacs.orgmode/84198/focus=84215> )However the cases where the original org-bibtex works this function works as well. Of course not everyone would want this on all of the time. However it seems like it would not be too hard to make a variable such as `org-bibtex-tags-are-keywords-inherit' and modify `org-bibtex-headline' so that you can toggle tag inheritance. Unfortunately, my knowledge of lisp is particularly rudimentary so I can't offer to do it myself. Let me know what you think Thanks so much, Leonard On Fri, Apr 4, 2014 at 11:43 AM, Leonard Randall < leonard.a.randall@gmail.com> wrote: > Hi, > Right now when you run org-bibtex with org-bibtex-tags-are-keywords set to > true, only the tags assigned directly to the headline are converted. So for > instance if run org bibtex on a file set up like this. > * Authority :auth: > ** Kant's Views on authority :Kant: > :properties: > (bibliography info here) > :end: > This behavior is controlled by the function org-bibtex-headline in > org-bibtex.el. I can change the behavior on my machine by changing > `org-get-local-tags-at' to `org-get-tags-at' in > [-- Attachment #2: Type: text/html, Size: 8503 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Feature Request. org-bibtex-tags-are-keywords inherit tags 2014-04-04 11:31 ` Leonard Randall @ 2014-04-17 14:25 ` Bastien [not found] ` <CAMRQoAnD9W7DpuXp5ELsN2fTBPJ2URS3p3+=ERZxM_ESduXtmQ@mail.gmail.com> 0 siblings, 1 reply; 9+ messages in thread From: Bastien @ 2014-04-17 14:25 UTC (permalink / raw) To: Leonard Randall; +Cc: emacs-orgmode Hi Leonard, Leonard Randall <leonard.a.randall@gmail.com> writes: > Unfortunately, my knowledge of lisp is particularly rudimentary so I > can't offer to do it myself. I think you certainly underestimate yourself and can start hacking :) 1. install Git on your machine 2. ~$ git clone git://orgmode.org/org-mode.git 3. ~$ cd org-mode/ 4. Edit lisp/org-bibtex.el 5. Use C-x C-e at the end of the edited functions and check it works When you're done, simple C-x v = in the edited buffer, C-x o to go to that buffer, then save it and send it to us. Otherwise let's wait someone with a better understanding than mine can hack it together. But I'm sure you can give us something that will be useful enough. Best, -- Bastien ^ permalink raw reply [flat|nested] 9+ messages in thread
[parent not found: <CAMRQoAnD9W7DpuXp5ELsN2fTBPJ2URS3p3+=ERZxM_ESduXtmQ@mail.gmail.com>]
* Re: Feature Request. org-bibtex-tags-are-keywords inherit tags [not found] ` <CAMRQoAnD9W7DpuXp5ELsN2fTBPJ2URS3p3+=ERZxM_ESduXtmQ@mail.gmail.com> @ 2014-04-18 9:02 ` Leonard Randall 2014-04-18 11:14 ` Bastien 0 siblings, 1 reply; 9+ messages in thread From: Leonard Randall @ 2014-04-18 9:02 UTC (permalink / raw) To: emacs-orgmode [-- Attachment #1.1: Type: text/plain, Size: 1594 bytes --] I t was indeed easier than I had thought. I tested the modified function on my reading list file and it works as expected under most conditions (It plays well with other variables etc.). The only exception was the previously mentioned issue with nonstandard bibtex types. If I have time this weekend, I will try to look into this problem. (I think it might be time to break down and actually learn lisp.) Attached is the requested diff. In addition to adding the new variable `org-bibtex-tags-inherit' and editing the function `org-bibtex-headline', I modified a couple of customize doc strings to reflect the change. I also edited one doc string that seemed to refer to an old variable that is no longer in use. On 17 April 2014 15:25, Bastien <bzg@gnu.org> wrote: > Hi Leonard, > > Leonard Randall <leonard.a.randall@gmail.com> writes: > > > Unfortunately, my knowledge of lisp is particularly rudimentary so I > > can't offer to do it myself. > > I think you certainly underestimate yourself and can start hacking :) > > 1. install Git on your machine > 2. ~$ git clone git://orgmode.org/org-mode.git > 3. ~$ cd org-mode/ > 4. Edit lisp/org-bibtex.el > 5. Use C-x C-e at the end of the edited functions and check it works > > When you're done, simple C-x v = in the edited buffer, C-x o to go to > that buffer, then save it and send it to us. > > Otherwise let's wait someone with a better understanding than mine > can hack it together. But I'm sure you can give us something that > will be useful enough. > > Best, > > -- > Bastien > [-- Attachment #1.2: Type: text/html, Size: 2696 bytes --] [-- Attachment #2: org-bibtexpatch.diff --] [-- Type: text/plain, Size: 1995 bytes --] diff --git a/lisp/org-bibtex.el b/lisp/org-bibtex.el index ed645e5..848d0e4 100644 --- a/lisp/org-bibtex.el +++ b/lisp/org-bibtex.el @@ -270,20 +270,31 @@ with underscores, and characters that are not permitted in org tags will be removed. If t, local tags in an org entry will be exported as a -comma-separated string of keywords when exported to bibtex. Tags -defined in `org-bibtex-tags' or `org-bibtex-no-export-tags' will -not be exported." +comma-separated string of keywords when exported to bibtex. If +`org-bibtex-inherit-tags' is t, inherited tags will also be +exported as keywords. Tags defined in `org-bibtex-tags' or +`org-bibtex-no-export-tags' will not be exported." :group 'org-bibtex :version "24.1" :type 'boolean) (defcustom org-bibtex-no-export-tags nil "List of tag(s) that should not be converted to keywords. -This variable is relevant only if `org-bibtex-export-tags-as-keywords' is t." +This variable is relevant only if `org-bibtex-tags-are-keywords' is t." :group 'org-bibtex :version "24.1" :type '(repeat :tag "Tag" (string))) +(defcustom org-bibtex-inherit-tags nil + "This variable controlls whether inherited tags are included +when converting org tags to bibtex keywords. It is relevant only +if `org-bibtex-tags-are-keywords' is t. Tag inheritence itself is +controlled by `org-use-tag-inheritence' and +`org-exclude-tags-from-inheritence'" + :group 'org-bibtex + :version "24.1" + :type 'boolean) + (defcustom org-bibtex-type-property-name "btype" "Property in which to store bibtex entry type (e.g., article)." :group 'org-bibtex @@ -332,7 +343,9 @@ This variable is relevant only if `org-bibtex-export-tags-as-keywords' is t." (append org-bibtex-tags org-bibtex-no-export-tags)) tag)) - (org-get-local-tags-at)))))) + (if org-bibtex-inherit-tags + (org-get-tags-at) + (org-get-local-tags-at))))))) (when type (let ((entry (format "@%s{%s,\n%s\n}\n" type id ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: Feature Request. org-bibtex-tags-are-keywords inherit tags 2014-04-18 9:02 ` Leonard Randall @ 2014-04-18 11:14 ` Bastien 2014-04-18 13:44 ` Leonard Randall 0 siblings, 1 reply; 9+ messages in thread From: Bastien @ 2014-04-18 11:14 UTC (permalink / raw) To: Leonard Randall; +Cc: emacs-orgmode Hi Leonard, thanks for starting this! A few stylistic comments inline. Leonard Randall <leonard.a.randall@gmail.com> writes: > diff --git a/lisp/org-bibtex.el b/lisp/org-bibtex.el > index ed645e5..848d0e4 100644 > --- a/lisp/org-bibtex.el > +++ b/lisp/org-bibtex.el > @@ -270,20 +270,31 @@ with underscores, and characters that are not permitted in org > tags will be removed. > > If t, local tags in an org entry will be exported as a > -comma-separated string of keywords when exported to bibtex. Tags > -defined in `org-bibtex-tags' or `org-bibtex-no-export-tags' will > -not be exported." > +comma-separated string of keywords when exported to bibtex. If Make sure to end sentences with two spaces. > (defcustom org-bibtex-no-export-tags nil > "List of tag(s) that should not be converted to keywords. > -This variable is relevant only if `org-bibtex-export-tags-as-keywords' is t." > +This variable is relevant only if `org-bibtex-tags-are-keywords' is t." > :group 'org-bibtex > :version "24.1" > :type '(repeat :tag "Tag" (string))) I fixed this docstring from the maint branch, you may need to pull again and rewrite your changes. > +(defcustom org-bibtex-inherit-tags nil > + "This variable controlls whether inherited tags are included The first line of the docstring should be a sentence. > +when converting org tags to bibtex keywords. It is relevant only > +if `org-bibtex-tags-are-keywords' is t. Tag inheritence itself is > +controlled by `org-use-tag-inheritence' and > +`org-exclude-tags-from-inheritence'" There is a missing fullstop at the end, and missing double-space between sentences. > + :group 'org-bibtex > + :version "24.1" > + :type 'boolean) Use :version "25.1" :package-version '(Org . "8.3") here, so that users will know the option is new in Org 8.3 (the next version that will be released from the master branc) and in Emacs 25.1 (the next Emacs stable version that will contain 8.3.) Otherwise, the patch looks good. Please resubmit it from a fresh pull with the modifications I suggested. Thanks in advance! -- Bastien ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Feature Request. org-bibtex-tags-are-keywords inherit tags 2014-04-18 11:14 ` Bastien @ 2014-04-18 13:44 ` Leonard Randall 2014-04-18 14:47 ` Bastien 0 siblings, 1 reply; 9+ messages in thread From: Leonard Randall @ 2014-04-18 13:44 UTC (permalink / raw) To: Bastien; +Cc: emacs-orgmode [-- Attachment #1.1: Type: text/plain, Size: 2364 bytes --] Hi Bastien, Thanks for the feedback. I have attached the modified patch. All best, Leonard On 18 April 2014 12:14, Bastien <bzg@gnu.org> wrote: > Hi Leonard, > > thanks for starting this! A few stylistic comments inline. > > Leonard Randall <leonard.a.randall@gmail.com> writes: > > > diff --git a/lisp/org-bibtex.el b/lisp/org-bibtex.el > > index ed645e5..848d0e4 100644 > > --- a/lisp/org-bibtex.el > > +++ b/lisp/org-bibtex.el > > @@ -270,20 +270,31 @@ with underscores, and characters that are not > permitted in org > > tags will be removed. > > > > If t, local tags in an org entry will be exported as a > > -comma-separated string of keywords when exported to bibtex. Tags > > -defined in `org-bibtex-tags' or `org-bibtex-no-export-tags' will > > -not be exported." > > +comma-separated string of keywords when exported to bibtex. If > > Make sure to end sentences with two spaces. > > > (defcustom org-bibtex-no-export-tags nil > > "List of tag(s) that should not be converted to keywords. > > -This variable is relevant only if `org-bibtex-export-tags-as-keywords' > is t." > > +This variable is relevant only if `org-bibtex-tags-are-keywords' is t." > > :group 'org-bibtex > > :version "24.1" > > :type '(repeat :tag "Tag" (string))) > > I fixed this docstring from the maint branch, you may need to pull > again and rewrite your changes. > > > +(defcustom org-bibtex-inherit-tags nil > > + "This variable controlls whether inherited tags are included > > The first line of the docstring should be a sentence. > > > +when converting org tags to bibtex keywords. It is relevant only > > +if `org-bibtex-tags-are-keywords' is t. Tag inheritence itself is > > +controlled by `org-use-tag-inheritence' and > > +`org-exclude-tags-from-inheritence'" > > There is a missing fullstop at the end, and missing double-space > between sentences. > > > + :group 'org-bibtex > > + :version "24.1" > > + :type 'boolean) > > Use > > :version "25.1" > :package-version '(Org . "8.3") > > here, so that users will know the option is new in Org 8.3 (the next > version that will be released from the master branc) and in Emacs 25.1 > (the next Emacs stable version that will contain 8.3.) > > Otherwise, the patch looks good. Please resubmit it from a fresh pull > with the modifications I suggested. > > Thanks in advance! > > -- > Bastien > [-- Attachment #1.2: Type: text/html, Size: 3236 bytes --] [-- Attachment #2: org-bibtexpatch2.diff --] [-- Type: text/plain, Size: 1804 bytes --] diff --git a/lisp/org-bibtex.el b/lisp/org-bibtex.el index cdb12b7..516f2cf 100644 --- a/lisp/org-bibtex.el +++ b/lisp/org-bibtex.el @@ -270,9 +270,10 @@ with underscores, and characters that are not permitted in org tags will be removed. If t, local tags in an org entry will be exported as a -comma-separated string of keywords when exported to bibtex. Tags -defined in `org-bibtex-tags' or `org-bibtex-no-export-tags' will -not be exported." +comma-separated string of keywords when exported to bibtex. If +`org-bibtex-inherit-tags' is t, inherited tags will also be +exported as keywords. Tags defined in `org-bibtex-tags' or +`org-bibtex-no-export-tags' will not be exported." :group 'org-bibtex :version "24.1" :type 'boolean) @@ -284,6 +285,17 @@ This variable is relevant only if `org-bibtex-tags-are-keywords' is t." :version "24.1" :type '(repeat :tag "Tag" (string))) +(defcustom org-bibtex-inherit-tags nil + "Controls whether inherited tags are converted to bibtex keywords. +It is relevant only if `org-bibtex-tags-are-keywords' is t. Tag +inheritence itself is controlled by `org-use-tag-inheritence' and +`org-exclude-tags-from-inheritence'." + :group 'org-bibtex + :version "25.1" + :package-version '(Org . "8.3") + :type 'boolean) + + (defcustom org-bibtex-type-property-name "btype" "Property in which to store bibtex entry type (e.g., article)." :group 'org-bibtex @@ -332,7 +344,9 @@ This variable is relevant only if `org-bibtex-tags-are-keywords' is t." (append org-bibtex-tags org-bibtex-no-export-tags)) tag)) - (org-get-local-tags-at)))))) + (if org-bibtex-inherit-tags + (org-get-tags-at) + (org-get-local-tags-at))))))) (when type (let ((entry (format "@%s{%s,\n%s\n}\n" type id ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: Feature Request. org-bibtex-tags-are-keywords inherit tags 2014-04-18 13:44 ` Leonard Randall @ 2014-04-18 14:47 ` Bastien 2014-04-19 13:34 ` Leonard Randall 0 siblings, 1 reply; 9+ messages in thread From: Bastien @ 2014-04-18 14:47 UTC (permalink / raw) To: Leonard Randall; +Cc: emacs-orgmode Hi Leonard, Leonard Randall <leonard.a.randall@gmail.com> writes: > Thanks for the feedback. I have attached the modified patch. Applied, thanks. Have a look at the ChangeLog I added in the commit message. If you plan to add other change, please sign the FSF agreement: http://orgmode.org/cgit.cgi/org-mode.git/plain/request-assign-future.txt Best, -- Bastien ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Feature Request. org-bibtex-tags-are-keywords inherit tags 2014-04-18 14:47 ` Bastien @ 2014-04-19 13:34 ` Leonard Randall 2014-04-19 14:41 ` Bastien 0 siblings, 1 reply; 9+ messages in thread From: Leonard Randall @ 2014-04-19 13:34 UTC (permalink / raw) To: Bastien; +Cc: emacs-orgmode [-- Attachment #1: Type: text/plain, Size: 871 bytes --] Hi Bastien, Thanks for applying this and for being so diligent in keeping org great. I have requested the fsf agreement and will sign it when it comes. One additional minor issue I noticed is that in the docstring for the function `org-bibtex', it reads, `org-bibtex-export-headline' where it should read `org-bibtex-headline'. I have also figured out that bug I mentioned. More on that in a minute. Thanks, Leonard On 18 April 2014 15:47, Bastien <bzg@gnu.org> wrote: > Hi Leonard, > > Leonard Randall <leonard.a.randall@gmail.com> writes: > > > Thanks for the feedback. I have attached the modified patch. > > Applied, thanks. > > Have a look at the ChangeLog I added in the commit message. > If you plan to add other change, please sign the FSF agreement: > > http://orgmode.org/cgit.cgi/org-mode.git/plain/request-assign-future.txt > > Best, > > -- > Bastien > [-- Attachment #2: Type: text/html, Size: 1559 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Feature Request. org-bibtex-tags-are-keywords inherit tags 2014-04-19 13:34 ` Leonard Randall @ 2014-04-19 14:41 ` Bastien 0 siblings, 0 replies; 9+ messages in thread From: Bastien @ 2014-04-19 14:41 UTC (permalink / raw) To: Leonard Randall; +Cc: emacs-orgmode Hi Leonard, Leonard Randall <leonard.a.randall@gmail.com> writes: > Thanks for applying this and for being so diligent in keeping org > great. I have requested the fsf agreement and will sign it when it > comes. One additional minor issue I noticed is that in the docstring > for the function `org-bibtex', it reads, `org-bibtex-export-headline' > where it should read `org-bibtex-headline'. Fixed, thanks. -- Bastien ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2014-04-19 14:41 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-04-04 10:43 Feature Request. org-bibtex-tags-are-keywords inherit tags Leonard Randall 2014-04-04 11:31 ` Leonard Randall 2014-04-17 14:25 ` Bastien [not found] ` <CAMRQoAnD9W7DpuXp5ELsN2fTBPJ2URS3p3+=ERZxM_ESduXtmQ@mail.gmail.com> 2014-04-18 9:02 ` Leonard Randall 2014-04-18 11:14 ` Bastien 2014-04-18 13:44 ` Leonard Randall 2014-04-18 14:47 ` Bastien 2014-04-19 13:34 ` Leonard Randall 2014-04-19 14:41 ` Bastien
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).